:root{--paper:#f6f2ec;--paper-2:#efe9e0;--card:#fbf9f5;--ink:#14120f;--ink-2:#4b463e;--ink-3:#8a8378;--line:#ddd5c8;--magenta:#e4007c;--magenta-ink:#b3005f;--yellow:#ffd200;--film:#1c1a17;--film-2:#26231f;--bad:#c8102e;--display:"Bricolage Grotesque", "Arial Narrow", system-ui, sans-serif;--serif:"Instrument Serif", Georgia, serif;--body:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease:cubic-bezier(.2, .7, .2, 1);--bar-h:88px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:15px/1.5 var(--body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}button,input,textarea{font:inherit;color:inherit}.mono{font-family:var(--mono);font-feature-settings:"tnum";letter-spacing:-.01em}.bad{color:var(--bad)}:focus-visible{outline:2px solid var(--magenta);outline-offset:2px}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px clamp(16px,4vw,40px);display:flex}.brand img{width:auto;height:40px;display:block}.top-nav{align-items:center;gap:22px;font-size:14px;font-weight:500;display:flex}.top-nav a{color:var(--ink);text-decoration:none}.top-nav a:not(.wa-pill):hover{text-underline-offset:4px;text-decoration:underline}.wa-pill{white-space:nowrap;background:var(--ink);transition:background .2s var(--ease);border-radius:999px;padding:9px 16px;color:var(--paper)!important}.wa-pill:hover{background:var(--magenta)}.shell{max-width:1360px;padding:clamp(24px, 4vw, 56px) clamp(16px, 4vw, 40px) calc(var(--bar-h) + 48px);grid-template-columns:minmax(340px,5fr) 7fr;gap:clamp(24px,4vw,64px);margin:0 auto;display:grid}.panel{grid-area:1/1;min-width:0}.facts-wrap{grid-area:2/1;min-width:0}.stage{min-width:0;max-height:calc(100vh - var(--bar-h) - 32px);scrollbar-width:thin;grid-area:1/2/span 2;align-self:start;padding-right:4px;position:sticky;top:16px;overflow-y:auto}.kicker{font:500 12px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:0 0 14px}.kicker:before{content:"";background:var(--magenta);vertical-align:-1px;width:10px;height:10px;margin-right:8px;display:inline-block}h1{font:800 clamp(2.3rem, 4.6vw, 3.9rem) / .98 var(--display);letter-spacing:-.035em;margin:0}h1 i{font:italic 400 1.02em/1 var(--serif);letter-spacing:-.01em;color:var(--magenta-ink);margin-top:4px;display:block}.lede{max-width:46ch;color:var(--ink-2);margin:18px 0 0;font-size:16px}.intro{margin-bottom:40px}.step-head{border-bottom:1.5px solid var(--ink);align-items:baseline;gap:12px;margin-bottom:14px;padding-bottom:10px;display:flex}.step-head h2{font:800 22px/1.1 var(--display);letter-spacing:-.02em;margin:0}.step-num{font:500 13px var(--mono);color:var(--ink-3)}.step-head .count{color:var(--ink-2);margin-left:auto;font-size:13px}.step-head .link-btn{margin-left:auto}.link-btn{color:var(--ink-2);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:13px;font-weight:500;text-decoration:underline}.link-btn:hover{color:var(--magenta-ink)}.drop{border:1.5px dashed var(--ink-2);text-align:left;cursor:pointer;width:100%;transition:background .2s var(--ease), border-color .2s var(--ease);background:repeating-linear-gradient(-45deg,#0000 0 10px,#14120f06 10px 20px);border-radius:0;align-items:center;gap:18px;padding:28px 22px;display:flex}.drop:hover{border-color:var(--magenta);background-color:#fff}.drop.compact{padding:14px 18px}.drop-plus{background:var(--magenta);color:#fff;width:52px;height:52px;font:400 30px/1 var(--display);transition:transform .25s var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.drop.compact .drop-plus{width:36px;height:36px;font-size:22px}.drop:hover .drop-plus{transform:rotate(90deg)}.drop-text{flex-direction:column;gap:2px;display:flex}.drop-text strong{font:800 18px/1.2 var(--display);letter-spacing:-.01em}.drop-text span{color:var(--ink-2);font-size:13.5px}.status{color:var(--ink-2);margin:10px 0 0;font-size:13.5px}.designs{flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.design{background:var(--card);border:1px solid var(--line);animation:rise .35s var(--ease) both;border-radius:14px;grid-template-columns:76px 1fr;gap:14px;padding:14px;display:grid}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}.design-thumb{background-color:var(--film);background-image:linear-gradient(45deg, var(--film-2) 25%, transparent 25%, transparent 75%, var(--film-2) 75%), linear-gradient(45deg, var(--film-2) 25%, transparent 25%, transparent 75%, var(--film-2) 75%);background-position:0 0,6px 6px;background-size:12px 12px;border-radius:8px;place-items:center;width:76px;height:76px;display:grid;overflow:hidden}.design-thumb img{object-fit:contain;max-width:88%;max-height:88%}.design-body{min-width:0}.design-head{align-items:baseline;gap:10px;display:flex}.design-name{white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;font-weight:600;overflow:hidden}.design-meta{font:12px/1.4 var(--mono);color:var(--ink-3);margin:0 0 10px}.design-fields{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.times{color:var(--ink-3);padding-bottom:10px}.num{flex-direction:column;gap:3px;display:flex}.num-label{color:var(--ink-2);font-size:11.5px;font-weight:500}.num-box{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;height:40px;transition:border-color .15s;display:flex}.num-box:focus-within{border-color:var(--ink)}.num-box input{width:58px;height:100%;font-family:var(--mono);background:0 0;border:0;outline:none;padding:0 0 0 10px;font-size:15px}.num-suffix{color:var(--ink-3);padding-right:10px;font-size:12px}.qty{flex-direction:column;gap:3px;margin-left:auto;display:flex}.qty-box{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;height:40px;display:flex;overflow:hidden}.qty-box button{cursor:pointer;background:0 0;border:0;width:36px;height:100%;font-size:18px}.qty-box button:hover{background:var(--paper-2)}.qty-box .num{gap:0}.qty-box .num-label{display:none}.qty-box .num-box{background:0 0;border:0;border-radius:0;height:38px}.qty-box .num-box input{text-align:center;width:44px;padding:0}.check{color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--magenta)}.warns{border-left:3px solid var(--yellow);background:#fff6cc;margin:10px 0 0;padding:8px 10px;font-size:12.5px;line-height:1.45;list-style:none}.facts{border-top:1px solid var(--line);gap:0;margin:0;display:grid}.facts div{border-bottom:1px solid var(--line);grid-template-columns:96px 1fr;gap:12px;padding:10px 0;font-size:13.5px;display:grid}.facts dt{font:500 11.5px/1.9 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.facts dd{margin:0}.hint{color:var(--ink-2);margin:0 0 16px;font-size:13.5px}.sheet-wrap{margin:0 0 28px}.sheet-cap{justify-content:space-between;margin:0 0 8px 34px;font-size:12.5px;font-weight:500;display:flex}.sheet-row{display:flex}.ruler{border-right:1px solid var(--ink);flex:none;width:34px;position:relative}.tick{border-top:1px solid var(--ink-3);width:6px;position:absolute;right:0}.tick.major{border-color:var(--ink);width:12px}.tick em{font:normal 500 9.5px var(--mono);white-space:nowrap;color:var(--ink-3);position:absolute;top:-7px;right:9px}.tick.major em{color:var(--ink);font-size:10.5px;right:15px}.film-empty{color:#f6f2ec8c;font:800 clamp(18px, 2.4vw, 26px) / 1.1 var(--display);letter-spacing:-.02em;text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.film-width{letter-spacing:.04em;color:var(--yellow);font-size:12px;font-weight:500}.film{background-color:var(--film);background-image:linear-gradient(45deg, var(--film-2) 25%, transparent 25%, transparent 75%, var(--film-2) 75%), linear-gradient(45deg, var(--film-2) 25%, transparent 25%, transparent 75%, var(--film-2) 75%);touch-action:pan-y;background-position:0 0,8px 8px;background-size:16px 16px;border-radius:0 0 6px 6px;flex:1;min-width:0;position:relative;overflow:hidden}.film:before{content:"";background:linear-gradient(90deg, var(--magenta), var(--yellow));height:3px;position:absolute;inset:0 0 auto}.meter-line{pointer-events:none;border-top:1px dashed #ffffff47;position:absolute;left:0;right:0}.billed-line{border-top:2px solid var(--yellow);pointer-events:none;z-index:2;position:absolute;left:0;right:0}.billed-line em{background:var(--yellow);color:var(--ink);font:normal 500 11px var(--mono);white-space:nowrap;padding:3px 8px;position:absolute;top:0;right:0}.piece{cursor:grab;touch-action:pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;z-index:1;outline:1px dashed #ffffff2e;transition:outline-color .15s;position:absolute}.piece:hover,.piece:focus-visible{outline:1.5px solid var(--yellow);z-index:3}.piece:active{cursor:grabbing}.piece.lifted{outline:2px solid var(--yellow);z-index:4;box-shadow:0 10px 24px #00000080}.piece.clash{outline:2px solid var(--bad);background:#c8102e40}.piece img{pointer-events:none;-webkit-user-select:none;user-select:none;max-width:none;display:block;position:absolute}.bar{z-index:20;background:var(--ink);color:var(--paper);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.bar-inner{max-width:1360px;min-height:var(--bar-h);align-items:center;gap:clamp(16px,3vw,40px);margin:0 auto;padding:12px clamp(16px,4vw,40px);display:flex}.bar-stat{flex-direction:column;min-width:0;display:flex}.bar-stat.grow{flex:1}.bar-label{font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#a39c90}.bar-value{font-size:20px;font-weight:600;line-height:1.2}.bar-value.big{font:800 30px/1.05 var(--display);letter-spacing:-.02em}.bar-sub{color:#c9c2b6;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.cta{background:var(--magenta);color:#fff;min-height:52px;font:800 16px/1 var(--display);letter-spacing:-.01em;cursor:pointer;transition:transform .2s var(--ease), background .2s var(--ease), opacity .2s;border:0;border-radius:999px;flex:none;padding:0 26px}.cta:hover:not(:disabled){background:#ff1a90;transform:translateY(-2px)}.cta:disabled{opacity:.35;cursor:not-allowed}.drop-overlay{z-index:40;border:2px dashed var(--magenta);pointer-events:none;background:#f6f2eceb;place-items:center;display:grid;position:fixed;inset:12px}.drop-overlay span{font:800 clamp(28px, 5vw, 56px) / 1 var(--display);letter-spacing:-.03em}.send{background:var(--paper);width:min(520px,100vw - 24px);max-height:calc(100dvh - 24px);color:var(--ink);border:0;border-radius:20px;padding:0;box-shadow:0 30px 80px #00000059}.send::backdrop{background:#14120f8c}.send-inner{padding:22px 22px 20px}.send-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.send-head h2{font:800 26px/1 var(--display);letter-spacing:-.025em;margin:0}.recap{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(3,auto) 1fr;gap:1px;margin:0;display:grid;overflow:hidden}.recap div{background:var(--card);padding:10px 12px}.recap dt{font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}.recap dd{margin:2px 0 0;font-size:16px;font-weight:600}.recap .total{background:var(--ink);color:var(--paper);text-align:right}.recap .total dt{color:#a39c90}.recap .total dd{font:800 22px/1.15 var(--display)}.recap-note{color:var(--ink-2);margin:8px 0 18px;font-size:12.5px}.field{flex-direction:column;gap:4px;margin-bottom:12px;font-size:13px;font-weight:500;display:flex}.field input,.field textarea{border:1px solid var(--line);resize:vertical;background:#fff;border-radius:10px;width:100%;padding:11px 12px;font-size:16px;font-weight:400}.field input:focus,.field textarea:focus{border-color:var(--ink);outline:none}.send-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.send-actions .cta{flex:220px}.ghost{border:1.5px solid var(--ink);cursor:pointer;background:0 0;border-radius:999px;flex:160px;min-height:52px;padding:0 18px;font-weight:600}.ghost:hover:not(:disabled){background:var(--ink);color:var(--paper)}.ghost:disabled{opacity:.4}.fine{color:var(--ink-3);margin:14px 0 0;font-size:12px}.done p{margin:0 0 12px;font-size:14.5px}@media (max-width:860px){:root{--bar-h:76px}.shell{grid-template-columns:1fr}.panel,.stage,.facts-wrap{grid-area:auto/1}.stage{max-height:none;padding-right:0;position:static;overflow:visible}.top-nav a:not(.wa-pill){display:none}.brand img{height:34px}.intro{margin-bottom:28px}.bar-value.big{font-size:24px}.bar-sub{font-size:11.5px}.cta{padding:0 18px;font-size:15px}}@media (max-width:420px){.bar-stat:first-child{display:none}.design{grid-template-columns:56px 1fr;gap:10px;padding:12px}.design-thumb{width:56px;height:56px}.qty{margin-left:0}.recap{grid-template-columns:repeat(3,1fr)}.recap .total{grid-column:1/-1;justify-content:space-between;align-items:baseline;display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
