.UploadZone-module__1ujwBG__zone{cursor:pointer;background:var(--surface);min-height:17.5rem;box-shadow:inset 0 0 0 1px var(--border),var(--shadow-sm),0 0 2.5rem -.5rem #b76e790f;transition:box-shadow var(--duration-normal)var(--ease-out),background var(--duration-normal)var(--ease-out),transform var(--duration-normal)var(--ease-out);z-index:1;border:none;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:100%;display:flex;position:relative}.UploadZone-module__1ujwBG__zone:hover{box-shadow:inset 0 0 0 1.5px var(--accent),var(--shadow-md),0 0 3rem -.25rem #b76e791a;transform:translateY(-.125rem)}.UploadZone-module__1ujwBG__zone:focus-visible{box-shadow:inset 0 0 0 1.5px var(--accent),var(--shadow-md);outline:none}.UploadZone-module__1ujwBG__dragging{box-shadow:inset 0 0 0 2px var(--brand),var(--shadow-lg),0 0 3.5rem -.25rem #c347181f;background:var(--brand-light);transform:translateY(-.125rem)scale(1.005)}.UploadZone-module__1ujwBG__uploadIcon{opacity:0;width:3rem;height:3rem;animation:UploadZone-module__1ujwBG__fadeSlideUp var(--duration-normal)var(--ease-out)both;transition:transform var(--duration-normal)var(--ease-out);margin-bottom:.4rem}.UploadZone-module__1ujwBG__zone:hover .UploadZone-module__1ujwBG__uploadIcon{transform:translateY(-2px)}.UploadZone-module__1ujwBG__label{color:var(--ink);animation:UploadZone-module__1ujwBG__fadeSlideUp var(--duration-normal)var(--ease-out)40ms both;font-size:.95rem;font-weight:400}.UploadZone-module__1ujwBG__hint{gap:calc(var(--unit)*.5);opacity:0;animation:UploadZone-module__1ujwBG__fadeSlideUp var(--duration-normal)var(--ease-out)60ms forwards;justify-content:center;align-items:center;display:flex}@keyframes UploadZone-module__1ujwBG__fadeSlideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.UploadZone-module__1ujwBG__processing{color:var(--accent);font-size:.85rem;animation:1.2s ease-in-out infinite UploadZone-module__1ujwBG__processingPulse}@keyframes UploadZone-module__1ujwBG__processingPulse{0%,to{opacity:.6}50%{opacity:1}}.UploadZone-module__1ujwBG__dropText{color:var(--brand);animation:UploadZone-module__1ujwBG__fadeSlideUp var(--duration-normal)var(--ease-out)forwards;font-size:.85rem;font-weight:500}.UploadZone-module__1ujwBG__formatBadge{background:var(--surface-2);color:var(--muted);letter-spacing:.06em;border:none;border-radius:100px;margin:0 .125rem;padding:.125rem .5rem;font-size:.62rem;font-weight:500;display:inline-block}.UploadZone-module__1ujwBG__formatMore{color:var(--muted);letter-spacing:.04em;font-size:.62rem;font-weight:400}.UploadZone-module__1ujwBG__stitchOut{pointer-events:none;animation:.6s cubic-bezier(.4,0,0,1) forwards UploadZone-module__1ujwBG__zoneExit}.UploadZone-module__1ujwBG__transitionWrap{animation:UploadZone-module__1ujwBG__transitionIn var(--duration-slow)var(--ease-out)both;flex-direction:column;align-items:center;gap:.75rem;display:flex}.UploadZone-module__1ujwBG__progressRing{width:3rem;height:3rem}.UploadZone-module__1ujwBG__ringFill{transform-origin:50%;animation:.5s cubic-bezier(.4,0,.2,1) 50ms forwards UploadZone-module__1ujwBG__ringSweep;transform:rotate(-90deg)}.UploadZone-module__1ujwBG__transitionLabel{color:var(--accent);letter-spacing:.02em;font-size:.82rem;font-weight:500;animation:1s ease-in-out infinite UploadZone-module__1ujwBG__labelPulse}@keyframes UploadZone-module__1ujwBG__ringSweep{to{stroke-dashoffset:0}}@keyframes UploadZone-module__1ujwBG__transitionIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes UploadZone-module__1ujwBG__labelPulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes UploadZone-module__1ujwBG__zoneExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)translateY(-8px)}}.UploadZone-module__1ujwBG__error{color:var(--danger);margin-top:calc(var(--unit)*1);animation:UploadZone-module__1ujwBG__errorFadeIn var(--duration-normal)var(--ease-out)forwards,UploadZone-module__1ujwBG__errorFadeOut .4s var(--ease-out)3.5s forwards;font-size:.72rem}@keyframes UploadZone-module__1ujwBG__errorFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes UploadZone-module__1ujwBG__errorFadeOut{0%{opacity:1}to{opacity:0}}.UploadZone-module__1ujwBG__hidden{display:none}@media (prefers-reduced-motion:reduce){.UploadZone-module__1ujwBG__uploadIcon,.UploadZone-module__1ujwBG__label,.UploadZone-module__1ujwBG__hint,.UploadZone-module__1ujwBG__processing,.UploadZone-module__1ujwBG__error{opacity:1;animation:none}.UploadZone-module__1ujwBG__stitchOut{opacity:0;animation:none}.UploadZone-module__1ujwBG__transitionWrap{animation:none}.UploadZone-module__1ujwBG__ringFill{stroke-dashoffset:0;animation:none}.UploadZone-module__1ujwBG__transitionLabel{opacity:1;animation:none}}
.OptionControls-module__uPiqkq__controls{gap:calc(var(--unit)*1);flex-direction:column;display:flex}.OptionControls-module__uPiqkq__prompt{color:var(--ink-muted);text-align:center;margin:0;font-size:.85rem;font-weight:400}.OptionControls-module__uPiqkq__row{gap:calc(var(--unit)*1.5);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.OptionControls-module__uPiqkq__chip{background:var(--surface-3);-webkit-backdrop-filter:blur(8px);border:1.5px solid var(--border);padding:calc(var(--unit)*.75)calc(var(--unit)*2.5);color:var(--ink-2);transition:background var(--duration-normal),color var(--duration-normal),border-color var(--duration-normal),box-shadow var(--duration-normal),transform var(--duration-fast);border-radius:100px;font-size:.82rem;font-weight:400}.OptionControls-module__uPiqkq__chip:hover{border-color:var(--accent);color:var(--ink);background:var(--accent-light)}.OptionControls-module__uPiqkq__chip:active{transform:scale(.96)}.OptionControls-module__uPiqkq__chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.OptionControls-module__uPiqkq__chip.OptionControls-module__uPiqkq__active{background:var(--accent);border-color:var(--accent);color:var(--surface);box-shadow:0 0 0 3px var(--accent-light),var(--shadow-sm);font-weight:500}@media (max-width:960px){.OptionControls-module__uPiqkq__chip{min-height:44px;padding:calc(var(--unit)*1.25)calc(var(--unit)*2.5);font-size:.85rem}}
.PatternView-module__P__5hW__wrapper{border:1px solid var(--border);border-radius:var(--radius-sm);transition:box-shadow var(--duration-fast);position:relative;overflow:auto}.PatternView-module__P__5hW__wrapper:hover{box-shadow:var(--shadow-sm)}.PatternView-module__P__5hW__canvas{touch-action:pan-x pan-y;display:block}
.StitchLoader-module___k-CXq__grid{aspect-ratio:1;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);gap:1px;width:60%;animation:7s ease-in-out infinite StitchLoader-module___k-CXq__buildCycle;display:grid}.StitchLoader-module___k-CXq__cell{border:.5px solid var(--border);border-radius:1px;position:relative;overflow:hidden}.StitchLoader-module___k-CXq__cell:before,.StitchLoader-module___k-CXq__cell:after{content:"";background:var(--accent);transform-origin:50%;opacity:.7;width:2px;height:70%;animation:7s ease-out infinite StitchLoader-module___k-CXq__stitchBuild;animation-delay:var(--stitch-delay,0s);border-radius:1px;position:absolute;top:15%;left:50%}.StitchLoader-module___k-CXq__cell:after{animation-name:StitchLoader-module___k-CXq__stitchBuildReverse;animation-delay:var(--stitch-delay,0s)}@keyframes StitchLoader-module___k-CXq__buildCycle{0%{opacity:1;filter:hue-rotate()}73%{opacity:1}93%{opacity:1}97%{opacity:0;filter:hue-rotate(8deg)}to{opacity:1;filter:hue-rotate(8deg)}}@keyframes StitchLoader-module___k-CXq__stitchBuild{0%{transform:translate(-50%)rotate(45deg)scale(0)}3.6%{transform:translate(-50%)rotate(45deg)scale(1)}93%{transform:translate(-50%)rotate(45deg)scale(1)}97%{transform:translate(-50%)rotate(45deg)scale(0)}to{transform:translate(-50%)rotate(45deg)scale(0)}}@keyframes StitchLoader-module___k-CXq__stitchBuildReverse{0%{transform:translate(-50%)rotate(-45deg)scale(0)}3.6%{transform:translate(-50%)rotate(-45deg)scale(1)}93%{transform:translate(-50%)rotate(-45deg)scale(1)}97%{transform:translate(-50%)rotate(-45deg)scale(0)}to{transform:translate(-50%)rotate(-45deg)scale(0)}}@media (prefers-reduced-motion:reduce){.StitchLoader-module___k-CXq__grid{animation:none}.StitchLoader-module___k-CXq__cell:before,.StitchLoader-module___k-CXq__cell:after{animation:none;transform:translate(-50%)rotate(45deg)scale(1)}.StitchLoader-module___k-CXq__cell:after{transform:translate(-50%)rotate(-45deg)scale(1)}}
.PatternCard-module__deXXKq__card{gap:calc(var(--unit)*1.5);text-align:center;animation:PatternCard-module__deXXKq__cardEntrance var(--duration-slow)var(--ease-out)both;flex-direction:column;display:flex}.PatternCard-module__deXXKq__card:nth-child(2){animation-delay:60ms}.PatternCard-module__deXXKq__card:nth-child(3){animation-delay:.12s}@keyframes PatternCard-module__deXXKq__cardEntrance{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.PatternCard-module__deXXKq__preview{border:2px dashed var(--border);border-radius:var(--radius);background:var(--surface);height:240px;box-shadow:var(--shadow-sm),0 0 2.5rem -.5rem #b76e790f;transition:box-shadow var(--duration-fast)var(--ease-out),transform var(--duration-fast)var(--ease-out);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.PatternCard-module__deXXKq__preview:has(.PatternCard-module__deXXKq__miniPattern):hover{box-shadow:var(--shadow-lg),0 0 3rem -.25rem #b76e791a;transform:scale(1.015)}.PatternCard-module__deXXKq__preview:has(.PatternCard-module__deXXKq__miniPattern):active{transform:scale(.98)}.PatternCard-module__deXXKq__loaderLayer,.PatternCard-module__deXXKq__patternLayer{transition:opacity var(--duration-slow)var(--ease-out);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.PatternCard-module__deXXKq__loaderLayer{opacity:1;z-index:1}.PatternCard-module__deXXKq__patternLayer{opacity:0;z-index:2}.PatternCard-module__deXXKq__loaderHidden{opacity:0;pointer-events:none}.PatternCard-module__deXXKq__patternVisible{opacity:1}.PatternCard-module__deXXKq__retry{color:var(--danger);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:400;text-decoration:underline}.PatternCard-module__deXXKq__error .PatternCard-module__deXXKq__preview{border:1px solid var(--danger);animation:PatternCard-module__deXXKq__errorShake .3s var(--ease-out)}@keyframes PatternCard-module__deXXKq__errorShake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.PatternCard-module__deXXKq__miniPattern{cursor:pointer;max-width:100%;max-height:100%;transition:opacity var(--duration-normal);background:0 0;border:none;justify-content:center;align-items:center;padding:0;line-height:0;display:flex}.PatternCard-module__deXXKq__miniPattern canvas{object-fit:contain;max-width:100%;max-height:100%;display:block}.PatternCard-module__deXXKq__miniPattern:hover{opacity:.9}.PatternCard-module__deXXKq__dims{color:var(--muted);font-size:.7rem;font-weight:300}@media (max-width:960px){.PatternCard-module__deXXKq__preview{height:300px}}@media (prefers-reduced-motion:reduce){.PatternCard-module__deXXKq__card,.PatternCard-module__deXXKq__error .PatternCard-module__deXXKq__preview{animation:none}}
.CropOverlay-module__IbHdfq__root{z-index:30;background:var(--surface-2);animation:CropOverlay-module__IbHdfq__fadeIn var(--duration-fast)var(--ease-out)forwards;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.CropOverlay-module__IbHdfq__rootMobile{z-index:30;background:var(--surface-2);animation:CropOverlay-module__IbHdfq__fadeIn var(--duration-fast)var(--ease-out)forwards;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@keyframes CropOverlay-module__IbHdfq__fadeIn{0%{opacity:0}to{opacity:1}}.CropOverlay-module__IbHdfq__canvasWrap{flex-shrink:0;position:relative}.CropOverlay-module__IbHdfq__canvas{display:block}.CropOverlay-module__IbHdfq__overlayStrip{pointer-events:none;z-index:1;background:#00000080;position:absolute}.CropOverlay-module__IbHdfq__handle{z-index:2;touch-action:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;transform:translate(-50%,-50%)}.CropOverlay-module__IbHdfq__handle:before{content:"";background:var(--surface);border:2px solid var(--accent);border-radius:50%;width:10px;height:10px}.CropOverlay-module__IbHdfq__handle_nw{cursor:nw-resize}.CropOverlay-module__IbHdfq__handle_n{cursor:n-resize}.CropOverlay-module__IbHdfq__handle_ne{cursor:ne-resize}.CropOverlay-module__IbHdfq__handle_w{cursor:w-resize}.CropOverlay-module__IbHdfq__handle_e{cursor:e-resize}.CropOverlay-module__IbHdfq__handle_sw{cursor:sw-resize}.CropOverlay-module__IbHdfq__handle_s{cursor:s-resize}.CropOverlay-module__IbHdfq__handle_se{cursor:se-resize}.CropOverlay-module__IbHdfq__sizePill{background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);padding:calc(var(--unit)*.5)calc(var(--unit)*1.5);color:var(--ink-2);white-space:nowrap;pointer-events:none;z-index:3;border-radius:100px;font-size:.7rem;font-weight:500;position:absolute;transform:translate(-50%)}.CropOverlay-module__IbHdfq__actionBar{bottom:calc(var(--unit)*3);align-items:center;gap:calc(var(--unit)*1.5);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);border-radius:var(--radius);padding:calc(var(--unit)*1)calc(var(--unit)*2);z-index:40;display:flex;position:absolute;left:50%;transform:translate(-50%)}.CropOverlay-module__IbHdfq__actionBarMobile{bottom:max(calc(var(--unit)*4),env(safe-area-inset-bottom,0px));align-items:center;gap:calc(var(--unit)*1.5);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);border-radius:var(--radius);padding:calc(var(--unit)*1.5)calc(var(--unit)*3);z-index:40;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.CropOverlay-module__IbHdfq__actionRow{align-items:center;gap:calc(var(--unit)*2);display:flex}.CropOverlay-module__IbHdfq__actionBarMobile .CropOverlay-module__IbHdfq__btnPrimary,.CropOverlay-module__IbHdfq__actionBarMobile .CropOverlay-module__IbHdfq__btnSecondary,.CropOverlay-module__IbHdfq__actionBarMobile .CropOverlay-module__IbHdfq__btnGhost{min-height:44px;padding:calc(var(--unit)*1.5)calc(var(--unit)*3);font-size:.85rem}.CropOverlay-module__IbHdfq__btnPrimary,.CropOverlay-module__IbHdfq__btnSecondary,.CropOverlay-module__IbHdfq__btnGhost{padding:calc(var(--unit)*1)calc(var(--unit)*2.5);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast);font-size:.8rem;font-weight:600}.CropOverlay-module__IbHdfq__btnPrimary{background:var(--accent);color:var(--surface);border:1px solid var(--accent)}.CropOverlay-module__IbHdfq__btnPrimary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.CropOverlay-module__IbHdfq__btnSecondary{background:var(--surface-3);color:var(--ink);border:1px solid var(--border)}.CropOverlay-module__IbHdfq__btnSecondary:hover{background:var(--accent-light);border-color:var(--accent)}.CropOverlay-module__IbHdfq__btnGhost{color:var(--muted);background:0 0;border:1px solid #0000}.CropOverlay-module__IbHdfq__btnGhost:hover{color:var(--ink);background:var(--surface-2)}.CropOverlay-module__IbHdfq__btnIcon{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-3);width:36px;height:36px;color:var(--ink-2);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast);justify-content:center;align-items:center;font-size:1rem;display:flex}.CropOverlay-module__IbHdfq__btnIcon:hover{background:var(--accent-light);border-color:var(--accent)}.CropOverlay-module__IbHdfq__btnIconActive{background:var(--accent);color:var(--surface);border-color:var(--accent)}.CropOverlay-module__IbHdfq__actionBarMobile .CropOverlay-module__IbHdfq__btnIcon{width:44px;height:44px;font-size:1.1rem}.CropOverlay-module__IbHdfq__actionDivider{background:var(--border);width:1px;height:24px}@media (pointer:coarse){.CropOverlay-module__IbHdfq__btnIcon{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.CropOverlay-module__IbHdfq__root{animation:none}.CropOverlay-module__IbHdfq__btnPrimary,.CropOverlay-module__IbHdfq__btnSecondary,.CropOverlay-module__IbHdfq__btnGhost{transition:none}}
.ZoomPatternView-module__rgh0iG__container{cursor:grab;border-radius:var(--radius);background:var(--surface-2);touch-action:none;width:100%;height:100%;position:relative;overflow:hidden}.ZoomPatternView-module__rgh0iG__container:focus{outline:none}.ZoomPatternView-module__rgh0iG__container:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ZoomPatternView-module__rgh0iG__container:active{cursor:grabbing}.ZoomPatternView-module__rgh0iG__transformLayer{position:absolute;top:0;left:0}.ZoomPatternView-module__rgh0iG__canvas{display:block}.ZoomPatternView-module__rgh0iG__zoomIndicator{bottom:calc(var(--unit)*2);right:calc(var(--unit)*2);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);padding:calc(var(--unit)*.5)calc(var(--unit)*1.5);color:var(--muted);cursor:pointer;opacity:0;min-height:28px;transition:opacity var(--duration-normal)var(--ease-out),background var(--duration-fast),color var(--duration-fast);z-index:10;-webkit-user-select:none;user-select:none;border-radius:100px;justify-content:center;align-items:center;font-size:.7rem;font-weight:500;display:flex;position:absolute}.ZoomPatternView-module__rgh0iG__zoomIndicatorVisible{opacity:1}.ZoomPatternView-module__rgh0iG__zoomIndicator:hover{background:var(--accent-light);color:var(--ink);border-color:var(--accent)}.ZoomPatternView-module__rgh0iG__zoomIndicator:active{transform:scale(.95)}.ZoomPatternView-module__rgh0iG__zoomHint{top:calc(var(--unit)*2);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);padding:calc(var(--unit)*.5)calc(var(--unit)*2);color:var(--muted);opacity:0;transition:opacity var(--duration-slow)var(--ease-out);pointer-events:none;z-index:10;white-space:nowrap;border-radius:100px;font-size:.65rem;position:absolute;left:50%;transform:translate(-50%)}.ZoomPatternView-module__rgh0iG__zoomHintVisible{opacity:1}@media (pointer:coarse){.ZoomPatternView-module__rgh0iG__zoomIndicator{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.ZoomPatternView-module__rgh0iG__zoomIndicator,.ZoomPatternView-module__rgh0iG__zoomHint{transition:none}}
.ThreadLegend-module__jTCp7a__heading{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:calc(var(--unit)*2);font-size:.68rem;font-weight:400}.ThreadLegend-module__jTCp7a__list{gap:calc(var(--unit)*1.5);flex-direction:column;list-style:none;display:flex}.ThreadLegend-module__jTCp7a__item{align-items:center;gap:calc(var(--unit)*1.5);padding:calc(var(--unit)*.5)calc(var(--unit)*1);border-radius:var(--radius-sm);transition:background var(--duration-fast);font-size:.78rem;display:flex}.ThreadLegend-module__jTCp7a__item:hover{background:var(--surface-2)}.ThreadLegend-module__jTCp7a__itemActive{background:var(--accent-light);border-left:2px solid var(--accent)}.ThreadLegend-module__jTCp7a__locked{border-left:2px solid var(--accent)}.ThreadLegend-module__jTCp7a__excluded{opacity:.4}.ThreadLegend-module__jTCp7a__excluded .ThreadLegend-module__jTCp7a__name{text-decoration:line-through}.ThreadLegend-module__jTCp7a__swatch{border:1px solid var(--border);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:16px;height:16px;transition:transform var(--duration-fast)var(--ease-out);border-radius:3px;flex-shrink:0}.ThreadLegend-module__jTCp7a__item:hover .ThreadLegend-module__jTCp7a__swatch{transform:scale(1.15)}.ThreadLegend-module__jTCp7a__symbol{text-align:center;width:16px;color:var(--muted);font-size:.72rem}.ThreadLegend-module__jTCp7a__code{color:var(--ink);min-width:4.53rem;font-weight:500}.ThreadLegend-module__jTCp7a__name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:300;overflow:hidden}.ThreadLegend-module__jTCp7a__bsLabel{opacity:.6;font-style:italic}.ThreadLegend-module__jTCp7a__count{color:var(--muted);font-size:.7rem;font-weight:300}.ThreadLegend-module__jTCp7a__skeins{white-space:nowrap;color:var(--ink-muted);text-align:right;min-width:2.5rem;font-size:.7rem;font-weight:500}.ThreadLegend-module__jTCp7a__actionBtn{border:1px solid var(--border);border-radius:var(--radius-sm);letter-spacing:.02em;cursor:pointer;opacity:.6;color:var(--ink-muted);transition:opacity var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast),background var(--duration-fast);background:0 0;flex-shrink:0;padding:1px 6px;font-size:.6rem;font-weight:500;line-height:1.4}.ThreadLegend-module__jTCp7a__actionBtn:hover{opacity:1;border-color:var(--ink-muted)}.ThreadLegend-module__jTCp7a__actionActive{opacity:1;color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent)8%,transparent)}.ThreadLegend-module__jTCp7a__actionExclude{opacity:1;color:var(--danger,#dc2626);border-color:var(--danger,#dc2626);background:color-mix(in srgb,var(--danger,#dc2626)8%,transparent)}.ThreadLegend-module__jTCp7a__footer{text-align:center;padding-top:calc(var(--unit)*1.5);margin-top:calc(var(--unit)*1);border-top:1px solid var(--border)}.ThreadLegend-module__jTCp7a__totals{color:var(--ink);margin-bottom:calc(var(--unit)*1);font-size:.78rem;font-weight:600}.ThreadLegend-module__jTCp7a__copyBtn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;color:var(--ink-muted);transition:border-color var(--duration-fast),color var(--duration-fast);padding:.25rem .75rem;font-size:.7rem}.ThreadLegend-module__jTCp7a__copyBtn:hover{border-color:var(--accent);color:var(--ink)}@media (pointer:coarse){.ThreadLegend-module__jTCp7a__actionBtn,.ThreadLegend-module__jTCp7a__copyBtn{min-width:44px;min-height:44px}}
.DialogShared-module__uQxEKW__backdrop{background:var(--backdrop);z-index:200;animation:DialogShared-module__uQxEKW__fadeIn var(--duration-normal)ease-out;position:fixed;inset:0}@keyframes DialogShared-module__uQxEKW__fadeIn{0%{opacity:0}to{opacity:1}}.DialogShared-module__uQxEKW__panel{background:var(--bg);border-left:1px solid var(--border);width:360px;box-shadow:var(--shadow-lg);z-index:201;animation:DialogShared-module__uQxEKW__slideRight var(--duration-slow)var(--ease-out);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}@keyframes DialogShared-module__uQxEKW__slideRight{0%{transform:translate(100%)}to{transform:translate(0)}}.DialogShared-module__uQxEKW__sheet{background:var(--bg);border-top:1px solid var(--border);border-radius:var(--radius)var(--radius)0 0;max-height:80vh;box-shadow:var(--shadow-sheet);z-index:201;animation:DialogShared-module__uQxEKW__slideUp var(--duration-slow)var(--ease-out);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@keyframes DialogShared-module__uQxEKW__slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.DialogShared-module__uQxEKW__header{padding:calc(var(--unit)*2.5)calc(var(--unit)*3);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.DialogShared-module__uQxEKW__title{color:var(--ink);font-size:.92rem;font-weight:600}.DialogShared-module__uQxEKW__closeBtn{width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.DialogShared-module__uQxEKW__closeBtn:hover{background:var(--surface-2);color:var(--ink)}.DialogShared-module__uQxEKW__closeBtn:active{transform:scale(.92)}.DialogShared-module__uQxEKW__content{padding:calc(var(--unit)*3);gap:calc(var(--unit)*3);flex-direction:column;display:flex}.DialogShared-module__uQxEKW__thumbnail{aspect-ratio:4/3;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);width:100%;overflow:hidden}.DialogShared-module__uQxEKW__thumbnailCanvas{object-fit:contain;width:100%;height:100%}.DialogShared-module__uQxEKW__nameInput{width:100%;padding:calc(var(--unit)*1.5)calc(var(--unit)*2);border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);transition:border-color var(--duration-fast),box-shadow var(--duration-fast);font-size:.85rem;font-weight:500}.DialogShared-module__uQxEKW__nameInput:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light);outline:none}.DialogShared-module__uQxEKW__breakdown{gap:calc(var(--unit)*.5);flex-direction:column;display:flex}.DialogShared-module__uQxEKW__breakdownLabel{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:calc(var(--unit)*.5);font-size:.72rem;font-weight:400}.DialogShared-module__uQxEKW__breakdownRow{color:var(--ink-2);padding:calc(var(--unit)*.25)0;justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.DialogShared-module__uQxEKW__breakdownDivider{background:var(--border);height:1px;margin:calc(var(--unit)*.5)0}.DialogShared-module__uQxEKW__breakdownTotal{color:var(--ink);padding:calc(var(--unit)*.25)0;justify-content:space-between;align-items:center;font-size:.82rem;font-weight:600;display:flex}.DialogShared-module__uQxEKW__section{gap:calc(var(--unit)*1);flex-direction:column;display:flex}.DialogShared-module__uQxEKW__sectionLabel{color:var(--ink-2);font-size:.75rem;font-weight:500}.DialogShared-module__uQxEKW__paperToggle{gap:calc(var(--unit)*.75);display:flex}.DialogShared-module__uQxEKW__paperBtn{padding:calc(var(--unit)*1.25);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast);color:var(--ink-2);background:0 0;flex:1;font-size:.78rem;font-weight:500}.DialogShared-module__uQxEKW__paperBtn:hover{border-color:var(--accent)}.DialogShared-module__uQxEKW__paperBtnActive{background:var(--accent);color:var(--surface);border-color:var(--accent)}.DialogShared-module__uQxEKW__checkRow{align-items:center;gap:calc(var(--unit)*1.5);cursor:pointer;display:flex}.DialogShared-module__uQxEKW__checkbox{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.DialogShared-module__uQxEKW__checkLabel{color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.8rem}.DialogShared-module__uQxEKW__saveBtn{width:100%;padding:calc(var(--unit)*2.25);background:var(--accent);border-radius:var(--radius-sm);letter-spacing:.03em;color:var(--surface);cursor:pointer;min-height:48px;transition:background var(--duration-normal),transform var(--duration-fast),box-shadow var(--duration-normal);border:none;font-size:.88rem;font-weight:600}.DialogShared-module__uQxEKW__saveBtn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md)}.DialogShared-module__uQxEKW__saveBtn:active:not(:disabled){transform:scale(.98)}.DialogShared-module__uQxEKW__saveBtnLoading{opacity:.7;cursor:wait}.DialogShared-module__uQxEKW__progressWrap{background:var(--surface-2);border-radius:2px;width:100%;height:4px;overflow:hidden}.DialogShared-module__uQxEKW__progressBar{background:var(--accent);height:100%;transition:width var(--duration-slow)ease-out;border-radius:2px}.DialogShared-module__uQxEKW__progressLabel{color:var(--muted);text-align:center;font-size:.72rem}.DialogShared-module__uQxEKW__errorMsg{color:var(--danger);text-align:center;padding:calc(var(--unit)*1.5);background:color-mix(in srgb,var(--danger)6%,transparent);border-radius:var(--radius-sm);font-size:.75rem}@media (pointer:coarse){.DialogShared-module__uQxEKW__closeBtn{min-width:44px;min-height:44px}.DialogShared-module__uQxEKW__paperBtn{min-height:44px}}@media (prefers-reduced-motion:reduce){.DialogShared-module__uQxEKW__backdrop,.DialogShared-module__uQxEKW__panel,.DialogShared-module__uQxEKW__sheet{animation:none}}
.StitchingCompanion-module__Y4fVCG__companion{z-index:400;background:var(--surface);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.StitchingCompanion-module__Y4fVCG__header{padding:8px calc(var(--unit)*2);background:var(--surface-3);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.StitchingCompanion-module__Y4fVCG__backBtn{color:var(--accent);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;padding:4px 8px;font-size:.85rem;display:flex}.StitchingCompanion-module__Y4fVCG__backBtn:hover{background:var(--surface-2);transition:background var(--duration-normal)var(--ease-out)}.StitchingCompanion-module__Y4fVCG__backBtn:active{opacity:.7}.StitchingCompanion-module__Y4fVCG__backBtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.StitchingCompanion-module__Y4fVCG__headerTitle{color:var(--ink);font-size:.85rem;font-weight:600}.StitchingCompanion-module__Y4fVCG__chartWrapper{flex:1;position:relative;overflow:hidden}.StitchingCompanion-module__Y4fVCG__chartArea{touch-action:manipulation;background:var(--surface-2);width:100%;height:100%;display:flex;overflow:auto}.StitchingCompanion-module__Y4fVCG__chartCanvas{cursor:crosshair;flex-shrink:0;margin:auto;display:block}.StitchingCompanion-module__Y4fVCG__pressIndicator{pointer-events:none;border:2px solid var(--accent);opacity:0;z-index:3;border-radius:2px;animation:.3s ease-out forwards StitchingCompanion-module__Y4fVCG__pressGrow;position:absolute}@keyframes StitchingCompanion-module__Y4fVCG__pressGrow{0%{opacity:.3;transform:scale(.8)}to{opacity:.6;transform:scale(1)}}.StitchingCompanion-module__Y4fVCG__markFlash{pointer-events:none;z-index:3;background:var(--accent);animation:StitchingCompanion-module__Y4fVCG__markPop .2s var(--ease-bounce)forwards;border-radius:2px;position:absolute}@keyframes StitchingCompanion-module__Y4fVCG__markPop{0%{opacity:.5;transform:scale(.8)}60%{opacity:.3;transform:scale(1.1)}to{opacity:0;transform:scale(1)}}.StitchingCompanion-module__Y4fVCG__unmarkFlash{pointer-events:none;z-index:3;background:var(--border);border-radius:2px;animation:.15s ease-out forwards StitchingCompanion-module__Y4fVCG__unmarkFade;position:absolute}@keyframes StitchingCompanion-module__Y4fVCG__unmarkFade{0%{opacity:.4}to{opacity:0}}.StitchingCompanion-module__Y4fVCG__zoomControls{z-index:5;flex-direction:column;gap:4px;display:flex;position:absolute;top:8px;right:8px}.StitchingCompanion-module__Y4fVCG__zoomBtn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:32px;height:32px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-sm);justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;display:flex}.StitchingCompanion-module__Y4fVCG__zoomBtn:hover{background:var(--surface-2);transition:background var(--duration-normal)var(--ease-out)}.StitchingCompanion-module__Y4fVCG__zoomBtn:active{background:var(--accent-light);transition:transform var(--duration-fast)var(--ease-out);transform:scale(.97)}.StitchingCompanion-module__Y4fVCG__zoomBtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.StitchingCompanion-module__Y4fVCG__colorPill{background:var(--surface-3);border:none;border-top:1px solid var(--border);color:var(--ink);cursor:pointer;flex-shrink:0;align-items:center;gap:8px;width:100%;padding:8px 16px;font-size:.8rem;display:flex}.StitchingCompanion-module__Y4fVCG__pillCode{font-weight:500}.StitchingCompanion-module__Y4fVCG__pillRemaining{color:var(--muted);margin-left:auto}.StitchingCompanion-module__Y4fVCG__colorPill:hover{background:var(--surface-2);box-shadow:var(--shadow-md);transition:transform var(--duration-normal)var(--ease-out),box-shadow var(--duration-normal)var(--ease-out),background var(--duration-normal)var(--ease-out);transform:translateY(-1px)}.StitchingCompanion-module__Y4fVCG__colorPill:active{transform:scale(.99)}.StitchingCompanion-module__Y4fVCG__drawerBackdrop{background:var(--backdrop);z-index:401;animation:StitchingCompanion-module__Y4fVCG__backdropFadeIn var(--duration-normal)var(--ease-out);position:fixed;inset:0}.StitchingCompanion-module__Y4fVCG__colorDrawer{background:var(--surface);border-top-left-radius:calc(var(--unit)*2);border-top-right-radius:calc(var(--unit)*2);z-index:402;max-height:60vh;box-shadow:var(--shadow-sheet);animation:StitchingCompanion-module__Y4fVCG__drawerSlideUp var(--duration-normal)var(--ease-out);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes StitchingCompanion-module__Y4fVCG__drawerSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes StitchingCompanion-module__Y4fVCG__backdropFadeIn{0%{opacity:0}to{opacity:1}}.StitchingCompanion-module__Y4fVCG__drawerHandle{background:var(--border);border-radius:2px;flex-shrink:0;width:32px;height:4px;margin:8px auto}.StitchingCompanion-module__Y4fVCG__drawerColors{padding:8px calc(var(--unit)*2);flex-wrap:wrap;flex:1;gap:4px;display:flex;overflow-y:auto}.StitchingCompanion-module__Y4fVCG__drawerFooter{padding:8px calc(var(--unit)*2);border-top:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.StitchingCompanion-module__Y4fVCG__drawerToggle{align-items:center;gap:var(--unit);color:var(--ink);cursor:pointer;font-size:.8rem;display:flex}.StitchingCompanion-module__Y4fVCG__drawerResetBtn{color:var(--muted);cursor:pointer;background:0 0;border:none;font-size:.75rem;text-decoration:underline}.StitchingCompanion-module__Y4fVCG__drawerResetConfirm{align-items:center;gap:var(--unit);color:var(--ink);font-size:.75rem;display:flex}.StitchingCompanion-module__Y4fVCG__resetBtn{border-radius:var(--radius-sm);background:var(--danger);color:var(--surface);cursor:pointer;border:none;padding:4px 10px;font-size:.75rem}.StitchingCompanion-module__Y4fVCG__drawerResetBtn:hover{color:var(--ink)}.StitchingCompanion-module__Y4fVCG__resetBtn:hover{background:var(--danger);filter:brightness(.85)}.StitchingCompanion-module__Y4fVCG__resetBtn:active{transform:scale(.97)}.StitchingCompanion-module__Y4fVCG__modalCancel:hover{background:var(--surface-2);transition:background var(--duration-normal)var(--ease-out)}.StitchingCompanion-module__Y4fVCG__modalCancel:active{transform:scale(.97)}.StitchingCompanion-module__Y4fVCG__modalConfirm:hover{filter:brightness(1.1);transition:filter var(--duration-normal)var(--ease-out)}.StitchingCompanion-module__Y4fVCG__modalConfirm:active{transform:scale(.97)}.StitchingCompanion-module__Y4fVCG__colorChip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:4px 8px;font-size:.7rem;display:flex}.StitchingCompanion-module__Y4fVCG__colorChipActive{background:var(--accent);border-color:var(--accent);color:var(--surface)}.StitchingCompanion-module__Y4fVCG__colorChip:hover{border-color:var(--accent);transition:border-color var(--duration-normal)var(--ease-out)}.StitchingCompanion-module__Y4fVCG__colorDot{border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.StitchingCompanion-module__Y4fVCG__colorCode{font-weight:500}.StitchingCompanion-module__Y4fVCG__progressThin{background:var(--surface-3);border-top:1px solid var(--border);cursor:pointer;padding:calc(var(--unit)*1)calc(var(--unit)*2);padding-bottom:max(calc(var(--unit)*1),env(safe-area-inset-bottom,0px));flex-shrink:0}.StitchingCompanion-module__Y4fVCG__progressBarWrap{background:var(--bg-muted);border-radius:3px;height:6px;overflow:hidden}.StitchingCompanion-module__Y4fVCG__progressBarFill{background:var(--accent);height:100%;transition:width var(--duration-slow)ease;border-radius:3px}.StitchingCompanion-module__Y4fVCG__progressDetail{padding:0 calc(var(--unit)*2);color:var(--muted);max-height:0;transition:max-height var(--duration-normal)var(--ease-out),padding var(--duration-normal)var(--ease-out);justify-content:space-around;font-size:.7rem;display:flex;overflow:hidden}.StitchingCompanion-module__Y4fVCG__progressDetailOpen{max-height:40px;padding:4px calc(var(--unit)*2)}.StitchingCompanion-module__Y4fVCG__modalBackdrop{background:var(--backdrop);z-index:401;position:fixed;inset:0}.StitchingCompanion-module__Y4fVCG__modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);z-index:402;min-width:280px;box-shadow:var(--shadow-lg);padding:20px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.StitchingCompanion-module__Y4fVCG__modalTitle{color:var(--ink);margin:0 0 16px;font-size:1rem;font-weight:600}.StitchingCompanion-module__Y4fVCG__modalLabel{color:var(--ink);margin-bottom:8px;font-size:.85rem;display:block}.StitchingCompanion-module__Y4fVCG__modalInput{width:100%;padding:8px calc(var(--unit)*2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);margin-bottom:calc(var(--unit)*2);box-sizing:border-box;font-size:1rem}.StitchingCompanion-module__Y4fVCG__modalActions{justify-content:flex-end;gap:8px;display:flex}.StitchingCompanion-module__Y4fVCG__modalCancel{padding:var(--unit)14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);cursor:pointer;font-size:.85rem}.StitchingCompanion-module__Y4fVCG__modalConfirm{padding:var(--unit)14px;border-radius:var(--radius-sm);background:var(--accent);color:var(--surface);cursor:pointer;border:none;font-size:.85rem}.StitchingCompanion-module__Y4fVCG__colorChipDone{opacity:.5}.StitchingCompanion-module__Y4fVCG__colorBadge{color:var(--muted);margin-left:2px;font-size:.6rem}.StitchingCompanion-module__Y4fVCG__colorCheck{color:var(--success);margin-left:2px;font-size:.7rem}.StitchingCompanion-module__Y4fVCG__minimap{bottom:calc(var(--unit)*2);left:calc(var(--unit)*2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:80px;height:80px;box-shadow:var(--shadow-md);z-index:4;cursor:pointer;position:absolute;overflow:hidden}.StitchingCompanion-module__Y4fVCG__minimapCanvas{width:100%;height:100%;display:block}.StitchingCompanion-module__Y4fVCG__minimapViewport{border:2px solid var(--accent);pointer-events:none;border-radius:1px;position:absolute;box-shadow:0 0 0 1px #0000004d,inset 0 0 0 1px #fff6}.StitchingCompanion-module__Y4fVCG__minimap:hover{border-color:var(--accent);box-shadow:var(--shadow-lg),0 0 0 1px var(--accent);transition:border-color var(--duration-normal)var(--ease-out),box-shadow var(--duration-normal)var(--ease-out)}.StitchingCompanion-module__Y4fVCG__welcomeOverlay{z-index:6;pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:80px;animation:2s ease-in 1.5s forwards StitchingCompanion-module__Y4fVCG__welcomeFade;display:flex;position:absolute;inset:0}.StitchingCompanion-module__Y4fVCG__welcomeText{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-md);border-radius:20px;margin-bottom:8px;padding:8px 16px;font-size:1rem;font-weight:500}.StitchingCompanion-module__Y4fVCG__welcomeArrow{color:var(--ink-muted);animation:1s ease-in-out infinite StitchingCompanion-module__Y4fVCG__welcomeBounce}@keyframes StitchingCompanion-module__Y4fVCG__welcomeFade{to{opacity:0}}@keyframes StitchingCompanion-module__Y4fVCG__welcomeBounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@media (pointer:coarse){.StitchingCompanion-module__Y4fVCG__backBtn,.StitchingCompanion-module__Y4fVCG__zoomBtn{min-width:44px;min-height:44px}.StitchingCompanion-module__Y4fVCG__colorChip{min-height:44px}.StitchingCompanion-module__Y4fVCG__resetBtn,.StitchingCompanion-module__Y4fVCG__modalCancel,.StitchingCompanion-module__Y4fVCG__modalConfirm{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.StitchingCompanion-module__Y4fVCG__pressIndicator,.StitchingCompanion-module__Y4fVCG__markFlash,.StitchingCompanion-module__Y4fVCG__unmarkFlash,.StitchingCompanion-module__Y4fVCG__welcomeOverlay,.StitchingCompanion-module__Y4fVCG__welcomeArrow,.StitchingCompanion-module__Y4fVCG__colorDrawer,.StitchingCompanion-module__Y4fVCG__drawerBackdrop,.StitchingCompanion-module__Y4fVCG__colorPill{transition:none;animation:none}}
.CelebrationOverlay-module__zFovRq__toast{background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow-md);z-index:410;animation:CelebrationOverlay-module__zFovRq__toastIn var(--duration-slow)ease-out;border-radius:20px;align-items:center;gap:8px;padding:10px 16px;display:flex;position:fixed;top:60px;left:50%;transform:translate(-50%)}@keyframes CelebrationOverlay-module__zFovRq__toastIn{0%{opacity:0;transform:translate(-50%)translateY(-12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes CelebrationOverlay-module__zFovRq__toastOut{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-12px)}}.CelebrationOverlay-module__zFovRq__toastExiting{animation:CelebrationOverlay-module__zFovRq__toastOut var(--duration-normal)var(--ease-out)forwards}.CelebrationOverlay-module__zFovRq__toastDot{border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:14px;height:14px}.CelebrationOverlay-module__zFovRq__toastText{color:var(--ink);white-space:nowrap;font-size:.85rem}.CelebrationOverlay-module__zFovRq__milestoneText{color:var(--ink);z-index:411;text-align:center;animation:CelebrationOverlay-module__zFovRq__milestoneIn var(--duration-slow)ease-out;font-size:1.4rem;font-weight:700;position:fixed;top:40%;left:50%;transform:translate(-50%,-50%)}@keyframes CelebrationOverlay-module__zFovRq__milestoneIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes CelebrationOverlay-module__zFovRq__milestoneOut{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.8)}}.CelebrationOverlay-module__zFovRq__milestoneExiting{animation:CelebrationOverlay-module__zFovRq__milestoneOut var(--duration-normal)var(--ease-out)forwards}.CelebrationOverlay-module__zFovRq__confettiContainer{pointer-events:none;z-index:410;position:fixed;inset:0;overflow:hidden}.CelebrationOverlay-module__zFovRq__confettiPiece{border-radius:2px;width:12px;height:12px;animation:3s ease-in forwards CelebrationOverlay-module__zFovRq__confettiFall;position:absolute;top:-10px}@keyframes CelebrationOverlay-module__zFovRq__confettiFall{0%{opacity:1;top:-10px;transform:rotate(0)}to{opacity:0;top:110vh;transform:rotate(720deg)}}@media (prefers-reduced-motion:reduce){.CelebrationOverlay-module__zFovRq__toast,.CelebrationOverlay-module__zFovRq__milestoneText,.CelebrationOverlay-module__zFovRq__confettiPiece{animation:none}.CelebrationOverlay-module__zFovRq__toastExiting,.CelebrationOverlay-module__zFovRq__milestoneExiting{opacity:0;animation:none}}
.RowCompanion-module__LLRnsa__overlay{z-index:400;background:var(--surface);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.RowCompanion-module__LLRnsa__header{padding:calc(var(--unit)*2)calc(var(--unit)*3);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.RowCompanion-module__LLRnsa__backBtn{padding:var(--unit)14px var(--unit)10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);cursor:pointer;align-items:center;gap:4px;font-size:.78rem;font-weight:500;display:inline-flex}.RowCompanion-module__LLRnsa__backBtn:hover{border-color:var(--accent);color:var(--ink)}.RowCompanion-module__LLRnsa__rowLabel{color:var(--muted);font-size:.82rem;font-weight:500}.RowCompanion-module__LLRnsa__nav{gap:calc(var(--unit)*1.5);padding:calc(var(--unit)*2)calc(var(--unit)*3);border-top:1px solid var(--border);flex-shrink:0;display:flex}.RowCompanion-module__LLRnsa__navBtn{justify-content:center;align-items:center;gap:calc(var(--unit)*1);padding:calc(var(--unit)*1.5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-family:var(--font);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast);flex:1;font-size:.82rem;font-weight:500;display:flex}.RowCompanion-module__LLRnsa__navBtn:hover{border-color:var(--accent);background:var(--accent-light)}.RowCompanion-module__LLRnsa__navBtn:disabled{opacity:.3;cursor:not-allowed}.RowCompanion-module__LLRnsa__doneBtn{background:var(--accent);border-color:var(--accent);color:var(--surface)}.RowCompanion-module__LLRnsa__doneBtn:hover{opacity:.9;background:var(--accent);border-color:var(--accent)}.RowCompanion-module__LLRnsa__footer{padding:calc(var(--unit)*2)calc(var(--unit)*3);border-top:1px solid var(--border);flex-shrink:0}.RowCompanion-module__LLRnsa__progressBar{background:var(--border);height:4px;margin-bottom:calc(var(--unit)*1);border-radius:2px;overflow:hidden}.RowCompanion-module__LLRnsa__progressFill{background:var(--accent);height:100%;transition:width var(--duration-normal)}.RowCompanion-module__LLRnsa__stats{color:var(--muted);justify-content:space-between;font-size:.72rem;display:flex}.RowCompanion-module__LLRnsa__scrollContainer{padding:calc(var(--unit)*2)calc(var(--unit)*3);flex:1;overflow-y:auto}.RowCompanion-module__LLRnsa__rowCard{padding:calc(var(--unit)*1.5)0}.RowCompanion-module__LLRnsa__rowCardHeader{align-items:center;gap:calc(var(--unit)*1);color:var(--muted);margin-bottom:calc(var(--unit)*.75);font-size:.75rem;display:flex}.RowCompanion-module__LLRnsa__rowCardCurrent{border-left:3px solid var(--accent);padding-left:calc(var(--unit)*2);margin:calc(var(--unit)*1)0}.RowCompanion-module__LLRnsa__rowCardCompleted{opacity:.35}.RowCompanion-module__LLRnsa__rowCardPreview{opacity:.5}.RowCompanion-module__LLRnsa__rowCardFuture{opacity:.25}.RowCompanion-module__LLRnsa__checkBadge{color:var(--accent);font-size:.7rem}.RowCompanion-module__LLRnsa__colourBar{border:1px solid var(--border);border-radius:4px;display:flex;overflow:hidden}.RowCompanion-module__LLRnsa__chipRow{gap:calc(var(--unit)*.75);margin-top:calc(var(--unit)*1);flex-wrap:wrap;display:flex}.RowCompanion-module__LLRnsa__chip{background:var(--surface-2);border-radius:var(--radius-sm);color:var(--ink);align-items:center;gap:4px;padding:3px 8px;font-size:.75rem;display:inline-flex}.RowCompanion-module__LLRnsa__chipSwatch{border-radius:2px;flex-shrink:0;width:8px;height:8px}.RowCompanion-module__LLRnsa__chipPrefix{font-weight:600}.RowCompanion-module__LLRnsa__chipColor{color:var(--muted);font-size:.68rem}.RowCompanion-module__LLRnsa__currentStitchCount{color:var(--muted);text-align:right;margin-top:calc(var(--unit)*1);font-size:.72rem}.RowCompanion-module__LLRnsa__chartToggle{align-items:center;gap:calc(var(--unit)*1);width:100%;padding:calc(var(--unit)*1.5)calc(var(--unit)*3);border:none;border-bottom:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-family:var(--font);cursor:pointer;flex-shrink:0;font-size:.72rem;font-weight:500;display:flex}.RowCompanion-module__LLRnsa__chartToggle:hover{color:var(--ink)}.RowCompanion-module__LLRnsa__chartToggleArrow{transition:transform var(--duration-fast)}.RowCompanion-module__LLRnsa__chartToggleOpen .RowCompanion-module__LLRnsa__chartToggleArrow{transform:rotate(90deg)}.RowCompanion-module__LLRnsa__chartPreview{padding:calc(var(--unit)*2)calc(var(--unit)*3);border-bottom:1px solid var(--border);background:var(--surface-2);flex-shrink:0;justify-content:center;display:flex}.RowCompanion-module__LLRnsa__chartCanvas{border-radius:var(--radius-sm);cursor:pointer;max-height:180px}@media (pointer:coarse){.RowCompanion-module__LLRnsa__navBtn,.RowCompanion-module__LLRnsa__backBtn,.RowCompanion-module__LLRnsa__chartToggle{min-height:44px}}
.CraftSlider-module__hegOOG__wrapper{gap:calc(var(--unit)*1.5);flex-direction:column;display:flex}.CraftSlider-module__hegOOG__labelRow{justify-content:space-between;align-items:center;display:flex}.CraftSlider-module__hegOOG__label{color:var(--ink);transition:color var(--duration-fast);font-size:.82rem;font-weight:500}.CraftSlider-module__hegOOG__tooltipTrigger{border:1px solid var(--border);width:18px;height:18px;color:var(--muted);cursor:help;transition:border-color var(--duration-fast),color var(--duration-fast),background var(--duration-fast);border-radius:50%;justify-content:center;align-items:center;font-size:.65rem;font-weight:600;display:inline-flex;position:relative}.CraftSlider-module__hegOOG__tooltipTrigger:hover,.CraftSlider-module__hegOOG__tooltipTrigger:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.CraftSlider-module__hegOOG__tooltipContent{min-width:180px;max-width:240px;padding:calc(var(--unit)*1)calc(var(--unit)*1.5);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink-2);white-space:normal;z-index:25;box-shadow:var(--shadow-md);animation:CraftSlider-module__hegOOG__tooltipFadeIn var(--duration-fast)var(--ease-out)forwards;font-size:.7rem;font-weight:400;line-height:1.4;position:fixed}@keyframes CraftSlider-module__hegOOG__tooltipFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.CraftSlider-module__hegOOG__value{color:var(--accent);text-align:right;min-width:28px;transition:transform var(--duration-fast),color var(--duration-fast);font-size:.82rem;font-weight:600}.CraftSlider-module__hegOOG__valueDragging{transform:scale(1.15)}.CraftSlider-module__hegOOG__trackWrapper{align-items:center;height:24px;display:flex;position:relative}.CraftSlider-module__hegOOG__input{appearance:none;background:var(--border);cursor:pointer;z-index:2;border-radius:3px;width:100%;height:6px;position:relative}.CraftSlider-module__hegOOG__input::-webkit-slider-thumb{appearance:none;background:var(--accent);width:24px;height:24px;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--duration-fast)var(--ease-out),box-shadow var(--duration-fast)var(--ease-out);border-radius:50%}.CraftSlider-module__hegOOG__input::-webkit-slider-thumb:hover{box-shadow:0 0 0 4px var(--accent-light),var(--shadow-md);transform:scale(1.12)}.CraftSlider-module__hegOOG__input:active::-webkit-slider-thumb{box-shadow:0 0 0 6px var(--accent-light);transform:scale(1.15)}.CraftSlider-module__hegOOG__input:active::-moz-range-thumb{box-shadow:0 0 0 6px var(--accent-light);transform:scale(1.15)}.CraftSlider-module__hegOOG__input::-moz-range-thumb{background:var(--accent);width:24px;height:24px;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--duration-fast)var(--ease-out),box-shadow var(--duration-fast)var(--ease-out);border:none;border-radius:50%}.CraftSlider-module__hegOOG__input::-moz-range-thumb:hover{box-shadow:0 0 0 4px var(--accent-light),var(--shadow-md);transform:scale(1.12)}.CraftSlider-module__hegOOG__trackFill{background:linear-gradient(90deg,var(--accent),var(--accent-hover));pointer-events:none;z-index:1;border-radius:3px;height:6px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.CraftSlider-module__hegOOG__input:focus{outline:none}.CraftSlider-module__hegOOG__input:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:3px}.CraftSlider-module__hegOOG__trackPulse{animation:CraftSlider-module__hegOOG__fillPulse var(--duration-slow)var(--ease-out)}@keyframes CraftSlider-module__hegOOG__fillPulse{0%{filter:brightness()}50%{filter:brightness(1.3)}to{filter:brightness()}}.CraftSlider-module__hegOOG__subtitle{color:var(--muted);margin-top:calc(var(--unit)*-1);font-size:.68rem;font-weight:400;line-height:1.3}@media (pointer:coarse){.CraftSlider-module__hegOOG__tooltipTrigger{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.CraftSlider-module__hegOOG__tooltipContent,.CraftSlider-module__hegOOG__trackPulse{animation:none}}
.EmbroideryExportDialog-module__hiaucW__backdrop{background:var(--backdrop);z-index:200;animation:EmbroideryExportDialog-module__hiaucW__fadeIn var(--duration-normal)ease-out;position:fixed;inset:0}@keyframes EmbroideryExportDialog-module__hiaucW__fadeIn{0%{opacity:0}to{opacity:1}}.EmbroideryExportDialog-module__hiaucW__panel{background:var(--bg);border-radius:var(--radius);width:420px;max-width:90vw;max-height:90vh;box-shadow:var(--shadow-lg);z-index:201;animation:EmbroideryExportDialog-module__hiaucW__scaleIn var(--duration-normal)var(--ease-out);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}@keyframes EmbroideryExportDialog-module__hiaucW__scaleIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.EmbroideryExportDialog-module__hiaucW__header{padding:calc(var(--unit)*2.5)calc(var(--unit)*3);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.EmbroideryExportDialog-module__hiaucW__title{color:var(--ink);font-size:.92rem;font-weight:600}.EmbroideryExportDialog-module__hiaucW__closeBtn{width:32px;height:32px;color:var(--muted);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.EmbroideryExportDialog-module__hiaucW__closeBtn:hover{background:var(--surface-2);color:var(--ink)}.EmbroideryExportDialog-module__hiaucW__closeBtn:active{transform:scale(.92)}.EmbroideryExportDialog-module__hiaucW__content{padding:calc(var(--unit)*3);gap:calc(var(--unit)*3);flex-direction:column;display:flex}.EmbroideryExportDialog-module__hiaucW__field{gap:calc(var(--unit)*.75);flex-direction:column;display:flex}.EmbroideryExportDialog-module__hiaucW__fieldLabel{color:var(--ink-2);border:none;padding:0;font-size:.75rem;font-weight:500}.EmbroideryExportDialog-module__hiaucW__nameInput{width:100%;padding:calc(var(--unit)*1.5)calc(var(--unit)*2);border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);transition:border-color var(--duration-fast),box-shadow var(--duration-fast);font-size:.85rem;font-weight:500}.EmbroideryExportDialog-module__hiaucW__nameInput:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light);outline:none}.EmbroideryExportDialog-module__hiaucW__formatGroup{border:none;margin:0;padding:0}.EmbroideryExportDialog-module__hiaucW__formatRow{gap:calc(var(--unit)*.75);margin-top:calc(var(--unit)*1);display:flex}.EmbroideryExportDialog-module__hiaucW__formatOption{padding:calc(var(--unit)*1.5);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast);flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.EmbroideryExportDialog-module__hiaucW__formatOption:hover{border-color:var(--accent)}.EmbroideryExportDialog-module__hiaucW__formatActive{background:var(--accent);color:var(--surface);border-color:var(--accent)}.EmbroideryExportDialog-module__hiaucW__formatActive .EmbroideryExportDialog-module__hiaucW__formatDesc{color:color-mix(in srgb,var(--surface)80%,transparent)}.EmbroideryExportDialog-module__hiaucW__radio{opacity:0;width:0;height:0;position:absolute}.EmbroideryExportDialog-module__hiaucW__formatDesc{color:var(--muted);font-size:.72rem}.EmbroideryExportDialog-module__hiaucW__info{gap:calc(var(--unit)*.5);padding:calc(var(--unit)*1.5);background:var(--surface-2);border-radius:var(--radius-sm);flex-direction:column;font-size:.8rem;display:flex}.EmbroideryExportDialog-module__hiaucW__infoRow{color:var(--ink-2);padding:calc(var(--unit)*.25)0;justify-content:space-between;align-items:center;display:flex}.EmbroideryExportDialog-module__hiaucW__note{color:var(--muted);margin:0;font-size:.75rem;line-height:1.4}.EmbroideryExportDialog-module__hiaucW__errorMsg{color:var(--danger);text-align:center;padding:calc(var(--unit)*1.5);background:color-mix(in srgb,var(--danger)6%,transparent);border-radius:var(--radius-sm);font-size:.75rem}.EmbroideryExportDialog-module__hiaucW__downloadBtn{width:100%;padding:calc(var(--unit)*2.25);background:var(--accent);border-radius:var(--radius-sm);letter-spacing:.03em;color:var(--surface);cursor:pointer;min-height:48px;transition:background var(--duration-normal),transform var(--duration-fast),box-shadow var(--duration-normal);border:none;font-size:.88rem;font-weight:600}.EmbroideryExportDialog-module__hiaucW__downloadBtn:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-md)}.EmbroideryExportDialog-module__hiaucW__downloadBtn:active:not(:disabled){transform:scale(.98)}.EmbroideryExportDialog-module__hiaucW__downloadBtnLoading{opacity:.7;cursor:wait}.EmbroideryExportDialog-module__hiaucW__settingsSection{gap:calc(var(--unit)*1.5);flex-direction:column;display:flex}.EmbroideryExportDialog-module__hiaucW__sectionToggle{width:100%;padding:calc(var(--unit)*1.5)0;color:var(--ink);cursor:pointer;border:none;border-top:1px solid var(--border);background:0 0;justify-content:space-between;align-items:center;font-size:.82rem;font-weight:600;display:flex}.EmbroideryExportDialog-module__hiaucW__sectionToggle:hover{color:var(--accent)}.EmbroideryExportDialog-module__hiaucW__chevron{color:var(--muted);font-size:.65rem}.EmbroideryExportDialog-module__hiaucW__sectionContent{gap:calc(var(--unit)*2);padding-bottom:calc(var(--unit)*1);flex-direction:column;display:flex}.EmbroideryExportDialog-module__hiaucW__toggleRow{gap:calc(var(--unit)*1);flex-direction:column;display:flex}.EmbroideryExportDialog-module__hiaucW__toggleLabel{align-items:center;gap:calc(var(--unit)*1);color:var(--ink);cursor:pointer;font-size:.82rem;font-weight:500;display:flex}.EmbroideryExportDialog-module__hiaucW__toggleLabel input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}@media (pointer:coarse){.EmbroideryExportDialog-module__hiaucW__closeBtn{min-width:44px;min-height:44px}.EmbroideryExportDialog-module__hiaucW__formatOption{min-height:44px}}@media (prefers-reduced-motion:reduce){.EmbroideryExportDialog-module__hiaucW__backdrop,.EmbroideryExportDialog-module__hiaucW__panel{animation:none}}
.SavedPatternsDrawer-module__RnRntW__backdrop{background:var(--backdrop);z-index:200;animation:SavedPatternsDrawer-module__RnRntW__fadeIn var(--duration-normal)var(--ease-out)both;position:fixed;inset:0}@keyframes SavedPatternsDrawer-module__RnRntW__fadeIn{0%{opacity:0}to{opacity:1}}.SavedPatternsDrawer-module__RnRntW__drawer{background:var(--surface);z-index:201;width:22.67rem;box-shadow:var(--shadow-lg);animation:SavedPatternsDrawer-module__RnRntW__slideIn var(--duration-normal)var(--ease-out)both;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0}@keyframes SavedPatternsDrawer-module__RnRntW__slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width:600px){.SavedPatternsDrawer-module__RnRntW__drawer{width:100%}}.SavedPatternsDrawer-module__RnRntW__header{padding:calc(var(--unit)*2.5)calc(var(--unit)*3);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.SavedPatternsDrawer-module__RnRntW__title{color:var(--ink);font-size:1rem;font-weight:600}.SavedPatternsDrawer-module__RnRntW__closeBtn{width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast),color var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:1.2rem;display:flex}.SavedPatternsDrawer-module__RnRntW__closeBtn:hover{background:var(--surface-2);color:var(--ink)}.SavedPatternsDrawer-module__RnRntW__body{padding:calc(var(--unit)*2.5);flex:1;overflow-y:auto}.SavedPatternsDrawer-module__RnRntW__grid{gap:calc(var(--unit)*2);grid-template-columns:1fr 1fr;display:grid}.SavedPatternsDrawer-module__RnRntW__card{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color var(--duration-fast),box-shadow var(--duration-fast),transform var(--duration-fast);position:relative;overflow:hidden}.SavedPatternsDrawer-module__RnRntW__card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:scale(1.02)}.SavedPatternsDrawer-module__RnRntW__card:active{transform:scale(.98)}.SavedPatternsDrawer-module__RnRntW__thumbnail{aspect-ratio:1;object-fit:cover;background:var(--surface-2);width:100%;display:block}.SavedPatternsDrawer-module__RnRntW__cardInfo{padding:calc(var(--unit)*1)calc(var(--unit)*1.5)}.SavedPatternsDrawer-module__RnRntW__cardName{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:500;overflow:hidden}.SavedPatternsDrawer-module__RnRntW__cardDims{color:var(--muted);margin-top:2px;font-size:.65rem}.SavedPatternsDrawer-module__RnRntW__cardActions{opacity:0;transition:opacity var(--duration-fast);gap:2px;display:flex;position:absolute;top:4px;right:4px}.SavedPatternsDrawer-module__RnRntW__card:hover .SavedPatternsDrawer-module__RnRntW__cardActions{opacity:1}@media (max-width:600px){.SavedPatternsDrawer-module__RnRntW__cardActions{opacity:0;pointer-events:none}.SavedPatternsDrawer-module__RnRntW__cardRevealed .SavedPatternsDrawer-module__RnRntW__cardActions{opacity:1;pointer-events:auto}}.SavedPatternsDrawer-module__RnRntW__actionBtn{background:var(--surface-3);width:26px;height:26px;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background var(--duration-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.65rem;display:flex}.SavedPatternsDrawer-module__RnRntW__actionBtn:hover{background:var(--surface)}.SavedPatternsDrawer-module__RnRntW__deleteAction:hover,.SavedPatternsDrawer-module__RnRntW__deleteConfirm{background:var(--danger,#e53e3e)}.SavedPatternsDrawer-module__RnRntW__renameInput{border:1px solid var(--accent);border-radius:var(--radius-sm);width:100%;color:var(--ink);background:var(--surface);padding:2px 4px;font-size:.72rem;font-weight:500}.SavedPatternsDrawer-module__RnRntW__renameInput:focus{outline:none}.SavedPatternsDrawer-module__RnRntW__renameInput:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.SavedPatternsDrawer-module__RnRntW__autosaveSection{margin-bottom:calc(var(--unit)*2.5)}.SavedPatternsDrawer-module__RnRntW__autosaveCard{border-color:var(--accent);border-style:dashed}.SavedPatternsDrawer-module__RnRntW__autosaveLabel{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;font-weight:500;overflow:hidden}.SavedPatternsDrawer-module__RnRntW__galleryFull{text-align:center;width:100%;padding:calc(var(--unit)*1.5)calc(var(--unit)*2);margin-bottom:calc(var(--unit)*2);font-family:var(--font);color:var(--accent);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast);font-size:.72rem;display:block}.SavedPatternsDrawer-module__RnRntW__galleryFull:hover{border-color:var(--accent);background:var(--surface)}.SavedPatternsDrawer-module__RnRntW__emptyState{text-align:center;padding:calc(var(--unit)*8)calc(var(--unit)*3);color:var(--muted);font-size:.85rem}@media (pointer:coarse){.SavedPatternsDrawer-module__RnRntW__actionBtn,.SavedPatternsDrawer-module__RnRntW__closeBtn{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.SavedPatternsDrawer-module__RnRntW__backdrop,.SavedPatternsDrawer-module__RnRntW__drawer{animation:none}}
.Toast-module__eHqTLW__toast{bottom:calc(var(--unit)*4);background:var(--ink);color:var(--surface);padding:calc(var(--unit)*1.5)calc(var(--unit)*3);border-radius:var(--radius);z-index:300;opacity:0;transition:opacity var(--duration-slow)var(--ease-out),transform var(--duration-slow)var(--ease-out);pointer-events:none;font-size:.8rem;font-weight:500;position:fixed;left:50%;transform:translate(-50%)translateY(20px)}.Toast-module__eHqTLW__visible{opacity:1;transform:translate(-50%)translateY(0)}@media (prefers-reduced-motion:reduce){.Toast-module__eHqTLW__toast{transition:none}}
.ProfileModal-module__5gHCgG__backdrop{background:var(--backdrop);z-index:200;position:fixed;inset:0}.ProfileModal-module__5gHCgG__modal{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:201;width:min(400px,90vw);max-height:80vh;padding:calc(var(--unit)*4);position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.ProfileModal-module__5gHCgG__loading{text-align:center;padding:calc(var(--unit)*6);color:var(--ink-muted);font-family:var(--font-main);font-size:14px}.ProfileModal-module__5gHCgG__header{align-items:center;gap:calc(var(--unit)*2);padding-bottom:calc(var(--unit)*3);border-bottom:1px solid var(--border);margin-bottom:calc(var(--unit)*3);display:flex}.ProfileModal-module__5gHCgG__header .ProfileModal-module__5gHCgG__email{flex:1}.ProfileModal-module__5gHCgG__closeBtn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.ProfileModal-module__5gHCgG__closeBtn:hover{background:var(--bg-muted);color:var(--ink)}.ProfileModal-module__5gHCgG__email{font-family:var(--font-main);color:var(--ink-muted);font-size:13px}.ProfileModal-module__5gHCgG__badge{font-family:var(--font-main);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-sm);background:var(--bg-muted);color:var(--ink-muted);padding:2px 8px;font-size:11px;font-weight:600}.ProfileModal-module__5gHCgG__badgePaid{background:var(--brand);color:var(--surface)}.ProfileModal-module__5gHCgG__manageLink{font-family:var(--font-main);color:var(--accent);cursor:pointer;margin-bottom:calc(var(--unit)*3);background:0 0;border:none;padding:0;font-size:13px;display:block}.ProfileModal-module__5gHCgG__manageLink:hover{text-decoration:underline}.ProfileModal-module__5gHCgG__manageLink:disabled{color:var(--ink-muted);cursor:default}.ProfileModal-module__5gHCgG__section{margin-bottom:calc(var(--unit)*4)}.ProfileModal-module__5gHCgG__label{font-family:var(--font-main);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);margin-bottom:calc(var(--unit)*1.5);font-size:12px;font-weight:600;display:block}.ProfileModal-module__5gHCgG__chips{gap:calc(var(--unit)*1);flex-wrap:wrap;display:flex}.ProfileModal-module__5gHCgG__chip{font-family:var(--font-main);padding:4px calc(var(--unit)*2);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;transition:all var(--duration-fast)var(--ease-out);font-size:13px}.ProfileModal-module__5gHCgG__chip:hover{border-color:var(--accent)}.ProfileModal-module__5gHCgG__chipActive{background:var(--accent);color:var(--surface);border-color:var(--accent)}.ProfileModal-module__5gHCgG__swatches{gap:calc(var(--unit)*1);flex-wrap:wrap;display:flex}.ProfileModal-module__5gHCgG__swatch{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;transition:opacity var(--duration-fast)var(--ease-out);justify-content:center;align-items:flex-end;padding-bottom:2px;display:flex}.ProfileModal-module__5gHCgG__swatch:hover{opacity:.7}.ProfileModal-module__5gHCgG__swatchCode{font-family:var(--font-main);color:#fff;text-shadow:0 0 2px #00000080;font-size:8px}.ProfileModal-module__5gHCgG__empty{font-family:var(--font-main);color:var(--ink-muted);font-size:13px;font-style:italic}.ProfileModal-module__5gHCgG__footer{padding-top:calc(var(--unit)*3);border-top:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.ProfileModal-module__5gHCgG__signOut{font-family:var(--font-main);color:var(--ink-muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:13px}.ProfileModal-module__5gHCgG__signOut:hover{color:var(--ink)}.ProfileModal-module__5gHCgG__deleteBtn{font-family:var(--font-main);color:var(--danger);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:13px}.ProfileModal-module__5gHCgG__deleteConfirmBox{margin-top:calc(var(--unit)*2);padding:calc(var(--unit)*3);border:1px solid var(--danger);border-radius:var(--radius);background:color-mix(in srgb,var(--danger)5%,var(--surface));grid-column:1/-1}.ProfileModal-module__5gHCgG__deleteWarning{font-family:var(--font-main);color:var(--danger);margin:0 0 calc(var(--unit)*2);font-size:13px;line-height:1.4}.ProfileModal-module__5gHCgG__deleteLabel{font-family:var(--font-main);color:var(--ink-muted);margin-bottom:calc(var(--unit)*1);font-size:12px;display:block}.ProfileModal-module__5gHCgG__deleteInput{width:100%;font-family:var(--font-main);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);margin-bottom:calc(var(--unit)*2);box-sizing:border-box;padding:6px 8px;font-size:13px}.ProfileModal-module__5gHCgG__deleteInput:focus{border-color:var(--danger);outline:none}.ProfileModal-module__5gHCgG__deleteErrorMsg{font-family:var(--font-main);color:var(--danger);margin:0 0 calc(var(--unit)*1);font-size:12px}.ProfileModal-module__5gHCgG__deleteActions{gap:calc(var(--unit)*2);display:flex}.ProfileModal-module__5gHCgG__deleteYes{font-family:var(--font-main);color:var(--surface);background:var(--danger);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:2px 10px;font-size:12px}.ProfileModal-module__5gHCgG__deleteNo{font-family:var(--font-main);color:var(--ink-muted);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:2px 10px;font-size:12px}@media (pointer:coarse){.ProfileModal-module__5gHCgG__chip,.ProfileModal-module__5gHCgG__swatch{min-width:44px;min-height:44px}.ProfileModal-module__5gHCgG__signOut,.ProfileModal-module__5gHCgG__deleteBtn{min-height:44px}.ProfileModal-module__5gHCgG__deleteYes,.ProfileModal-module__5gHCgG__deleteNo{min-width:44px;min-height:44px}}
.MobileAuthSheet-module__wGEm0W__backdrop{background:var(--backdrop);z-index:200;position:fixed;inset:0}.MobileAuthSheet-module__wGEm0W__panel{top:40%;left:calc(var(--unit)*2);right:calc(var(--unit)*2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:360px;box-shadow:var(--shadow-lg);z-index:201;padding:calc(var(--unit)*2)calc(var(--unit)*3)calc(var(--unit)*3);animation:MobileAuthSheet-module__wGEm0W__sheetIn var(--duration-normal)var(--ease-out);margin:0 auto;position:fixed;transform:translateY(-50%)}@keyframes MobileAuthSheet-module__wGEm0W__sheetIn{0%{opacity:0;transform:translateY(-50%)scale(.96)}to{opacity:1;transform:translateY(-50%)scale(1)}}.MobileAuthSheet-module__wGEm0W__handle{padding:0 0 calc(var(--unit)*2);justify-content:center;display:flex}.MobileAuthSheet-module__wGEm0W__handleBar{background:var(--border);border-radius:2px;width:36px;height:4px}.MobileAuthSheet-module__wGEm0W__heading{color:var(--ink);margin:0 0 calc(var(--unit)*2);font-size:.92rem;font-weight:600}.MobileAuthSheet-module__wGEm0W__emailRow{align-items:center;gap:0;height:2.75rem;display:flex}.MobileAuthSheet-module__wGEm0W__emailInput{font-family:var(--font-main);width:100%;height:2.75rem;padding:0 calc(var(--unit)*2);border:1.5px solid var(--border);border-radius:var(--radius-sm)0 0 var(--radius-sm);background:var(--surface);color:var(--ink);transition:border-color var(--duration-fast);border-right:none;outline:none;font-size:.93rem}.MobileAuthSheet-module__wGEm0W__emailInput:focus{border-color:var(--accent);box-shadow:var(--shadow-sm)}.MobileAuthSheet-module__wGEm0W__emailInput::placeholder{color:var(--ink-muted);opacity:.6}.MobileAuthSheet-module__wGEm0W__sendBtn{border-radius:0 var(--radius-sm)var(--radius-sm)0;border:1.5px solid var(--accent);background:var(--accent);width:2.75rem;height:2.75rem;color:var(--surface);cursor:pointer;transition:opacity var(--duration-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.MobileAuthSheet-module__wGEm0W__sendBtn:disabled{opacity:.6;cursor:default}.MobileAuthSheet-module__wGEm0W__hint{font-family:var(--font-main);color:var(--muted);text-align:right;margin-top:4px;font-size:11px}.MobileAuthSheet-module__wGEm0W__errorHint{color:var(--danger);}.MobileAuthSheet-module__wGEm0W__legalHint{color:var(--muted);text-align:center;margin:calc(var(--unit)*1.5)0 0;font-size:.68rem}.MobileAuthSheet-module__wGEm0W__legalHint a{color:var(--accent);text-decoration:underline}.MobileAuthSheet-module__wGEm0W__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite MobileAuthSheet-module__wGEm0W__spin}@keyframes MobileAuthSheet-module__wGEm0W__spin{to{transform:rotate(360deg)}}.MobileAuthSheet-module__wGEm0W__codeLabel{font-family:var(--font-main);color:var(--ink);margin-bottom:calc(var(--unit)*1);font-size:.82rem;font-weight:500}.MobileAuthSheet-module__wGEm0W__codeHint{font-family:var(--font-main);color:var(--ink-muted);margin:0 0 calc(var(--unit)*1.5);font-size:11px}.MobileAuthSheet-module__wGEm0W__codeRow{justify-content:center;align-items:center;gap:8px;display:flex}.MobileAuthSheet-module__wGEm0W__codeDigit{text-align:center;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:2.5rem;height:3rem;color:var(--ink);transition:border-color var(--duration-fast);caret-color:var(--accent);outline:none;font-family:Courier New,monospace;font-size:22px;font-weight:700}.MobileAuthSheet-module__wGEm0W__codeDigit:focus{border-color:var(--accent);box-shadow:var(--shadow-sm)}.MobileAuthSheet-module__wGEm0W__resendLink{font-family:var(--font-main);color:var(--ink-muted);cursor:pointer;margin-top:calc(var(--unit)*1.5);text-align:center;width:100%;transition:color var(--duration-fast);background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline;display:block}.MobileAuthSheet-module__wGEm0W__resendLink:hover{color:var(--accent)}.MobileAuthSheet-module__wGEm0W__accountItem{width:100%;padding:calc(var(--unit)*1.5)0;border:none;border-bottom:1px solid var(--border);font-family:var(--font-main);color:var(--ink);cursor:pointer;min-height:44px;transition:color var(--duration-fast);background:0 0;align-items:center;gap:8px;font-size:.85rem;display:flex}.MobileAuthSheet-module__wGEm0W__accountItem:last-child{border-bottom:none}.MobileAuthSheet-module__wGEm0W__accountItem:hover{color:var(--accent)}.MobileAuthSheet-module__wGEm0W__accountDanger{color:var(--danger)}.MobileAuthSheet-module__wGEm0W__accountDanger:hover{color:var(--danger);opacity:.8}@media (pointer:coarse){.MobileAuthSheet-module__wGEm0W__resendLink{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.MobileAuthSheet-module__wGEm0W__panel{animation:none}}
.ColorSwapPopover-module__dUR61a__popover{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:calc(var(--unit)*2.5);min-width:200px;animation:ColorSwapPopover-module__dUR61a__popIn var(--duration-fast)var(--ease-bounce);position:absolute}@keyframes ColorSwapPopover-module__dUR61a__popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.ColorSwapPopover-module__dUR61a__current{align-items:center;gap:calc(var(--unit)*2);display:flex}.ColorSwapPopover-module__dUR61a__swatch{border-radius:var(--radius-sm);border:1px solid #0000000f;flex-shrink:0;width:28px;height:28px}.ColorSwapPopover-module__dUR61a__info{flex-direction:column;gap:2px;display:flex}.ColorSwapPopover-module__dUR61a__code{color:var(--ink);font-size:.8rem;font-weight:600}.ColorSwapPopover-module__dUR61a__name{color:var(--muted);font-size:.7rem;font-weight:300}.ColorSwapPopover-module__dUR61a__divider{background:var(--border);height:1px;margin:calc(var(--unit)*2)0}.ColorSwapPopover-module__dUR61a__swapSection{gap:calc(var(--unit)*1.5);flex-direction:column;display:flex}.ColorSwapPopover-module__dUR61a__swapLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:400}.ColorSwapPopover-module__dUR61a__alternatives{gap:calc(var(--unit)*1.5);display:flex}.ColorSwapPopover-module__dUR61a__altItem{align-items:center;gap:calc(var(--unit)*.5);flex-direction:column;display:flex}.ColorSwapPopover-module__dUR61a__altCode{color:var(--muted);font-size:.6rem;line-height:1}.ColorSwapPopover-module__dUR61a__altSwatch{cursor:pointer;width:32px;height:32px;transition:transform var(--duration-fast)var(--ease-out),border-color var(--duration-fast),box-shadow var(--duration-fast);box-shadow:var(--shadow-sm);border:2px solid #0000;border-radius:50%}.ColorSwapPopover-module__dUR61a__altSwatch:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:scale(1.15)}.ColorSwapPopover-module__dUR61a__altSwatch:active{transform:scale(.92)}@media (max-width:960px){.ColorSwapPopover-module__dUR61a__altSwatch{width:40px;height:40px}}.ColorSwapPopover-module__dUR61a__backdrop{background:var(--backdrop);z-index:49;position:fixed;inset:0}.ColorSwapPopover-module__dUR61a__bottomSheet{background:var(--surface);border-top:1px solid var(--border);border-radius:var(--radius)var(--radius)0 0;z-index:50;padding:calc(var(--unit)*2)calc(var(--unit)*3)calc(var(--unit)*4);padding-bottom:max(calc(var(--unit)*4),env(safe-area-inset-bottom));animation:ColorSwapPopover-module__dUR61a__sheetSlideUp var(--duration-normal)var(--ease-out);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000026}@keyframes ColorSwapPopover-module__dUR61a__sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.ColorSwapPopover-module__dUR61a__sheetHandle{padding:0 0 calc(var(--unit)*2);justify-content:center;display:flex}.ColorSwapPopover-module__dUR61a__sheetHandleBar{background:var(--border);border-radius:2px;width:36px;height:4px}.ColorSwapPopover-module__dUR61a__bottomSheet .ColorSwapPopover-module__dUR61a__alternatives{gap:calc(var(--unit)*2)}.ColorSwapPopover-module__dUR61a__bottomSheet .ColorSwapPopover-module__dUR61a__altSwatch{width:44px;height:44px}@media (prefers-reduced-motion:reduce){.ColorSwapPopover-module__dUR61a__popover,.ColorSwapPopover-module__dUR61a__bottomSheet{animation:none}}
.DimensionModeSelect-module__r4WQza__group{border:1px solid var(--border);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.DimensionModeSelect-module__r4WQza__btn{min-width:32px;height:28px;padding:0 var(--unit);background:var(--surface);color:var(--muted);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast);border:none;justify-content:center;align-items:center;gap:4px;display:inline-flex}.DimensionModeSelect-module__r4WQza__btn:not(:last-child){border-right:1px solid var(--border)}.DimensionModeSelect-module__r4WQza__btn:hover:not(.DimensionModeSelect-module__r4WQza__active){background:var(--surface-2);color:var(--ink)}.DimensionModeSelect-module__r4WQza__active{background:var(--accent);color:var(--surface)}@media (pointer:coarse){.DimensionModeSelect-module__r4WQza__btn{min-width:44px;min-height:44px}}.DimensionModeSelect-module__r4WQza__label{letter-spacing:.02em;font-size:.65rem;font-weight:600}
.StepperInput-module__MksV-W__wrapper{align-items:center;gap:calc(var(--unit)*.5);flex-direction:column;display:flex}.StepperInput-module__MksV-W__label{color:var(--ink);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:500}.StepperInput-module__MksV-W__stepper{border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);align-items:center;display:flex;overflow:hidden}.StepperInput-module__MksV-W__btn{background:var(--surface-2);width:36px;height:36px;color:var(--ink);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;font-size:.95rem;font-weight:400;display:flex}.StepperInput-module__MksV-W__btn:hover{background:var(--accent-light);color:var(--accent)}.StepperInput-module__MksV-W__btn:active{background:var(--accent);color:var(--surface);transform:scale(.92)}.StepperInput-module__MksV-W__btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:auto}.StepperInput-module__MksV-W__input{text-align:center;border:none;border-left:1px solid var(--border);border-right:1px solid var(--border);width:56px;height:36px;color:var(--ink);-moz-appearance:textfield;transition:background var(--duration-normal)var(--ease-out);background:0 0;font-size:.9rem;font-weight:600}.StepperInput-module__MksV-W__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.StepperInput-module__MksV-W__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.StepperInput-module__MksV-W__input:focus{outline:none}.StepperInput-module__MksV-W__input:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-light)}.StepperInput-module__MksV-W__unit{color:var(--muted);letter-spacing:.06em;font-size:.65rem;font-weight:300}.StepperInput-module__MksV-W__atLimit{animation:StepperInput-module__MksV-W__limitShake var(--duration-slow)ease-out;border-color:var(--danger)}@keyframes StepperInput-module__MksV-W__limitShake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.StepperInput-module__MksV-W__rangeHint{color:var(--muted);text-align:center;opacity:0;max-height:0;transition:opacity var(--duration-fast)var(--ease-out),max-height var(--duration-fast)var(--ease-out);font-size:.6rem;overflow:hidden}.StepperInput-module__MksV-W__rangeHintVisible{opacity:1;max-height:20px;margin-top:calc(var(--unit)*.5)}@media (pointer:coarse){.StepperInput-module__MksV-W__btn{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.StepperInput-module__MksV-W__atLimit{animation:none}}
.ControlsPanel-module__V-NTOa__section{gap:calc(var(--unit)*1.5);animation:ControlsPanel-module__V-NTOa__sectionFadeIn var(--duration-normal)var(--ease-out)both;flex-direction:column;display:flex}.ControlsPanel-module__V-NTOa__section:nth-child(2){animation-delay:40ms}.ControlsPanel-module__V-NTOa__section:nth-child(3){animation-delay:80ms}.ControlsPanel-module__V-NTOa__section:nth-child(4){animation-delay:.12s}.ControlsPanel-module__V-NTOa__section:nth-child(5){animation-delay:.16s}.ControlsPanel-module__V-NTOa__section:nth-child(6){animation-delay:.2s}@keyframes ControlsPanel-module__V-NTOa__sectionFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ControlsPanel-module__V-NTOa__section.ControlsPanel-module__V-NTOa__mobile{animation:none}.ControlsPanel-module__V-NTOa__sectionTitle{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:.72rem;font-weight:400}.ControlsPanel-module__V-NTOa__stepperRow{justify-content:center;align-items:center;gap:calc(var(--unit)*2);display:flex}.ControlsPanel-module__V-NTOa__times{color:var(--muted);padding-top:calc(var(--unit)*2);font-size:1rem}.ControlsPanel-module__V-NTOa__totalStitches{text-align:center;color:var(--muted);font-size:.72rem;font-weight:300}.ControlsPanel-module__V-NTOa__generateBtn{width:100%;margin:calc(var(--unit)*2)0;padding:calc(var(--unit)*2.5)calc(var(--unit)*3);background:var(--accent);border-radius:var(--radius);letter-spacing:.04em;color:var(--surface);cursor:pointer;min-height:44px;transition:background var(--duration-normal),transform var(--duration-fast),box-shadow var(--duration-normal);border:none;font-size:.9rem;font-weight:600;position:relative;overflow:hidden}.ControlsPanel-module__V-NTOa__generateBtn:hover{background:var(--accent-hover);box-shadow:var(--shadow-md)}.ControlsPanel-module__V-NTOa__generateBtn:active{transform:scale(.97)}.ControlsPanel-module__V-NTOa__generateBtn.ControlsPanel-module__V-NTOa__mobile{min-height:48px}.ControlsPanel-module__V-NTOa__generateBtn.ControlsPanel-module__V-NTOa__mobile:active{transform:scale(.98)}.ControlsPanel-module__V-NTOa__generateDirty{animation:1.5s ease-in-out infinite ControlsPanel-module__V-NTOa__dirtyPulse}@keyframes ControlsPanel-module__V-NTOa__dirtyPulse{0%,to{box-shadow:0 0 0 0 var(--accent-light,#c0845e4d)}50%{box-shadow:0 0 0 6px var(--accent-light,#c0845e4d)}}.ControlsPanel-module__V-NTOa__divider{background:var(--border);height:1px;animation:ControlsPanel-module__V-NTOa__dividerDraw var(--duration-normal)var(--ease-out)both}@keyframes ControlsPanel-module__V-NTOa__dividerDraw{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.ControlsPanel-module__V-NTOa__divider.ControlsPanel-module__V-NTOa__mobile{animation:none}.ControlsPanel-module__V-NTOa__fineTuneToggle{width:100%;padding:calc(var(--unit)*1.5)0;color:var(--muted);cursor:pointer;transition:color var(--duration-fast);background:0 0;border:none;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:500;display:flex}.ControlsPanel-module__V-NTOa__fineTuneToggle:hover{color:var(--ink)}.ControlsPanel-module__V-NTOa__fineTuneToggle.ControlsPanel-module__V-NTOa__mobile{min-height:44px}.ControlsPanel-module__V-NTOa__chevron{transition:transform var(--duration-normal)var(--ease-out);font-size:.6rem}.ControlsPanel-module__V-NTOa__chevron.ControlsPanel-module__V-NTOa__mobile{color:var(--muted);font-size:.68rem}.ControlsPanel-module__V-NTOa__adjustPreview{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);width:100%;height:80px}.ControlsPanel-module__V-NTOa__resetBtn{border:1px solid var(--border);border-radius:var(--radius-sm);padding:calc(var(--unit)*.75)calc(var(--unit)*2);color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);background:0 0;align-self:flex-start;font-size:.72rem;font-weight:400}.ControlsPanel-module__V-NTOa__resetBtn:hover{border-color:var(--accent);color:var(--accent)}.ControlsPanel-module__V-NTOa__resetBtn:active{transform:scale(.96)}.ControlsPanel-module__V-NTOa__brandSelect{width:100%;padding:calc(var(--unit)*1.5)calc(var(--unit)*2);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;transition:border-color var(--duration-fast);font-size:.85rem}.ControlsPanel-module__V-NTOa__brandSelect:hover{border-color:var(--accent)}.ControlsPanel-module__V-NTOa__brandSelect:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer:coarse){.ControlsPanel-module__V-NTOa__resetBtn{min-width:44px;min-height:44px}}
.PaletteFilterStrip-module__tBfaga__strip{gap:calc(var(--unit)*.75);padding:calc(var(--unit)*.5)calc(var(--unit)*1);scrollbar-width:none;display:flex;overflow-x:auto}.PaletteFilterStrip-module__tBfaga__strip::-webkit-scrollbar{display:none}.PaletteFilterStrip-module__tBfaga__chip{align-items:center;gap:calc(var(--unit)*.25);padding:calc(var(--unit)*.4);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--duration-fast);font-family:var(--font);background:0 0;border:2px solid #0000;flex-direction:column;flex-shrink:0;display:flex}.PaletteFilterStrip-module__tBfaga__chip:hover{border-color:var(--border)}.PaletteFilterStrip-module__tBfaga__active{border-color:var(--accent)}.PaletteFilterStrip-module__tBfaga__swatches{border-radius:2px;gap:1px;display:flex;overflow:hidden}.PaletteFilterStrip-module__tBfaga__swatch{width:10px;height:18px;display:block}.PaletteFilterStrip-module__tBfaga__label{color:var(--muted);white-space:nowrap;font-size:.65rem}.PaletteFilterStrip-module__tBfaga__active .PaletteFilterStrip-module__tBfaga__label{color:var(--ink)}@media (pointer:coarse){.PaletteFilterStrip-module__tBfaga__chip{min-width:44px;min-height:44px}}
.ToolFlyout-module__ZJsPlq__flyout{align-items:center;gap:calc(var(--unit)*.5);padding:calc(var(--unit)*.75);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:30;flex-wrap:wrap;display:flex;position:absolute}.ToolFlyout-module__ZJsPlq__flyoutRight{top:0;left:calc(100% + 8px)}.ToolFlyout-module__ZJsPlq__flyoutAbove{max-width:calc(100vw - var(--unit)*3);bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}
.EditorToolbar-module__DUDgVG__toolbar{align-items:center;gap:calc(var(--unit)*.5);padding:calc(var(--unit)*.75);background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);border-radius:var(--radius);display:flex}.EditorToolbar-module__DUDgVG__vertical{border-right:1px solid var(--border);z-index:1;flex-direction:column}.EditorToolbar-module__DUDgVG__horizontal{bottom:calc(var(--unit)*2);z-index:20;flex-direction:row;position:fixed;left:50%;transform:translate(-50%)}.EditorToolbar-module__DUDgVG__groupWrap{position:relative}.EditorToolbar-module__DUDgVG__toolBtn{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:40px;height:40px;color:var(--ink);transition:border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast);justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:relative}.EditorToolbar-module__DUDgVG__toolBtn:active{transform:scale(.9)}.EditorToolbar-module__DUDgVG__vertical .EditorToolbar-module__DUDgVG__toolBtn{width:56px;height:auto;min-height:40px;padding:var(--unit).27rem 3px;flex-direction:column;gap:1px}.EditorToolbar-module__DUDgVG__horizontal .EditorToolbar-module__DUDgVG__toolBtn{width:auto;min-width:36px;height:auto;min-height:44px;padding:4px var(--unit)2px;flex-direction:column;gap:1px}.EditorToolbar-module__DUDgVG__active{background:var(--accent);color:var(--surface);border-color:var(--accent)}.EditorToolbar-module__DUDgVG__toolLabel{letter-spacing:.02em;color:var(--muted);font-size:.55rem;font-weight:500;line-height:1}.EditorToolbar-module__DUDgVG__toolLabelSm{font-size:.47rem}.EditorToolbar-module__DUDgVG__active .EditorToolbar-module__DUDgVG__toolLabel{color:var(--surface)}@media (hover:hover){.EditorToolbar-module__DUDgVG__toolBtn:not(.EditorToolbar-module__DUDgVG__active):hover{border-color:var(--accent);background:var(--accent-light)}}@media (prefers-reduced-motion:reduce){.EditorToolbar-module__DUDgVG__toolBtn{transition:none}}.EditorToolbar-module__DUDgVG__sliderGroup{flex-direction:column;gap:2px;padding:0 8px;display:flex}.EditorToolbar-module__DUDgVG__sliderLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.EditorToolbar-module__DUDgVG__slider{width:100%;accent-color:var(--accent);cursor:pointer}.EditorToolbar-module__DUDgVG__modeGroup{justify-content:center;gap:2px;padding:0 4px;display:flex}.EditorToolbar-module__DUDgVG__modeBtn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;background:0 0;flex:0 auto;padding:4px 10px;font-size:.65rem}.EditorToolbar-module__DUDgVG__modeBtn.EditorToolbar-module__DUDgVG__active{background:var(--accent);color:var(--surface);border-color:var(--accent)}.EditorToolbar-module__DUDgVG__dimmed{opacity:.4}.EditorToolbar-module__DUDgVG__flyoutHint{color:var(--muted);white-space:nowrap;padding:4px 8px;font-size:.75rem}.EditorToolbar-module__DUDgVG__divider{background:var(--border);width:80%;height:1px;margin:calc(var(--unit)*.25)0}.EditorToolbar-module__DUDgVG__horizontal .EditorToolbar-module__DUDgVG__divider{width:1px;height:60%;margin:0 calc(var(--unit)*.25)}@media (pointer:coarse){.EditorToolbar-module__DUDgVG__vertical .EditorToolbar-module__DUDgVG__toolBtn{min-height:44px}.EditorToolbar-module__DUDgVG__modeBtn{min-width:44px;min-height:44px}}
.ContextualPopover-module__Tat_Fa__popover{top:calc(var(--unit)*2);left:calc(var(--unit)*2);z-index:15;background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);pointer-events:auto;align-items:center;gap:10px;padding:8px 14px;display:flex;position:absolute}.ContextualPopover-module__Tat_Fa__mobile{left:50%;transform:translate(-50%)}.ContextualPopover-module__Tat_Fa__divider{background:var(--border);flex-shrink:0;width:1px;height:20px}.ContextualPopover-module__Tat_Fa__sizeRow{align-items:center;gap:3px;display:flex}.ContextualPopover-module__Tat_Fa__sizeBtn{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.ContextualPopover-module__Tat_Fa__sizeBtn.ContextualPopover-module__Tat_Fa__active{background:var(--accent);border-color:var(--accent)}.ContextualPopover-module__Tat_Fa__sizeIcon{background:var(--ink);border-radius:2px;display:block}.ContextualPopover-module__Tat_Fa__sizeBtn.ContextualPopover-module__Tat_Fa__active .ContextualPopover-module__Tat_Fa__sizeIcon{background:var(--surface)}.ContextualPopover-module__Tat_Fa__modeBtn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;background:0 0;padding:4px 10px;font-size:.65rem}.ContextualPopover-module__Tat_Fa__modeBtn.ContextualPopover-module__Tat_Fa__active{background:var(--accent);color:var(--surface);border-color:var(--accent)}.ContextualPopover-module__Tat_Fa__fixAllBtn{background:var(--accent);color:var(--surface);border-radius:var(--unit);padding:4px calc(var(--unit)*2);cursor:pointer;border:none;font-size:.7rem;font-weight:600}.ContextualPopover-module__Tat_Fa__fixAllBtn:hover{opacity:.9}.ContextualPopover-module__Tat_Fa__sliderGroup{align-items:center;gap:var(--unit);display:flex}.ContextualPopover-module__Tat_Fa__sliderLabel{color:var(--muted);white-space:nowrap;font-size:.6rem}.ContextualPopover-module__Tat_Fa__slider{width:70px;accent-color:var(--accent);cursor:pointer}.ContextualPopover-module__Tat_Fa__swatch{border-radius:var(--radius-sm);border:2px solid var(--border);cursor:pointer;flex-shrink:0;width:20px;height:20px}.ContextualPopover-module__Tat_Fa__swatchCode{color:var(--muted);white-space:nowrap;font-size:.6rem}@media (pointer:coarse){.ContextualPopover-module__Tat_Fa__sizeBtn,.ContextualPopover-module__Tat_Fa__modeBtn{min-width:44px;min-height:44px}.ContextualPopover-module__Tat_Fa__fixAllBtn{min-height:44px}.ContextualPopover-module__Tat_Fa__swatch{min-width:36px;min-height:36px}}
.SmartDefaultsBanner-module__6mrbdq__banner{justify-content:center;align-items:center;gap:calc(var(--unit)*.5)calc(var(--unit)*1);padding:calc(var(--unit)*.75)calc(var(--unit)*1.5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:10;color:var(--ink);flex-wrap:wrap;font-size:.82rem;display:flex}.SmartDefaultsBanner-module__6mrbdq__desktop{top:calc(var(--unit)*1.5);position:absolute;left:50%;transform:translate(-50%)}.SmartDefaultsBanner-module__6mrbdq__mobile{bottom:calc(var(--unit)*1.5);max-width:calc(100% - var(--unit)*3);position:absolute;left:50%;transform:translate(-50%)}.SmartDefaultsBanner-module__6mrbdq__label{color:var(--muted)}.SmartDefaultsBanner-module__6mrbdq__applyBtn{background:var(--accent);color:var(--surface);border-radius:var(--radius-sm);padding:calc(var(--unit)*.4)calc(var(--unit)*1.2);font-family:var(--font);cursor:pointer;transition:opacity var(--duration-fast);border:none;font-size:.78rem;font-weight:600}.SmartDefaultsBanner-module__6mrbdq__applyBtn:hover{opacity:.85}.SmartDefaultsBanner-module__6mrbdq__dismissBtn{border:1px solid var(--border);border-radius:var(--radius-sm);padding:calc(var(--unit)*.4)calc(var(--unit)*1.2);font-family:var(--font);color:var(--muted);cursor:pointer;transition:color var(--duration-fast),border-color var(--duration-fast);background:0 0;font-size:.78rem}.SmartDefaultsBanner-module__6mrbdq__dismissBtn:hover{border-color:var(--muted)}@media (pointer:coarse){.SmartDefaultsBanner-module__6mrbdq__applyBtn,.SmartDefaultsBanner-module__6mrbdq__dismissBtn{min-width:44px;min-height:44px}}
.CraftBackground-module__PlAYYG__backdrop{z-index:-1;pointer-events:none;animation:CraftBackground-module__PlAYYG__backdropFadeIn .8s var(--ease-out)both;position:fixed;inset:0;overflow:hidden}.CraftBackground-module__PlAYYG__blob{filter:blur(5rem);will-change:opacity;border-radius:50%;position:absolute}.CraftBackground-module__PlAYYG__blobRose{opacity:.09;background:#d4607a;width:26rem;height:26rem;top:-6rem;left:8%}.CraftBackground-module__PlAYYG__blobGold{opacity:.08;background:#d4a843;width:22rem;height:22rem;top:15%;right:-4rem}.CraftBackground-module__PlAYYG__blobPlum{opacity:.07;background:#8b5e9b;width:20rem;height:20rem;bottom:5%;left:15%}.CraftBackground-module__PlAYYG__blobSage{opacity:.07;background:#6b9e7a;width:18rem;height:18rem;bottom:-4rem;right:20%}.CraftBackground-module__PlAYYG__embroidery{width:100%;height:100%;position:absolute;inset:0}.CraftBackground-module__PlAYYG__emStitch{animation:20s ease-in-out infinite CraftBackground-module__PlAYYG__stitchFloat}.CraftBackground-module__PlAYYG__em1{animation-delay:0s}.CraftBackground-module__PlAYYG__em2{animation-delay:2.5s}.CraftBackground-module__PlAYYG__em3{animation-delay:5s}.CraftBackground-module__PlAYYG__em4{animation-delay:7.5s}.CraftBackground-module__PlAYYG__em5{animation-delay:1.5s}@keyframes CraftBackground-module__PlAYYG__stitchFloat{0%,to{transform:translate(0)}25%{transform:translate(4px,-3px)}50%{transform:translate(-2px,5px)}75%{transform:translate(3px,2px)}}@keyframes CraftBackground-module__PlAYYG__backdropFadeIn{0%{opacity:0}to{opacity:1}}[data-theme=dark] .CraftBackground-module__PlAYYG__blobRose{opacity:.06}[data-theme=dark] .CraftBackground-module__PlAYYG__blobGold,[data-theme=dark] .CraftBackground-module__PlAYYG__blobPlum{opacity:.05}[data-theme=dark] .CraftBackground-module__PlAYYG__blobSage{opacity:.04}[data-theme=dark] .CraftBackground-module__PlAYYG__emStitch{opacity:.15}@media (prefers-reduced-motion:reduce){.CraftBackground-module__PlAYYG__backdrop,.CraftBackground-module__PlAYYG__emStitch{animation:none}}
.SketchBackground-module__Z_4xVa__canvas{z-index:-1;pointer-events:none;position:fixed;top:0;left:0}
.MoreMenu-module__bJSKVq__moreBackdrop{z-index:29;position:fixed;inset:0}.MoreMenu-module__bJSKVq__moreDropdown{top:calc(100% + var(--unit));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:12rem;box-shadow:var(--shadow-lg);z-index:30;padding:calc(var(--unit)*.5);animation:MoreMenu-module__bJSKVq__dropIn var(--duration-fast)var(--ease-out)both;position:absolute;right:0}@keyframes MoreMenu-module__bJSKVq__dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.MoreMenu-module__bJSKVq__moreDropdownItem{align-items:center;gap:calc(var(--unit)*1.5);width:100%;padding:calc(var(--unit)*1.5)calc(var(--unit)*2);border-radius:var(--radius-sm);color:var(--ink);font-family:var(--font);cursor:pointer;transition:background var(--duration-fast);background:0 0;border:none;font-size:.78rem;display:flex}.MoreMenu-module__bJSKVq__moreDropdownItem:hover{background:var(--surface-2)}.MoreMenu-module__bJSKVq__moreDropdownDivider{background:var(--border);height:1px;margin:4px 0}.MoreMenu-module__bJSKVq__badge{background:var(--accent);min-width:18px;height:18px;color:var(--surface);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:.65rem;font-weight:600;line-height:1;display:inline-flex}.MoreMenu-module__bJSKVq__checkmark{color:var(--accent);margin-left:auto;font-size:.82rem;font-weight:600}.MoreMenu-module__bJSKVq__proBadge{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);opacity:.8;margin-left:auto;font-size:.6rem;font-weight:700}@media (pointer:coarse){.MoreMenu-module__bJSKVq__moreDropdownItem{min-height:44px}}
.DesktopLayout-module__g-GNCG__main{max-width:960px;padding:calc(var(--unit)*5)calc(var(--unit)*5);justify-content:center;gap:calc(var(--unit)*4);flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.DesktopLayout-module__g-GNCG__mainExpanded{flex-direction:column;height:100dvh;display:flex}.DesktopLayout-module__g-GNCG__header{max-width:960px;padding:calc(var(--unit)*2.5)calc(var(--unit)*4);z-index:10;pointer-events:none;justify-content:space-between;align-items:center;margin-left:auto;margin-right:auto;display:flex;position:fixed;top:0;left:0;right:0}.DesktopLayout-module__g-GNCG__header>*{pointer-events:auto}.DesktopLayout-module__g-GNCG__headerExpanded{padding:calc(var(--unit)*2)calc(var(--unit)*3);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.DesktopLayout-module__g-GNCG__headerLeft{align-items:center;gap:calc(var(--unit)*1.5);display:flex}.DesktopLayout-module__g-GNCG__headerDivider{background:var(--border);flex-shrink:0;width:1px;height:20px}.DesktopLayout-module__g-GNCG__headerRight{align-items:center;gap:calc(var(--unit)*1.5);display:flex}.DesktopLayout-module__g-GNCG__backBtn{padding:var(--unit)14px var(--unit)10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast);align-items:center;gap:4px;font-size:.78rem;font-weight:500;display:inline-flex}.DesktopLayout-module__g-GNCG__backBtn:hover{border-color:var(--accent);background:var(--accent-light);color:var(--ink)}.DesktopLayout-module__g-GNCG__backBtn:active{transform:scale(.96)}.DesktopLayout-module__g-GNCG__logo{align-items:baseline;gap:.1em;display:flex}.DesktopLayout-module__g-GNCG__logoText{font-family:var(--font-logo);letter-spacing:.06em;color:var(--ink);font-size:1.43rem;font-style:normal;font-weight:400}.DesktopLayout-module__g-GNCG__logoDot{color:var(--accent);font-weight:600}.DesktopLayout-module__g-GNCG__logoCom{color:var(--muted);letter-spacing:.02em;font-size:.75em;font-weight:300}.DesktopLayout-module__g-GNCG__uploadArea{position:relative}.DesktopLayout-module__g-GNCG__headerActions{gap:calc(var(--unit)*2);flex-wrap:wrap;align-items:center;display:flex}.DesktopLayout-module__g-GNCG__navAction{background:var(--accent);border-radius:var(--radius-sm);padding:calc(var(--unit)*1)calc(var(--unit)*2.5);letter-spacing:.04em;color:var(--surface);transition:background var(--duration-normal),transform var(--duration-fast);border:none;font-size:.75rem;font-weight:500}.DesktopLayout-module__g-GNCG__navAction:hover{background:var(--accent-hover)}.DesktopLayout-module__g-GNCG__navAction:active{transform:scale(.96)}.DesktopLayout-module__g-GNCG__printBtn{align-items:center;gap:var(--unit);padding:var(--unit)16px;background:var(--accent);color:var(--surface);letter-spacing:.02em;cursor:pointer;transition:background var(--duration-fast),box-shadow var(--duration-fast),transform var(--duration-fast);border:none;border-radius:999px;font-size:.78rem;font-weight:600;display:inline-flex}.DesktopLayout-module__g-GNCG__printBtn:hover{background:var(--accent-hover);box-shadow:var(--shadow-md);transform:scale(1.03)}.DesktopLayout-module__g-GNCG__printBtn:active{transform:scale(.97)}.DesktopLayout-module__g-GNCG__printIcon{border:1.5px solid;border-radius:1px;width:12px;height:14px;display:inline-block;position:relative}.DesktopLayout-module__g-GNCG__printIcon:before{content:"";background:var(--accent);border-bottom:1.5px solid;border-left:1.5px solid;width:5px;height:5px;position:absolute;top:-1.5px;right:-1.5px}.DesktopLayout-module__g-GNCG__printBtn:hover .DesktopLayout-module__g-GNCG__printIcon:before{background:var(--accent-hover)}.DesktopLayout-module__g-GNCG__workspace{flex:1;grid-template-columns:4.8rem 1fr 20rem;display:grid;overflow:hidden}.DesktopLayout-module__g-GNCG__canvasArea{flex:1;padding:0;position:relative;overflow:hidden}.DesktopLayout-module__g-GNCG__sidePanel{background:var(--surface-3);-webkit-backdrop-filter:var(--panel-blur);border-left:1px solid var(--border);animation:DesktopLayout-module__g-GNCG__panelSlideIn var(--duration-slow)var(--ease-out)both;overflow:hidden auto}@keyframes DesktopLayout-module__g-GNCG__panelSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.DesktopLayout-module__g-GNCG__panelContent{padding:calc(var(--unit)*3);gap:calc(var(--unit)*3);flex-direction:column;display:flex}.DesktopLayout-module__g-GNCG__divider{background:var(--border);height:1px}.DesktopLayout-module__g-GNCG__legendSection{flex:1;overflow-y:auto}.DesktopLayout-module__g-GNCG__cards{gap:calc(var(--unit)*4);grid-template-columns:repeat(3,1fr);display:grid}.DesktopLayout-module__g-GNCG__hidden{display:none}.DesktopLayout-module__g-GNCG__cardsFadeOut,.DesktopLayout-module__g-GNCG__expandedFadeOut{opacity:0;transition:opacity var(--duration-fast)var(--ease-out),transform var(--duration-fast)var(--ease-out);pointer-events:none;transform:scale(.98)}.DesktopLayout-module__g-GNCG__historyBtn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:32px;height:32px;color:var(--ink);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast);justify-content:center;align-items:center;font-size:.85rem;display:inline-flex}.DesktopLayout-module__g-GNCG__historyBtn:hover:not(:disabled){background:var(--surface-2);border-color:var(--accent)}.DesktopLayout-module__g-GNCG__historyDisabled{opacity:.3;cursor:not-allowed}.DesktopLayout-module__g-GNCG__savedConfirm{color:var(--accent);padding:var(--unit)14px;animation:DesktopLayout-module__g-GNCG__savedPop .3s var(--ease-out)both;font-size:.78rem;font-weight:500}@keyframes DesktopLayout-module__g-GNCG__savedPop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.DesktopLayout-module__g-GNCG__saveBtn{align-items:center;gap:var(--unit);padding:var(--unit)14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);font-size:.78rem;font-weight:500;display:inline-flex}.DesktopLayout-module__g-GNCG__saveBtn:hover{border-color:var(--accent);background:var(--accent-light)}.DesktopLayout-module__g-GNCG__saveBtn:active{transform:scale(.96)}.DesktopLayout-module__g-GNCG__saveBtnUnsaved{position:relative}.DesktopLayout-module__g-GNCG__saveBtnUnsaved:after{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.DesktopLayout-module__g-GNCG__myPatternsBtn{align-items:center;gap:var(--unit);padding:var(--unit)14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast);font-size:.78rem;font-weight:500;display:inline-flex}.DesktopLayout-module__g-GNCG__myPatternsBtn:hover{border-color:var(--accent);background:var(--accent-light);color:var(--ink)}.DesktopLayout-module__g-GNCG__badge{background:var(--accent);min-width:18px;height:18px;color:var(--surface);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:.65rem;font-weight:600;line-height:1;display:inline-flex}.DesktopLayout-module__g-GNCG__moreBtn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:32px;height:32px;color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast);justify-content:center;align-items:center;display:inline-flex}.DesktopLayout-module__g-GNCG__moreBtn:hover{border-color:var(--accent);color:var(--ink)}.DesktopLayout-module__g-GNCG__themeToggleBtn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:32px;height:32px;color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast);justify-content:center;align-items:center;display:inline-flex}.DesktopLayout-module__g-GNCG__themeToggleBtn:hover{border-color:var(--accent);color:var(--ink)}.DesktopLayout-module__g-GNCG__authBtn{align-items:center;gap:var(--unit);padding:var(--unit)14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);cursor:pointer;transition:border-color var(--duration-fast),background var(--duration-fast),color var(--duration-fast);font-size:.78rem;font-weight:500;display:inline-flex}.DesktopLayout-module__g-GNCG__authBtn:hover{border-color:var(--accent);background:var(--accent-light);color:var(--ink)}.DesktopLayout-module__g-GNCG__avatar{background:var(--accent);width:28px;height:28px;color:var(--surface);cursor:pointer;transition:opacity var(--duration-fast);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.68rem;font-weight:600;display:inline-flex}.DesktopLayout-module__g-GNCG__avatar:hover{opacity:.85}.DesktopLayout-module__g-GNCG__recentStrip{gap:calc(var(--unit)*1.5);padding:calc(var(--unit)*.5)0;justify-content:center;display:flex;overflow-x:auto}.DesktopLayout-module__g-GNCG__recentThumb{cursor:pointer;text-align:center;width:64px;transition:transform var(--duration-fast);flex-shrink:0}.DesktopLayout-module__g-GNCG__recentThumb:hover{transform:scale(1.05)}.DesktopLayout-module__g-GNCG__recentThumbImg{border-radius:var(--radius-sm);object-fit:cover;border:1px solid var(--border);width:64px;height:64px}.DesktopLayout-module__g-GNCG__recentThumbAutosave .DesktopLayout-module__g-GNCG__recentThumbImg{border:2px dashed var(--accent)}.DesktopLayout-module__g-GNCG__recentThumbLabel{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:64px;margin-top:3px;font-size:.55rem;overflow:hidden}.DesktopLayout-module__g-GNCG__recentThumbAutosave .DesktopLayout-module__g-GNCG__recentThumbLabel{color:var(--accent)}.DesktopLayout-module__g-GNCG__tagline{text-align:center;font-family:var(--font-title);color:var(--muted);max-width:460px;margin:0 auto calc(var(--unit)*3);font-size:1.15rem;font-style:italic;line-height:1.6}.DesktopLayout-module__g-GNCG__hintText{text-align:center;color:var(--muted);font-size:.72rem}.DesktopLayout-module__g-GNCG__hintLink{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.DesktopLayout-module__g-GNCG__hintLink:hover{color:var(--ink)}@media (pointer:coarse){.DesktopLayout-module__g-GNCG__backBtn{min-height:44px}.DesktopLayout-module__g-GNCG__historyBtn,.DesktopLayout-module__g-GNCG__moreBtn{min-width:44px;min-height:44px}.DesktopLayout-module__g-GNCG__printBtn,.DesktopLayout-module__g-GNCG__saveBtn{min-height:44px}.DesktopLayout-module__g-GNCG__themeToggleBtn{min-width:44px;min-height:44px}.DesktopLayout-module__g-GNCG__authBtn{min-height:44px}}@media (prefers-reduced-motion:reduce){.DesktopLayout-module__g-GNCG__sidePanel,.DesktopLayout-module__g-GNCG__divider,.DesktopLayout-module__g-GNCG__section,.DesktopLayout-module__g-GNCG__generateDirty{animation:none}}.DesktopLayout-module__g-GNCG__printBtn.DesktopLayout-module__g-GNCG__readingActive{background:var(--accent);color:var(--surface)}.DesktopLayout-module__g-GNCG__resetOrigBtn{color:var(--muted);font-family:var(--font);cursor:pointer;padding:calc(var(--unit)*.5)0;opacity:.7;transition:color var(--duration-fast),opacity var(--duration-fast);background:0 0;border:none;font-size:.72rem}.DesktopLayout-module__g-GNCG__resetOrigBtn:hover{color:var(--accent);opacity:1}.DesktopLayout-module__g-GNCG__stitchCountLabel{color:var(--muted);text-align:center;padding:calc(var(--unit)*.5)0;font-size:.78rem;font-family:var(--font)}.DesktopLayout-module__g-GNCG__settingsSection{border-bottom:1px solid var(--border);padding-bottom:calc(var(--unit)*1);margin-bottom:calc(var(--unit)*1)}.DesktopLayout-module__g-GNCG__settingsHeading{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:calc(var(--unit)*1)0;font-size:.75rem;font-weight:600}
.not-found-module__sxuMuG__page{min-height:100dvh;padding:calc(var(--unit)*4);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.not-found-module__sxuMuG__logo{color:var(--ink);margin-bottom:calc(var(--unit)*6);letter-spacing:-.02em;font-size:1.4rem;font-weight:700}@media (min-width:961px){.not-found-module__sxuMuG__logo{font-size:1.22rem}}.not-found-module__sxuMuG__logoDot{color:var(--accent)}.not-found-module__sxuMuG__logoCom{color:var(--muted);font-size:.75em;font-weight:300}.not-found-module__sxuMuG__heading{color:var(--ink);margin:0 0 calc(var(--unit)*2);font-size:1.6rem;font-weight:600}.not-found-module__sxuMuG__message{color:var(--muted);max-width:400px;margin:0 0 calc(var(--unit)*5);font-size:.95rem;line-height:1.6}.not-found-module__sxuMuG__backBtn{padding:calc(var(--unit)*1.5)calc(var(--unit)*4);background:var(--accent);color:var(--surface);border-radius:var(--radius);cursor:pointer;transition:opacity var(--duration-fast)ease;border:none;align-items:center;gap:8px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.not-found-module__sxuMuG__backBtn:hover{opacity:.9}@media (pointer:coarse){.not-found-module__sxuMuG__backBtn{min-width:44px;min-height:44px}}
