:root{--card:#f1f3f6;--card-hi:#fafbfc;--card-lo:#e3e7ec;--ink:#111318;--ink-2:#4a515b;--ink-3:#7a828d;--rule:#cbd1d8;--err:#a3222b;--m:48px;--r:6px;--r-end:22px;--display:"Unbounded", system-ui, sans-serif;--body:"Onest", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--ease:cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--card);color:var(--ink);font:400 16px/1.55 var(--body);margin:0}a{color:inherit}img,svg{display:block}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.wrap{max-width:1200px;margin:0 auto;padding:0 16px}@media (width>=768px){.wrap{padding:0 32px}}.eyebrow{font:500 12px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:0 0 12px}h1,h2,h3{font-family:var(--display);letter-spacing:-.015em;margin:0;font-weight:600}h1{font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.08}h2{font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.15}h3{font-size:1.05rem;line-height:1.3}p{margin:0}.muted{color:var(--ink-2)}.small{font-size:14px}section.block{padding:calc(var(--m) * 2) 0;border-top:1px solid var(--rule)}.btn{min-height:var(--m);background:var(--ink);color:var(--card-hi);border-radius:var(--r);font:600 15px/1 var(--body);cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:0 24px;text-decoration:none;transition:background .2s;display:inline-flex}.btn:hover{background:#2b2f37}.btn:disabled{background:var(--card-lo);color:var(--ink-3);cursor:not-allowed}.btn.line{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink);background:0 0}.btn.line:hover{background:var(--card-lo)}.link{text-underline-offset:4px;font-weight:600}.lang-banner{background:var(--card-lo);border-bottom:1px solid var(--rule);font-size:14px}.lang-banner .wrap{flex-wrap:wrap;align-items:center;gap:16px;min-height:40px;display:flex}.lang-banner button{cursor:pointer;background:0 0;border:0;margin-left:auto;padding:4px 8px;font-size:18px}header.top{border-bottom:1px solid var(--rule);background:var(--card);z-index:40;position:sticky;top:0}header.top .wrap{align-items:center;gap:24px;min-height:64px;display:flex}.wordmark{font:600 17px/1 var(--display);letter-spacing:-.01em;white-space:nowrap;text-decoration:none}nav.main{gap:20px;margin-left:auto;display:flex}nav.main a{color:var(--ink-2);border-bottom:2px solid #0000;padding:6px 0;font-size:15px;font-weight:500;text-decoration:none}nav.main a[aria-current=page]{color:var(--ink);border-color:var(--ink)}.lang-tabs{align-self:flex-start;gap:4px;display:flex}.lang-tabs a{font:500 12px/1 var(--mono);background:var(--card-lo);border:1px solid var(--rule);border-radius:0 0 var(--r) var(--r);color:var(--ink-2);border-top:0;padding:10px 10px 12px;text-decoration:none}.lang-tabs a[aria-current=true]{background:var(--ink);color:var(--card-hi);border-color:var(--ink);padding-bottom:18px}@media (width<=767px){header.top .wrap{flex-wrap:wrap;gap:0 16px}nav.main{order:3;gap:18px;width:100%;margin:0;padding-bottom:8px;overflow-x:auto}.lang-tabs{margin-left:auto}}.scene{aspect-ratio:4/3;border-radius:var(--r);background:var(--wall,#2a2c30);isolation:isolate;--x:50%;--y:40%;--tube:#ff5cb0;background-position:50%;background-size:cover;position:relative;overflow:hidden}.scene:before{content:"";z-index:0;opacity:.35;mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.scene{--glass-edge:color-mix(in oklab, var(--tube) 50%, white);--glass-body:color-mix(in oklab, var(--tube) 25%, white)}.scene:after{content:"";z-index:1;opacity:0;pointer-events:none;background:#000;transition:opacity .5s;position:absolute;inset:0}.scene.on:after{opacity:.15}.spill{z-index:2;pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(ellipse 46% 36% at var(--x) var(--y), color-mix(in oklab, var(--tube) 45%, transparent), transparent 72%);transition:opacity .5s;position:absolute;inset:0}.scene.on .spill{opacity:.55}@starting-style{.scene.on .spill{opacity:0}}.sign-wrap{z-index:3;left:var(--x);top:var(--y);width:var(--w,60%);position:absolute;translate:-50% -50%}svg.board{pointer-events:none;filter:drop-shadow(0 3px 4px #00000059);width:100%;height:100%;position:absolute;inset:0;overflow:visible}svg.board .body{fill:var(--glass-body);stroke:var(--glass-body);opacity:.14;transition:fill .5s,stroke .5s}svg.board .ring{fill:var(--glass-edge);opacity:.55;transition:fill .5s}.scene.unlit{--glass-edge:#fff;--glass-body:#e6ecef}svg.sign{width:100%;height:auto;filter:drop-shadow(0 0 2px var(--tube)) drop-shadow(0 0 9px var(--tube)) drop-shadow(0 0 26px color-mix(in oklab, var(--tube) 70%, transparent));--core:color-mix(in oklab, var(--tube) 40%, white);transition:filter .5s;position:relative;overflow:visible}svg.sign text{stroke-linejoin:round;stroke-linecap:round;transition:fill .5s,stroke .5s}svg.sign.fill text{fill:var(--core);stroke:var(--core);stroke-width:0}svg.sign.outline text{fill:none;stroke:var(--core);stroke-width:3px}svg.sign.fill.drawing{animation:wipe-on 1.1s var(--ease) both}svg.sign.outline.drawing text{stroke-dasharray:2400;animation:draw-outline 1.3s var(--ease) both}@keyframes wipe-on{0%{clip-path:inset(-60% 100% -60% -60%);opacity:1}60%{clip-path:inset(-60%);opacity:1}66%{opacity:.35}72%{opacity:1}78%{opacity:.6}to{clip-path:inset(-60%);opacity:1}}@keyframes draw-outline{0%{stroke-dashoffset:2400px;stroke-opacity:1}70%{stroke-dashoffset:0;stroke-opacity:1}76%{stroke-opacity:.3}to{stroke-dashoffset:0;stroke-opacity:1}}.scene.unlit svg.sign{filter:drop-shadow(0 2px 2px #00000073);--core:color-mix(in oklab, var(--tube) 16%, #dad8d3)}.scene.unlit .spill,.scene.unlit:after{opacity:0}.tag{z-index:4;font:500 11px/1.3 var(--mono);color:var(--ink);background:#fafbfceb;border-radius:4px;max-width:calc(100% - 24px);padding:5px 8px;position:absolute;top:12px;left:12px}.strip{background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r) var(--r) 23px 23px;cursor:pointer;width:46px;height:200px;transition:transform .35s var(--ease);flex-direction:column;align-items:center;padding:0;display:flex;position:relative;overflow:hidden}.strip .sw{background:var(--c);border-bottom:1px solid var(--rule);flex:none;align-self:stretch;height:44%}.strip .nm{writing-mode:vertical-rl;font:500 10.5px/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex:1;min-height:0;margin:8px 0 4px;overflow:hidden;transform:rotate(180deg)}.strip .no{font:500 10px/1 var(--mono);color:var(--ink-3);flex:none;margin-bottom:6px}.strip .hole{border:1.5px solid var(--rule);background:var(--card);border-radius:50%;flex:none;width:12px;height:12px;margin-bottom:11px}.strip[aria-pressed=true]{border-color:var(--ink)}.deck.fan{z-index:5;width:0;height:0;position:absolute;bottom:20px;left:66%}.deck.fan .strip{transform-origin:23px 182px;transform:rotate(var(--a));position:absolute;bottom:-18px;left:-23px}.deck.fan .strip:hover{transform:rotate(var(--a)) translateY(-12px)}.deck.fan .strip[aria-pressed=true]{transform:rotate(var(--a)) translateY(-28px);z-index:20}.rivet{z-index:30;pointer-events:none;width:18px;height:18px;box-shadow:0 0 0 2px var(--card-hi);background:radial-gradient(circle at 38% 34%,#a7aeb8,#2b2f36 62%);border-radius:50%;position:absolute;top:-9px;left:-9px}.deck.row{grid-template-columns:repeat(7,minmax(0,1fr));gap:18px 6px;padding:16px 0 4px;display:grid}.deck.row .strip{width:auto;height:auto;min-height:132px}.deck.row .strip .sw{height:52px}.deck.row .strip .nm{writing-mode:horizontal-tb;white-space:normal;overflow-wrap:anywhere;text-align:center;letter-spacing:0;margin:8px 2px 6px;font-size:9px;line-height:1.2;transform:none}.deck.row .strip[aria-pressed=true]{transform:translateY(-12px)}.deck.row .rivet{display:none}.hero>*,.builder>*,.g-grid>*{min-width:0}.hero{padding:calc(var(--m) * 1.5) 0 calc(var(--m) * 2);grid-template-columns:6fr 7fr;align-items:center;gap:48px;display:grid}.hero .sub{color:var(--ink-2);max-width:34ch;margin:20px 0 32px;font-size:18px}.proof{flex-wrap:wrap;gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}.proof li{font:500 12px/1 var(--mono);border:1px solid var(--rule);border-radius:var(--r);background:var(--card-hi);padding:9px 10px}.stage{padding-bottom:60px;position:relative}.stage .hint{font:500 12px var(--mono);color:var(--ink-2);max-width:46%;position:absolute;bottom:6px;left:0}@media (width<=899px){.hero{grid-template-columns:1fr;gap:24px;padding-top:24px}.hero-copy{order:2}.stage{margin:0 -16px;padding-bottom:0}.stage .scene{border-radius:0}.stage .hint{max-width:none;padding:4px 16px 0;position:static}.deck.fan{grid-template-columns:repeat(7,minmax(0,1fr));gap:18px 6px;width:auto;height:auto;padding:16px 16px 4px;display:grid;position:static}.deck.fan .strip{width:auto;height:auto;min-height:132px;position:relative;bottom:auto;left:auto;transform:none}.deck.fan .strip .sw{height:52px}.deck.fan .strip .nm{writing-mode:horizontal-tb;white-space:normal;overflow-wrap:anywhere;text-align:center;letter-spacing:0;margin:8px 2px 6px;font-size:9px;line-height:1.2;transform:none}.deck.fan .strip:hover{transform:none}.deck.fan .strip[aria-pressed=true]{transform:translateY(-12px)}.deck.fan .rivet{display:none}}.sec-head{margin-bottom:calc(var(--m) * 1);grid-template-columns:1fr 1fr;align-items:end;gap:24px;display:grid}.sec-head p{color:var(--ink-2);max-width:42ch}.timeline{grid-template-columns:repeat(5,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.timeline li{display:flex}.tl{background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r) var(--r) var(--r-end) var(--r-end);flex-direction:column;flex:1;min-height:240px;display:flex;position:relative;overflow:hidden}.tl-cta{margin-top:calc(var(--m) * 1.5);text-align:center;flex-direction:column;align-items:center;gap:20px;display:flex}.tl-cta .swatches{gap:4px;display:flex}.tl-cta .swatches span{background:var(--c);border:1px solid var(--rule);border-radius:3px 3px 6px 6px;width:10px;height:34px}.tl-cta .lead{font:600 clamp(1.15rem, 2.2vw, 1.5rem)/1.35 var(--display);letter-spacing:-.01em;max-width:32ch}.btn.big{min-height:64px;transition:background .2s, transform .2s var(--ease);border-radius:8px;padding:0 40px;font-size:17px}.btn.big:hover{transform:translateY(-2px)}.tl .band{height:var(--m);background:var(--c);border-bottom:1px solid var(--rule)}.tl .body{flex:1;padding:16px 16px 0}.tl h3{margin-bottom:8px}.tl p{color:var(--ink-2);font-size:14px}.tl .hole{border:1.5px solid var(--rule);border-radius:50%;width:12px;height:12px;margin:16px auto 14px}@media (width<=899px){.sec-head,.timeline{grid-template-columns:1fr}.tl{border-radius:var(--r) var(--r-end) var(--r-end) var(--r);flex-direction:row;min-height:0}.tl .band{border-bottom:0;border-right:1px solid var(--rule);flex:none;width:14px;height:auto}.tl .body{padding:14px 16px 16px}.tl .hole{display:none}}.pkg{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}.pkg p.lead{color:var(--ink-2);max-width:36ch;margin:16px 0 24px;font-size:18px}.kit{font:500 clamp(1.15rem, 1.9vw, 1.5rem)/1.45 var(--display);letter-spacing:-.01em;border-top:2px solid var(--ink);margin:0 0 24px;padding-top:16px}.numlist{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.numlist li{min-height:var(--m);border-bottom:1px solid var(--rule);align-items:center;gap:16px;font-weight:500;display:flex}.chip{background:var(--ink);width:30px;height:30px;color:var(--card-hi);font:500 13px/1 var(--mono);border-radius:50%;flex:none;place-items:center;display:inline-grid}@media (width<=899px){.pkg{grid-template-columns:1fr;gap:24px}}.facts{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.fact{background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r);flex-direction:column;gap:10px;padding:16px;display:flex}.fact .lbl{font:500 11px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);border-bottom:2px solid var(--ink);padding-bottom:10px}.fact .val{font:600 1.25rem/1.2 var(--display)}.fact .note{color:var(--ink-2);font-size:14px}@media (width<=899px){.facts{grid-template-columns:1fr 1fr}}@media (width<=520px){.facts{grid-template-columns:1fr}}.work{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.ph{aspect-ratio:4/5;border:1.5px dashed var(--ink-3);border-radius:var(--r);text-align:center;font:500 12px/1.4 var(--mono);color:var(--ink-2);background:repeating-linear-gradient(135deg,#0000 0 10px,#1113180a 10px 11px);place-items:center;padding:16px;display:grid}@media (width<=767px){.work{grid-template-columns:1fr 1fr}.work .ph:last-child{display:none}}footer.foot{background:var(--card-lo);border-top:1px solid var(--rule);padding:calc(var(--m) * 1.5) 0 calc(var(--m) * 2)}.foot-cta{padding-bottom:var(--m);border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.foot-cols{grid-template-columns:repeat(3,1fr);gap:24px;font-size:14px;display:grid}.foot-cols p+p{margin-top:4px}@media (width<=767px){.foot-cols{grid-template-columns:1fr}}.b-head{gap:12px;padding:32px 0 24px;display:grid}.b-note{color:var(--ink-2);border-left:3px solid var(--ink);max-width:60ch;padding-left:12px;font-size:14px}.builder{padding-bottom:calc(var(--m) * 2);grid-template-columns:auto minmax(360px,1fr);align-items:start;gap:32px;display:grid}.b-stage{position:sticky;top:80px}.b-stage .scene{aspect-ratio:3/4;width:auto;height:min(100vh - 150px,760px)}.b-stage .sign-wrap{cursor:grab;touch-action:none}.b-stage .sign-wrap:active{cursor:grabbing}.b-stage .sign-wrap:focus-visible{outline-offset:6px;outline:2px dashed #fafbfccc}.spec{z-index:4;background:var(--card-hi);color:var(--ink);border-top:1px solid var(--rule);font:500 12px/1.3 var(--mono);flex-wrap:wrap;align-items:center;gap:4px 16px;padding:9px 14px;display:flex;position:absolute;bottom:0;left:0;right:0}.spec b{font-weight:500}.place-badge{z-index:4;font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;background:var(--ink);color:var(--card-hi);border-radius:4px;padding:7px 9px;position:absolute;top:12px;right:12px}.place-badge:empty{display:none}.stage-bar{flex-wrap:wrap;align-items:center;gap:8px 16px;width:0;min-width:100%;margin-top:10px;display:flex}.drag-hint{font:500 12px var(--mono);color:var(--ink-2);flex:1;min-width:180px;margin:0}.seg.led{grid-template-columns:auto repeat(3,auto);align-items:center;display:inline-grid}.seg.led label{min-height:34px;padding:0 12px;font-size:13px}.led-l{font:500 11px var(--mono);color:var(--ink-2);letter-spacing:.06em;padding:0 6px 0 8px}.modes{grid-template-columns:1fr 1fr;gap:12px;max-width:760px;margin-top:12px;display:grid}.modes .eyebrow{grid-column:1/-1;margin:0}.mode{background:var(--card-hi);border:1.5px solid var(--rule);border-radius:var(--r) var(--r-end) var(--r-end) var(--r);cursor:pointer;gap:4px;padding:16px 18px;display:grid;position:relative}.mode input{opacity:0;cursor:pointer;position:absolute;inset:0}.mode-t{font:600 1rem/1.3 var(--display)}.mode-d{color:var(--ink-2);font-size:14px}.mode:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.mode:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}.builder.upload-mode{grid-template-columns:minmax(0,720px)}.builder.upload-mode .b-stage{display:none}.drop{min-height:calc(var(--m) * 2.5);text-align:center;border:1.5px dashed var(--ink-3);border-radius:var(--r);background:var(--card-hi);cursor:pointer;place-items:center;gap:4px;padding:16px;display:grid;position:relative}.drop:hover,.drop:focus-within{border-color:var(--ink)}.drop:focus-within{outline:2px solid var(--ink);outline-offset:3px}.drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.drop-t{font-weight:600}.drop-n{font:500 12px var(--mono);color:var(--ink-2)}.file-chip{font:500 13px var(--mono);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:12px;display:flex}.file-chip:before{content:"✓"}.link-btn{font:600 14px var(--body);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.file-err{color:var(--err);margin-top:8px;font-size:13px;font-weight:500}.file-err:empty{display:none}.drop~.small{margin-top:10px}.font-tabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.font-tabs button{font:500 12px/1 var(--mono);border:1.5px solid var(--rule);background:var(--card-hi);cursor:pointer;border-radius:999px;padding:9px 11px}.font-tabs button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--card-hi)}.parts.at-max{border-left-color:var(--ink);color:var(--ink);font-weight:600}.ctrl{border:0;border-top:1px solid var(--rule);min-width:0;margin:0;padding:20px 0}.ctrl legend{float:left;justify-content:space-between;align-items:baseline;gap:12px;width:100%;margin-bottom:12px;padding:0;display:flex}.ctrl legend+*{clear:both}.ctrl .legend-t{font:600 1rem/1.3 var(--display)}.ctrl .legend-n{font:500 11px var(--mono);color:var(--ink-3)}textarea,input[type=text],input[type=number]{width:100%;font:400 16px/1.4 var(--body);color:var(--ink);background:var(--card-hi);border:1.5px solid var(--rule);border-radius:var(--r);padding:12px 14px}textarea:focus,input:focus{border-color:var(--ink);outline:none}textarea{min-height:calc(var(--m) * 2);resize:vertical}.fonts{grid-template-columns:1fr 1fr;gap:8px;max-height:324px;padding:2px;display:grid;overflow-y:auto}.fontstrip{text-align:left;background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r) var(--r-end) var(--r-end) var(--r);cursor:pointer;flex-direction:column;justify-content:space-between;gap:6px;min-height:76px;padding:10px 12px;display:flex;overflow:hidden}.fontstrip .smp{white-space:nowrap;text-overflow:ellipsis;font-size:22px;line-height:1.2;overflow:hidden}.fontstrip .meta{font:500 10.5px/1 var(--mono);color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.fontstrip .lat{border:1px solid var(--ink-3);border-radius:3px;padding:2px 4px}.fontstrip:disabled{opacity:.45;cursor:not-allowed}.fontstrip[aria-pressed=true],.scn[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.scenes{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.scn{background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r);cursor:pointer;text-align:left;font:500 11px/1.25 var(--body);flex-direction:column;gap:6px;padding:4px;display:flex}.scn .th{background:var(--wall);background-position:50%;background-size:cover;border-radius:4px;height:72px}.scn span:last-child{padding:0 2px 2px}.scn input{opacity:0;width:1px;height:1px;position:absolute}.scn:focus-within{outline:2px solid var(--ink);outline-offset:2px}.seg{background:var(--card-lo);border-radius:var(--r);grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.seg label{cursor:pointer;border-radius:4px;place-items:center;min-height:40px;font-size:15px;font-weight:600;display:grid;position:relative}.seg input{opacity:0;cursor:pointer;position:absolute;inset:0}.seg label:has(input:checked){background:var(--ink);color:var(--card-hi)}.seg label:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:2px}.ruler{grid-template-columns:1fr 96px;align-items:center;gap:12px;display:grid}.ruler input[type=range]{appearance:none;background:repeating-linear-gradient(90deg, var(--ink-3) 0 1px, transparent 1px 10%) bottom / 100% 12px no-repeat, repeating-linear-gradient(90deg, var(--rule) 0 1px, transparent 1px 2%) bottom / 100% 6px no-repeat;cursor:pointer;width:100%;height:36px;margin:0}.ruler input[type=range]::-webkit-slider-runnable-track{background:0 0;height:36px}.ruler input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ink);border:2px solid var(--card-hi);border-radius:3px;width:16px;height:36px}.ruler input[type=range]::-moz-range-thumb{background:var(--ink);border:2px solid var(--card-hi);border-radius:3px;width:14px;height:34px}.ruler .num{position:relative}.ruler .num input{font-family:var(--mono);padding-right:36px}.ruler .num span{font:500 13px var(--mono);color:var(--ink-2);position:absolute;top:50%;right:12px;translate:0 -50%}.readout{font:500 13px var(--mono);margin-top:10px}.parts{color:var(--ink-2);border-left:3px solid var(--rule);margin-top:8px;padding-left:10px;font-size:14px}.checks{flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.checks li{font:500 12px/1 var(--mono);border:1.5px dashed var(--ink-3);color:var(--ink-2);border-radius:999px;padding:8px 10px}.checks li.ok{border:1.5px solid var(--ink);background:var(--ink);color:var(--card-hi)}.checks li.ok:before{content:"✓ "}.missing{color:var(--ink-2);margin-bottom:16px;font-size:14px}.field{gap:6px;margin-bottom:14px;display:grid}.field label{font-size:14px;font-weight:600}.field .hint{color:var(--ink-3);font-size:13px}.field .error{color:var(--err);font-size:13px;font-weight:500}.field .error:empty{display:none}.field input[aria-invalid=true]{border-color:var(--err)}.consent{grid-template-columns:22px 1fr;align-items:start;gap:10px;font-size:14px;display:grid}.consent input{width:20px;height:20px;accent-color:var(--ink);margin:1px 0 0}.turnstile{min-height:65px;margin:14px 0}.send-err{color:var(--err);margin-top:10px;font-size:14px;font-weight:500}.send-err:empty{display:none}.done{background:var(--card-hi);border:1px solid var(--ink);border-radius:var(--r);padding:20px}.done dl{grid-template-columns:auto 1fr;gap:6px 16px;margin:16px 0;font-size:14px;display:grid}.done dt{font:500 12px/1.6 var(--mono);color:var(--ink-2);text-transform:uppercase}.done dd{white-space:pre-line;margin:0}@media (width<=899px){.builder{grid-template-columns:1fr;gap:0}.b-stage{z-index:10;background:var(--card);margin:0 -16px;padding:0 0 8px;top:64px}.b-stage .scene{max-width:100%;height:50vh;margin:0 auto}.stage-bar{padding:0 16px}}@media (width<=420px){.fonts{grid-template-columns:1fr}}@media (width<=600px){.modes{grid-template-columns:1fr}}.g-grid{grid-template-columns:7fr 5fr;align-items:start;gap:32px;display:grid}figure.diagram{background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r);margin:0;padding:16px}figure.diagram svg{width:100%;height:auto}figure.diagram figcaption{font:500 12px var(--mono);color:var(--ink-2);margin-top:8px}.steps{grid-template-columns:1fr 1fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps li{background:var(--card-hi);border:1px solid var(--rule);border-radius:var(--r) var(--r-end) var(--r-end) var(--r);grid-template-columns:30px 1fr;gap:14px;padding:16px;display:grid}.steps h3{margin-bottom:4px;font-size:1rem}.steps p{color:var(--ink-2);font-size:14px}.draft{font:500 12px var(--mono);border:1.5px dashed var(--ink-3);border-radius:var(--r);color:var(--ink-2);margin:12px 0 20px;padding:6px 10px;display:inline-block}.care{border-top:2px solid var(--ink);background:var(--card-hi);border-radius:0 0 var(--r) var(--r);margin-top:24px;padding:16px}@media (width<=899px){.g-grid,.steps{grid-template-columns:1fr}}.prose{max-width:68ch;padding:32px 0 calc(var(--m) * 2)}.prose h2{margin:28px 0 8px;font-size:1.05rem;line-height:1.3}.prose p{color:var(--ink-2)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
