@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700&family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500&display=swap");:root{--bg:#EFF1ED;--panel:#FFFFFF;--panel-2:#F6F7F4;--line:#D6D9D2;--line-2:#E7E9E4;--ink:#1A211E;--ink-2:#5D6764;--ink-3:#8B9490;--amber:#A85F14;--amber-soft:#F3E4D2;--cyan:#256B85;--cyan-soft:#DCEAF0;--danger:#A63A2C;--danger-soft:#F6E0DC;--ok:#37704F;--ok-soft:#DDEDE3;--warn:#8A6410;--warn-soft:#F6EBD2;--view-1:#E4E7E2;--view-2:#CFD5CF;--shadow:0 1px 2px rgba(26,33,30,.06),0 8px 24px -12px rgba(26,33,30,.18);--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--disp:"Archivo","IBM Plex Sans",system-ui,sans-serif;--r:4px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#101614;--panel:#18201D;--panel-2:#141B19;--line:#2B3733;--line-2:#222C29;--ink:#E3E9E5;--ink-2:#93A09B;--ink-3:#6B7773;--amber:#E9A24A;--amber-soft:#33261588;--cyan:#63B4CF;--cyan-soft:#14303A88;--danger:#E48376;--danger-soft:#3A1F1B88;--ok:#71BC93;--ok-soft:#16301F88;--warn:#D9AE5A;--warn-soft:#33291388;--view-1:#141C1A;--view-2:#0C1211;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px -12px rgba(0,0,0,.7)}}*{box-sizing:border-box}html{color-scheme:light dark}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--disp);margin:0;text-wrap:balance;letter-spacing:-.01em}a{color:var(--cyan)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:3px}code{font-family:var(--mono);font-size:.92em}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.topbar{justify-content:space-between;gap:16px;padding:10px 20px;border-bottom:1px solid var(--line);background:var(--panel)}.brand,.topbar{display:flex;align-items:center}.brand{gap:9px;font-family:var(--disp);font-weight:700;font-size:15px;color:var(--ink);text-decoration:none}.brand .mark{width:16px;height:16px;border-left:3px solid var(--amber);border-top:3px solid var(--amber);border-right:3px solid transparent;border-bottom:3px solid transparent;border-radius:2px}.topbar nav{display:flex;align-items:center;gap:14px;font-size:13px}.linklike{background:none;border:0;color:var(--cyan);cursor:pointer;padding:0}.langswitch{display:inline-flex;border:1px solid var(--line);border-radius:3px;overflow:hidden}.langswitch button{display:inline-flex;align-items:center;gap:5px;border:0;background:var(--panel-2);padding:3px 7px;cursor:pointer;font-family:var(--mono);font-size:11px;color:var(--ink-2)}.langswitch .flag{font-size:13px;line-height:1;font-family:"Noto Color Emoji","Segoe UI Emoji","Apple Color Emoji",var(--sans)}.langswitch button:focus-visible{outline-offset:-2px}.langswitch button[aria-pressed=true]{background:var(--amber);color:#fff}.foot{display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap;padding:22px 20px 40px;color:var(--ink-3);font-size:12px;border-top:1px solid var(--line);margin-top:40px}.wrap{max-width:1500px;margin:0 auto;padding:20px}.wrap.narrow{max-width:820px}.pagehead{margin-bottom:18px}.pagehead.row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pagehead h1{font-size:clamp(22px,3vw,32px);font-weight:700}.lede{color:var(--ink-2);max-width:65ch;margin:6px 0 0}.subhead{font-family:var(--disp);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin:22px 0 8px}.fine,.subhead{color:var(--ink-3)}.fine{font-size:12px;margin:4px 0}.fine.ok{color:var(--ok)}.quoteblock{border-left:3px solid var(--line);padding:6px 0 6px 12px;color:var(--ink-2);margin:10px 0}.cfg{display:grid;grid-template-columns:290px minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}@media (max-width:940px){.cfg{grid-template-columns:1fr}}.rail{display:flex;flex-direction:column;gap:10px}.grp{background:var(--panel);border:1px solid var(--line);border-radius:5px;overflow:hidden}.grp>h3{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:9px 12px;background:var(--panel-2);border-bottom:1px solid var(--line-2);color:var(--ink-2)}.grp-body{padding:10px 12px;display:flex;flex-direction:column;gap:9px}.ctl{display:grid;grid-template-columns:1fr 78px;grid-gap:8px;gap:8px;align-items:center}.ctl.full{grid-template-columns:1fr}.ctl label{font-size:12.5px;color:var(--ink-2)}.ctl label b{color:var(--ink);font-weight:500;display:block}.ctl label i{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--ink-3)}.ctl label i.snap{color:var(--amber)}.ctl input[type=number],.ctl select{width:100%;padding:5px 7px;border:1px solid var(--line);border-radius:3px;background:var(--panel-2);font-family:var(--mono);font-size:12.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ctl input[type=number]{text-align:right}.ctl select{font-family:var(--sans)}.ctl-note{font-size:11.5px;color:var(--ink-3);margin:-2px 0 0}.seg-label{font-size:12.5px;color:var(--ink-2);display:block;margin-bottom:5px}.segs{display:flex;border:1px solid var(--line);border-radius:3px;overflow:hidden}.segs button{flex:1 1;padding:6px 4px;background:var(--panel-2);border:0;border-right:1px solid var(--line-2);cursor:pointer;font-size:11.5px;font-family:var(--disp);font-weight:500;color:var(--ink-2)}.segs button:last-child{border-right:0}.segs button[aria-pressed=true]{background:var(--amber);color:#fff;font-weight:600}.chk{display:flex;align-items:center;gap:8px;font-size:12.5px;cursor:pointer}.chk input{accent-color:var(--amber);width:15px;height:15px}.presets{display:flex;gap:6px;flex-wrap:wrap}.presets button{padding:5px 9px;border:1px solid var(--line);background:var(--panel-2);border-radius:3px;cursor:pointer;font-size:11.5px}.presets button:hover{border-color:var(--amber);color:var(--amber)}.main{display:flex;flex-direction:column;gap:16px;min-width:0}.view{position:relative;background:linear-gradient(170deg,var(--view-1),var(--view-2));border:1px solid var(--line);border-radius:5px;overflow:hidden;box-shadow:var(--shadow)}.view canvas{display:block;width:100%;height:clamp(340px,48vh,540px);cursor:-webkit-grab;cursor:grab;touch-action:none}.view canvas:active{cursor:-webkit-grabbing;cursor:grabbing}.hud{position:absolute;left:12px;top:12px;display:flex;flex-direction:column;gap:5px;pointer-events:none}.hud span{font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);background:color-mix(in srgb,var(--panel) 78%,transparent);padding:3px 7px;border-radius:3px;align-self:flex-start;border:1px solid var(--line-2)}.viewbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid var(--line);background:var(--panel)}.viewbar .sp{flex:1 1}.viewbar label{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.viewbar input[type=range]{width:110px;accent-color:var(--amber)}.sheetpanel{background:var(--panel);border:1px solid var(--line);border-radius:5px;overflow:hidden;box-shadow:var(--shadow)}.tabs{display:flex;border-bottom:1px solid var(--line);background:var(--panel-2);overflow-x:auto}.tabs button{padding:11px 16px;background:none;border:0;border-bottom:2px solid transparent;cursor:pointer;font-family:var(--disp);font-weight:600;font-size:12.5px;color:var(--ink-3);white-space:nowrap}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--amber)}.count{font-family:var(--mono);font-size:10px;padding:1px 5px;border-radius:8px;background:var(--line-2);margin-left:6px;color:var(--ink-2)}.count.warn{background:var(--danger-soft);color:var(--danger)}.pane{padding:16px 18px}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12.5px}th{text-align:left;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:500;padding:0 10px 7px 0;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:7px 10px 7px 0;border-bottom:1px solid var(--line-2);vertical-align:top}tbody tr:last-child td{border-bottom:0}.num{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.num,th.num{text-align:right}.dim{color:var(--ink-3);font-size:11.5px}.pname{font-weight:500}.pnote{color:var(--ink-3);font-size:11.5px;display:block;margin-top:1px;font-weight:400}tfoot td{border-top:1px solid var(--ink);border-bottom:0;padding-top:9px;font-weight:600}tr.unseen{background:color-mix(in srgb,var(--amber-soft) 55%,transparent)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--amber);margin-right:7px}.planwrap{border:1px solid var(--line);border-radius:4px;background:var(--panel-2);padding:10px;margin-bottom:14px;overflow:hidden}.plan{display:block;width:100%;height:auto;max-height:min(56vh,500px);touch-action:none}.pl-top{fill:var(--panel);stroke:var(--ink);stroke-width:3}.pl-rail{fill:var(--ink-3);opacity:.28}.pl-brace{fill:var(--danger);opacity:.22;stroke:var(--danger);stroke-width:2;stroke-dasharray:10 7}.pl-runner{stroke:var(--ink-3);stroke-width:2.5;opacity:.5}.pl-runner.off{stroke-dasharray:9 9;opacity:.22}.pl-bolt{fill:none;stroke:var(--amber);stroke-width:2.5}.pl-edge{fill:var(--ink-3);font-family:var(--mono);font-size:22px;letter-spacing:.1em;text-anchor:middle}.pl-plate{cursor:-webkit-grab;cursor:grab}.pl-plate.drag{cursor:-webkit-grabbing;cursor:grabbing}.pl-ledge{fill:var(--amber);fill-opacity:.3;stroke:var(--amber);stroke-width:3}.pl-open{fill:var(--panel-2);stroke:var(--cyan);stroke-width:3;stroke-dasharray:14 9}.pl-plate.bad .pl-ledge{fill:var(--danger);fill-opacity:.34;stroke:var(--danger)}.pl-plate.bad .pl-open{stroke:var(--danger)}.pl-num{fill:var(--ink);font-family:var(--disp);font-weight:700;font-size:46px}.pl-dim,.pl-num{text-anchor:middle}.pl-dim{fill:var(--ink-2);font-family:var(--mono);font-size:20px}.platelist{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:10px;gap:10px}.pcard{border:1px solid var(--line);border-left:3px solid var(--ok);border-radius:3px;padding:10px 12px;background:var(--panel-2)}.pcard.bad{border-left-color:var(--danger)}.pcard h4{margin:0 0 7px;font-size:13px;font-weight:600}.pcard p{margin:7px 0 0;font-size:11.5px;color:var(--ink-2)}.prow{display:flex;align-items:center;gap:6px}.prow label{font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}.pruns{margin-top:8px;padding-top:7px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.pruns h5{margin:0;font-family:var(--disp);font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}.pruns .chk{font-size:12px}.pcard .pruns p.fine{margin:1px 0 0;font-size:11px;color:var(--ink-3)}.prow input{width:100%;min-width:0;padding:4px 6px;border:1px solid var(--line);border-radius:3px;background:var(--panel);font-size:12px;text-align:right}.legend,.prow input{font-family:var(--mono)}.legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:14px;font-size:10.5px;color:var(--ink-2)}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:14px;height:3px;border-radius:2px;display:block}.sw-plate{background:var(--amber)}.sw-open{background:var(--cyan)}.sw-rail{background:var(--ink-3)}.sw-brace{background:var(--danger)}.sw-runner-off{background:var(--ink-3);opacity:.3}.alerts{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.alert{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border-radius:4px;font-size:12.5px;border:1px solid}.alert.err{background:var(--danger-soft);border-color:var(--danger)}.alert.ok{background:var(--ok-soft);border-color:var(--ok)}.alert.info{background:var(--cyan-soft);border-color:var(--cyan)}.alert.warn{background:var(--warn-soft);border-color:var(--warn)}.alert .tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;padding:2px 6px;border-radius:2px;background:var(--panel);flex:none;margin-top:1px}.alert ul{margin:4px 0 0;padding-left:18px}.notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:12px;gap:12px}.note{border:1px solid var(--line);border-left:3px solid var(--cyan);border-radius:3px;padding:11px 13px;background:var(--panel-2)}.note.good{border-left-color:var(--ok)}.note h4{margin:0 0 4px;font-size:13px;font-weight:600}.note p{margin:0;font-size:12.5px;color:var(--ink-2)}.nest{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.nest figure{margin:0}.nest figcaption{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);margin-bottom:5px}.nest svg{width:100%;height:auto;max-height:200px;border:1px solid var(--line);border-radius:3px;background:var(--panel-2);display:block}.exports{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:12px;gap:12px}.exp{border:1px solid var(--line);border-radius:4px;padding:13px;background:var(--panel-2);display:flex;flex-direction:column;gap:7px}.exp h4{margin:0;font-size:13.5px;font-weight:600}.exp p{margin:0;font-size:12px;color:var(--ink-2);flex:1 1}.btn-mini,.btn-primary,.btn-secondary{border-radius:3px;cursor:pointer;font-family:var(--disp);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-primary{padding:8px 14px;border:1px solid var(--amber);background:var(--amber);color:#fff;font-size:13px}.btn-primary:hover{filter:brightness(1.08)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;filter:none}.btn-secondary{padding:7px 12px;font-size:12.5px}.btn-mini,.btn-secondary{border:1px solid var(--line);background:var(--panel-2);color:var(--ink)}.btn-mini{padding:4px 10px;font-size:11.5px;font-family:var(--mono);font-weight:400}.btn-mini:hover{border-color:var(--cyan);color:var(--cyan)}.btn-mini.danger:hover{border-color:var(--danger);color:var(--danger)}.btn-primary.wide{width:100%}.card{background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:16px;box-shadow:var(--shadow)}.card.sticky{position:-webkit-sticky;position:sticky;top:16px}.card h2{font-size:15px;margin-bottom:10px}.card h3{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin:16px 0 8px}.stack{flex-direction:column;gap:12px}.row,.stack{display:flex}.row{align-items:center}.row.gap{gap:10px;flex-wrap:wrap}label>span{display:block;font-size:12px;color:var(--ink-2);margin-bottom:4px}label>span em{font-style:normal;color:var(--ink-3);font-size:11px}input[type=date],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;padding:7px 9px;border:1px solid var(--line);border-radius:3px;background:var(--panel-2);font-size:13px}textarea{font-family:var(--sans);resize:vertical}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px}.factgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:0;gap:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;margin:0 0 18px}.factgrid>div{padding:10px 12px;border-right:1px solid var(--line-2);background:var(--panel)}.factgrid>div:last-child{border-right:0}.factgrid dt{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.factgrid dd{margin:3px 0 0;font-size:14px;font-weight:500}.twocol{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:20px;gap:20px;align-items:start}@media (max-width:900px){.twocol{grid-template-columns:1fr}}.pill{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11px;font-family:var(--mono);background:var(--line-2);color:var(--ink-2)}.pill.s-new,.pill.warn{background:var(--amber-soft);color:var(--amber)}.pill.s-confirmed,.pill.s-in_production{background:var(--cyan-soft);color:var(--cyan)}.pill.s-delivered,.pill.s-ready{background:var(--ok-soft);color:var(--ok)}.pill.s-cancelled{background:var(--danger-soft);color:var(--danger)}.events{list-style:none;padding:0;margin:0;font-size:12px}.events li{display:flex;gap:10px;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--line-2)}.events time{font-family:var(--mono);color:var(--ink-3)}.events code{color:var(--ink-3);font-size:11px}.keylist{list-style:none;padding:0;margin:0 0 12px}.keylist li{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line-2)}.keylist li b{flex:1 1;font-weight:500}.keylist li span{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.qr{border:1px solid var(--line);border-radius:4px;background:#fff;align-self:flex-start}.secret{font-family:var(--mono);font-size:12px;padding:6px 8px;border-radius:3px;border:1px solid var(--line);word-break:break-all}.adminnav,.secret{background:var(--panel-2)}.adminnav{display:flex;gap:4px;padding:8px 20px;border-bottom:1px solid var(--line)}.adminnav a{padding:6px 12px;border-radius:3px;font-size:13px;text-decoration:none;color:var(--ink-2);display:inline-flex;align-items:center;gap:7px}.adminnav a:hover{background:var(--panel);color:var(--ink)}.badge{background:var(--amber);color:#fff;border-radius:9px;padding:1px 7px;font-size:11px;font-family:var(--mono)}.cfg-host{margin-bottom:24px}.basket{background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:18px;box-shadow:var(--shadow)}.basket-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:12px}.basket-head h2{font-size:17px}.qty{width:64px;padding:4px 6px;text-align:right;font-family:var(--mono)}td.actions{display:flex;gap:6px;justify-content:flex-end}.orderform{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.orderform h3{font-size:15px;font-family:var(--disp);margin-bottom:12px}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.fields .wide{grid-column:1/-1}.submitrow{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px}.grand{display:flex;align-items:baseline;gap:10px}.grand span{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.grand strong{font-family:var(--mono);font-size:24px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.quote dl{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;margin:0 0 12px}.quote dl>div{display:flex;justify-content:space-between;gap:16px;padding:9px 14px;border-bottom:1px solid var(--line-2);background:var(--panel)}.quote dl>div:last-child{border-bottom:0}.quote dl>div.grand{background:var(--amber-soft)}.quote dt{color:var(--ink-2);font-size:13px}.quote dd{margin:0;font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.quote dl>div.grand dd{font-size:19px}.done{text-align:center;padding:60px 20px}.done h1{font-size:28px;margin-bottom:10px}.orderno{font-family:var(--mono);font-size:16px;margin:18px 0}.loading{text-align:center;padding:40px}.idx{color:var(--ink-3);font-family:var(--mono);margin-right:6px}.labelinput{display:inline-block;width:auto;min-width:180px;max-width:100%;padding:3px 6px;border:1px solid transparent;border-radius:3px;background:transparent;font-weight:500;font-size:12.5px}.labelinput:hover{border-color:var(--line)}.labelinput:focus{border-color:var(--cyan);background:var(--panel-2)}.landing{max-width:1180px;margin:0 auto;padding:0 20px 8px}.hero-sec{padding:44px 0 0}.hsec{margin-top:60px;padding-top:52px;border-top:1px solid var(--line-2)}.hsec-head{max-width:62ch}.hsec-head h2{font-size:clamp(21px,3.2vw,33px);font-weight:700;line-height:1.12}.hsec-head .lede{font-size:15px;margin-top:10px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 13px;color:var(--ink-2);font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:"";flex:none;width:18px;height:2px;background:var(--amber)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);grid-gap:42px;gap:42px;align-items:center}.hero h1{font-size:clamp(30px,5.2vw,50px);line-height:1.06;letter-spacing:-.025em;font-weight:700}.hero-lede{margin:16px 0 0;max-width:52ch;font-size:clamp(14.5px,1.4vw,17px);color:var(--ink-2)}.ctarow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:26px 0 0}.ctarow .btn-primary{padding:12px 22px;font-size:15px}.ctarow .btn-secondary{padding:12px 18px;font-size:14px}@media (max-width:920px){.hero{grid-template-columns:1fr;gap:30px}}.hero-art{padding:14px;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--panel);box-shadow:var(--shadow);background-image:linear-gradient(var(--line-2) 1px,transparent 1px),linear-gradient(90deg,var(--line-2) 1px,transparent 1px);background-size:22px 22px}.build-art svg,.hero-art svg{display:block;width:100%;height:auto}@media (max-width:600px){.hero-art .dims{display:none}}.dw-line{fill:none}.dw-line,.dw-panel{stroke:var(--ink);stroke-width:2;stroke-linejoin:round}.dw-panel{fill:var(--panel-2)}.dw-solid{fill:var(--view-1);stroke:var(--ink);stroke-width:2}.dw-skin{stroke:var(--amber);stroke-width:1.5}.dw-hatch{stroke:var(--amber);stroke-width:1.4;opacity:.6}.dw-hidden{fill:none;stroke:var(--ink-3);stroke-width:1.4;stroke-dasharray:7 5}.dw-floor{fill:none;stroke:var(--line);stroke-width:2.5}.dw-plate{fill:var(--cyan-soft);stroke:var(--cyan);stroke-width:2}.dw-cut{fill:none;stroke:var(--cyan);stroke-width:1.8;stroke-dasharray:7 5}.dw-arrow{fill:var(--cyan);stroke:none}.dw-fixing{fill:var(--amber);stroke:var(--amber);stroke-width:2.4;stroke-linecap:round}.dw-fixing circle{fill:var(--panel)}.dw-dim{fill:none;stroke:var(--ink-3);stroke-width:1.2}.dw-dimtext{fill:var(--ink-2);font-family:var(--mono);font-size:15px;letter-spacing:.06em;text-anchor:middle}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));grid-gap:1px;gap:1px;margin:38px 0 0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--line)}.facts>div{padding:15px 17px;background:var(--panel)}.facts dt{font-family:var(--disp);font-size:14px;font-weight:700}.facts dd{margin:4px 0 0;font-size:12.5px;color:var(--ink-2)}.optgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));grid-gap:14px;gap:14px;list-style:none;margin:28px 0 0;padding:0}.optcard{padding:16px 17px 18px;background:var(--panel);border:1px solid var(--line);border-radius:5px}.optcard svg{display:block;width:26px;height:26px;margin-bottom:12px;color:var(--amber)}.optcard h3{margin-bottom:6px;font-size:14.5px;font-weight:600}.optcard p{margin:0;font-size:13px;color:var(--ink-2)}.build{display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);grid-gap:34px;gap:34px;align-items:start;margin-top:28px}.build-art{padding:16px;background:var(--panel-2);border:1px solid var(--line);border-radius:5px}.buildlist{list-style:none;margin:0;padding:0}.buildlist li{padding:14px 0;border-top:1px solid var(--line-2)}.buildlist li:first-child{padding-top:0;border-top:0}.buildlist h3{margin-bottom:5px;font-size:14.5px;font-weight:600}.buildlist p{margin:0;font-size:13.5px;color:var(--ink-2)}@media (max-width:860px){.build{grid-template-columns:1fr;gap:24px}}.steplist{display:grid;grid-template-columns:repeat(auto-fit,minmax(212px,1fr));grid-gap:18px;gap:18px;list-style:none;counter-reset:step;margin:30px 0 0;padding:0}.steplist li{position:relative;counter-increment:step;padding-top:20px;border-top:2px solid var(--amber)}.steplist li:before{content:counter(step,decimal-leading-zero);position:absolute;top:-11px;left:0;padding-right:9px;background:var(--bg);font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink)}.steplist h3{margin-bottom:6px;font-size:14.5px;font-weight:600}.steplist p{margin:0;font-size:13.5px;color:var(--ink-2)}.closer{position:relative;overflow:hidden;margin:60px 0 0;padding:clamp(28px,5vw,48px) clamp(20px,4vw,40px);text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow)}.closer:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--amber)}.closer h2{max-width:21ch;margin:0 auto;font-size:clamp(21px,3.4vw,34px);line-height:1.12;font-weight:700}.closer .lede{max-width:56ch;margin:12px auto 0;font-size:15px}.closer .ctarow{justify-content:center;margin-top:24px}.closer .fine{margin-top:16px;color:var(--ink-2)}