:root{--page:#0e0f11;--surface:#141619;--raised:#1b1e22;--line:#24282d;--axis:#383d44;--ink:#eef0f2;--ink-2:#b3b8bf;--muted:#7c828b;--accent:#ff6b1a;--accent-ink:#160900;--focus:#ff8a47;--good:#2fb45a;--warning:#f3b13a;--critical:#ef4f4f;--meter:#4a90ee;--meter-track:#1d2a3b;--cw:#20b97e;--ccw:#4a90ee;--plate:#2b2f35;--arm:#3b4048;--plate-edge:#8a9099;--stage:radial-gradient(120% 90% at 50% 35%, #23262b 0%, #15171a 55%, #0e0f11 100%);--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#2f9e44;--font-ui:"Inter var", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", "Cascadia Mono", Menlo, Consolas, monospace;--r:3px;--shadow:0 1px 0 #ffffff08 inset, 0 10px 30px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:13.5px/1.45 var(--font-ui);font-feature-settings:"tnum", "cv11", "ss01";color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:light){:root{--page:#f3f3f1;--surface:#fff;--raised:#f8f8f6;--line:#e4e3df;--axis:#c9c7c0;--ink:#111214;--ink-2:#4a4d52;--muted:#868a90;--accent:#e8590c;--accent-ink:#fff;--focus:#e8590c;--good:#1f8a3e;--warning:#b97800;--critical:#c93434;--meter:#2a78d6;--meter-track:#dbe8f8;--cw:#12a06a;--ccw:#2a78d6;--plate:#d6d4cd;--arm:#b9b7af;--plate-edge:#55585e;--stage:radial-gradient(120% 90% at 50% 30%, #fff 0%, #eeeeeb 60%, #e3e2de 100%);--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#2f9e44;--shadow:0 1px 2px #0000000f, 0 10px 30px #00000014;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.num{font-variant-numeric:tabular-nums}::selection{background:var(--accent);color:var(--accent-ink)}*{scrollbar-width:thin;scrollbar-color:var(--axis) transparent}.btn,.new-design,.lib-toggle,.share>button,.vp-tools button,.start-row button,.share-row button,.library button{border:1px solid var(--axis);border-radius:var(--r);color:var(--ink);cursor:pointer;background:0 0;padding:5px 12px;line-height:1.3;transition:background-color .12s,border-color .12s,color .12s}.btn:hover,.new-design:hover,.lib-toggle:hover,.share>button:hover,.vp-tools button:hover,.start-row button:hover,.share-row button:hover:not(:disabled){background:var(--raised);border-color:var(--muted)}.primary,.btn.primary,.share-row button.primary,.library button.primary{border:1px solid var(--accent);border-radius:var(--r);background:var(--accent);color:var(--accent-ink);cursor:pointer;padding:6px 14px;font-weight:600}.primary:hover{filter:brightness(1.08)}[aria-pressed=true].lib-toggle,.share>button[aria-pressed=true],.vp-tools button[aria-pressed=true],.start-row button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.micro,.rail h2,.numbers h2,.library h2,.kpi-label,.node-index{font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:10.5px;font-weight:500}.splash{min-height:100vh;color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;place-items:center;margin:0;font-size:12px;display:grid}.splash.error{color:var(--critical);white-space:pre-wrap;text-transform:none;letter-spacing:0}.shell{grid-template:"bar bar bar""rail view numbers"minmax(0,1fr)"rail drawer numbers"/288px minmax(0,1fr) 328px;height:100vh;display:grid}.bar{border-bottom:1px solid var(--line);background:var(--surface);grid-area:bar;align-items:center;gap:10px;height:52px;padding:0 14px;display:flex}.brand{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:9px;margin-right:8px;font-size:12.5px;font-weight:600;display:inline-flex}.brand svg{color:var(--accent)}.design-name{text-overflow:ellipsis;white-space:nowrap;border-left:1px solid var(--line);min-width:0;margin-left:6px;padding-left:14px;font-weight:600;overflow:hidden}.design-name .rev{font-family:var(--font-mono);color:var(--muted);margin-left:8px;font-size:10.5px;font-weight:500}.start{border:1px solid var(--axis);background:var(--surface);width:min(880px,100vw - 32px);max-height:calc(100vh - 64px);color:var(--ink);box-shadow:var(--shadow);border-radius:6px;padding:26px 28px 28px}.start::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#08090a99}.start h2{letter-spacing:-.01em;margin:0 0 10px;font-size:18px;font-weight:650}.start h2+.start-row+h2{margin-top:22px}.start-row{flex-wrap:wrap;gap:6px;display:flex}.start-row button{padding:7px 14px}.start-close{color:var(--muted);cursor:pointer;border-radius:var(--r);background:0 0;border:0;padding:4px 8px;font-size:22px;line-height:1;position:absolute;top:14px;right:16px}.start-close:hover{color:var(--ink);background:var(--raised)}.start-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;margin:24px 0 0;padding:0;list-style:none;display:grid}.start-list li{min-width:0}.start-list button{border:1px solid var(--line);background:var(--raised);width:100%;height:100%;color:var(--ink);text-align:left;cursor:pointer;font:inherit;border-radius:4px;grid-template-rows:auto auto 1fr;grid-template-columns:76px minmax(0,1fr);gap:3px 12px;padding:12px;transition:border-color .12s,background-color .12s;display:grid}.start-list button:hover,.start-list button:focus-visible{border-color:var(--accent);background:var(--surface)}.start-thumb{grid-row:1/-1;width:76px;height:76px}.start-thumb .layout{width:100%;height:100%;position:static}.start-name{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.start-nums{color:var(--ink-2);gap:12px;font-size:12px;display:flex}.start-nums b{color:var(--ink);font-size:14px;font-weight:650}.start-tags{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;align-self:end;gap:4px 10px;font-size:10px;display:flex}.start-off{color:var(--ink-2)}.start-warn{color:var(--warning)}.history{gap:2px;margin-left:auto;display:flex}.history button{cursor:pointer;white-space:nowrap;border-radius:var(--r);background:0 0;border:0;padding:5px 10px;font-size:17px;line-height:1}.history button:hover:not(:disabled){background:var(--raised)}.history button:disabled{color:var(--muted);opacity:.45;cursor:default}.share{position:relative}.share>button[aria-pressed=false],.share>button:not([aria-pressed]){border-color:var(--accent);color:var(--accent)}.share-panel{z-index:20;background:var(--surface);border:1px solid var(--axis);width:min(520px,92vw);box-shadow:var(--shadow);border-radius:4px;gap:8px;padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.share-row{align-items:center;gap:6px;display:flex}.share-row input{background:var(--page);min-width:0;color:var(--ink);border:1px solid var(--line);border-radius:var(--r);font-family:var(--font-mono);flex:1;padding:6px 8px;font-size:11.5px}.share-row button{white-space:nowrap}.share-row button:disabled{opacity:.45;cursor:default}.share-issue{color:var(--critical);margin:0;font-size:12px}.library{z-index:15;background:var(--surface);border-right:1px solid var(--line);width:288px;box-shadow:var(--shadow);padding:14px 16px 24px;position:fixed;top:52px;bottom:0;left:0;overflow-y:auto}.library h2{margin:18px 0 6px}.library h3{color:var(--ink-2);margin:10px 0 2px;font-size:12px;font-weight:600}.library ul{margin:0;padding:0;list-style:none}.library button{padding:4px 10px}.lib-head,.lib-actions,.lib-section{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lib-head h2,.lib-section h2{flex:1;margin:0}.lib-head{margin-bottom:8px}.lib-section{margin:18px 0 6px}.lib-actions{margin:4px 0 8px}.library .lib-danger{color:var(--critical);border-color:#0000;margin-left:auto}.library .lib-back{border:0;padding:0 6px;font-size:20px;line-height:1}.lib-title{border-radius:var(--r);min-width:0;color:var(--ink);background:0 0;border:1px solid #0000;flex:1;padding:4px 6px;font-size:16px;font-weight:600}.lib-title:hover,.lib-title:focus{border-color:var(--line);background:var(--page)}.lib-context{resize:vertical;width:100%;font:inherit;color:var(--ink);background:var(--page);border:1px solid var(--line);border-radius:var(--r);padding:6px 8px;font-size:13px}.lib-projects li button,.library .lib-open{text-align:left;border:0;border-radius:0;flex-direction:column;align-items:flex-start;gap:0;width:100%;min-width:0;padding:7px 8px;display:flex}.lib-projects li{border-top:1px solid var(--line)}.lib-projects li button:hover,.library .lib-open:hover{background:var(--raised)}.lib-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.lib-meta{color:var(--muted);gap:6px;font-size:11.5px;display:flex}.lib-chip{color:var(--ink-2)}.lib-dir{color:var(--muted)}.lib-row,.lib-files li{align-items:center;gap:2px;display:flex}.lib-row .lib-open,.lib-files .lib-open{flex:1}.lib-row[aria-current] .lib-open{background:var(--accent);color:var(--accent-ink)}.lib-row[aria-current] .lib-meta,.lib-row[aria-current] .lib-chip{color:var(--accent-ink)}.library .lib-act{width:28px;height:28px;color:var(--muted);border:0;place-items:center;padding:0;display:grid}.library .lib-act:hover{color:var(--ink);background:var(--raised)}.library .lib-act:not(:has(svg)){width:auto;padding:0 8px}.library .lib-fold,.lib-archived summary{color:var(--muted);cursor:pointer;border:0;margin-top:16px;padding:4px 0;font-size:12px}.lib-empty{color:var(--muted);margin:4px 0;font-size:12px}.lib-issue{color:var(--critical);margin:6px 0;font-size:12px}.lib-issue ul{padding-left:16px}.lib-menu{background:var(--surface);min-width:180px;max-height:50vh;color:var(--ink);border:1px solid var(--axis);box-shadow:var(--shadow);border-radius:4px;margin:0;padding:4px 0;position:fixed;inset:auto;overflow-y:auto}.lib-menu button{width:100%;color:var(--ink);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;padding:6px 12px;display:block}.lib-menu button:hover,.lib-menu button:focus-visible{background:var(--raised)}.lib-menu button[aria-checked=true]{background:var(--accent);color:var(--accent-ink)}.rail,.numbers{background:var(--surface);padding:14px 18px 24px;overflow-y:auto}.rail{border-right:1px solid var(--line);counter-reset:node;grid-area:rail}.numbers{border-left:1px solid var(--line);grid-area:numbers}.rail h1{letter-spacing:-.01em;margin:6px 0 2px;font-size:17px;font-weight:650;line-height:1.25}.rail .subtitle{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-size:10.5px}.rail h2,.numbers h2{align-items:center;gap:8px;margin:22px 0 10px;display:flex}.rail h2:after,.numbers h2:after{content:"";background:var(--line);flex:1;height:1px}.numbers section:first-child h2{margin-top:4px}.rail dl{grid-template-columns:96px 1fr;gap:6px 8px;margin:0;display:grid}.rail dt{color:var(--ink-2)}.rail dd{overflow-wrap:anywhere;margin:0}.field{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.field input,.field select{border:1px solid var(--line);border-radius:var(--r);background:var(--page);padding:3px 7px}.field input{font-variant-numeric:tabular-nums;width:80px}.field input:hover,.field select:hover{border-color:var(--axis)}.field input:focus,.field select:focus{border-color:var(--accent);outline:none}.field input[aria-invalid=true]{border-color:var(--critical)}.field .unit{color:var(--muted);font-size:12px}.field .issue{color:var(--critical);flex-basis:100%;font-size:12px}.view{background:var(--stage);grid-area:view;place-items:center;min-width:0;min-height:420px;padding:24px;display:grid;position:relative;overflow:hidden}.view:before{content:"";pointer-events:none;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.55;background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 55%,#000 0%,#0000 85%);mask-image:radial-gradient(70% 60% at 50% 55%,#000 0%,#0000 85%)}.view-switch,.vp-tools{z-index:2;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:4px;align-items:center;gap:2px;padding:3px;display:flex;position:absolute}.view-switch{top:14px;left:14px}.view-switch button{border-radius:var(--r);cursor:pointer;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;padding:5px 14px;font-size:11px}.view-switch button:hover{background:var(--raised)}.view-switch button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.vp-loading{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.viewport{position:absolute;inset:0}.viewport canvas{display:block}.viewport[data-measuring=true] canvas{cursor:crosshair}.vp-tools{color:var(--ink-2);flex-wrap:wrap;gap:12px;padding:6px 12px;font-size:12px;bottom:14px;left:14px}.vp-tools label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:10.5px;display:inline-flex}.vp-tools input[type=range]{width:120px;accent-color:var(--accent)}.vp-tools button{padding:3px 10px;font-size:12px}.vp-tools .readout{color:var(--ink);font-variant-numeric:tabular-nums}.vp-tools .stat{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:10.5px}.layout{width:calc(100% - 48px);height:calc(100% - 80px);position:absolute;top:56px;left:24px}.layout .part path,.layout .part rect{stroke-width:.7px;vector-effect:non-scaling-stroke}.layout .part.plate path{fill:var(--plate);stroke:var(--plate-edge)}.layout .part.arm path,.layout .part.tube rect,.layout .part.mount path,.layout .part.wall rect{fill:var(--arm);stroke:var(--plate-edge)}.layout .part.top path{fill:none;stroke:var(--ink-2);stroke-dasharray:4 3}.layout .disk{fill-opacity:.1;stroke-width:1.2px;vector-effect:non-scaling-stroke}.layout .disk.cw{fill:var(--cw);stroke:var(--cw)}.layout .disk.ccw{fill:var(--ccw);stroke:var(--ccw)}.layout .bell{fill:var(--ink);fill-opacity:.85}.layout .nose{fill:var(--accent)}.info{border:1px solid var(--axis);width:15px;height:15px;color:var(--muted);cursor:help;vertical-align:middle;background:0 0;border-radius:50%;place-items:center;margin-left:4px;padding:0;font:italic 600 9.5px/1 Georgia,serif;display:inline-grid}.info:hover,.info:focus-visible{border-color:var(--ink);color:var(--ink)}.tip{border:1px solid var(--axis);background:var(--surface);max-width:min(340px,100vw - 16px);color:var(--ink);box-shadow:var(--shadow);border-radius:4px;margin:0;padding:12px 14px;font-size:12px;position:fixed;inset:auto}.tip p{margin:0 0 6px}.tip p:last-child{margin-bottom:0}.basis{border-collapse:collapse;width:100%;margin:2px 0 6px}.basis td{vertical-align:top;padding:2px 6px 2px 0}.basis td.num{text-align:right;white-space:nowrap}.band{color:var(--ink-2)}.chip{border:1px solid var(--axis);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);white-space:nowrap;border-radius:2px;padding:0 5px;font-size:9.5px;line-height:15px;display:inline-block}.chip.measured,.chip.fitted,.chip.datasheet{color:var(--good);border-color:currentColor}.chip.computed{color:var(--ink-2)}.chip.estimated{color:var(--muted);border-style:dashed}.kpis{background:var(--line);border:1px solid var(--line);border-radius:4px;grid-template-columns:1fr 1fr;gap:1px;margin:2px 0 16px;display:grid;overflow:hidden}.kpi{background:var(--surface);min-width:0;padding:10px 12px 9px}.kpi-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:24px;font-weight:650;line-height:1.1;display:block}.kpi-value small{color:var(--ink-2);letter-spacing:0;margin-left:3px;font-size:12px;font-weight:450}.kpi[data-status=warn] .kpi-value{color:var(--warning)}.kpi[data-status=bad] .kpi-value{color:var(--critical)}.gauge{margin-bottom:16px}.gauge-head{color:var(--ink-2);align-items:center;gap:6px;font-size:12px;display:flex}.gauge-head .chip{margin-left:auto}.gauge-value{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:21px;font-weight:650;line-height:1.2}.gauge-value .unit{color:var(--ink-2);letter-spacing:0;margin-left:3px;font-size:12.5px;font-weight:450}.gauge-value .sub{color:var(--muted);letter-spacing:0;margin-left:10px;font-size:11.5px;font-weight:400}.track{background:var(--meter-track);border-radius:2px;height:4px;margin:7px 0 20px;position:relative}.track .fill{background:var(--meter);border-radius:2px;height:100%}.gauge[data-status=warn] .track .fill{background:var(--warning)}.gauge[data-status=bad] .track .fill{background:var(--critical)}.gauge[data-status=warn] .gauge-value{box-shadow:inset 3px 0 var(--warning);padding-left:8px}.gauge[data-status=bad] .gauge-value{box-shadow:inset 3px 0 var(--critical);padding-left:8px}.track .mark{background:var(--ink);border-radius:1px;width:2px;height:12px;margin-left:-1px;position:absolute;top:-4px}.track .mark-label{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;font-size:9.5px;position:absolute;top:10px;transform:translate(-50%)}.stack{gap:2px;height:8px;margin:8px 0;display:flex}.stack .seg:first-child{border-radius:2px 0 0 2px}.stack .seg:last-child{border-radius:0 2px 2px 0}.seg.propulsion,.swatch.propulsion{background:var(--s1)}.seg.battery,.swatch.battery{background:var(--s2)}.seg.avionics,.swatch.avionics{background:var(--s3)}.seg.frame,.swatch.frame{background:var(--s4)}.seg.payload,.swatch.payload{background:var(--s5)}.seg.extras,.swatch.extras{background:var(--s6)}.legend{color:var(--ink-2);grid-template-columns:1fr 1fr;gap:3px 12px;margin:0;padding:0;font-size:11.5px;list-style:none;display:grid}.legend li{align-items:center;gap:6px;display:flex}.legend .num{color:var(--ink);margin-left:auto}.swatch{border-radius:2px;flex:none;width:8px;height:8px}.resonance{border-bottom:1px solid var(--axis);height:30px;margin:22px 0 20px;position:relative}.resonance .band{background:var(--line);border-radius:2px 2px 0 0;height:14px;position:absolute;bottom:0}.resonance .band span{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;font-size:9.5px;position:absolute;top:16px;left:0}.resonance .mode{background:var(--meter);width:2px;height:28px;margin-left:-1px;position:absolute;bottom:0}.resonance[data-status=warn] .mode{background:var(--warning)}.resonance .mode span{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;position:absolute;bottom:29px;left:50%;transform:translate(-50%)}.count{background:var(--raised);color:var(--ink-2);font-family:var(--font-mono);border-radius:2px;margin-left:2px;padding:0 5px;font-size:10px}.none{color:var(--muted);margin:0}.findings{margin:0;padding:0;list-style:none}.findings li{border-top:1px solid var(--line);box-shadow:inset 2px 0 var(--axis);grid-template-columns:46px 1fr;gap:10px;padding:9px 0 9px 10px;display:grid}.findings li[data-severity=error]{box-shadow:inset 2px 0 var(--critical)}.findings li[data-severity=warn]{box-shadow:inset 2px 0 var(--warning)}.findings .sev{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;padding-top:2px;font-size:9.5px;font-weight:600}.findings [data-severity=error] .sev{color:var(--critical)}.findings [data-severity=warn] .sev{color:var(--warning)}.findings [data-severity=info] .sev{color:var(--muted)}.findings .title{font-weight:600}.findings .detail{color:var(--ink-2);margin:3px 0 0;font-size:12px}.eval-error{color:var(--critical);white-space:pre-wrap}.tier-switch{background:var(--page);border:1px solid var(--line);border-radius:4px;gap:2px;margin:0 0 14px;padding:2px;display:flex}.tier-switch button{border-radius:var(--r);cursor:pointer;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);background:0 0;border:0;flex:1;padding:4px 0;font-size:10.5px}.tier-switch button:hover{color:var(--ink)}.tier-switch button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.node{border-top:1px solid var(--line);counter-increment:node}.node[data-selected=true]{box-shadow:inset 2px 0 var(--accent)}.node-head{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:10px 0 10px 8px;display:flex}.node-head:before{content:counter(node, decimal-leading-zero);font-family:var(--font-mono);color:var(--muted);letter-spacing:.06em;font-size:10px}.node-head:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);flex:none;width:6px;height:6px;margin-right:4px;transition:transform .15s;transform:rotate(-45deg)}.node-head[aria-expanded=true]:after{transform:rotate(45deg)}.node-head:hover .node-title{color:var(--accent)}.node-title{font-weight:600}.node-summary{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:58%;margin-left:auto;font-size:11.5px;overflow:hidden}.node dl{padding:0 0 14px 8px}.rail dl{grid-template-columns:92px minmax(0,1fr)}.rail dt{padding-top:4px;font-size:12.5px}.rail .field{max-width:100%}.field select{width:100%;min-width:0}.derived{color:var(--ink-2)}.derived:after{content:"derived";font-family:var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-left:6px;font-size:9.5px}.field.slider{grid-template-columns:minmax(0,1fr);gap:3px;width:100%;display:grid}.slider-track{align-self:center;display:block;position:relative}.slider-track input[type=range]{width:100%;accent-color:var(--accent);background:0 0;margin:0;position:relative}.slider-band{background:var(--line);border-radius:2px;height:8px;margin-top:-4px;position:absolute;top:50%}.slider-mark{background:var(--ink-2);width:2px;height:14px;margin:-7px 0 0 -1px;position:absolute;top:50%}.slider-legend{font-family:var(--font-mono);color:var(--muted);grid-column:1/-1;font-size:10px}.field.slider .field input{width:70px}.part-row{border:1px solid var(--line);border-radius:var(--r);background:var(--page);text-align:left;cursor:pointer;align-items:center;gap:6px;width:100%;min-width:0;padding:4px 8px;display:flex}.part-row>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.part-row:hover{border-color:var(--axis)}.part-row[aria-expanded=true],.part-row[data-selected=true]{border-color:var(--accent)}.part-row .misfit{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--critical);flex:none;margin-left:auto;font-size:9.5px}.checks{gap:2px;display:grid}.checks label{align-items:center;gap:6px;display:flex}.stack-note{color:var(--muted);grid-column:1/-1;margin:2px 0 0;font-size:11.5px}.picker{border:1px solid var(--axis);background:var(--surface);box-shadow:var(--shadow);border-radius:4px;margin:6px 0 4px;overflow:hidden}.picker input[type=search]{border:0;border-bottom:1px solid var(--line);background:var(--page);outline:none;width:100%;padding:7px 9px}.picker ul{max-height:360px;margin:0;padding:0;list-style:none;overflow-y:auto}.picker li button{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;width:100%;padding:8px 10px;display:grid}.picker li:first-child button{border-top:0}.picker li button:hover:not(:disabled){background:var(--raised)}.picker li[aria-current=true] button{box-shadow:inset 2px 0 var(--accent);cursor:default}.picker li[data-fit=no] .name{color:var(--ink-2)}.picker .name{overflow-wrap:anywhere;font-weight:600}.rail dl>.picker{grid-column:1/-1}.picker .spec,.picker .tags,.picker .delta,.picker .fit{color:var(--ink-2);grid-column:1/-1;font-size:11px}.picker .spec{font-family:var(--font-mono);font-size:10.5px}.picker .tags{color:var(--muted);gap:8px;display:flex}.picker .delta{font-variant-numeric:tabular-nums;color:var(--ink);flex-wrap:wrap;gap:10px;display:flex}.picker .delta .errors{color:var(--critical);font-weight:600}.picker .fit{gap:2px;margin:0;padding:0;list-style:none;display:grid}.picker .fit li{padding-left:10px;position:relative}.picker .fit li:before{content:"";background:var(--warning);border-radius:50%;width:5px;height:5px;position:absolute;top:6px;left:0}.picker li[data-fit=no] .fit li:before{background:var(--critical)}.drawer{border-top:1px solid var(--line);background:var(--surface);grid-area:drawer;min-width:0}.drawer-tabs{gap:2px;padding:6px 10px;display:flex;overflow-x:auto}.drawer-tabs button{white-space:nowrap;border-radius:var(--r);cursor:pointer;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);background:0 0;border:0;flex:none;padding:6px 14px;font-size:11px}.drawer-tabs button:hover{background:var(--raised);color:var(--ink)}.drawer-tabs button[aria-selected=true]{background:var(--accent);color:var(--accent-ink)}.drawer-tabs button[aria-selected=true] .count{color:inherit;background:#00000026}.drawer-body{border-top:1px solid var(--line);max-height:46vh;padding:10px 18px 18px;overflow:auto}.drawer-stat{color:var(--ink-2);margin:4px 0 10px}.bom{border-collapse:collapse;width:100%;font-size:12px}.bom th,.bom td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:5px 10px 5px 0}.bom thead th{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:500}.bom .num{text-align:right;font-variant-numeric:tabular-nums}.bom .bom-section th{color:var(--accent);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border-bottom:0;padding-top:14px;font-size:10px;font-weight:500}.bom a{color:inherit;-webkit-text-decoration-color:var(--axis);text-decoration-color:var(--axis);text-underline-offset:2px}.bom a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.stale{color:var(--warning)}.answers{margin:0;padding:0;list-style:none}.answers li{border-top:1px solid var(--line);grid-template-columns:104px 1fr;gap:10px;padding:9px 0;display:grid}.answers .level{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;padding-top:2px;font-size:9.5px;font-weight:600}.answers [data-level=blocked] .level{color:var(--critical)}.answers [data-level=required] .level{color:var(--warning)}.answers [data-level=recommended] .level{color:var(--ink-2)}.answers [data-level=info] .level{color:var(--muted)}.answers .question{font-weight:600}.answers .answer{color:var(--ink-2);margin:2px 0}.answers .source{font-family:var(--font-mono);color:var(--muted);font-size:10.5px}.export-head{flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 12px;display:flex}.blocked{color:var(--critical)}.dest{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.dest section{border:1px solid var(--line);background:var(--raised);border-radius:4px;min-width:0;padding:10px 12px}.dest h3{margin:0 0 2px;font-size:13px}.dest p{color:var(--muted);margin:0 0 8px;font-size:11.5px}.files{margin:0;padding:0;font-size:12px;list-style:none}.files li{justify-content:space-between;gap:12px;padding:2px 0;display:flex}.files li span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:11px;overflow:hidden}.files .num{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.prints{border-collapse:collapse;width:100%;font-size:12px}.prints th,.prints td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:6px 10px 6px 0}.prints thead th{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:500}.prints .num{text-align:right;font-variant-numeric:tabular-nums}.prints .mat{align-items:center;gap:6px;display:inline-flex}.prints .dot{background:var(--accent);border-radius:50%;width:9px;height:9px}.prints .dot.asa-gf{box-shadow:0 0 0 1px var(--axis);background:#3a3d42}.ok{color:var(--good);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:10.5px}.filaments{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0 0 14px;display:grid}.filaments section{border:1px solid var(--line);background:var(--raised);border-radius:4px;padding:10px 12px}.filaments h3{justify-content:space-between;gap:8px;margin:0 0 6px;font-size:13px;display:flex}.filaments dl{grid-template-columns:70px 1fr;gap:2px 8px;margin:0;font-size:11.5px;display:grid}.filaments dt{color:var(--muted)}.filaments dd{margin:0}.wiring-fig{border:1px solid var(--line);background:#fff;border-radius:4px;max-width:820px;margin:0 0 10px;padding:10px}.notes{color:var(--ink-2);margin:0;padding-left:18px;font-size:12px}.notes li{margin:3px 0}@media (width<=1100px){.shell{grid-template:"bar bar""rail view"minmax(420px,60vh)"rail drawer""rail numbers"/288px minmax(0,1fr);height:auto;min-height:100vh}.numbers{border-left:0;border-top:1px solid var(--line)}}@media (width<=720px){.bar{flex-wrap:wrap;row-gap:0;height:auto;min-height:52px;padding:6px 12px 0}.design-name{border-left:0;flex:1 0 100%;order:9;margin:0;padding:0 0 8px}.start-list{grid-template-columns:minmax(0,1fr)}.library{width:100vw;top:84px}.shell{grid-template:"bar""view"60vh"drawer""numbers""rail"/minmax(0,1fr)}.rail{border-right:0;border-top:1px solid var(--line)}}@media (width<=440px){.brand .word{display:none}.bar{gap:6px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.kpi-head{justify-content:space-between;align-items:center;display:flex}.kpi .chip{margin-top:4px}
