@font-face{font-family:Plex;src:url(/fonts/IBMPlexMono-Regular.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Plex;src:url(/fonts/IBMPlexMono-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Plex;src:url(/fonts/IBMPlexMono-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Stencil;src:url(/fonts/SairaStencilOne-Regular.woff2)format("woff2");font-display:swap}@font-face{font-family:Barlow;src:url(/fonts/BarlowCondensed-Medium.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Barlow;src:url(/fonts/BarlowCondensed-SemiBold.woff2)format("woff2");font-weight:600;font-display:swap}html,body{color:#d8e2ea;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;background:#050607;height:100%;margin:0;font-family:Plex,ui-monospace,monospace;overflow:hidden}#stage{width:100%;height:100%;display:block;position:fixed;inset:0}#hud{z-index:2;pointer-events:none;position:fixed;inset:0}.veil{z-index:1;opacity:0;pointer-events:none;position:fixed;inset:0}.debug{bottom:calc(max(8px, env(safe-area-inset-bottom)) + 56px);right:max(8px, env(safe-area-inset-right));background:#0009;border-radius:4px;align-items:flex-end;gap:8px;margin:0;padding:6px 8px;font-size:12px;line-height:1.4;display:flex;position:absolute}.debug pre{font:inherit;margin:0}.debug button{pointer-events:auto;font:inherit;color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff80;min-height:32px;padding:4px 8px}.rotate-screen{display:none}.anchor-debug span{pointer-events:none;color:#7fe;white-space:nowrap;font:11px/1 monospace;position:fixed;top:0;left:0}.anchor-debug span:before{content:"";background:#7fe;border-radius:50%;width:6px;height:6px;margin:0 4px 0 -3px;display:inline-block}@media (orientation:portrait) and (pointer:coarse){.rotate-screen{text-align:center;pointer-events:auto;background:#050607;place-items:center;padding:24px;font-size:18px;display:grid;position:absolute;inset:0}}.fatal{pointer-events:none;background:#341a0ceb;border-radius:4px;max-width:40vw;padding:8px 10px;position:fixed;bottom:8px;right:8px}.board-hud{--ink:#f2f2f2;--dim:#9a9a9a;--soft:#c9c9c9;--rule:#ffffff8c;--orange:#ff7a24;--warm:#ff9a55;--pale:#ffb27a;--panel:#000000b8;--bar-h:3.6em;--gap-l:max(10px, env(safe-area-inset-left));--gap-r:max(10px, env(safe-area-inset-right));--gap-t:max(10px, env(safe-area-inset-top));--rail-w:9.4em;color:var(--ink);pointer-events:none;font:400 clamp(11px,.55vw + 4.5px,15px)/1.35 Plex,ui-monospace,monospace;position:absolute;inset:0}.board-hud button{font:inherit;color:inherit;cursor:pointer;pointer-events:auto;border-radius:0}.board-hud button:disabled{opacity:.4;cursor:default}.board-hud small{color:var(--dim)}.top-left{top:var(--gap-t);left:var(--gap-l);flex-direction:column;align-items:flex-start;gap:.5em;max-width:min(34em,40vw);display:flex;position:absolute}.sample{color:#e8e8e8;border-left:3px solid var(--orange);background:#0000008c;margin:0;padding:.35em .8em}.legend{background:#0000008c;border:1px solid #ffffff4d;padding:.45em .8em;font-size:.85em}.legend p{align-items:center;gap:.6em;margin:.15em 0;display:flex}.legend .note{color:#8d8d8d;font-size:.9em;font-style:italic}.swatch{width:1.3em;height:.8em;display:inline-block}.swatch.production{background:#ff7a24}.swatch.conquest{background:#2fc2d6}.swatch.cores{background:#ffc864}.swatch.flux{background:#b48cff}.hint,.banner{background:var(--panel);pointer-events:auto;border:1px solid #ffffff59;border-left:3px solid #ffc864;margin:0;padding:.5em .8em}.banner{border-left-color:var(--orange)}.rail{top:var(--gap-t);right:var(--gap-r);flex-direction:column;gap:.45em;font-size:.85em;display:flex;position:absolute}.rail button{text-transform:uppercase;letter-spacing:.06em;background:#0009;border:1px solid #ffffff59;justify-content:space-between;align-items:center;gap:.5em;width:11em;padding:.55em .8em;display:flex}.rail button small{letter-spacing:0;color:var(--warm);font-size:.75em}.rail button.on{border-color:var(--orange);color:var(--pale)}.rail button.locked small{color:var(--dim)}.rail button.switch{border-color:#fff9;margin-bottom:.4em}.drawer{top:var(--gap-t);right:calc(var(--gap-r) + var(--rail-w) + .6em);bottom:calc(var(--bar-h) + 10px);pointer-events:auto;background:#000000ed;border:1px solid #ffffff73;flex-direction:column;width:min(30em,44vw);display:flex;position:absolute}.drawer header{border-bottom:1px solid #444;justify-content:space-between;align-items:center;padding:.4em .5em .4em .8em;display:flex}.drawer h2{text-transform:uppercase;letter-spacing:.06em;color:var(--pale);margin:0;font-size:1em;font-weight:500}.board-hud .close{color:var(--soft);background:0 0;border:none;padding:.2em .45em}.list{overscroll-behavior:contain;touch-action:pan-y;-webkit-user-select:text;user-select:text;flex:1;overflow-y:auto}.row{border-bottom:1px dashed #333;border-left:2px solid #0000;justify-content:space-between;align-items:center;gap:.8em;padding:.55em .8em;display:flex}.row.ready{border-left-color:var(--orange)}.row.sub{background:#ffffff0f;padding-left:1.8em}.board-hud .kicker{letter-spacing:.08em;text-transform:uppercase;vertical-align:.15em;color:var(--soft);border:1px solid #ffffff59;margin-right:.6em;padding:0 .35em;font-size:.68em;font-weight:500}.row.ach.done{border-left-color:#ffc864}.row.info{flex-direction:column;align-items:stretch}.row .what{flex:1;min-width:0}.row h3,.row .name{text-align:left;background:0 0;border:none;margin:0;padding:0;font-size:1em;font-weight:500}.row .name{text-underline-offset:.25em;-webkit-text-decoration:underline dotted #fff6;text-decoration:underline dotted #fff6}.row small{font-weight:400}.row p{margin:.15em 0 0}.row .desc{color:var(--dim)}.row .fx{color:var(--pale)}.row .cost{color:var(--dim);font-size:.9em}.board-hud .good{color:#2fc2d6}.board-hud .bad{color:var(--warm)}.row .buy{flex-shrink:0;gap:.4em;display:flex}.row .buy.stages{flex-wrap:wrap;margin-top:.4em}.row .buy button,.row.info button,.sheet button:not(.close),.modal button{background:0 0;border:1px solid #ffffff80;min-height:2.4em;padding:.4em .8em}.board-hud button.act{border-color:var(--orange);background:#ff7a2429}.board-hud button.on{border-color:var(--orange);color:var(--pale)}.row textarea{min-height:4em;color:var(--ink);-webkit-user-select:text;user-select:text;background:#050505;border:1px solid #444;margin-top:.4em;font:.8em ui-monospace,monospace}.version{color:var(--dim);cursor:pointer}.sheet{left:var(--gap-l);bottom:calc(var(--bar-h) + 10px);width:min(30em,44vw);max-height:calc(100% - var(--bar-h) - 20px - var(--gap-t));overscroll-behavior:contain;box-sizing:border-box;background:var(--panel);border:1px solid var(--rule);pointer-events:auto;padding:.8em 1.1em 1em;position:absolute;overflow-y:auto}.sheet .close{position:absolute;top:.3em;right:.3em}.sheet h2{margin:0 1.6em 0 0;font-size:1.55em;font-weight:600;line-height:1.2}.sheet h2 small{color:var(--soft);font-size:.55em;font-weight:400}.sheet .desc{color:var(--soft);margin:.4em 0 .6em}.sheet .line{border-top:1px dashed #444;justify-content:space-between;gap:1em;margin:0;padding:.25em 0;display:flex}.sheet .line span:last-child{color:var(--pale);text-align:right}.purchase{gap:.6em;margin-top:.7em;display:flex}.purchase .act{text-align:left;flex:1;font-size:1.1em}.purchase .act small{color:var(--soft);margin-top:.15em;font-size:.72em;display:block}.purchase .max{white-space:nowrap}.quantity{flex-wrap:wrap;align-items:center;gap:.3em;margin-top:.5em;font-size:.85em;display:flex}.sheet .quantity button{min-height:2.2em;padding:.2em .6em}.quantity input{box-sizing:border-box;width:6.5em;min-height:2.2em;font:inherit;color:var(--ink);pointer-events:auto;-webkit-user-select:text;user-select:text;background:0 0;border:1px solid #ffffff59;border-radius:0;padding:.2em .5em}.quantity input.on{border-color:var(--orange)}.quantity input.bad{border-color:#ff4a4a}.quantity p.bad{width:100%;margin:.2em 0 0}.upgrade{background:#ffffff0f;border-top:1px dashed #444;justify-content:space-between;align-items:center;gap:.6em;margin-top:.5em;padding:.45em .6em;display:flex}.upgrade p{margin:0}.upgrade .what{font-weight:500}.upgrade.ready .what{color:var(--warm)}.upgrade .fx{color:var(--pale);font-size:.9em}.upgrade .cost{color:var(--dim);font-size:.85em}.tags{position:absolute;inset:0;overflow:hidden}.pin{width:0;height:0;position:absolute;top:0;left:0}.pin .dot{box-sizing:border-box;border:1.5px solid #fff;border-radius:50%;width:.8em;height:.8em;position:absolute;top:-.4em;left:-.4em}.pin .leader{width:var(--len);transform-origin:0 0;background:#ffffffd9;height:1px;position:absolute;top:0;left:0}.pin:is(.east:not([data-edge=right]),.west[data-edge=left]) .leader{transform:rotate(var(--a))}.pin:is(.west:not([data-edge=left]),.east[data-edge=right]) .leader{transform:scaleX(-1) rotate(var(--a))}.board-hud .tag{white-space:nowrap;text-align:left;border:1px solid var(--rule);background:#0000009e;flex-direction:column;align-items:flex-start;padding:.35em .75em .4em;display:flex;position:absolute;transform:translateY(-50%)}.board-hud .pin:is(.east:not([data-edge=right]),.west[data-edge=left]) .tag{left:var(--dx);top:var(--dy)}.board-hud .pin:is(.west:not([data-edge=left]),.east[data-edge=right]) .tag{left:calc(-1 * var(--dx));top:var(--dy);transform:translate(-100%,-50%)}.tag .title{letter-spacing:.02em;font-weight:500}.tag .value{color:var(--pale);font-weight:400}.tag .sub{color:#bdbdbd;font-size:.82em}.tag .badge{color:var(--warm);border:1px solid var(--orange);margin-top:.3em;padding:.05em .4em;font-size:.75em}.board-hud .tag.selected{border-color:var(--orange);box-shadow:0 0 0 1px var(--orange)}.databar{height:calc(var(--bar-h) + env(safe-area-inset-bottom));box-sizing:border-box;padding:0 var(--gap-r) env(safe-area-inset-bottom) var(--gap-l);pointer-events:auto;background:#000;border-top:1px solid #555;justify-content:space-between;align-items:center;gap:1em;display:flex;position:absolute;bottom:0;left:0;right:0}.databar .spacer{flex:1 1 0}.resources{flex:none;display:flex}.res{border-left:1px solid #444;flex-direction:column;padding:0 1.2em;line-height:1.15;display:flex}.res .name{color:var(--dim);text-transform:uppercase;letter-spacing:.08em;font-size:.68em}.res .value{white-space:nowrap;font-size:1.3em;font-weight:500}.res .rate{color:var(--pale);white-space:nowrap;font-size:.72em}.scale{flex-direction:column;flex:1 1 0;align-items:flex-end;gap:.3em;font-size:.85em;display:flex}.scale .bar{background:#fff;height:.35em;display:block}.toasts{top:var(--gap-t);flex-direction:column;align-items:center;gap:.4em;display:flex;position:absolute;left:50%;transform:translate(-50%)}.toasts p{color:var(--pale);border:1px solid var(--orange);background:#000c;margin:0;padding:.4em .9em}.modal{pointer-events:auto;background:#0009;place-items:center;display:grid;position:fixed;inset:0}.modal>div{border:1px solid var(--rule);background:#000;max-width:28em;padding:1.1em 1.4em}.modal h2{margin:0 0 .5em;font-size:1.2em;font-weight:600}.modal ul{color:var(--pale);margin:.4em 0 .9em;padding-left:1.2em}@media (height<=520px){.board-hud{--bar-h:3em}.legend{display:none}.sheet{font-size:.92em}.sheet .desc,.upgrade .fx{display:none}.res .value{font-size:1.1em}.tags{font-size:.82em}.board-hud .tag{flex-direction:row;align-items:center;gap:.5em;padding:.25em .55em}.tag .badge{margin-top:0}.row .blurb{display:none}}@media (width<=900px){.databar .spacer{display:none}.scale{flex:none}.tag .sub{display:none}.top-left{max-width:45vw}.drawer{width:calc(100vw - var(--gap-l) - var(--gap-r) - var(--rail-w) - .6em - 34vw)}.sheet{width:min(30em,62vw)}}@media (pointer:coarse){.row .buy button,.sheet button:not(.close){min-height:2.8em}}.skin-b{--ink:#f1e6d6;--dim:#b39c82;--soft:#d9c4a8;--rule:#f1e6d6b3;--orange:#ff8a3d;--warm:#ffae73;--pale:#ffae73;--panel:#180e07b8;--plate:#180e079e;--bar-h:0px;letter-spacing:.03em;font-variant-numeric:tabular-nums;font-family:Barlow,sans-serif;font-size:clamp(12px,.62vw + 5px,17px);font-weight:500}.skin-b :is(.tag .title,.sheet h2,.drawer h2,.res .name,.modal h2){letter-spacing:.04em;font-family:Stencil,Barlow,sans-serif;font-weight:400}.skin-b :is(.res .name,.rail button span,.tag .badge,.telemetry,.sheet .line span:first-child,button.act,.sheet .max,.kicker){text-transform:uppercase}.skin-b :is(.tag,.rail button,.sheet,.drawer,.res,.hint,.banner,.toasts p,.modal>div){background:var(--plate);border:none;border-left:4px solid var(--rule);box-shadow:none}.skin-b .sheet,.skin-b .drawer{background:var(--panel)}.skin-b .drawer{background:#180e07e6}.skin-b .tag.selected{border-left-color:var(--orange);box-shadow:none;background:#3c1a08bf}.skin-b .tag .title{font-size:1.15em}.skin-b .tag .value{color:var(--pale);font-family:Barlow,sans-serif;font-weight:600}.skin-b .tag .sub{color:var(--soft)}.skin-b .tag .badge{color:#1a0e06;background:var(--orange);letter-spacing:.06em;border:none;font-weight:600}.skin-b .pin .leader{background:0 0;border-top:2px dashed #f1e6d6bf;height:0}.skin-b .pin .dot{background:var(--orange);border:2px solid #140c06cc}.skin-b .rail button{letter-spacing:.08em}.skin-b .rail button.on{border-left-color:var(--orange);color:var(--pale)}.skin-b .rail button.switch{border-left-color:var(--orange)}.skin-b .drawer h2{color:var(--ink);text-transform:none;font-size:1.15em}.skin-b .drawer header{border-bottom-color:#f1e6d633}.skin-b .row{border-bottom-color:#f1e6d624}.skin-b .row.ready{border-left-color:var(--orange)}.skin-b .row.sub,.skin-b .upgrade{background:#f1e6d60f}.skin-b .kicker{color:var(--soft);border-color:#f1e6d659}.skin-b .sheet h2{font-size:1.9em}.skin-b .sheet .line{border-top:1px solid #f1e6d633}.skin-b .sheet .line span:first-child{letter-spacing:.06em}.skin-b :is(.row .buy button,.row.info button,.sheet button:not(.close),.modal button){background:#f1e6d61f;border:none}.skin-b :is(.row .buy,.sheet .purchase) button.act{color:#1a0e06;background:var(--orange);letter-spacing:.05em;font-weight:600}.skin-b button.act small{color:#3a1a06;text-transform:none;letter-spacing:0}.skin-b :is(.quantity,.row .buy) button.on{color:#1a0e06;background:var(--warm)}.skin-b .quantity input{border-color:#f1e6d659}.drone-top{top:var(--gap-t);flex-direction:column;align-items:center;gap:.45em;display:flex;position:absolute;left:50%;transform:translate(-50%)}.telemetry{letter-spacing:.14em;color:var(--ink);white-space:nowrap;text-shadow:0 0 4px #140c06e6,0 0 10px #140c0699;margin:0;font-size:.85em}.skin-b .resources{gap:.45em;display:flex}.skin-b .res{min-width:6.5em;padding:.3em 1em .35em .8em;line-height:1.1}.skin-b .res .name{color:var(--soft);letter-spacing:.06em;font-size:.8em}.skin-b .res .value{font-size:1.55em;font-weight:600}.skin-b .res .rate{color:var(--warm);font-size:.8em}.skin-b .top-left,.skin-b .toasts{top:calc(var(--gap-t) + 6.4em)}.brackets i{border:0 solid #f1e6d6cc;width:4.5em;height:4.5em;position:absolute}.brackets i:first-child{left:var(--gap-l);top:var(--gap-t);border-top-width:3px;border-left-width:3px}.brackets i:nth-child(2){right:var(--gap-r);top:var(--gap-t);border-top-width:3px;border-right-width:3px}.brackets i:nth-child(3){left:var(--gap-l);bottom:max(10px, env(safe-area-inset-bottom));border-bottom-width:3px;border-left-width:3px}.brackets i:nth-child(4){right:var(--gap-r);bottom:max(10px, env(safe-area-inset-bottom));border-bottom-width:3px;border-right-width:3px}.skin-b .rail{top:calc(var(--gap-t) + 1.2em);right:calc(var(--gap-r) + 1.2em)}.skin-b .drawer{top:calc(var(--gap-t) + 1.2em);right:calc(var(--gap-r) + 1.2em + var(--rail-w) + .6em);bottom:calc(10px + 1.2em)}.skin-b .sheet{left:calc(var(--gap-l) + 1.2em);bottom:calc(10px + 1.2em)}@media (height<=520px){.skin-b .res .value{font-size:1.2em}.skin-b .res{padding:.2em .7em .25em .6em}.telemetry{font-size:.75em}.skin-b .top-left,.skin-b .toasts{top:calc(var(--gap-t) + 5.2em)}.brackets i{width:3em;height:3em}}@media (width<=900px){.drone-top{left:calc(var(--gap-l) + 1.2em);align-items:flex-start;transform:none}}.compass{right:calc(var(--gap-r) + .2em);bottom:calc(var(--bar-h) + 10px + env(safe-area-inset-bottom));width:2.8em;height:2.8em;color:var(--ink);background:var(--panel);border:1px solid var(--rule);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute}.compass span{font-size:.8em;line-height:1;transition:transform .2s linear;display:block}.compass span:before{content:"▲";color:var(--orange);margin-bottom:-.15em;font-size:.8em;display:block}.skin-b .compass{right:calc(var(--gap-r) + 1.2em);border:none;border-left:4px solid var(--rule);background:var(--plate);border-radius:0;bottom:calc(10px + 1.2em)}
