:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--night:#07090c;--bench:#0d1217;--bench-2:#121921;--rule:#222d37;--ink:#e2e9ee;--mute:#8e9ca8;--faint:#5b6975;--jet:#9bdcff;--jet-soft:#9bdcff29;--amber:#f3b14a;--amber-soft:#f3b14a29;--red:#ff6d60;--red-soft:#ff6d6024;--pos:#7fc6ff;--neg:#ff9d6b;--g-rear:#ffa46b;--g-lift:#9bdcff;--g-side:#c7a6ff;--f-display:"Saira Semi Condensed", "Arial Narrow", system-ui, sans-serif;--f-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--f-data:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--rail-w:470px;--gap:10px}*{box-sizing:border-box}html,body{height:100%}body{background:var(--night);color:var(--ink);font:14px/1.5 var(--f-body);-webkit-font-smoothing:antialiased;margin:0}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--jet);outline-offset:2px}#app{grid-template-columns:minmax(0, 1fr) var(--rail-w);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"top top""stage rail""toolbar rail""scope rail";height:100%;min-height:760px;display:grid}.topbar{background:var(--bench);border-bottom:1px solid var(--rule);grid-area:top;justify-content:space-between;align-items:center;gap:12px;padding:7px 14px;display:flex}.topbar-left{align-items:center;gap:16px;min-width:0;display:flex}.home-link{color:#171c20;font:600 12.5px var(--f-body);letter-spacing:.2px;white-space:nowrap;background:#f5f6f7;border:1px solid #fff;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:4px 13px 4px 4px;text-decoration:none;display:inline-flex;box-shadow:0 2px 8px #00000059}.home-link img{border-radius:50%;width:26px;height:26px;display:block}.home-link:hover{color:#2961b8;background:#fff}.brand{font:700 19px/1 var(--f-display);letter-spacing:.06em;white-space:nowrap;min-width:0}.brand-sub{color:var(--jet)}.header-actions{align-items:center;gap:10px;display:flex}.donate-button{color:#302913;min-height:34px;font:600 12.5px var(--f-data);background:#f4cc5e;border:1px solid #f4cc5e;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;padding:7px 16px;text-decoration:none;display:inline-flex}.donate-button:hover{background:#ffdc7a}@media (max-width:520px){.brand-sub{display:none}.home-link{gap:0;padding:3px}.home-link span{display:none}}.about{border-top:1px solid var(--rule);background:var(--bench);padding:44px 24px 52px}.about-inner{max-width:1000px;margin:0 auto}.about h1{font:600 27px/1.25 var(--f-body);letter-spacing:-.5px;color:var(--ink);text-wrap:balance;margin:0 0 16px}.about .about-lead{color:#a9b7c1;max-width:74ch;margin:0;font-size:15px;line-height:1.7}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px;display:grid}.about-grid article{background:var(--bench-2);border:1px solid var(--rule);border-radius:9px;min-width:0;padding:20px 22px}.about-grid h2{font:600 14px var(--f-body);color:var(--ink);margin:0 0 9px}.about-grid p{color:#9aa9b4;margin:0;font-size:13px;line-height:1.75}.about b{color:var(--jet);font-weight:400;font-family:var(--f-data);font-size:.95em}.about-more{color:#9aa9b4;margin-top:26px;font-size:13px;line-height:1.75}.about-more a{color:var(--amber);text-underline-offset:2px}@media (max-width:760px){.about{padding:30px 16px 38px}.about h1{font-size:22px}.about-grid{grid-template-columns:1fr;gap:12px;margin-top:22px}}.stage{background:var(--night);grid-area:stage;min-height:320px;position:relative;overflow:hidden}#view{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}#labels{pointer-events:none;z-index:0;position:absolute;inset:0}.hud-title{pointer-events:none;max-width:52ch;position:absolute;top:12px;left:16px;right:16px}.phase{border:1px solid var(--rule);color:var(--jet);font:500 12.5px/1.4 var(--f-data);background:#0d1217b8;border-radius:3px;margin:0;padding:3px 9px;display:inline-block}.hud-read{border:1px solid var(--rule);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0e12b8;border-radius:4px;grid-template-columns:repeat(2,auto);gap:6px 18px;margin:0;padding:10px 14px;display:grid;position:absolute;top:12px;right:14px}.hud-read div{min-width:0}.hud-read dt{font:500 10.5px/1.2 var(--f-body);color:var(--mute);text-transform:uppercase;letter-spacing:.08em}.hud-read dd{font:600 21px/1.15 var(--f-display);font-variant-numeric:tabular-nums;margin:0}.hud-read dd small{font:500 11px var(--f-body);color:var(--mute);margin-left:3px}.hud-read dd.att{font-size:17px}.hud-read .tank{grid-column:1/-1}.hud-read .tank dt span{color:var(--jet);text-transform:none;letter-spacing:0}.hud-read meter{width:100%;height:6px;margin-top:3px;display:block}.game-hud{border:1px solid var(--rule);color:var(--ink);font:500 12.5px/1.4 var(--f-data);background:#0d1217b8;border-radius:3px;margin:6px 0 0;padding:3px 9px;display:inline-block}.game-hud:empty{display:none}.game-hud b{color:var(--amber);font-weight:600}.game-hud span{color:var(--mute)}.hud-title{flex-direction:column;align-items:flex-start;display:flex}.toast{border:1px solid var(--amber);text-align:center;pointer-events:none;white-space:nowrap;background:#0a0e12d9;border-radius:4px;padding:10px 20px;position:absolute;top:22%;left:50%;transform:translate(-50%,-50%)}.toast b{font:700 26px/1.1 var(--f-display);color:var(--amber);letter-spacing:.04em;display:block}@media (max-width:760px){.toast{white-space:normal;width:max-content;max-width:calc(100% - 32px);top:34%}}.toast span{font:500 12.5px var(--f-body);color:var(--mute)}.reticle{border:1.5px solid #e2e9eeb3;border-radius:50%;width:30px;height:30px;transition:width .12s,height .12s,border-color .12s;box-shadow:0 0 0 1px #07090c59}.reticle:before{content:"";background:#e2e9eebf;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.reticle.lock{border-color:var(--amber);border-width:2px;width:40px;height:40px}.reticle.lock:before{background:var(--amber)}.reticle.lock.foe{border-style:dashed;border-color:#ff5a4a;border-radius:6px;width:58px;height:58px}.reticle.lock.foe:before{background:#ff5a4a}.foe-tag{padding-bottom:16px}.foe-tag i{background:#07090c99;border:1px solid #ff6050cc;border-radius:3px;width:46px;height:5px;display:block;overflow:hidden}.foe-tag b{background:#ff5a4a;width:100%;height:100%;transition:width .1s;display:block}.foe-tag.hurt b{background:#ffb347}.foe-tag.attack i{border-color:#fff;animation:.5s ease-in-out infinite alternate foe-pulse;box-shadow:0 0 6px #ff3b2e}.foe-tag.locked i{border-color:#fff}@keyframes foe-pulse{to{box-shadow:0 0 12px #ff3b2e}}.foe-down span{font-size:26px}.threats{pointer-events:none;position:absolute;inset:0;overflow:hidden}.threat{width:0;height:0;position:absolute;top:0;left:0}.threat[hidden]{display:none}.threat i{width:26px;height:26px;position:absolute;top:-13px;left:-13px}.threat i:before{content:"";filter:drop-shadow(0 0 3px #000000b3);border-top:10px solid #0000;border-bottom:10px solid #0000;border-left:15px solid #ff5a4ad9;position:absolute;top:3px;left:7px}.threat span{font:500 11px var(--f-data);color:#ff8a7d;text-shadow:0 1px 2px var(--night);white-space:nowrap;position:absolute;top:15px;left:0;transform:translate(-50%)}.threat.attack i:before{filter:drop-shadow(0 0 5px #ff3b2e);border-left-color:#fff}.threat.attack i{animation:.4s ease-in-out infinite alternate threat-pulse}.threat.attack span{color:#fff}@keyframes threat-pulse{to{transform:scale(1.3)}}.hit-flash{pointer-events:none;opacity:0;background:radial-gradient(#ff281e00 55%,#ff281e8c 100%);position:absolute;inset:0}.shield{border:1px solid var(--rule);font:500 12.5px/1.4 var(--f-data);color:var(--mute);background:#0d1217b8;border-radius:3px;align-items:center;gap:8px;margin:6px 0 0;padding:3px 9px;display:inline-flex}.shield[hidden]{display:none}.shield i{background:#ffffff14;border-radius:4px;width:120px;height:7px;display:block;overflow:hidden}.shield b{background:var(--jet);border-radius:4px;height:100%;display:block}.shield output{min-width:3.2em;color:var(--ink);font-variant-numeric:tabular-nums}.shield small{font:inherit;color:var(--mute)}.shield small:empty{display:none}.shield.low b{background:#ff5a4a}.shield.low output{color:#ff8a7d}.shield.down b{background:var(--amber)}.pop-tag span{font:700 22px/1 var(--f-display);letter-spacing:.04em;text-shadow:0 1px 3px #000c;display:block}.cam-panel{border:1px solid var(--faint);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3;background:#0a0e12e6;border-radius:6px;width:300px;max-width:calc(100% - 32px);padding:12px 14px;position:absolute;bottom:56px;left:16px}.cam-panel[hidden]{display:none}.cam-panel h2{font:600 14px var(--f-display);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px}.cam-panel .slider{grid-template-columns:82px minmax(0,1fr) 4.2em;width:100%;margin:5px 0;display:grid}.cam-panel .slider input{width:100%}.cam-panel .slider output{text-align:right}.cam-panel p{color:var(--mute);margin:8px 0 10px;font-size:12px;line-height:1.45}.cam-panel-foot{justify-content:flex-end;gap:8px;display:flex}.cam-panel-foot button{border:1px solid var(--rule);background:var(--bench-2);font:500 12px/1.4 var(--f-body);cursor:pointer;border-radius:3px;padding:4px 12px}.cam-panel-foot button:hover{border-color:var(--faint)}#cam-done{border-color:var(--jet);color:var(--jet)}.seg button[aria-expanded=true]{color:var(--jet);border-color:var(--jet);position:relative}.fire{display:none}.fire.held{background:#f3b14a73}.result{border:1px solid var(--jet);text-align:center;pointer-events:none;background:#0a0e12d9;border-radius:4px;padding:14px 22px;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.result b{font:700 44px/1 var(--f-display);color:var(--jet);font-variant-numeric:tabular-nums;display:block}.result span{font:500 13px var(--f-body);color:var(--mute)}.keys{color:var(--mute);text-shadow:0 1px 2px var(--night), 0 0 6px var(--night);pointer-events:none;flex-wrap:wrap;gap:4px 14px;font-size:12px;display:flex;position:absolute;bottom:12px;left:16px;right:16px}kbd{border:1px solid var(--rule);background:var(--bench-2);min-width:1.6em;color:var(--ink);font:500 11px/1.5 var(--f-data);text-align:center;border-bottom-width:2px;border-radius:3px;margin-right:2px;padding:0 4px;display:inline-block}.touchpad{display:none}@media (pointer:coarse){.keys{display:none}.touchpad{grid-template-columns:repeat(3,58px);gap:6px;display:grid;position:absolute;bottom:12px;left:12px}.touchpad button{border:1px solid var(--rule);height:46px;font:600 13px var(--f-display);touch-action:none;-webkit-user-select:none;user-select:none;background:#121921d1;border-radius:6px}.touchpad button.held{background:var(--jet-soft);border-color:var(--jet)}.fire{border:2px solid var(--amber);width:76px;height:76px;color:var(--amber);font:700 15px var(--f-display);letter-spacing:.06em;text-transform:uppercase;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#f3b14a2e;border-radius:50%;display:block;position:absolute;top:46%;right:14px;transform:translateY(-50%)}.fire[hidden]{display:none}.cam-panel{top:12px;bottom:auto;left:12px}}.nozzle-tag{border:1px solid var(--rule);font:500 10.5px/1.3 var(--f-data);color:var(--mute);white-space:nowrap;background:#07090cb3;border-radius:3px;align-items:baseline;gap:4px;padding:1px 5px;display:flex}.nozzle-tag b{color:var(--ink);font-weight:600}.nozzle-tag.g-rear b{color:var(--g-rear)}.nozzle-tag.g-lift b{color:var(--g-lift)}.nozzle-tag.g-side b{color:var(--g-side)}.nozzle-tag.on{border-color:var(--jet);color:var(--jet)}.toolbar{border-top:1px solid var(--rule);background:var(--bench);flex-wrap:wrap;grid-area:toolbar;justify-content:space-between;align-items:center;gap:8px 16px;padding:8px 12px;display:flex}.scenarios{flex-wrap:wrap;gap:6px;display:flex}.scenarios button{border:1px solid var(--rule);background:var(--bench-2);font:600 13px/1.3 var(--f-display);letter-spacing:.03em;cursor:pointer;border-radius:3px;padding:5px 12px}.scenarios button:hover{border-color:var(--faint)}.scenarios button.on{border-color:var(--jet);color:var(--jet);background:var(--jet-soft)}.settings{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.seg{align-items:center;gap:0;display:inline-flex}.seg-label{font:500 10.5px var(--f-body);color:var(--mute);text-transform:uppercase;letter-spacing:.08em;margin-right:6px}.seg button{border:1px solid var(--rule);font:500 12px/1.4 var(--f-body);color:var(--mute);cursor:pointer;background:0 0;margin-left:-1px;padding:3px 8px}.seg button:first-of-type{border-radius:3px 0 0 3px}.seg button:last-of-type{border-radius:0 3px 3px 0}.seg button.on,.seg button[aria-pressed=true]{color:var(--ink);background:var(--bench-2);border-color:var(--faint);position:relative}.seg button:hover{color:var(--ink)}.seg.small button{padding:1px 7px;font-size:11px}.slider{align-items:center;gap:6px;display:inline-flex}.slider input{width:92px;accent-color:var(--jet)}.slider output{font:500 12px var(--f-data);min-width:4.2em;color:var(--ink)}.scope{background:var(--bench);border-top:1px solid var(--rule);grid-area:scope;padding:6px 12px 10px}.scope-head{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.scope-head h2{font:600 14px var(--f-display);text-transform:uppercase;letter-spacing:.06em;margin:0}.scope-head p{font:400 12px var(--f-data);color:var(--mute);flex:1;min-width:0;margin:0}#scope{width:100%;height:236px;margin-top:4px;display:block}.rail{border-left:1px solid var(--rule);background:var(--bench);flex-direction:column;grid-area:rail;min-height:0;display:flex}.tabs{border-bottom:1px solid var(--rule);flex:none;display:flex}.tabs button{font:600 13.5px var(--f-display);letter-spacing:.04em;text-transform:uppercase;color:var(--mute);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:11px 6px 9px}.tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--jet)}.pane{flex:1;min-height:0;padding:14px 16px 28px;overflow-y:auto}.pane h3{font:600 15px/1.25 var(--f-display);letter-spacing:.04em;text-transform:uppercase;text-wrap:balance;margin:18px 0 8px}.pane h3:first-child{margin-top:2px}.pane h3 .n{color:var(--faint);margin-right:6px}.pane p{color:#c5d0d8;max-width:65ch;margin:6px 0}.pane p.note{color:var(--mute);font-size:12.5px}.pane ol{color:#c5d0d8;margin:6px 0;padding-left:20px}.pane li{margin:3px 0}.math-block{padding:6px 0;font-size:15px;overflow-x:auto}math{font-size:1.05em}.math-block math{display:block}.live{color:var(--jet);font-family:var(--f-data);font-size:12.5px}.hl-red{color:var(--red)}.hl-amber{color:var(--amber)}table.t{border-collapse:collapse;width:100%;font:400 12.5px/1.35 var(--f-data);font-variant-numeric:tabular-nums}table.t th{font:500 10.5px/1.3 var(--f-body);color:var(--mute);text-transform:uppercase;letter-spacing:.06em;text-align:right;border-bottom:1px solid var(--rule);white-space:nowrap;padding:4px 5px}table.t th:first-child,table.t td:first-child{text-align:left}table.t td{text-align:right;white-space:nowrap;border-bottom:1px solid #222d3780;padding:3px 5px}table.t td.id b{font-weight:600}table.t td.neg{color:var(--red)}table.t td.max{color:var(--amber)}table.t td.zero{color:var(--faint)}.tbl-wrap{overflow-x:auto}.g-rear-c{color:var(--g-rear)}.g-lift-c{color:var(--g-lift)}.g-side-c{color:var(--g-side)}.dutybar{background:var(--bench-2);vertical-align:middle;border-radius:2px;width:74px;height:8px;display:inline-block;position:relative}.dutybar i{background:var(--jet);border-radius:2px;position:absolute;top:0;bottom:0;left:0}.dutybar i.max{background:var(--amber)}.dutybar u{background:var(--mute);width:1px;position:absolute;top:-2px;bottom:-2px}.wrench-bar{background:var(--bench-2);vertical-align:middle;border-radius:2px;width:70px;height:8px;display:inline-block;position:relative}.wrench-bar:after{content:"";background:var(--faint);width:1px;position:absolute;top:-2px;bottom:-2px;left:50%}.wrench-bar i{background:var(--jet);position:absolute;top:0;bottom:0}.wrench-bar i.req{border:1px solid var(--ink);opacity:.5;background:0 0;top:-1px;bottom:-1px}.chips{flex-wrap:wrap;gap:4px 6px;margin:6px 0;display:flex}.chip{font:500 11.5px var(--f-data);border:1px solid var(--rule);color:var(--mute);border-radius:3px;padding:1px 6px}.chip.max{border-color:var(--amber);color:var(--amber);background:var(--amber-soft)}.chip.zero{color:var(--faint)}.chip.free{border-color:var(--jet);color:var(--jet);background:var(--jet-soft)}.chip.bad{border-color:var(--red);color:var(--red);background:var(--red-soft)}.callout{border-left:2px solid var(--amber);background:var(--amber-soft);margin:8px 0;padding:6px 10px;font-size:13px}.callout.red{border-left-color:var(--red);background:var(--red-soft)}.callout.blue{border-left-color:var(--jet);background:var(--jet-soft)}.kv{grid-template-columns:auto 1fr;gap:2px 14px;margin:6px 0;font-size:13px;display:grid}.kv dt{color:var(--mute)}.kv dd{font-family:var(--f-data);text-align:right;font-variant-numeric:tabular-nums;margin:0;font-size:12.5px}.matrix{font-size:11.5px}.matrix td,.matrix th{min-width:0;padding:3px}.compact td,.compact th{padding:3px;font-size:11.5px}.layout-svg{width:100%;height:auto;margin:4px 0 10px;display:block}.layout-svg text{font:500 10px var(--f-data);fill:var(--ink)}.layout-svg .lbl{fill:var(--mute);font-family:var(--f-body);letter-spacing:.06em;font-size:10px}@media (max-width:980px){html,body{height:auto}#app{grid-template:"top""stage""toolbar""scope""rail"/minmax(0,1fr);height:auto;min-height:0}.stage{height:62vh;min-height:360px}.rail{border-left:0;border-top:1px solid var(--rule)}.pane{overflow:visible}.hud-read{grid-template-columns:repeat(2,auto);gap:4px 12px;padding:8px 10px;top:auto;bottom:12px;right:12px}.hud-read dd{font-size:17px}.keys{display:none}}@media (max-width:520px){.hud-read{left:auto}.hud-read div:nth-child(n+4):not(.tank){display:none}#scope{height:180px}.scope-head p{flex-basis:100%;order:3}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
