:root{--bg:#0b0f15;--panel:#121923;--panel-2:#18212d;--line:#243041;--fg:#e4e9f0;--muted:#8a96a8;--accent:#4aa8ff;--t0:#4aa8ff;--t1:#ff9a3d;--danger:#f87171;--warn:#facc15;--ok:var(--ok);--info:#4aa8ff;--accent-2:#ff9a3d;--on-accent:#fff;--font-ui:ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-code:var(--font-code);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#eef1f5;--panel:#fff;--panel-2:#f4f6f9;--line:#d5dbe3;--fg:#17202b;--muted:#5b6676;--accent:#1f74d1;--t0:#1f74d1;--t1:#d4691a;--ok:#059669;--info:#1f74d1;--accent-2:#d4691a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0}body{background:var(--bg);color:var(--fg);font:14px/1.45 var(--font-ui);min-height:100vh;padding-bottom:56px}button,select,input{font:inherit;color:inherit}a{color:var(--accent)}.bar{border-bottom:1px solid var(--line);background:var(--panel);flex-wrap:wrap;align-items:center;gap:12px 20px;padding:12px 16px;display:flex}.bar h1{letter-spacing:.02em;margin:0;font-size:17px}.setup{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.setup label{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.setup select,.setup input{background:var(--panel-2);border:1px solid var(--line);color:var(--fg);border-radius:6px;padding:5px 8px}.setup .seed input{width:8em;font-family:var(--font-code)}.vs{color:var(--muted)}.team-dot{border-radius:50%;width:10px;height:10px;display:inline-block}.team-dot.t0{background:var(--t0)}.team-dot.t1{background:var(--t1)}button{background:var(--accent);color:var(--on-accent);cursor:pointer;border:0;border-radius:6px;padding:6px 14px}button:disabled{opacity:.45;cursor:default}.file{cursor:pointer;text-underline-offset:3px;text-decoration:underline}.file input{display:none}.layout{grid-template-columns:minmax(0,1fr) 300px;gap:16px;max-width:1600px;margin:0 auto;padding:16px;display:grid}@media (max-width:900px){.layout{grid-template-columns:minmax(0,1fr)}}.viewer{flex-direction:column;gap:10px;min-width:0;display:flex}.stage{aspect-ratio:99/57;border:1px solid var(--line);background:#10161f;border-radius:8px;width:100%;position:relative;overflow:hidden}.stage canvas{display:block;position:absolute;inset:0}.overlay{z-index:2;pointer-events:none;font-variant-numeric:tabular-nums;position:absolute}.top-left{color:#c9d3df;font-family:var(--font-code);font-size:13px;top:8px;left:10px}.top-left.is-live{color:#fca5a5}.top-right{color:#8a96a8;font-family:var(--font-code);font-size:12px;top:8px;right:10px}.center{text-align:center;place-items:center;display:grid;inset:0}#banner{color:#fff;text-shadow:0 2px 12px #000000b3;font-size:clamp(20px,4vw,40px);font-weight:700}.speed{align-items:center;gap:6px;display:inline-flex}.speed input{width:110px}.speed output{text-align:right;font-variant-numeric:tabular-nums;min-width:3.4em;font-size:13px}.now-showing{margin-right:auto;font-weight:600}.now-showing .team-dot{margin-right:5px}.now-showing .vs{color:var(--muted);margin:0 4px;font-weight:400}.now-showing .seed{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:8px;font-weight:400}.botlogs-wrap h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 6px;font-size:12px;font-weight:600}.botlogs-wrap .hint{text-transform:none;letter-spacing:0;font-weight:400}.botlogs{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;display:grid}.botlog{border:2px solid var(--mark);background:var(--panel);border-radius:8px;min-width:0}.botlog-head{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:4px 8px;font-size:13px;font-weight:600;display:flex}.botlog-head .hex{background:var(--mark);clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);width:12px;height:12px}.botlog-head .who{color:var(--muted);margin-left:auto;font-size:12px;font-weight:400}.botlog ol{height:188px;font:12px/18px var(--font-code);font-variant-numeric:tabular-nums;margin:0;padding:4px 8px;list-style:none;overflow-y:auto}.botlog li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.botlog time{color:var(--muted);margin-right:6px}.botlog .dmg{color:var(--danger)}.botlog .times{color:var(--muted);margin-left:6px}.botlog .dead{color:var(--danger);font-weight:700}.transport{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.transport .icon{background:var(--panel-2);width:34px;color:var(--fg);border:1px solid var(--line);padding:6px 0}.transport select{background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:5px 6px}.timeline{flex:240px;min-width:160px;height:30px;position:relative}.timeline input{width:100%;accent-color:var(--accent);background:0 0;margin:0;position:absolute;inset:0}.markers{pointer-events:none;z-index:1;position:absolute;inset:2px 8px}.markers i{border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.markers i.hit{background:var(--fg);opacity:.35;width:1px;top:6px;bottom:6px}.markers i.kill{background:var(--danger)}.markers i.fault{background:var(--warn)}.toggle{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.side{flex-direction:column;gap:12px;min-width:0;display:flex}.jumbotron{aspect-ratio:16/9;border:1px solid var(--line);background:#10161f;border-radius:6px;width:100%;position:relative;overflow:hidden}.jumbotron canvas{display:block;position:absolute;inset:0}#jumbo-label{letter-spacing:.04em;font-size:11px}#jumbo-label.is-replay{color:#fcd34d}.side section{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.side h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-size:12px;font-weight:600}.hint{text-transform:none;letter-spacing:0;opacity:.8;font-weight:400}.scores{gap:10px;display:grid}.team-head{justify-content:space-between;gap:8px;font-weight:600;display:flex}.team-head .prog{color:var(--muted);font-weight:400;font-family:var(--font-code)}.bot-row{grid-template-columns:64px 1fr 36px;align-items:center;gap:8px;font-size:13px;display:grid}.bot-row .bar-track{background:var(--panel-2);border:1px solid var(--line);border-radius:4px;height:8px;overflow:hidden}.bot-row .bar-fill{height:100%;transition:width 80ms linear}.bot-row .hp{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.bot-row.dead{opacity:.5}.feed-wrap{flex:1;min-height:0}.feed{max-height:320px;margin:0;padding:0;font-size:13px;list-style:none;overflow-y:auto}.feed li{cursor:pointer;border-radius:4px;gap:8px;padding:4px 6px;display:flex}.feed li:hover{background:var(--panel-2)}.feed time{color:var(--muted);font-variant-numeric:tabular-nums;min-width:3.6em}.feed .kill{color:var(--danger);font-weight:600}.feed .fault{color:var(--warn)}.feed .empty{color:var(--muted);cursor:default}.meta dl{grid-template-columns:max-content 1fr;gap:2px 12px;margin:0;font-size:12px;display:grid}.meta dt{color:var(--muted)}.meta dd{font-family:var(--font-code);overflow-wrap:anywhere;margin:0}.t0c{color:var(--t0)}.t1c{color:var(--t1)}.tabs{gap:4px;display:flex}.tab{color:var(--muted);border-radius:6px;padding:6px 12px;font-weight:500;text-decoration:none}.tab:hover{color:var(--fg);background:var(--panel-2)}.tab.active{color:var(--fg);background:var(--panel-2);box-shadow:inset 0 -2px 0 var(--accent)}.viewer .setup{padding:0 2px}button.secondary{background:var(--panel-2);color:var(--fg);border:1px solid var(--line)}button.link{color:var(--accent);text-underline-offset:3px;background:0 0;padding:0 4px;text-decoration:underline}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px 14px}.panel h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px;font-size:12px;font-weight:600}.panel h3{margin:16px 0 6px;font-size:13px;font-weight:600}.muted{color:var(--muted)}.bad{color:var(--danger)}.won{color:var(--ok)}.lost{color:var(--danger)}.drew{color:var(--muted)}.workshop{grid-template-columns:290px minmax(0,1fr) 270px;align-items:start;gap:16px;max-width:1600px;margin:0 auto;padding:16px;display:grid}@media (max-width:1100px){.workshop{grid-template-columns:290px minmax(0,1fr)}.ws-test{grid-column:1/-1}}@media (max-width:720px){.workshop{grid-template-columns:minmax(0,1fr)}}.chassis-line{margin:0 0 10px}.mounts{gap:8px;display:grid}.mount{gap:3px;display:grid}.mount-name{color:var(--muted);text-transform:capitalize;font-size:12px}.mount select,.ws-test select,.ws-test input,.code-bar select{background:var(--panel-2);border:1px solid var(--line);color:var(--fg);border-radius:6px;width:100%;padding:5px 8px}.code-bar select{width:auto}.slots{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.slots li{grid-template-columns:26px 56px 1fr;align-items:center;gap:6px;display:grid}.slot-no{background:var(--panel-2);border:1px solid var(--line);width:22px;height:22px;font-family:var(--font-code);border-radius:5px;place-items:center;font-size:12px;display:inline-grid}.mstats{grid-template-columns:max-content 1fr;gap:3px 12px;margin:0;font-size:13px;display:grid}.mstats dt{color:var(--muted)}.mstats dd{font-variant-numeric:tabular-nums;margin:0}.ws-tabbar{border-bottom:1px solid var(--line);align-items:flex-end;gap:8px;margin-bottom:8px;display:flex}.ws-tabbar #open-file{white-space:nowrap;margin-left:auto;padding:5px 4px}.ws-tabs{flex-wrap:wrap;gap:2px;display:flex}#save-note{font-size:12px}.ws-tab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;border-radius:6px 6px 0 0;align-items:center;gap:6px;margin-bottom:-1px;padding:5px 10px;font-size:13px;display:inline-flex}.ws-tab:hover{color:var(--fg)}.ws-tab[aria-selected=true]{background:var(--panel-2);border-color:var(--line);color:var(--fg);font-weight:600}.ws-tab .num{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:400}.ws-tab.new .label{font-style:italic}.ws-tab .dirty{color:var(--warn)}.ws-tab .close{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px;line-height:1}.ws-tab .close:hover,.ws-tab .close.confirm{color:var(--danger)}#template{max-width:190px}.save-form{gap:6px;display:inline-flex}.save-form input{width:150px}.testing{overflow-wrap:anywhere;margin:0 0 10px;font-size:14px}.code-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.editor{border:1px solid var(--line);background:var(--panel-2);height:min(62vh,620px);min-height:320px;font:13px/1.5 var(--font-code);border-radius:6px;grid-template-columns:auto minmax(0,1fr);display:grid;overflow:hidden}.gutter{text-align:right;color:var(--muted);opacity:.7;-webkit-user-select:none;user-select:none;font:inherit;border-right:1px solid var(--line);min-width:3.2em;margin:0;padding:8px 8px 8px 10px;overflow:hidden}.gutter .err{color:var(--danger);opacity:1;font-weight:700}#code{resize:none;color:var(--fg);font:inherit;white-space:pre;tab-size:8;background:0 0;border:0;outline:none;height:100%;margin:0;padding:8px 10px;overflow:auto}.blocks-editor{border:1px solid var(--line);border-radius:6px;height:min(70vh,680px);min-height:380px;overflow:hidden}.asm-status{font-variant-numeric:tabular-nums;margin-top:8px;font-size:13px}.asm-status.ok{color:var(--ok)}.asm-status.bad{color:var(--danger);font-weight:600}.asm-errors{gap:2px;max-height:160px;margin:6px 0 0;padding:0;font-size:13px;list-style:none;display:grid;overflow-y:auto}.asm-errors li{border-radius:4px;padding:3px 6px}.asm-errors li.error{color:var(--danger);cursor:pointer}.asm-errors li.error:hover{background:var(--panel-2)}.asm-errors li.warning{color:var(--warn)}.ref{margin-top:12px;font-size:13px}.ref summary{cursor:pointer;color:var(--accent)}.ref h3{margin:14px 0 6px}.ref h4{margin:10px 0 4px;font-size:13px}.ref pre{background:var(--panel-2);border:1px solid var(--line);border-radius:6px;margin:0;padding:8px 10px;font-size:12px;line-height:1.45;overflow-x:auto}.cheat{border-collapse:collapse;width:100%;font-size:12px}.cheat th,.cheat td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:3px 8px 3px 0}.cheat th{color:var(--muted);font-weight:600}.cheat td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.ws-test{gap:10px;display:grid}.field{color:var(--muted);gap:3px;font-size:12px;display:grid}.seed-row{grid-template-columns:1fr auto;gap:6px;display:grid}.seed-row input{font-family:var(--font-code)}.seed-row button{padding:4px 10px;font-size:16px;line-height:1}.ws-result p{margin:0 0 6px;font-size:13px}.chips{flex-wrap:wrap;gap:4px;display:flex}.chip{font-size:12px;font-family:var(--font-code);background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:2px 8px}.chip.won{border-color:var(--ok);color:var(--ok)}.chip.lost{border-color:var(--danger);color:var(--danger)}.chip.drew{color:var(--muted)}.hint{color:var(--muted);margin:0;font-size:12px;font-weight:400}.scrim{border-top:1px solid var(--line);gap:8px;margin-top:4px;padding-top:10px;display:grid}.scrim h3{margin:0}#scrim{gap:8px;display:grid}#scrim-result p{margin:0 0 6px;font-size:13px}#scrim-result .asm-errors li{cursor:pointer}.league{grid-template-columns:300px minmax(0,1fr);grid-template-areas:"me live""me ladder""me series""me matches";align-items:start;gap:16px;max-width:1400px;margin:0 auto;padding:16px;display:grid}.lg-me{grid-area:me}.lg-live{grid-area:live}.lg-ladder{grid-area:ladder}.lg-series{grid-area:series}.lg-matches{grid-area:matches}@media (max-width:860px){.league{grid-template-columns:minmax(0,1fr);grid-template-areas:"me""live""ladder""series""matches"}}.lg-join{gap:8px;display:grid}.lg-join input{background:var(--panel-2);border:1px solid var(--line);color:var(--fg);border-radius:6px;padding:6px 8px}.lg-name{align-items:baseline;gap:8px;margin:0 0 4px;display:flex}.lg-name .link{margin-left:auto}.lg-me p{margin:4px 0;font-size:13px}.lg-actions{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.lg-games{border:0;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:6px 0;padding:0;display:flex}.lg-games legend{float:left;color:var(--muted,#6b7280);margin-right:10px;font-size:.9em}.lg-games label{align-items:center;gap:5px;display:inline-flex}.game-tabs{margin-bottom:6px}.lg-table{border-collapse:collapse;width:100%;font-size:13px}.lg-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:4px 8px 6px 0;font-size:12px;font-weight:600}.lg-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:6px 8px 6px 0}.lg-table td.num{font-variant-numeric:tabular-nums;white-space:nowrap}.lg-table td:last-child,.lg-table th:last-child{text-align:right}button.small{padding:3px 10px;font-size:12px}.watch-row{white-space:nowrap}button.live,.live-dot{color:#fff;background:#dc2626;border-color:#dc2626}.live-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;animation:1.4s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.watch-row button{margin-left:4px;padding:2px 8px}.lg-table tr.you td{background:var(--panel-2)}.tag{border:1px solid var(--line);color:var(--muted);vertical-align:1px;border-radius:8px;padding:0 6px;font-size:11px;line-height:18px;display:inline-block}.lang-pick{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.asm-status.pending{color:var(--muted);font-style:italic}.league-tabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.league-tab{color:var(--muted);border:1px solid var(--line);background:0 0;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:500}.league-tab.active{background:var(--accent);color:var(--on-accent);border-color:#0000}.league-tab .count{opacity:.7;font-variant-numeric:tabular-nums;margin-left:2px}.starts{align-items:center;gap:8px;display:inline-flex}.time-limit{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.time-limit input{width:4.5em}.game-type{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.since-start{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.stage.placing canvas{cursor:grab}.stage.placing.dragging canvas{cursor:grabbing}.gen{max-height:320px;margin:8px 0 0;font-size:12px;line-height:1.45;overflow:auto}.palette-pick{z-index:20;background:var(--panel);border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex;position:fixed;bottom:12px;left:12px;box-shadow:0 4px 16px #0000002e}.palette-pick label{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.palette-panel{z-index:20;background:var(--panel);border:1px solid var(--line);border-radius:10px;width:min(560px,100vw - 24px);max-height:calc(100vh - 90px);padding:12px 14px;position:fixed;bottom:58px;left:12px;overflow:auto;box-shadow:0 10px 32px #00000047}.palette-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.palette-panel h2{margin:0;font-size:15px}.palette-panel h3{margin:14px 0 6px;font-size:13px}.palette-panel p{margin:6px 0 10px;font-size:12px}.palette-table{border-collapse:collapse;width:100%;font-size:12px}.palette-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:4px 6px;font-weight:600}.palette-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:6px}.palette-table tr.support td{opacity:.85}.palette-table .hex{font-family:var(--font-code);white-space:nowrap}.swatch{border:1px solid var(--line);background:linear-gradient(90deg, var(--l) 0 50%, var(--d) 50% 100%);border-radius:6px;width:52px;height:30px;display:block}.palette-fonts{margin:0;padding-left:18px;font-size:12px}.ws-tab:hover,.tab:hover:not(.active){box-shadow:inset 0 -2px 0 var(--accent-2)}.api-lead{margin:10px 0 6px}.api-tools{gap:6px;margin:6px 0 8px;display:flex}.api-tools button{background:var(--panel-2);color:var(--fg);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:2px 10px;font-size:12px}.api-tools button:hover{border-color:var(--accent)}.ref .api-comp{border:1px solid var(--line);background:var(--panel);border-radius:8px;margin:0 0 6px}.ref .api-comp>summary{color:var(--fg);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:7px 10px;list-style:none;display:flex}.ref .api-comp>summary::-webkit-details-marker{display:none}.ref .api-comp>summary:before{content:"▸";color:var(--accent);width:10px}.ref .api-comp[open]>summary:before{content:"▾"}.ref .api-comp[open]>summary{border-bottom:1px solid var(--line)}.api-title{font-weight:650}.api-sub{color:var(--muted);font-family:var(--font-code);font-size:12px}.api-slot{border:1px solid var(--ok);color:var(--ok);border-radius:999px;padding:0 6px;font-size:11px}.api-slot.none{border-color:var(--warn);color:var(--warn)}.api-index{color:var(--muted);flex-wrap:wrap;flex-basis:100%;gap:2px 8px;padding-left:14px;font-size:11.5px;display:flex}.ref .api-comp[open] .api-index{display:none}.api-body{padding:4px 12px 10px}.api-body>p{color:var(--muted);margin:6px 0}.api-member{border-top:1px dashed var(--line);padding:10px 0 4px}.api-member:first-of-type{border-top:0}.api-member h5{flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0 0 4px;font-size:13px;display:flex}.api-member h5 code{color:var(--accent);overflow-wrap:anywhere}.api-member p{max-width:72ch;margin:4px 0}.api-kind{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:0 5px;font-size:10.5px;font-weight:500}.api-kind.k-command{color:var(--accent-2);border-color:currentColor}.api-kind.k-reading{color:var(--ok);border-color:currentColor}.api-kind.k-method,.api-kind.k-register{color:var(--accent);border-color:currentColor}.ref pre.api-ex{margin:6px 0 2px}.slots li>:nth-child(4){grid-column:2/-1;font-size:12px}.slots .slot-connect{color:var(--accent);overflow-wrap:anywhere}button.open-opp{align-self:flex-start;margin:-4px 0 8px;padding:0;font-size:13px}.factory{--fx-yellow:#f2b705;--fx-yellow-2:#ffd23f;--fx-green:#2f6f2a;--fx-green-2:#4c9a3f;--fx-orange:#e46c0a;--fx-red:#c8341f;--fx-steel:#3a3f46;--fx-steel-2:#4a5059;--fx-steel-3:#23272c;--fx-plate:#2d3137;--fx-ink:#141414;--fx-paper:#f3efe3;--fx-stencil:"Barlow Condensed", "Roboto Condensed", "Arial Narrow", "Helvetica Neue", sans-serif;grid-template-columns:minmax(440px,600px) minmax(0,1fr) minmax(260px,340px);gap:16px;max-width:1900px;margin:0 auto;padding:16px;display:grid}@media (max-width:1100px){.factory{grid-template-columns:minmax(0,1fr) minmax(260px,340px)}.fx-stock-wrap{grid-column:1/-1}}@media (max-width:760px){.factory{grid-template-columns:minmax(0,1fr)}}.factory h2,.factory h3{font-family:var(--fx-stencil);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-stretch:75%}.factory h2{font-size:18px}.factory h3{color:var(--muted);font-size:13px}.factory h3 .hint{text-transform:none;letter-spacing:0}.fx-stock-wrap,.fx-side>section,.fx-build{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px}.fx-side{flex-direction:column;gap:16px;min-width:0;display:flex}.fx-stock{flex-direction:column;gap:12px;display:flex}.fx-modes{text-transform:none;letter-spacing:0;font-family:var(--font-ui,system-ui, sans-serif);flex-wrap:wrap;gap:6px;margin-left:8px;display:inline-flex}.fx-shelf h3{flex-wrap:wrap}.factory .fx-mode{border:1px solid var(--line);background:var(--panel);color:var(--text,inherit);font:inherit;cursor:pointer;box-shadow:none;border-radius:999px;padding:4px 12px;font-weight:500}.factory .fx-mode:hover{border-color:var(--fx-yellow)}.factory .fx-mode.active{background:var(--fx-yellow);border-color:var(--fx-yellow);color:var(--fx-ink);font-weight:700}.fx-mode .count{opacity:.65;margin-left:4px;font-size:12px}.fx-stock.fx-can{outline:2px dashed var(--fx-yellow);outline-offset:4px;border-radius:6px}.fx-shelf h3{align-items:center;gap:8px;display:flex}.fx-shelf h3:before{content:"";background:var(--cat);border-radius:2px;width:14px;height:14px}.fx-shelf-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fx-shelf-row .fx-card{min-width:0}.cat-chassis{--cat:var(--fx-yellow);--cat-ink:var(--fx-ink)}.cat-engine{--cat:var(--fx-green);--cat-ink:#fff}.cat-rom{--cat:var(--fx-steel-2);--cat-ink:var(--fx-yellow-2)}.cat-sensor{--cat:var(--fx-yellow-2);--cat-ink:var(--fx-ink)}.cat-tool{--cat:var(--fx-orange);--cat-ink:#fff}.fx-card{cursor:grab;-webkit-user-select:none;user-select:none;min-width:120px;max-width:100%;color:var(--cat-ink);background:radial-gradient(circle at 5px 5px, #00000073 1.6px, transparent 2.2px), radial-gradient(circle at calc(100% - 5px) 5px, #00000073 1.6px, transparent 2.2px), radial-gradient(circle at 5px calc(100% - 5px), #00000073 1.6px, transparent 2.2px), radial-gradient(circle at calc(100% - 5px) calc(100% - 5px), #00000073 1.6px, transparent 2.2px), var(--cat);border-radius:4px;flex-direction:column;gap:2px;padding:8px 12px 8px 14px;transition:transform 80ms;display:flex;position:relative;box-shadow:inset 0 -3px #00000040,0 1px 2px #00000059}.fx-card:hover{transform:translateY(-1px)}.fx-card.fx-used{outline-offset:3px;outline:3px solid #1f74d1}.fx-card:active{cursor:grabbing}.fx-card-name{font-family:var(--fx-stencil);letter-spacing:.08em;text-transform:uppercase;font-size:17px;font-weight:800;font-stretch:75%}.fx-card-line{opacity:.85;font-size:12px}.fx-tip{z-index:50;pointer-events:none;border:1px solid var(--line);border-top:4px solid var(--cat);background:var(--panel);width:min(340px,100vw - 16px);color:var(--fg);border-radius:6px;padding:10px 12px;font-size:12.5px;line-height:1.4;position:absolute;box-shadow:0 6px 20px #0000004d}.fx-tip[hidden]{display:none}.fx-tip.cat-spare{--cat:var(--muted)}.fx-tip-head{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.fx-tip-name{font-family:var(--fx-stencil);letter-spacing:.08em;font-size:17px;font-weight:800;font-stretch:75%}.fx-tip-kind{color:var(--muted)}.fx-tip h4{text-transform:uppercase;letter-spacing:.08em;margin:8px 0 2px;font-size:11px}.fx-tip-features{color:var(--muted)}.fx-tip-benefits{color:#2f9e5a}.fx-tip-risks{color:#e0533a}.fx-tip-limits{color:#c08a12}.fx-tip ul{margin:0;padding-left:16px}.fx-tip li+li{margin-top:2px}.fx-tip-hint{border-top:1px solid var(--line);color:var(--muted);margin:8px 0 0;padding-top:6px;font-style:italic}.fx-remove{color:#fff;background:#00000059;border-radius:3px;padding:0 6px;font-size:12px;line-height:18px;position:absolute;top:4px;right:4px}.fx-remove:hover{background:var(--fx-red)}.fx-build-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.fx-build-head h2{margin:0 auto 0 0}.fx-build-head input{background:var(--panel-2);border:1px solid var(--line);border-radius:6px;width:17em;min-width:0;padding:5px 8px}.fx-platform{background:var(--fx-steel-3);border:6px solid #0000;border-image:repeating-linear-gradient(45deg, var(--fx-yellow) 0 12px, var(--fx-ink) 12px 24px) 6;border-radius:6px;flex-direction:column;gap:0;display:flex;overflow:hidden}.fx-layer{padding:10px 12px 12px;position:relative}.fx-layer h3{color:#c8ccd2}.fx-layer+.fx-layer{border-top:3px solid var(--fx-ink);box-shadow:inset 0 3px #ffffff0f}.fx-layer-deck{background:repeating-linear-gradient(135deg,#4d535c 0 2px,#444a52 2px 9px)}.fx-layer-frame{background:linear-gradient(#3b4047,#31353b)}.fx-layer-engine{background:linear-gradient(#2a2e33,#202327)}.fx-sockets{flex-wrap:wrap;gap:10px;display:flex}.fx-socket{background:#00000038;border:2px dashed #ffffff2e;border-radius:5px;flex-direction:column;flex:150px;gap:6px;min-width:150px;max-width:240px;padding:6px;display:flex}.fx-socket.filled{border-style:solid;border-color:#00000080}.fx-socket-head{color:#aeb4bc;text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;font-size:11px;display:flex}.fx-empty{color:#7f8791;text-transform:uppercase;letter-spacing:.05em;place-items:center;min-height:46px;font-size:12px;display:grid}.fx-ch{font-family:var(--font-code);background:var(--fx-yellow);color:var(--fx-ink);border-radius:3px;padding:0 6px;font-size:11px;font-weight:700;display:inline-block}.fx-dragging .fx-socket{opacity:.45}.fx-dragging .fx-socket.fx-can{opacity:1;border-color:var(--fx-yellow);border-style:dashed}.fx-dragging .fx-socket.fx-over{background:#f2b70538;border-style:solid}.fx-note{min-height:1.45em;color:var(--muted);margin:8px 0}.fx-group{color:#e3e6ea;text-transform:uppercase;letter-spacing:.06em;margin:8px 0 6px;font-size:12px}.fx-group span{text-transform:none;letter-spacing:0;color:#aeb4bc;margin-left:6px;font-weight:400}.fx-offboard .fx-socket{background:#00000059;border-color:#f2b70573}.fx-offboard .fx-card{opacity:.78}.fx-card.fx-off{filter:grayscale(.9)brightness(.85);opacity:.45;cursor:not-allowed}.fx-wiring{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 12px;margin:0;padding:0;list-style:none;display:grid}.fx-wiring li{align-items:center;gap:8px;display:flex}.fx-view{background:#1d2126;border-radius:6px;height:clamp(260px,40vh,460px);margin-top:14px;position:relative;overflow:hidden}.fx-view canvas{width:100%;height:100%;display:block}.fx-totals{grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:0;display:grid}.fx-totals dt{color:var(--muted)}.fx-totals dd{font-family:var(--font-code);font-variant-numeric:tabular-nums;margin:0}.fx-delta{border-radius:3px;padding:0 4px;font-size:12px;animation:1.6s ease-out fx-flash}.fx-delta.good{color:var(--fx-green-2)}.fx-delta.bad{color:var(--fx-orange)}@keyframes fx-flash{0%{background:#f2b70559}to{background:0 0}}.fx-reach{font-family:var(--font-ui);margin:0;padding:0;list-style:none}.fx-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fx-item{background:var(--panel-2);border-left:4px solid var(--fx-yellow);border-radius:6px;flex-direction:column;gap:6px;padding:8px;display:flex}.fx-item-main{flex-direction:column;min-width:0;display:flex}.fx-item.fx-pick{cursor:pointer}.fx-item.fx-pick:hover,.fx-item.fx-pick:focus-visible{outline:2px solid var(--fx-yellow);outline-offset:1px}.fx-item.selected{outline-offset:1px;outline:2px solid #1f74d1}.fx-item-main .muted{overflow-wrap:anywhere;font-size:12px}.fx-item-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fx-item-actions button{padding:4px 10px}.factory button:not(.link):not(.fx-remove):not(.secondary):not(.fx-mode){background:var(--fx-yellow);color:var(--fx-ink);font-weight:600}.factory button.secondary{background:var(--panel);color:var(--fg);border:1px solid var(--line);font-weight:400}.factory button.link{color:var(--accent);background:0 0;padding:4px 6px}.factory button.danger{color:var(--danger)}.fx-program{align-items:center;gap:6px;min-width:0;display:inline-flex}.fx-program select{background:var(--panel);border:1px solid var(--line);border-radius:6px;max-width:12em;padding:3px 6px}.bar h1 .brand{color:inherit;text-decoration:none}.home{--hm-yellow:#f2b705;--hm-kicker:#9a6f00;--hm-ink:#141414;max-width:1400px;margin:0 auto;padding:28px 20px 48px}.home-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:32px;display:grid}@media (max-width:960px){.home-hero{grid-template-columns:minmax(0,1fr)}}.home-kicker{color:var(--hm-kicker);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:700}.home-pitch h2{letter-spacing:-.01em;margin:0 0 16px;font-size:clamp(28px,4vw,44px);line-height:1.08}.home-lede{color:var(--fg);opacity:.88;max-width:56ch;margin:0 0 12px;font-size:17px;line-height:1.55}.home-start{background:var(--hm-yellow);color:var(--hm-ink);box-shadow:0 4px 0 color-mix(in srgb, var(--hm-yellow) 60%, #000);border-radius:8px;align-items:center;gap:10px;margin-top:20px;padding:14px 24px;font-size:19px;font-weight:800;text-decoration:none;display:inline-flex}.home-start:hover{filter:brightness(1.05)}.home-start:active{box-shadow:0 2px 0 color-mix(in srgb, var(--hm-yellow) 60%, #000);transform:translateY(2px)}.home-free{color:var(--fg);opacity:.85;margin:10px 0 0;font-size:14px}.home-end{text-align:center;margin:40px 0 8px}.home-ctas{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.home-cta{border:1px solid var(--line);color:var(--fg);background:var(--panel);border-radius:6px;padding:10px 18px;font-weight:600;text-decoration:none;display:inline-block}.home-cta:hover{border-color:var(--hm-yellow)}.home-cta.primary{background:var(--hm-yellow);border-color:var(--hm-yellow);color:var(--hm-ink)}.home-demo{background:repeating-linear-gradient(135deg,#3a3f46 0 2px,#33383e 2px 10px);border:4px solid;border-image:repeating-linear-gradient(45deg,#f2b705 0 14px,#141414 14px 28px) 6;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:14px;min-height:360px;padding:14px;display:grid;position:relative;overflow:hidden}@media (max-width:640px){.home-demo{grid-template-columns:minmax(0,1fr)}}.home-floor{flex-direction:column;gap:10px;min-width:0;display:flex}.home-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.home-card{letter-spacing:.04em;color:#141414;white-space:nowrap;background:#f2b705;border-radius:4px;padding:7px 10px;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:14px;font-weight:700;position:relative;box-shadow:inset 0 -3px #00000040}.home-card.cat-sensor{background:#ffd23f}.home-card.cat-tool{color:#fff;background:#e46c0a}.home-card.cat-chassis{background:#f2b705}.home-card.used{outline-offset:2px;outline:3px solid #1f74d1}.home-platform{background:#00000047;border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(34px,auto);align-content:start;gap:6px;min-height:132px;padding:8px;display:grid}.home-slot{border:2px dashed #fff3;border-radius:4px;place-items:stretch stretch;min-height:34px;padding:2px;display:grid}.home-slot .home-card{font-size:13px}.home-frame{border-style:solid;border-color:#f2b70580;grid-column:1/-1}.home-empty{color:#8a929c;text-transform:uppercase;letter-spacing:.06em;place-items:center;font-size:11px;display:grid}.home-x{opacity:.8;font-size:11px;position:absolute;top:2px;right:4px}.home-caption{color:#e3e6ea;min-height:1.4em;margin:0;font-size:13px}.home-view{background:#1d2126;border-radius:8px;min-height:320px;position:relative;overflow:hidden}.home-view canvas{width:100%;height:100%;display:block}.home-ghost{pointer-events:none;z-index:2;position:absolute;top:0;left:0;box-shadow:0 10px 22px #00000073}.home-cursor{z-index:3;pointer-events:none;position:absolute;top:0;left:0;transform:translate(60px,60px)}.home-cursor svg{filter:drop-shadow(0 2px 3px #00000080);transition:transform .12s;display:block}.home-cursor.down svg{transform:scale(.85)}button.home-cta{font:inherit;cursor:pointer;font-weight:600}.home-demo[hidden],.home-code[hidden],.hc-code[hidden],.hc-blocks[hidden]{display:none}.home-open{z-index:4;color:#f2b705;font-size:13px;font-weight:600;text-decoration:none;position:absolute;bottom:10px;right:14px}.home-open:hover{text-decoration:underline}.home-code{background:#1b1f24;border:4px solid;border-image:repeating-linear-gradient(45deg,#f2b705 0 14px,#141414 14px 28px) 6;border-radius:12px;flex-direction:column;gap:10px;min-width:0;min-height:360px;padding:14px;display:flex}.hc-tabs{flex-wrap:wrap;gap:4px;display:flex}.hc-tab{font:inherit;color:#c9ced6;cursor:pointer;background:#252a31;border:1px solid #39404a;border-radius:4px;padding:4px 9px;font-size:12px}.hc-tab.active{color:#141414;background:#f2b705;border-color:#f2b705;font-weight:700}.hc-progress{background:#2b3138;border-radius:2px;height:3px;overflow:hidden}.hc-progress span{background:#f2b705;width:0;height:100%;display:block}.hc-code{color:#e3e6ea;white-space:pre;background:#12151a;border-radius:6px;height:380px;margin:0;padding:12px 14px;font:12.5px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.hc-kw{color:#ff9f5a}.hc-str{color:#9ad18b}.hc-num{color:#ffd23f}.hc-com{color:#7f8a96;font-style:italic}.hc-caret{vertical-align:text-bottom;background:#f2b705;width:7px;height:1.1em;margin-left:1px;animation:1s step-end infinite hc-blink;display:inline-block}@keyframes hc-blink{50%{opacity:0}}.hc-blocks{background:#f5f6f8 radial-gradient(#d9dde3 1px,#0000 1px) 0 0/16px 16px;border-radius:6px;height:380px;padding:16px;overflow:hidden}.hc-block{color:#fff;border-radius:6px;width:-moz-fit-content;width:fit-content;max-width:100%;margin-bottom:2px;padding:8px 12px;font-size:14px;font-weight:600;animation:.26s ease-out hc-drop;box-shadow:inset 0 -2px #0000002e}.hc-block.hc-end{border-radius:0 0 6px 6px;width:120px;height:14px;padding:0}.hc-events{color:#3b2a00;background:#ffbf00;border-radius:16px 16px 6px 6px}.hc-control{background:#ffab19}.hc-motion{background:#4c97ff}.hc-sensing{background:#5cb1d6}.hc-slot{color:#333;text-align:center;background:#fff;border-radius:999px;min-width:18px;margin:0 2px;padding:0 7px;display:inline-block}.hc-cond{clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,8px 100%,0 50%);background:#5cb1d6;margin:0 2px;padding:0 9px;display:inline-block}@keyframes hc-drop{0%{opacity:0;transform:translateY(-10px)}}.hc-foot{justify-content:space-between;align-items:center;gap:12px;min-height:1.6em;display:flex;position:relative}.hc-foot .home-open{white-space:nowrap;position:static}.fx-account{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:10px 12px}.fx-account h2{margin-top:0}.fx-account p{margin:0 0 8px}.fx-signup{flex-wrap:wrap;gap:8px;display:flex}.fx-signup input{flex:140px;min-width:0}.fx-free{color:var(--muted,inherit);font-size:13px;margin:6px 0 0!important}.fx-build-form{flex-wrap:wrap;align-items:center;gap:6px;width:100%;margin-top:6px;display:flex}.fx-build-form input{flex:140px;min-width:0}.fx-build-form .hint{flex-basis:100%}.acct-switch{margin:4px 0 0}.acct-form{flex-direction:column;gap:6px;display:flex}.acct-form input{min-width:0}.acct-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.acct-free{opacity:.85;margin:8px 0 0;font-size:13px}#lg-me .acct-form,.fx-account .acct-form{max-width:420px}.home-match{background:#1b1f24;border:4px solid;border-image:repeating-linear-gradient(45deg,#f2b705 0 14px,#141414 14px 28px) 6;border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:14px 14px 34px;display:flex;position:relative}.home-match[hidden]{display:none}.hm-stage{background:#10161f;border-radius:6px;height:300px;position:relative;overflow:hidden}.hm-stage canvas{width:100%;height:100%;display:block}.hm-stage.hm-swap{animation:.5s ease-out hm-swap}@keyframes hm-swap{0%{opacity:.35}}.hm-status{color:#e3e6ea;font-variant-numeric:tabular-nums;min-height:1.4em;margin:0;font-size:13px}.hm-sides{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}@media (max-width:640px){.hm-sides{grid-template-columns:minmax(0,1fr)}}.hm-side{--hm-team:#4aa8ff;min-width:0}.hm-head{color:#e3e6ea;justify-content:space-between;gap:8px;margin-bottom:4px;font-size:13px;display:flex}.hm-name{color:var(--hm-team);font-weight:700}.hm-hp{font-variant-numeric:tabular-nums;color:#aeb5bf}.hm-side.dead .hm-hp{color:#f87171;font-weight:700}.hm-bar{background:#2b3138;border-radius:4px;height:8px;overflow:hidden}.hm-bar span{background:var(--hm-team);width:100%;height:100%;transition:width .25s ease-out;display:block}.hm-bar span.low{background:#f87171}.hm-log{color:#c9ced6;background:#12151a;border-radius:6px;flex-direction:column;justify-content:flex-end;gap:2px;height:104px;margin:8px 0 0;padding:8px 10px;font:11.5px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;list-style:none;display:flex;overflow:hidden}.hm-log li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.hm-log time{color:#7f8a96;margin-right:4px}.home-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:40px;display:grid}.home-grid article{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px 20px}.home-grid h3{margin:0 0 10px;font-size:18px}.home-grid ul{margin:0;padding-left:18px;line-height:1.6}.home-grid p{margin:0 0 8px;line-height:1.55}.home-soon{background:var(--hm-yellow);color:var(--hm-ink);border-radius:999px;margin-left:4px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .home{--hm-kicker:#f2b705}}:root[data-theme=dark] .home{--hm-kicker:#f2b705}.league.lg-gated>section:not(.lg-me),.league.lg-gated .lg-me>h2{display:none}.league.lg-gated{grid-template-columns:minmax(0,1fr);grid-template-areas:"me";max-width:560px;margin:0 auto}.machine-for{margin:0 0 10px;font-size:14px}.machine-for b{font-weight:700}.machine-for.changed{color:var(--muted,#6b7280)}.designs{max-width:1280px;margin:0 auto;padding:16px}.dz-table{border-collapse:collapse;width:100%;font-size:14px}.dz-table th,.dz-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 10px}.dz-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px}.dz-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.dz-table td .muted{font-size:12px}.dz-table tr.dz-flying td{background:#4aa8ff29}.dz-n{min-width:1.6em;margin-right:6px;font-weight:700;display:inline-block}.dz-badges{vertical-align:top;flex-wrap:wrap;gap:4px;max-width:520px;display:inline-flex}.dz-badge{background:var(--panel-2);border:1px solid var(--line);white-space:nowrap;border-radius:4px;padding:0 6px;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}.dz-pager{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.dz-page.current{font-weight:700}@media (max-width:760px){.designs{padding:8px}.dz-table{font-size:13px}.dz-badges{max-width:220px}}#dz-body{overflow-x:auto}.restart-seed{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.restart-seed input{width:7ch;font:inherit;font-variant-numeric:tabular-nums;padding:2px 4px;font-size:12px}.restart-seed input.bad{border-color:#d33;outline-color:#d33}.dz-open{font:inherit;padding:0;font-weight:700}
