.stitch-settings-preview{z-index:1;color:#45504d;background:#f4f7f1;border:1px solid #d4ded4;border-radius:10px;margin:0 0 14px;padding:10px;position:sticky;top:0}.inspector-stitches .advanced-stitch-settings{overflow:clip}@media (width<=860px){.inspector.inspector-stitches,.inspector.inspector-stitches .inspector-scroll{overflow:visible}.inspector-stitches .stitch-settings-preview{top:60px}.inspector-stitches .precise-stitch-control>input[type=range]{scroll-margin-block-start:260px;scroll-margin-block-end:calc(120px + env(safe-area-inset-bottom))}}.stitch-settings-preview figcaption{gap:2px;margin-bottom:8px;font-size:10px;display:grid}.stitch-settings-preview figcaption span{color:#68726c;font-size:9px}.stitch-settings-preview-svg{width:100%;height:auto;max-height:115px;display:block}.stitch-preview-field{fill:#fffdf8;stroke:#d0d8ce}.stitch-preview-row{stroke:#48786f;stroke-width:1.5px;stroke-linecap:round}.stitch-preview-needle{stroke:#bf7b4d;stroke-width:1px}.stitch-preview-stitch{stroke:#bf7b4d;stroke-width:1px;stroke-linecap:round}.stitch-preview-point{fill:#bf7b4d}.stitch-settings-preview-legend{color:#68726c;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 10px;margin-top:7px;font-size:9px;display:flex}.precise-stitch-control>input[type=range]{accent-color:#267578;width:100%;min-height:44px}.stitch-help-button{color:#315a57;min-width:44px;min-height:44px;font:inherit;cursor:pointer;vertical-align:-2px;background:#e5f0ed;border:1px solid #9bbdb7;border-radius:50%;place-items:center;margin-left:3px;padding:0;font-size:11px;font-weight:800;line-height:1;display:inline-grid}.stitch-help-button:focus-visible{outline-offset:2px;outline:2px solid #267578}.stitch-inline-help{color:#5d655f;margin-top:5px;font-size:10px;font-weight:450;line-height:1.4;display:block}.inspector-guided .guided-disclosure{background:#f8f5ed9e;border:1px solid #d0cbc0;border-radius:10px;margin:10px 0}.inspector-guided .guided-disclosure>summary{color:#263c38;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:10px 12px;font-size:12px;list-style-position:inside;display:flex}.inspector-guided .guided-disclosure>summary span{color:#6b6e66;text-align:right;font-size:10px;font-weight:600}.inspector-guided .guided-disclosure-body>.control-section{box-shadow:none;border:0;border-top:1px solid #e0dbd0;border-radius:0;margin:0}.inspector-guided .guided-progress{color:#315a46;background:#e8f0e7;border:1px solid #bdd2bf;border-radius:8px;margin:10px 0;padding:9px 11px;font-size:12px;line-height:1.45}.inspector-guided .guided-compact-control{background:#f8f5ed9e;border:1px solid #d0cbc0;border-radius:10px;margin:10px 0;padding:10px 12px}.inspector-guided .guided-compact-control .toggle-row{margin:0}.inspector-guided .guided-disclosure>summary:focus-visible,.inspector-guided .guided-compact-control input:focus-visible{outline-offset:3px;outline:3px solid #267578}.inspector:not(.inspector-guided) .guided-disclosure>summary{display:none}.inspector:not(.inspector-guided) .guided-disclosure{background:0 0;border:0;margin:0}.inspector:not(.inspector-guided) .guided-disclosure-body>.control-section{border:0}.pp1-mounting-orientation{z-index:8;color:#263c38;pointer-events:none;flex-direction:column;align-items:center;gap:3px;width:max-content;display:flex;position:absolute;top:-39px;left:50%;transform:translate(-50%)}.pp1-mounting-bracket{background:#767b73;border:2px solid #4e554e;border-bottom:0;border-radius:8px 8px 2px 2px;width:74px;height:29px;display:block;position:relative;box-shadow:0 2px 4px #23231f33}.pp1-mounting-bracket:before,.pp1-mounting-bracket:after{content:"";background:#767b73;border:2px solid #4e554e;border-top:0;width:16px;height:9px;position:absolute;bottom:-7px}.pp1-mounting-bracket:before{border-radius:0 0 3px 3px;left:8px}.pp1-mounting-bracket:after{border-radius:0 0 3px 3px;right:8px}.pp1-mounting-bracket span{background:#d8d3c8;border:2px solid #4e554e;border-radius:3px;width:20px;height:11px;position:absolute;top:7px;left:50%;transform:translate(-50%)}.pp1-mounting-label{white-space:nowrap;letter-spacing:.02em;background:#f8f5edf0;border:1px solid #babdb1;border-radius:4px;padding:2px 6px;font-size:12px;font-weight:780;line-height:1.1;box-shadow:0 2px 6px #23231f1f}@media (width<=520px){.pp1-mounting-orientation{top:-35px}.pp1-mounting-label{font-size:11px}}.pp1-empty-orientation{color:#263c38;font-size:12px}.hoop-photo-auto-assist{border:1px solid #c7c8bb;border-radius:8px;margin-top:12px;padding:10px}.hoop-photo-auto-assist summary{cursor:pointer;font-size:13px}.hoop-photo-size{border:1px solid #c7c8bb;border-radius:8px;flex-wrap:wrap;gap:8px;margin:14px 0;padding:8px;display:flex}.hoop-photo-size legend{font-size:14px;font-weight:700}.hoop-photo-size label{cursor:pointer;background:#fffdf7;border-radius:7px;align-items:center;gap:6px;min-height:44px;padding:6px 8px;font-size:14px;display:flex}.hoop-photo-size input{accent-color:#315a46;width:20px;height:20px}.hoop-photo-auto-assist select,.hoop-photo-dialog select{max-width:100%;min-height:44px;font:inherit}.canvas-transform-tools{--transform-border:color-mix(in srgb, currentColor 17%, transparent);border:1px solid var(--transform-border);background:var(--paper,#f8f5ed);color:#202126;border-radius:12px;flex-direction:column;gap:0;width:100%;max-width:100%;display:flex;position:relative;overflow:clip}.canvas-transform-tools-bar{justify-content:center;align-items:center;gap:4px;max-width:100%;padding:3px;display:flex}.canvas-transform-tools-panels,.canvas-transform-history{gap:2px;display:flex}.canvas-transform-history{border-left:1px solid var(--transform-border);padding-left:4px}.canvas-transform-tool-button,.canvas-transform-history-button,.canvas-transform-close,.canvas-transform-step-buttons button,.canvas-transform-rotation-grid button,.canvas-transform-mirror-buttons button,.canvas-transform-reset{border:1px solid var(--transform-border);background:var(--paper,#f8f5ed);min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;border-radius:9px;padding:4px}.canvas-transform-tool-button,.canvas-transform-history-button,.canvas-transform-close,.canvas-transform-reset{flex:0 0 44px;place-items:center;width:44px;height:44px;display:inline-grid}.canvas-transform-tool-button,.canvas-transform-history-button{border-color:#0000}.canvas-transform-tools button:not(:disabled):hover{background:#e7e4dc}.canvas-transform-tool-button.is-active,.canvas-transform-mirror-buttons button[aria-pressed=true]{color:canvas;background:#202126}.canvas-transform-tools button.is-active:not(:disabled):hover,.canvas-transform-tools button[aria-pressed=true]:not(:disabled):hover{background:#34353b}.canvas-transform-tool-button:disabled,.canvas-transform-history-button:disabled,.canvas-transform-close:disabled,.canvas-transform-step-buttons button:disabled,.canvas-transform-rotation-grid button:disabled,.canvas-transform-mirror-buttons button:disabled,.canvas-transform-reset:disabled{cursor:not-allowed;opacity:.45}.canvas-transform-tools :is(button,input,summary):focus-visible{outline-offset:-3px;outline:3px solid #2275d7}.canvas-transform-panel{border-top:1px solid var(--transform-border);overscroll-behavior:contain;width:100%;max-width:100%;max-height:min(340px,100dvh - 180px);scroll-margin-block:12px 76px;overflow-y:auto}.canvas-transform-panel-heading{align-items:center;gap:6px;padding:5px 7px 0;display:flex}.canvas-transform-close{order:2;margin-left:auto}.canvas-transform-reset{order:0}.canvas-transform-panel-heading .canvas-transform-readout{text-align:center;flex:1;order:1}.canvas-transform-panel-content{gap:6px;padding:5px 7px 7px;display:grid}.canvas-transform-field{gap:3px;min-width:0;font-size:11px;display:grid}.canvas-transform-field input[type=number],.canvas-transform-field input[type=text]{border:1px solid var(--transform-border);width:100%;min-width:0;min-height:44px;color:inherit;font:inherit;background:canvas;border-radius:8px;padding:6px 8px;font-size:16px}.canvas-transform-panel-content>input[type=range],.canvas-transform-field input[type=range]{accent-color:currentColor;width:100%;min-height:44px}.canvas-transform-size-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.canvas-transform-step-buttons,.canvas-transform-rotation-grid,.canvas-transform-mirror-buttons{gap:4px;display:grid}.canvas-transform-step-buttons{grid-template-columns:repeat(2,44px)}.canvas-transform-rotation-grid{grid-template-columns:repeat(3,1fr)}.canvas-transform-mirror-buttons{grid-template-columns:repeat(2,1fr)}.canvas-transform-readout,.canvas-transform-help{margin:0;font-size:12px;line-height:1.4}.canvas-transform-crop-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.canvas-transform-help-disclosure{flex:1;order:1}.canvas-transform-help-disclosure summary{border:1px solid var(--transform-border);cursor:pointer;border-radius:9px;place-items:center;width:44px;min-height:44px;list-style:none;display:grid}.canvas-transform-help-disclosure summary::-webkit-details-marker{display:none}.canvas-transform-help-disclosure .canvas-transform-help{padding:6px 0}.canvas-edit-area{flex-direction:column;flex:1 0 410px;min-width:0;min-height:410px;display:flex;position:relative}.canvas-with-tools .canvas-edit-area .canvas-surface{flex:1 0 320px}.canvas-hoop-stack{justify-items:center;width:100%;display:grid}.canvas-transform-slot{z-index:12;width:min(100%,320px);max-width:100%;margin:4px auto 0;padding:0}.canvas-edit-area.canvas-has-transform-tools{flex:1 0 auto;min-height:0}.canvas-card.canvas-with-tools .canvas-has-transform-tools .canvas-surface{flex:none;align-content:start;height:auto;min-height:0;padding:40px 6px 8px;display:grid;container-type:normal}.canvas-card.canvas-with-tools .canvas-has-transform-tools .canvas-hoop-stack{width:min(100%,520px);margin:0 auto}.canvas-card.canvas-with-tools .canvas-has-transform-tools .hoop-wrap{width:100%;max-width:100%}.canvas-card.canvas-with-tools:has(.canvas-has-transform-tools) .canvas-stats{align-self:center;margin:0 6px 10px;position:static}@media (width<=860px){.canvas-transform-panel{scroll-margin-block:76px calc(108px + env(safe-area-inset-bottom))}.canvas-edit-area{flex:none;min-height:410px}.canvas-with-tools .canvas-edit-area .canvas-surface{flex:none;height:min(100vw + 8px,620px);min-height:0}.canvas-edit-area.canvas-has-transform-tools{flex:none;min-height:0}.canvas-card.canvas-with-tools .canvas-has-transform-tools .canvas-hoop-stack{width:min(100%,620px)}}.hoop-manual-editor{min-width:0}.hoop-manual-instruction,.hoop-manual-actions p,.hoop-manual-result{margin:.5rem 0;font-size:.82rem;line-height:1.4}.hoop-manual-photo{width:fit-content;max-width:100%;margin:.5rem auto;position:relative}.hoop-manual-svg{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.hoop-manual-svg g[role=button]{cursor:grab;outline:none}.hoop-manual-svg g[role=button]:focus circle:first-child,.hoop-manual-svg g[role=button]:focus rect{stroke:#ffca38;stroke-width:4px}.hoop-manual-zoom{pointer-events:none;z-index:2;background:#173c35;border:2px solid #fff;border-radius:9px;width:108px;height:124px;position:absolute;overflow:hidden;box-shadow:0 3px 12px #0006}.hoop-manual-zoom svg{width:108px;height:108px;display:block}.hoop-manual-zoom span{text-align:center;color:#fff;font-size:10px;line-height:14px;display:block}.hoop-manual-zoom.zoom-left{left:0}.hoop-manual-zoom.zoom-right{right:0}.hoop-manual-zoom.zoom-top{top:0}.hoop-manual-zoom.zoom-bottom{bottom:0}.hoop-manual-actions{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.hoop-manual-actions p{flex-basis:100%}.hoop-manual-actions button{min-height:44px;padding:.35rem .6rem;font-size:.8rem}.hoop-manual-result{background:#e9eee8;border-radius:7px;padding:.5rem}:root{color:#1a1c18;font-synthesis:none;text-rendering:optimizelegibility;--ink:#171915;--paper:#f7f4ec;--paper-deep:#ece7dc;--line:#d7d1c4;--muted:#6f716a;--coral:#e7674b;--coral-dark:#bd4d37;--sage:#668474;--sage-soft:#d9e3dc;--gold:#d8a535;--danger:#a93c31;--shadow:0 18px 60px #22231d1a;background:#ede9df;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:0;min-height:100%;margin:0}body{min-height:100dvh;overflow:hidden}button,input,select{font:inherit}button{color:inherit}button,label,select,input[type=range],input[type=color]{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:2px;outline:3px solid #e7674b59}.app-shell{background:radial-gradient(circle at 78% 9%, #ffffff8c, transparent 30%), var(--paper-deep);grid-template-rows:68px minmax(0,1fr) 96px;height:100dvh;display:grid}.topbar{z-index:20;color:#f8f5ed;background:var(--ink);border-bottom:1px solid #30332d;grid-template-columns:248px minmax(0,1fr) auto;align-items:center;padding:0 22px;display:grid}.brand{align-items:center;gap:11px;min-width:0;display:inline-flex}.brand-mark{border:1px solid #686a61;border-radius:9px;place-items:center;width:35px;height:35px;display:grid;position:relative}.brand-mark:after{content:"";border-bottom:2px solid var(--coral);border-radius:50%;width:17px;height:7px;position:absolute;transform:rotate(-22deg)}.brand-name{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:21px}.brand-badge{color:#bec2b7;text-transform:uppercase;letter-spacing:.12em;border:1px solid #474a43;border-radius:999px;align-self:center;padding:3px 6px;font-size:9px;font-weight:750}.project-title-wrap{justify-self:center;align-items:center;gap:10px;min-width:0;display:flex}.project-title{color:#f8f5ed;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:7px;max-width:420px;padding:8px 10px;overflow:hidden}input.project-title:hover,input.project-title:focus{background:#242721;border-color:#4b4e47}.saved-state{color:#aeb2a7;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.topbar-actions{align-items:center;gap:8px;display:flex}.mobile-saved-state{display:none}.workspace{grid-template-columns:86px minmax(0,1fr) 332px;min-height:0;display:grid}.workflow-rail{z-index:4;border-right:1px solid var(--line);background:#f4f1e9;flex-direction:column;align-items:stretch;padding:18px 10px;display:flex}.workflow-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.workflow-step{color:#777970;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;gap:6px;width:100%;min-height:62px;padding:8px 4px;font-size:10px;font-weight:720;display:grid;position:relative}.workflow-step:before{content:"";background:0 0;border-radius:0 3px 3px 0;width:3px;height:calc(100% + 12px);position:absolute;top:-6px;left:-10px}.workflow-step:hover:not(:disabled){color:var(--ink);background:#e9e5db}.workflow-step.active{color:var(--ink);background:#e8e3d8}.workflow-step.active:before{background:var(--coral)}.workflow-step.done .step-icon{color:#f9f6ef;background:var(--sage);border-color:var(--sage)}.workflow-step:disabled{cursor:not-allowed;opacity:.46}.step-icon{color:#65675f;border:1px solid #c7c1b5;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.rail-spacer{flex:1}.rail-meta{color:#8b8d84;text-align:center;text-transform:uppercase;letter-spacing:.08em;padding:10px 2px 2px;font-size:9px;line-height:1.5}.stage{min-width:0;min-height:0;padding:18px;position:relative;overflow:hidden}.canvas-card{width:100%;height:100%;min-height:350px;box-shadow:var(--shadow);background:#d8d3c8;border:1px solid #c9c3b8;border-radius:20px;display:grid;position:relative;overflow:hidden}.canvas-card:before{z-index:0;content:"";background-image:linear-gradient(#5050480d 1px,#0000 1px),linear-gradient(90deg,#5050480d 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 82%);mask-image:radial-gradient(circle,#000,#0000 82%)}.canvas-toolbar{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8f5edeb;border:1px solid #cbc5b9;border-radius:11px;flex-direction:column;gap:3px;padding:4px;display:inline-flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #22231d1a}.canvas-view-label{text-align:center;color:var(--muted);font-size:9px}.preview-tabs{gap:3px;display:flex}.segmented-button{color:#676961;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:32px;padding:0 11px;font-size:11px;font-weight:700}.segmented-button:hover{color:var(--ink)}.segmented-button.active{color:#f7f4ec;background:var(--ink)}.canvas-surface{z-index:1;place-items:center;min-width:0;min-height:0;padding:60px 30px 32px;display:grid;position:relative}.hoop-wrap{aspect-ratio:1;filter:drop-shadow(0 12px 22px #31302b24);place-items:center;width:min(70vh,72%);max-width:650px;display:grid;position:relative}.hoop-outer{background:#f3efe4;border:12px solid #888980;border-radius:28px;position:absolute;inset:0;box-shadow:inset 0 0 0 3px #bebeb5,inset 0 0 0 15px #ded9cd}.hoop-inner{background:repeating-linear-gradient(2deg,#0000 0 3px,#80766108 3px 4px),#f7f3e8;border:1px dashed #b5ad9e;border-radius:9px;position:absolute;inset:38px;overflow:hidden}.hoop-inner:before,.hoop-inner:after{z-index:1;content:"";background:#575b5221;position:absolute}.hoop-inner:before{width:100%;height:1px;top:50%;left:0}.hoop-inner:after{width:1px;height:100%;top:0;left:50%}.preview-layer{z-index:2;object-fit:contain;width:100%;height:100%;position:absolute;inset:0}canvas.preview-layer{image-rendering:auto}canvas.preview-layer.raster-editable{cursor:crosshair;touch-action:manipulation}canvas.preview-layer.placement-editable{cursor:grab;touch-action:none}canvas.preview-layer.placement-editable.placing{cursor:grabbing}canvas.preview-layer.mask-editable,canvas.preview-layer.color-paint-editable{cursor:crosshair;touch-action:none}canvas.preview-layer.object-editable{cursor:move;touch-action:none}canvas.preview-layer.needle-marking{cursor:crosshair;touch-action:none}.mask-tool-badge{z-index:4;color:#fff;text-transform:uppercase;letter-spacing:.07em;pointer-events:none;border-radius:5px;padding:5px 8px;font-size:9px;font-weight:780;position:absolute;top:11px;left:11px;box-shadow:0 2px 8px #23231f24}.mask-tool-badge.remove{background:#b94d39}.mask-tool-badge.restore{background:#287a52}.mask-tool-badge.paint{background:#315f68}.mask-tool-badge.needle{background:#a73827}.safe-margin{z-index:3;pointer-events:none;border:1px dashed #e6674b73;border-radius:3px;position:absolute;inset:5%}.hoop-label{z-index:4;color:#6b6e66;text-transform:uppercase;letter-spacing:.09em;background:#f8f5eddb;border-radius:5px;padding:5px 7px;font-size:9px;font-weight:760;position:absolute;bottom:11px;right:11px}.canvas-stats{z-index:5;color:#5e6059;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f5ede0;border:1px solid #cdc7bb;border-radius:9px;flex-wrap:wrap;align-items:center;gap:15px;padding:8px 10px;font-size:10px;display:flex;position:absolute;bottom:14px;right:16px}.stat-value{color:var(--ink);margin-left:4px;font-weight:760}.empty-studio{z-index:2;text-align:center;background:#f8f5edeb;border:1px solid #ccc6ba;border-radius:18px;justify-items:center;max-width:490px;padding:42px;display:grid;position:relative;box-shadow:0 16px 45px #2526201c}.empty-illustration{width:92px;height:92px;color:var(--coral);background:#f0e9dc;border:1px solid #d5cec1;border-radius:50%;place-items:center;margin-bottom:22px;display:grid;position:relative}.empty-illustration:before,.empty-illustration:after{content:"";background:#cfc7ba;width:112px;height:1px;position:absolute}.empty-illustration:before{transform:rotate(45deg)}.empty-illustration:after{transform:rotate(-45deg)}.empty-studio h1{letter-spacing:-.03em;margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(27px,3vw,40px);font-weight:500;line-height:1.08}.empty-studio p{color:#666860;max-width:390px;margin:0 0 24px;font-size:13px;line-height:1.65}.empty-actions{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.drop-overlay{z-index:30;color:var(--coral-dark);border:2px dashed var(--coral);pointer-events:none;background:#f7f4ecf5;border-radius:20px;place-items:center;display:grid;position:absolute;inset:18px}.drop-overlay-content{place-items:center;gap:10px;font-size:18px;font-weight:760;display:grid}.inspector{z-index:5;background:var(--paper);border-left:1px solid var(--line);min-width:0;min-height:0;overflow:hidden}.inspector-scroll{scrollbar-width:thin;scrollbar-color:#bbb4a7 transparent;height:100%;padding:21px 20px 120px;overflow:auto}.panel-eyebrow{color:var(--coral-dark);text-transform:uppercase;letter-spacing:.14em;margin:0 0 7px;font-size:9px;font-weight:800}.panel-title{letter-spacing:-.02em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:500}.panel-intro{color:var(--muted);margin:8px 0 23px;font-size:12px;line-height:1.55}.control-section{border-top:1px solid var(--line);padding:18px 0}.control-section:first-of-type{border-top:0}.section-heading{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.section-heading h3{letter-spacing:-.01em;margin:0;font-size:12px;font-weight:780}.section-note{color:var(--muted);font-size:10px}.stitch-setup-state{color:#305e48;text-transform:uppercase;letter-spacing:.08em;background:#e8f2eb;border:1px solid #bfd6c6;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800}.stitch-setup-state.custom{color:#764327;background:#fff0e6;border-color:#ecc2aa}.stitch-setup-card{background:#f1f6f1;border:1px solid #cadbce;border-radius:10px;gap:10px;padding:13px;display:grid}.stitch-setup-card.custom{background:#fff8f2;border-color:#ead1bf}.stitch-setup-card strong{margin-bottom:4px;font-size:11px;display:block}.stitch-setup-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.advanced-stitch-settings{border:1px solid var(--line);border-radius:10px;margin-top:11px;overflow:hidden}.advanced-stitch-settings>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 12px;font-size:11px;font-weight:760;list-style:none;display:flex}.advanced-stitch-settings>summary::-webkit-details-marker{display:none}.advanced-stitch-settings>summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transition:transform .12s;transform:rotate(-45deg)}.advanced-stitch-settings[open]>summary:before{transform:rotate(45deg)}.advanced-stitch-settings>summary:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}.advanced-stitch-summary{color:var(--muted);margin-left:auto;font-size:9px;font-weight:700}.advanced-stitch-body{border-top:1px solid var(--line);padding:14px 12px}.advanced-toggle-list{gap:14px;margin-top:16px;display:grid}.precise-stitch-control{min-width:0}.precise-stitch-input{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.precise-stitch-input input{width:100%;min-height:38px;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink);background:#fffdf8;border:1px solid #cbc5b9;border-radius:8px;padding:0 10px}.precise-stitch-input input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.precise-stitch-input span{min-width:20px;color:var(--muted);font-size:10px}.form-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.editor-history{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:11px;display:grid}.image-tool-grid{grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:17px;display:grid}.image-tool-button{min-width:0;min-height:60px;color:var(--ink);cursor:pointer;background:#fffdf8;border:1px solid #cbc5b9;border-radius:9px;place-items:center;padding:7px 4px;display:grid}.image-tool-button span{font-size:8px;font-weight:720;line-height:1.2}.image-tool-button:hover{color:var(--coral);border-color:#cfa092}.crop-grid{grid-template-columns:1fr 1fr;gap:13px 11px;display:grid}.crop-control{min-width:0}.editor-reset-row{justify-content:space-between;margin-top:12px;display:flex}.editor-hint{margin:7px 0 0}.mask-mode-switch{grid-template-columns:.75fr 1.25fr 1.25fr;gap:5px;display:grid}.mask-mode-button{color:#565850;cursor:pointer;background:#fffdf8;border:1px solid #cbc5b9;border-radius:8px;min-width:0;min-height:36px;padding:7px 6px;font-size:9px;font-weight:760}.mask-mode-button:hover:not(:disabled){color:var(--ink);border-color:#aaa399}.mask-mode-button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.mask-mode-button.remove.active{background:#b94d39;border-color:#b94d39}.mask-mode-button.restore.active{background:#287a52;border-color:#287a52}.mask-mode-button.paint.active{background:#315f68;border-color:#315f68}.mask-mode-button.object.active{background:#4d526a;border-color:#4d526a}.mask-mode-button:disabled{cursor:not-allowed;opacity:.42}.mask-brush-size{margin-top:15px}.mask-legend{color:#6b6e66;flex-wrap:wrap;gap:8px 14px;margin-top:11px;font-size:9px;display:flex}.mask-legend span{align-items:center;gap:5px;display:inline-flex}.mask-legend i{border-radius:50%;width:9px;height:9px}.mask-legend-remove{background:#e55b42a6}.mask-legend-restore{background:#2d8a5ea6}.color-edit-switch{grid-template-columns:1fr 1fr .82fr .82fr;margin-bottom:12px}.object-editor,.object-properties{gap:13px;display:grid}.object-editor{background:#f1eee5;border:1px solid #ddd7cb;border-radius:10px;padding:13px}.object-add-grid,.object-action-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.object-add-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.object-add-grid .button,.object-action-grid .button{min-width:0;min-height:35px;padding:7px 8px;font-size:9px}.object-properties{border-top:1px solid #d8d2c6;padding-top:13px}.object-font-readout,.object-size-readout{color:#62645c;background:#fffdf8;border:1px solid #d8d2c6;border-radius:8px;padding:9px 10px;font-size:10px}.object-font-readout{gap:4px}.color-brush-controls{background:#f1eee5;border:1px solid #ddd7cb;border-radius:10px;gap:13px;padding:13px;display:grid}.region-empty.compact{min-height:0;margin:0;padding:10px}.color-edit-reset{align-items:flex-start;gap:12px;margin-top:13px}.color-edit-reset .panel-intro{max-width:150px;margin:0}.color-edit-reset .button{flex:none}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field-label,.range-label{color:#565850;justify-content:space-between;align-items:baseline;font-size:10px;font-weight:730;display:flex}.field-value{font-variant-numeric:tabular-nums;color:var(--ink)}.input,.select{width:100%;min-height:38px;color:var(--ink);background:#fffdf8;border:1px solid #cbc5b9;border-radius:8px;padding:0 10px;font-size:12px}.select{padding-right:30px}input[type=range]{width:100%;height:4px;accent-color:var(--coral);cursor:pointer}.toggle-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.toggle-copy strong{margin-bottom:3px;font-size:11px;display:block}.toggle-copy span{color:var(--muted);font-size:10px;line-height:1.45;display:block}.toggle{flex:none;width:38px;height:22px;position:relative}.toggle input{opacity:0;position:absolute}.toggle:focus-within,.thread-swatch:focus-within{outline:2px solid var(--ink);outline-offset:3px}.toggle-track{background:#cbc6ba;border-radius:999px;width:100%;height:100%;transition:background .15s;display:block}.toggle-track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.toggle input:checked+.toggle-track{background:var(--sage)}.toggle input:checked+.toggle-track:after{transform:translate(16px)}.thread-list{gap:8px;display:grid}.region-empty{color:#4f5d52;background:var(--sage-soft);border:1px dashed #aebfb2;border-radius:9px;align-items:flex-start;gap:9px;padding:11px;font-size:10px;line-height:1.5;display:flex}.region-empty svg{flex:none}.region-editor{background:#fffdf8;border:1px solid #d6d0c4;border-radius:10px;gap:11px;padding:11px;display:grid}.region-selection{align-items:center;gap:10px;display:flex}.region-selection span,.region-selection strong{display:block}.region-selection div>span{color:var(--muted);margin-bottom:2px;font-size:9px}.region-selection strong{font-size:11px}.region-swatch{background:var(--thread-color);border:1px solid #1e1f1b29;border-radius:8px;flex:none;width:34px;height:34px}.thread-row{background:#fffdf8;border:1px solid #d6d0c4;border-radius:10px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;display:grid}.thread-swatch{background:var(--thread-color);cursor:pointer;border:1px solid #1e1f1b29;border-radius:8px;width:34px;height:34px;padding:0;position:relative;overflow:hidden}.thread-swatch input{cursor:pointer;opacity:0;width:60px;height:60px;position:absolute;inset:-10px}.thread-copy{min-width:0}.thread-copy strong,.thread-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.thread-copy strong{font-size:11px}.thread-copy span{color:var(--muted);margin-top:3px;font-size:9px}.thread-count{color:#75776f;text-align:right;min-width:42px;font-size:9px}.notice{color:#52554d;background:#eee9dc;border:1px solid #d4cdbf;border-radius:9px;grid-template-columns:auto minmax(0,1fr);gap:9px;padding:11px;font-size:10px;line-height:1.48;display:grid}.notice.warning{color:#694d16;background:#f5ead0;border-color:#dfc990}.notice.danger{color:#71342e;background:#f5dfdb;border-color:#dfb3ab}.notice.success{color:#345344;background:var(--sage-soft);border-color:#b8ccbf}.embroidery-quality details{border:1px solid var(--line);background:#fffdf8;border-radius:10px}.embroidery-quality summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 12px;display:flex}.embroidery-quality summary>span:first-child,.quality-check div{min-width:0}.embroidery-quality summary strong,.embroidery-quality summary small,.quality-check strong,.quality-check span{display:block}.embroidery-quality summary small,.quality-check span{color:var(--muted);margin-top:3px;font-size:10px;line-height:1.45}.quality-state{background:var(--sage-soft);color:#345344;border-radius:999px;flex:none;padding:4px 7px;font-size:10px;font-weight:760}.quality-state.review{color:#694d16;background:#f5ead0}.quality-state.blocked{color:#71342e;background:#f5dfdb}.embroidery-quality details>.panel-intro{margin:0;padding:0 12px 10px}.quality-checks{border-top:1px solid var(--line);gap:1px;display:grid}.quality-check{grid-template-columns:8px minmax(0,1fr);gap:9px;padding:9px 12px;display:grid}.quality-dot{background:#6d9279;border-radius:50%;width:7px;height:7px;margin-top:3px}.quality-check.review .quality-dot,.quality-check.manual .quality-dot{background:#c48a28}.quality-check.blocked .quality-dot{background:#b6574e}.export-color-sequence{border:1px solid var(--line);background:#fffdf8;border-radius:10px;margin-top:11px;overflow:hidden}.export-color-sequence summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 12px;font-size:10px;font-weight:760;display:flex}.export-color-sequence summary:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}.export-color-sequence summary span:last-child{color:var(--muted)}.export-color-sequence ol{border-top:1px solid var(--line);gap:1px;margin:0;padding:0;list-style:none;display:grid}.export-color-sequence li{background:#fffdf8;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;padding:8px 12px;display:grid}.export-color-sequence li strong,.export-color-sequence li small{display:block}.export-color-sequence li strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.export-color-sequence li small,.export-color-sequence>p{color:var(--muted);margin-top:2px;font-size:9px;line-height:1.45}.export-color-sequence>p{border-top:1px solid var(--line);margin:0;padding:10px 12px}.button{white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 14px;font-size:11px;font-weight:760;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{cursor:not-allowed;opacity:.45}.button.primary{color:#fffaf2;background:var(--coral-dark);border-color:var(--coral-dark);box-shadow:0 8px 18px #cd523a33}.button.primary:hover:not(:disabled){background:#a9412d}.button.dark{color:#f8f5ed;background:var(--ink);border-color:var(--ink)}.button.light{color:var(--ink);background:#fffdf8;border-color:#c9c3b7}.button.ghost{color:#d9dcd4;border-color:#484b44}.button.ghost:hover:not(:disabled){color:#fff;background:#2b2e28}.button.text{color:#62645d;min-height:30px;padding:0 7px}.button.danger{color:var(--danger);background:#fff8f6;border-color:#dfbdb7}.button.full{width:100%}.icon-button{color:#65675f;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;place-items:center;width:36px;height:36px;padding:0;display:grid}.icon-button:hover:not(:disabled){color:var(--ink);background:#ebe6dc;border-color:#d5cec2}.icon-button:disabled{cursor:not-allowed;opacity:.35}.panel-actions{gap:8px;margin-top:16px;display:grid}.relay-card{border:1px solid var(--line);background:#f7f4ed;border-radius:11px;gap:11px;padding:13px;display:grid}.machine-next-step{color:#3f443d;background:#f2eee4;border:1px solid #d4cec1;border-radius:11px;gap:11px;margin-bottom:16px;padding:14px;display:grid}.machine-next-step.ready,.machine-next-step.waiting{background:var(--sage-soft);border-color:#aebfaf}.machine-next-step.limited{color:#664d1d;background:#f5ead0;border-color:#dfc990}.machine-next-step.offline{color:#71342e;background:#f5dfdb;border-color:#dfb3ab}.machine-next-step-heading{align-items:center;gap:10px;display:flex}.machine-next-step-heading>div{min-width:0}.machine-next-step-heading span,.machine-next-step-heading h3{display:block}.machine-next-step-heading span{text-transform:uppercase;letter-spacing:.09em;opacity:.72;margin-bottom:3px;font-size:8px;font-weight:800}.machine-next-step-heading h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:17px;font-weight:500}.machine-next-step p,.machine-next-step ol{margin:0;font-size:10px;line-height:1.5}.machine-next-step ol{gap:5px;padding-left:19px;display:grid}.machine-side-only{color:#263d30;background:#fffdf8b8;border:1px solid #5578604d;border-radius:8px;padding:9px 10px;font-size:10px;line-height:1.45}.relay-status-row,.relay-device{align-items:center;gap:10px;display:flex}.relay-status-row>div,.relay-device>div{min-width:0}.relay-status-row strong,.relay-status-row span,.relay-device strong,.relay-device span{display:block}.relay-status-row strong,.relay-device strong{font-size:11px}.relay-status-row div>span,.relay-device div>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.relay-dot{background:#aaa49a;border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 4px #78746c1a}.relay-dot.online{background:#57906c;box-shadow:0 0 0 4px #57906c1f}.relay-dot.degraded{background:#c88b35;box-shadow:0 0 0 4px #c88b351f}.relay-dot.checking{animation:1.2s ease-in-out infinite relay-pulse}@keyframes relay-pulse{50%{opacity:.4}}.relay-device{background:#fffdf8;border:1px solid #d9d2c6;border-radius:8px;padding:9px}.relay-device-state{text-transform:uppercase;letter-spacing:.08em;margin-left:auto;font-weight:800;color:#47795a!important;font-size:8px!important}.relay-identity{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.relay-identity>div{background:#fffdf8;border:1px solid #ded8cd;border-radius:7px;padding:8px}.relay-identity dt{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:8px;font-weight:800}.relay-identity dd{text-overflow:ellipsis;margin:3px 0 0;font-size:10px;font-weight:700;overflow:hidden}.relay-identity.stale{opacity:.58}.relay-stale{color:#80642e;margin:0;font-size:9px;line-height:1.4}.relay-key-field{margin-top:1px}.relay-success,.relay-error{margin:0;font-size:10px;line-height:1.45}.relay-success{color:#376d4b}.relay-error{color:var(--danger);margin:0;font-size:10px}.relay-help{margin:0!important}.processing-overlay{z-index:40;color:var(--ink);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#ece7dcd9;place-items:center;display:grid;position:absolute;inset:0}.processing-card{text-align:center;min-width:250px;box-shadow:var(--shadow);background:#fffdf8;border:1px solid #cfc8bc;border-radius:14px;place-items:center;padding:24px;display:grid}.spinner{border:3px solid #ddd6ca;border-top-color:var(--coral);border-radius:50%;width:34px;height:34px;margin-bottom:13px;animation:.75s linear infinite spin}.spinner.compact{border-width:2px;flex:none;width:20px;height:20px;margin:0}.processing-card strong{font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:500}.processing-card span{color:var(--muted);margin-top:5px;font-size:10px}.machine-dock{z-index:25;padding:13px 22px max(13px, env(safe-area-inset-bottom));color:#f6f3eb;background:#20231e;border-top:1px solid #343832;grid-template-columns:minmax(180px,1fr) minmax(360px,1.5fr) minmax(200px,1fr);align-items:center;gap:18px;display:grid;box-shadow:0 -12px 35px #1c1d191f}.machine-identity{align-items:center;gap:11px;min-width:0;display:flex}.status-orb{border:1px solid #4c5048;border-radius:50%;flex:none;width:38px;height:38px;position:relative}.status-orb:after{content:"";background:#73776d;border-radius:50%;position:absolute;inset:12px;box-shadow:0 0 0 4px #73776d1a}.status-orb.ready:after,.status-orb.paused:after{background:#d6a93d;box-shadow:0 0 0 4px #d6a93d1f}.status-orb.running:after{background:#69a57e;animation:1.6s ease-in-out infinite pulse;box-shadow:0 0 0 4px #69a57e24}.status-orb.error:after{background:#d45c4d}.machine-label{min-width:0}.machine-label strong,.machine-label span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.machine-label strong{font-size:12px}.machine-label span{color:#999e93;margin-top:4px;font-size:9px}.simulator-tag{color:#d9c18d;text-transform:uppercase;letter-spacing:.1em;background:#3a3529;border:1px solid #554b35;border-radius:999px;align-items:center;height:19px;padding:0 6px;font-size:8px;font-weight:800;display:inline-flex}.transport-controls{justify-content:center;align-items:center;gap:7px;display:flex}.transport-button{color:#c8cbc2;cursor:pointer;background:0 0;border:1px solid #454941;border-radius:9px;place-items:center;width:36px;height:36px;padding:0;display:grid}.transport-button:hover:not(:disabled){color:#fff;background:#2d302a}.transport-button:disabled{cursor:not-allowed;opacity:.28}.transport-button small{font-size:8px;font-weight:800}.play-button{color:#fff;background:var(--coral);cursor:pointer;border:0;border-radius:50%;place-items:center;width:52px;height:52px;margin:0 6px;padding:0;display:grid;box-shadow:0 6px 18px #e7674b45}.play-button:hover:not(:disabled){background:#d85b42;transform:scale(1.03)}.play-button:disabled{cursor:not-allowed;box-shadow:none;background:#4e514a}.job-progress{gap:7px;min-width:0;display:grid}.progress-copy{color:#aeb2a7;justify-content:space-between;align-items:baseline;gap:10px;font-size:9px;display:flex}.progress-copy strong{color:#f2efe7;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.progress-track{background:#3d4039;border-radius:999px;height:5px;overflow:hidden}.progress-fill{width:var(--progress);background:var(--coral);border-radius:inherit;height:100%;transition:width .18s linear}.thread-next{color:#aeb2a7;align-items:center;gap:8px;min-width:0;font-size:9px;display:flex}.mobile-simulator-warning{color:#d9c18d;text-transform:uppercase;letter-spacing:.06em;font-size:8px;font-weight:800;display:none}.thread-dot{background:var(--thread-color);border:1px solid #ffffff38;border-radius:50%;flex:none;width:12px;height:12px}.drawer-backdrop{z-index:70;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1618146b;position:fixed;inset:0}.drawer{z-index:80;background:var(--paper);grid-template-rows:auto minmax(0,1fr);width:min(430px,94vw);height:100dvh;animation:.18s ease-out slide-in;display:grid;position:fixed;top:0;right:0;box-shadow:-20px 0 70px #10110e38}.drawer-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px;display:flex}.drawer-header h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:500}.drawer-body{padding:18px 22px 40px;overflow:auto}.project-grid{gap:11px;display:grid}.project-card{text-align:left;background:#fffdf8;border:1px solid #d6d0c4;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;display:grid}.project-open{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:0;display:grid}button.project-card{cursor:pointer;width:100%}button.project-card:hover{border-color:#a9a397;transform:translateY(-1px)}.project-thumb{object-fit:contain;background:#eee9df;border-radius:7px;width:76px;height:62px}.project-card-copy{min-width:0}.project-card-copy strong,.project-card-copy span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-card-copy strong{font-size:12px}.project-card-copy span{color:var(--muted);margin-top:5px;font-size:9px}.toast-region{z-index:100;pointer-events:none;gap:8px;width:min(360px,100vw - 32px);display:grid;position:fixed;top:80px;right:16px}.toast{color:var(--ink);border:1px solid #cfc8bc;border-left:3px solid var(--sage);pointer-events:auto;background:#fffdf8;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px;font-size:11px;line-height:1.45;animation:.18s ease-out toast-in;display:grid;box-shadow:0 14px 35px #191a1629}.toast.error{border-left-color:var(--danger)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.24)}}@keyframes slide-in{0%{opacity:0;transform:translate(30px)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}@media (width<=1100px){.topbar{grid-template-columns:210px minmax(0,1fr) auto}.workspace{grid-template-columns:76px minmax(0,1fr) 300px}.stage{padding:12px}.hoop-wrap{width:min(64vh,82%)}}@media (width<=860px){body{overflow:auto}.app-shell{flex-direction:column;height:auto;min-height:100dvh;display:flex;position:relative}.topbar{flex:0 0 60px;grid-template-columns:1fr auto;padding:0 14px;position:sticky;top:0}.brand-badge,.project-title-wrap{display:none}.mobile-saved-state{color:#c7d5ca;white-space:nowrap;border:1px solid #526057;border-radius:999px;align-items:center;min-height:24px;padding:3px 7px;font-size:9px;font-weight:750;display:inline-flex}.mobile-saved-state.dirty{color:#ffd7bd;border-color:#8a5947}.workspace{flex:1 0 auto;display:block}.workflow-rail{z-index:18;border-right:0;border-bottom:1px solid var(--line);padding:6px 10px;position:sticky;top:60px}.workflow-list{grid-template-columns:repeat(4,1fr);gap:3px}.workflow-step{grid-template-columns:auto auto;gap:6px;min-height:48px;padding:6px}.workflow-step:before{border-radius:3px 3px 0 0;width:auto;height:3px;inset:auto 10px -6px}.step-icon{width:27px;height:27px}.rail-spacer,.rail-meta{display:none}.stage{height:min(72vh,660px);min-height:480px}.stage.stage-empty{height:auto;min-height:0}.stage-empty .canvas-card{height:auto}.inspector{border-top:1px solid var(--line);border-left:0}.inspector-scroll{height:auto;max-height:none;padding-bottom:40px}.machine-dock{min-height:92px;padding:10px 14px max(10px, env(safe-area-inset-bottom));flex:none;grid-template-columns:1fr auto;gap:10px;position:sticky;bottom:0}.machine-identity{display:none}.transport-controls{grid-area:1/2}.job-progress{grid-area:1/1}.mobile-simulator-warning{display:block}}@media (width<=540px){.topbar-actions .button span{display:none}.brand-name{font-size:19px}.stage{height:min(100vw + 64px,530px);min-height:0;padding:8px}.canvas-card{border-radius:14px;min-height:0}.canvas-toolbar{top:10px}.canvas-surface{padding:52px 12px 25px}.hoop-wrap{width:94%}.hoop-outer{border-width:9px;border-radius:20px}.hoop-inner{inset:28px}.canvas-stats{gap:8px;bottom:8px;right:9px}.empty-studio{margin:16px;padding:28px 18px}.empty-illustration{width:72px;height:72px}.empty-studio h1{font-size:28px}.workflow-step{grid-template-columns:1fr;font-size:9px;display:grid}.step-icon{display:none}.machine-dock{grid-template-columns:minmax(95px,1fr) auto}.transport-button:first-child,.transport-button:nth-child(5){display:none}.play-button{width:46px;height:46px;margin:0 2px}.progress-copy span,.thread-next{display:none}.form-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.append-placement{margin-top:0}.append-placement-body{gap:12px;padding-top:12px;display:grid}.append-placement-body p{margin:0}.append-help{color:var(--muted,#5d625a);font-size:12px;line-height:1.6}.append-design-actions,.append-position-grid,.hoop-photo-dimensions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.append-field{gap:7px;min-width:0;font-size:12px;font-weight:650;display:grid}.append-field input[type=number],.hoop-photo-dialog input[type=number]{width:100%;min-width:0;font:inherit;color:inherit;background:#fffdf7;border:1px solid #c7c8bb;border-radius:7px;padding:9px}.append-check{align-items:center;gap:9px;font-size:13px;display:flex}.append-check input,.hoop-photo-origin input{accent-color:#315a46;flex:0 0 20px;width:20px;height:20px}.append-camera-guide{font-size:12px}.hoop-photo-backdrop{z-index:150;background:#151c16b3;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.hoop-photo-dialog{overscroll-behavior:contain;color:#20261f;background:#f7f4ec;border-radius:15px;width:min(800px,100%);max-height:calc(100dvh - 36px);padding:0 20px 16px;overflow:auto}.hoop-photo-dialog .drawer-header{z-index:3;background:#f7f4ec;gap:16px;padding:16px 0;position:sticky;top:0}.hoop-photo-dialog h2{margin:0;font-size:22px}.hoop-photo-dialog p,.hoop-photo-steps{font-size:13px;line-height:1.65}.hoop-photo-steps{padding-left:21px}.hoop-photo-dialog button{min-height:44px;font:inherit;cursor:pointer;color:#20261f;background:#fffdf7;border:1px solid #babdb1;border-radius:8px;padding:8px 12px}.hoop-photo-dialog button:disabled{opacity:.45;cursor:default}.hoop-photo-dialog button[aria-pressed=true]{background:#dfeae1;border-color:#315a46}.hoop-photo-dialog :focus-visible,.append-placement :focus-visible{outline-offset:3px;outline:3px solid #267578}.hoop-photo-image-wrap{background:#dedbd1;max-width:420px;margin:15px auto}.hoop-photo-point-layer{cursor:crosshair;touch-action:manipulation}.hoop-photo-marker{color:#173728;background:#fff9dc;border:2px solid #173728;border-radius:50%;place-items:center;width:28px;height:28px;font-size:14px;font-weight:750;display:grid}.hoop-photo-marker.selected{color:#fff;background:#315a46;border-color:#fff}.hoop-photo-corners{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.hoop-photo-corners fieldset{border:1px solid #c7c8bb;border-radius:9px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;min-width:0;padding:10px;display:grid}.hoop-photo-corners fieldset button{grid-column:1/-1;font-size:12px}.hoop-photo-corners legend{font-size:13px;font-weight:700}.hoop-photo-corners label,.hoop-photo-dimensions label{gap:6px;font-size:12px;display:grid}.hoop-photo-dimensions{margin:16px 0}.hoop-photo-origin{align-items:center;gap:10px;padding:12px 0;font-size:13px;display:flex}.hoop-photo-actions{background:#f7f4ec;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:14px 0;display:flex;position:sticky;bottom:-16px}.hoop-photo-actions button:last-child{color:#fff;background:#315a46;border-color:#315a46}.photo-loading{z-index:160;color:#fff;background:#20261f;border-radius:9px;max-width:calc(100% - 30px);padding:15px;position:fixed;top:20px;left:50%;transform:translate(-50%)}.unsaved-backdrop{z-index:180;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#151c16b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.unsaved-dialog{overscroll-behavior:contain;width:min(540px,100%);max-height:calc(100dvh - 36px);color:var(--ink);background:var(--paper);border:1px solid #d2cbbf;border-radius:16px;padding:24px;overflow:auto;box-shadow:0 28px 80px #0c100c5c}.unsaved-dialog h2{margin:5px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:500}.unsaved-dialog>p:not(.panel-eyebrow){color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.65}.unsaved-dialog .unsaved-error{color:var(--danger);margin-top:14px}.unsaved-dialog :focus-visible{outline-offset:3px;outline:3px solid #267578}.unsaved-actions{grid-template-columns:auto minmax(0,1fr) auto;gap:9px;margin-top:22px;display:grid}.unsaved-actions .button{white-space:normal;min-height:44px}.canvas-with-tools{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.canvas-with-tools .canvas-toolbar{flex:none;align-self:center;margin:10px 4px 6px;position:relative;top:auto;left:auto;transform:none}.canvas-with-tools .canvas-surface{flex:1 0 320px;min-height:320px;padding:44px 12px 34px;container-type:size}.canvas-with-tools .hoop-wrap{width:min(94cqw,94cqh)}.canvas-workspace-tools{z-index:6;border:1px solid var(--line);background:#f8f5ed;border-radius:10px;flex:none;margin:0 10px;padding:6px 10px}.canvas-tools-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.canvas-tools-dimensions{font-size:11px;font-weight:700}.canvas-context-tools{flex-wrap:wrap;align-items:center;gap:4px;padding-top:5px;font-size:11px;display:flex}.canvas-context-tools .button{min-height:30px;padding:4px 8px;font-size:11px}.canvas-context-tools .button[aria-pressed=true]{background:var(--ink);color:#fff}.canvas-context-tools label{align-items:center;gap:6px;display:inline-flex}.canvas-context-tools input[type=number],.canvas-context-tools input[type=text]{width:72px;font:inherit;padding:5px}.canvas-context-tools input[type=range]{width:90px}.canvas-tools-actions,.canvas-tools-panel-actions{flex-wrap:wrap;gap:5px;display:flex}.canvas-tools-actions .button,.canvas-tools-panel-actions .button{min-height:34px;padding:6px 10px;font-size:11px}.canvas-tools-panel{gap:6px;padding-top:6px;display:grid}.canvas-tools-panel-heading{justify-content:space-between;align-items:center;font-size:12px;display:flex}.canvas-tools-panel-heading .button{min-height:26px;padding:3px 7px}.canvas-tools-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.canvas-tools-fields .append-field{gap:3px;font-size:11px}.canvas-tools-fields input[type=number],.canvas-tools-fields input[type=text]{width:100%;min-width:0;padding:6px}.canvas-tools-panel input[type=range]{margin:0}.canvas-tools-panel .append-help,.canvas-size-fit{margin:0;font-size:11px}.canvas-placement-open .canvas-context-tools{display:none}.canvas-placement-open .canvas-tools-panel{padding-top:0}.canvas-placement-open .canvas-tools-panel-heading strong{flex:1}.canvas-view-controls{z-index:6;width:min(100% - 20px,40rem);color:var(--muted);border:1px solid var(--line);background:#f8f5edeb;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 12px;margin:4px auto 0;padding:5px 9px;font-size:11px;display:flex}.canvas-view-controls>label{cursor:pointer;align-items:center;gap:5px;min-height:44px;display:inline-flex}.canvas-view-controls input{width:16px;height:16px;accent-color:var(--coral-dark);margin:0}.canvas-preview-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:8px 6px 4px;display:flex}.canvas-with-tools .canvas-preview-controls .canvas-toolbar{margin:0}.canvas-preview-controls .canvas-view-controls{width:auto;max-width:100%;margin:0}@media (width<=540px){.canvas-view-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px 6px;display:grid}.canvas-view-controls>label{flex-direction:column;justify-content:center;gap:3px;min-width:0;font-size:10px}}.canvas-with-tools:has(.canvas-placement-open) .canvas-toolbar{display:none}.canvas-with-tools:has(.canvas-placement-open) .canvas-surface{flex-basis:260px;min-height:260px}.canvas-tools-panel .append-check{margin:0;font-size:11px}.needle-placement-steps{counter-reset:needle-step;gap:8px;margin:0;padding:0;list-style:none;display:grid}.needle-placement-steps>li{counter-increment:needle-step;background:#fffdf7b8;border:1px solid #d8d2c6;border-radius:8px;gap:6px;padding:8px;display:grid}.needle-placement-steps>li>strong:before,.needle-placement-steps>li>label:first-child:before{content:counter(needle-step) ". ";color:#a83f2d}.needle-fields{grid-template-columns:repeat(2,minmax(0,140px))}.needle-placement-error{color:#9b2f20;margin:0;font-size:11px;font-weight:700}.export-placement-values{gap:9px;margin:12px 0;font-size:12px;display:grid}.export-placement-values dt{color:var(--muted)}.export-placement-values dd{margin:3px 0 0;font-weight:700}.export-sewn-size{margin:0 0 9px;font-size:14px}@media (width<=860px){.stage:not(.stage-empty){height:auto;min-height:0}.stage:not(.stage-empty) .canvas-with-tools{height:auto;overflow:visible}.canvas-with-tools .canvas-surface{flex:none;height:min(100vw - 8px,620px);min-height:0;padding-top:16px}.canvas-with-tools:has(.canvas-placement-open) .canvas-surface{flex-basis:auto;min-height:0}}@media (width<=540px){.canvas-tools-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.canvas-tools-bar,.canvas-tools-actions{gap:4px}.canvas-tools-actions .button{min-height:32px;padding:5px 8px}.canvas-tools-panel>input[type=range],.canvas-tools-panel>.append-help{display:none}.canvas-tools-panel>.needle-safety-note,.canvas-tools-panel>.needle-position-status{display:block}.canvas-with-tools .canvas-toolbar{margin-top:6px}.canvas-with-tools .canvas-surface{padding-top:12px}.canvas-workspace-tools{margin:0 5px;padding:5px 7px}}.mask-tool-badge{max-width:calc(100% - 16px)}@media (width<=540px){.hoop-photo-backdrop{padding:8px}.hoop-photo-dialog{max-height:calc(100dvh - 16px);padding-inline:12px}.hoop-photo-dialog h2{font-size:18px}.hoop-photo-corners,.append-design-actions{grid-template-columns:minmax(0,1fr)}.unsaved-backdrop{padding:10px}.unsaved-dialog{padding:20px 16px}.unsaved-dialog h2{font-size:23px}.unsaved-actions{grid-template-columns:minmax(0,1fr)}}.guided-studio{grid-template-rows:68px auto minmax(0,1fr) auto}.workflow-guide{background:var(--paper);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.workflow-guide h2{margin:0 0 5px;scroll-margin-top:130px;font-size:20px;line-height:1.3}.workflow-guide h2:focus{outline:none}.workflow-guide p{max-width:850px;color:var(--muted);margin:0;font-size:13px;line-height:1.5}.workflow-guide .button{flex-shrink:0;min-height:44px}.guided-studio .workspace-no-design{grid-template-columns:86px minmax(0,1fr)}.guided-studio .inspector-scroll{padding-bottom:28px}.guided-studio .panel-actions[hidden],.guided-studio button[hidden]{display:none}.guided-studio [hidden]{display:none!important}.workflow-actions{z-index:30;border-top:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex;box-shadow:0 -4px 18px #191e160f}.workflow-action-copy{max-width:600px;color:var(--muted);font-size:13px;line-height:1.4}.workflow-action-buttons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.workflow-action-buttons .button{white-space:normal;min-height:46px}.canvas-guided .canvas-tools-actions .button,.canvas-guided .canvas-tools-panel .button{min-height:44px}.canvas-guided-status{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 12px;padding-block:4px;font-size:11px;display:flex}.canvas-guided .canvas-tools-panel-heading{flex-wrap:wrap;gap:4px}.canvas-guided input,.canvas-guided select{min-height:44px}.guided-studio .toast-region{max-height:35dvh;top:auto;bottom:88px;overflow-y:auto}.simulator-panel{z-index:40;color:var(--ink);background:var(--paper);border-top:2px solid var(--coral-dark);position:fixed;inset:auto 0 0;box-shadow:0 -12px 50px #0000002e}.simulator-panel-heading{justify-content:space-between;align-items:center;gap:10px;padding:8px 20px;font-size:13px;display:flex}.simulator-panel-heading .button{min-height:44px}.simulator-panel .machine-dock{position:static}.guided-studio.simulator-open .toast-region{bottom:200px}@media (width<=860px){.guided-studio{height:auto;padding-bottom:calc(110px + env(safe-area-inset-bottom));display:flex}.workflow-guide{order:1;align-items:flex-start;padding:14px 16px}.guided-studio .workspace{flex-direction:column;order:2;display:flex}.guided-studio .workspace-threads .inspector,.guided-studio .workspace-run .inspector{order:1}.guided-studio .workspace-threads .stage,.guided-studio .workspace-run .stage{order:2}.workflow-guide h2{scroll-margin-top:120px;font-size:18px}.workflow-guide .button{white-space:normal;max-width:136px;padding-inline:10px;font-size:12px}.guided-studio .workflow-list{grid-template-columns:repeat(3,1fr)}.guided-studio .workflow-rail{padding-block:5px;position:static}.guided-studio .workflow-step{min-height:44px}.workflow-actions{padding:8px 12px max(8px, env(safe-area-inset-bottom));display:block;position:fixed;inset:auto 0 0}.workflow-action-copy{margin-bottom:5px;font-size:11px}.workflow-action-buttons{flex-wrap:nowrap}.workflow-action-buttons .primary{flex:1}.workflow-action-buttons .light{flex:0 110px;padding-inline:8px;font-size:11px}.guided-studio .toast-region{bottom:calc(114px + env(safe-area-inset-bottom))}.guided-studio .stage{padding:10px}.guided-studio .inspector-scroll{padding:16px}.guided-studio .empty-studio{padding:26px 18px}.guided-studio .empty-studio h1{font-size:30px}.guided-studio .canvas-with-tools .canvas-surface{height:min(100vw + 30px,600px)}.simulator-panel-heading{padding:8px 12px;font-size:11px}}@media (width<=540px){.workflow-guide{display:block}.workflow-guide .button{max-width:none;margin-top:8px}.canvas-guided .canvas-tools-actions{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.canvas-guided .canvas-tools-actions .button{white-space:normal;padding-inline:5px;font-size:11px}.canvas-guided .canvas-tools-actions:has(>[role=status]){align-items:center;display:flex}.canvas-guided .canvas-tools-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-guided .canvas-tools-panel>.append-help{display:block}}
