:root{color-scheme:dark;--ink:#f4f1e6;--muted:#9da9a8;--orange:#ff7045;--orange-light:#ff9c6c;--line:rgba(222,232,218,.2);--dark:#0e1a20;--mono:"Cascadia Code","SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:#17282f;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--orange-light);outline-offset:5px}button:disabled{opacity:.45;cursor:default}button svg{pointer-events:none}.hidden{display:none!important}#game{position:fixed;inset:0;display:block;width:100%;height:100%;outline:none;touch-action:none}.screen-grain{position:fixed;inset:0;pointer-events:none;z-index:1;background:linear-gradient(180deg,rgba(7,16,21,.66) 0%,rgba(7,16,21,.04) 23%,transparent 58%,rgba(7,16,21,.6) 100%)}#hit-flash{position:fixed;inset:0;pointer-events:none;z-index:9;box-shadow:inset 0 0 130px 45px #f54b3655;background:#ff321717;opacity:0;transition:opacity .12s}.masthead{position:fixed;top:0;left:0;right:0;height:104px;padding:0 38px;display:flex;align-items:center;gap:32px;z-index:4;border-bottom:1px solid var(--line);pointer-events:none}.wordmark{display:flex;align-items:center;gap:12px;color:var(--ink);font-size:29px;letter-spacing:-1.8px;font-weight:900;text-decoration:none;pointer-events:auto}.wordmark-dot{font-size:10px;align-self:flex-start;margin-top:4px;letter-spacing:0}.brand-mark{width:29px;display:flex;flex-direction:column;gap:4px;transform:skew(-26deg)}.brand-mark i{display:block;width:25px;height:5px;background:var(--orange)}.brand-mark i:nth-child(2){width:20px}.brand-mark i:nth-child(3){width:15px}.edition,.operation{font-family:var(--mono);font-size:10px;letter-spacing:1.4px;line-height:1.6}.edition{padding-left:26px;border-left:1px solid var(--line)}.tiny-label{display:block;font-family:var(--mono);font-size:9px;font-weight:400;letter-spacing:1.4px;color:var(--muted);line-height:1.5}.edition b,.operation b{font-weight:400;color:var(--orange);margin-left:5px}.operation{margin-left:auto;margin-right:20px}.operation .status-dot{display:inline-block;margin-right:7px}.operation b{margin:0 6px}.top-actions{display:flex;gap:8px;pointer-events:auto}.icon-button{height:34px;width:34px;border:1px solid var(--line);background:rgba(12,25,31,.35);display:grid;place-items:center;transition:background .2s,border-color .2s}.icon-button:hover{background:rgba(255,112,69,.16);border-color:var(--orange)}.icon-button svg{height:17px;width:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:square;stroke-linejoin:miter}.icon-button span{font-family:var(--mono);font-size:17px}.interface{position:fixed;inset:0;z-index:2;pointer-events:none}.mission-panel{position:absolute;top:137px;left:38px;width:271px;padding:16px 17px 0;background:linear-gradient(120deg,rgba(11,23,29,.78),rgba(11,23,29,.38));border:1px solid var(--line);border-top:2px solid var(--orange);backdrop-filter:blur(8px)}.section-heading{font-family:var(--mono);font-size:9px;letter-spacing:1.5px;color:var(--muted);display:flex;align-items:center;gap:7px}.orange-slash{color:var(--orange);font-size:12px;font-weight:bold}.panel-code{margin-left:auto;font-size:8px;opacity:.6}.mission-panel h2{font-size:17px;font-weight:500;letter-spacing:-.3px;margin:15px 0 8px}.mission-panel p{font-size:11px;line-height:1.6;color:#b4bfbc;max-width:214px;margin:0}.mission-stats{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:14px;margin:23px 0 18px}.mission-stats .tiny-label{font-size:8px;letter-spacing:1px}.mission-stats strong{display:block;margin-top:6px;font-family:var(--mono);font-size:22px;font-weight:400;letter-spacing:-1px}.mission-stats strong small{color:#899390;font-size:10px;letter-spacing:0}.mission-stats>div:last-child strong{color:var(--orange-light)}.mission-footer{margin:0 -17px;padding:10px 17px;border-top:1px solid var(--line);display:flex;align-items:center;gap:7px;font:8px var(--mono);letter-spacing:1.1px;color:#a4b5ad}.status-dot{width:4px;height:4px;background:var(--orange);border-radius:50%;box-shadow:0 0 9px #ff704555;flex-shrink:0}.signal-bars{margin-left:auto;font-size:9px;letter-spacing:1px;color:#bac6b9}.world-marker{position:absolute;top:140px;left:50%;transform:translateX(-50%);font:8px var(--mono);letter-spacing:1px;color:#e1e7dc9c;display:flex;align-items:center;flex-direction:column;gap:7px;white-space:nowrap}.world-marker>span:last-child{font-size:7px;color:#d7e3d566}.marker-line{width:1px;height:19px;background:linear-gradient(#e1e7dc77,#e1e7dc00)}.intro-panel{position:absolute;right:8.1%;top:22%;width:350px;pointer-events:auto}.intro-eyebrow{display:flex;gap:10px;align-items:center;font:8px var(--mono);font-weight:500;letter-spacing:1.8px;color:var(--orange-light)}.eyebrow-line{width:24px;height:1px;background:var(--orange)}h1{font-size:65px;line-height:.99;letter-spacing:-3.8px;font-weight:500;margin:25px 0 22px;text-shadow:0 2px 30px #07121655}h1 em{font-style:normal;color:var(--orange-light)}.intro-copy{color:#c7d0c8;font-size:13px;line-height:1.75;max-width:280px;margin:0 0 23px;text-shadow:0 1px 15px #081318}.intro-controls{display:grid;grid-template-columns:1.1fr 1fr;gap:12px 18px;margin-bottom:25px;max-width:325px}.intro-controls>div{display:flex;flex-direction:column;gap:7px}.control-keys{display:flex;gap:3px}.intro-controls>div>span:last-child{font:7px var(--mono);letter-spacing:1.25px;color:#c0c8c1}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:23px;border:1px solid #d8e5d52b;border-bottom-color:#d8e5d566;background:#0c1b224d;font:9px var(--mono);color:#e1e7dc;border-radius:2px}.wide-key{padding:0 7px;min-width:65px}.primary-button{background:var(--orange);color:#18201f;border:1px solid var(--orange);height:53px;width:100%;max-width:325px;padding:0 21px;display:flex;align-items:center;justify-content:space-between;gap:20px;font:11px var(--mono);font-weight:700;letter-spacing:1.7px;box-shadow:0 5px 27px #00000020;transition:background .15s,transform .15s}.primary-button:hover{background:#ff9870;border-color:#ff9870;transform:translateY(-2px)}.primary-button:active{transform:translateY(0)}.primary-button svg{width:26px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.deployment-note{display:flex;align-items:center;gap:6px;max-width:325px;font:7px var(--mono);letter-spacing:.7px;color:#a8b7ae;margin-top:14px}.deployment-note .status-dot{background:#a0bc99}.deployment-note>span{margin-left:auto;color:#929e99}.combat-only{transition:opacity .25s}body[data-playing="false"] .combat-only{opacity:0}.reticle-wrap{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;flex-direction:column}.reticle-wrap #lock-label{position:absolute;top:62px;font:8px var(--mono);letter-spacing:1.3px;white-space:nowrap;color:var(--orange-light);text-shadow:0 1px 5px #000}#reticle{position:relative;width:56px;height:56px;filter:drop-shadow(0 1px 3px #0008)}#reticle>span{position:absolute;width:11px;height:11px;border-color:#f1f3dfb8;border-style:solid}#reticle>span:nth-child(1){top:0;left:0;border-width:1px 0 0 1px}#reticle>span:nth-child(2){top:0;right:0;border-width:1px 1px 0 0}#reticle>span:nth-child(3){bottom:0;left:0;border-width:0 0 1px 1px}#reticle>span:nth-child(4){bottom:0;right:0;border-width:0 1px 1px 0}#reticle>i{position:absolute;width:3px;height:3px;background:var(--ink);top:calc(50% - 1.5px);left:calc(50% - 1.5px);border-radius:50%}#reticle.locked>span{border-color:var(--orange)}#reticle.locked>i{background:var(--orange)}.notice{position:absolute;left:50%;top:31%;transform:translateX(-50%);padding:12px 24px;color:var(--ink);font:11px var(--mono);letter-spacing:2px;text-align:center;text-shadow:0 2px 8px #000;white-space:nowrap}.notice:not(:empty){background:#101e25ab;border:1px solid #ff70455c;border-left:2px solid var(--orange)}.comms{position:absolute;left:38px;bottom:270px;display:flex;align-items:center;gap:12px}.comms-icon{width:32px;height:32px;border:1px solid var(--line);display:grid;place-items:center;background:#0c19206b}.comms svg{height:19px;width:19px;fill:none;stroke:#aab5aa;stroke-width:1.3}.comms .tiny-label{font-size:7px;letter-spacing:1px}.comms .tiny-label b{font-weight:400;color:var(--orange-light);margin-left:10px}.comms p{font-size:11px;letter-spacing:.1px;margin:5px 0 0;color:#d7dfd4}.combat-hud{position:absolute;bottom:58px;left:38px;right:38px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.vitals-panel{width:271px;flex-shrink:0;padding:17px;background:linear-gradient(145deg,#0d1b229c,#0d1b2255);border:1px solid var(--line);backdrop-filter:blur(8px)}.unit-heading{display:flex;align-items:center;gap:11px;margin-bottom:22px}.unit-insignia{font-size:27px;font-weight:700;font-style:italic;letter-spacing:-8px;color:var(--orange);width:31px;line-height:1}.unit-insignia span{font-size:22px;color:var(--ink)}.unit-heading .tiny-label{font-size:7px;letter-spacing:1.1px}.unit-heading strong{display:block;font:10px var(--mono);letter-spacing:.2px;margin-top:4px}.unit-heading strong>span{color:#60716c;margin:0 3px}.unit-heading .unit-id{margin-left:auto;font-size:6px;align-self:flex-start;margin-top:3px;opacity:.75}.meter-label{display:flex;align-items:center;justify-content:space-between;font:8px var(--mono);letter-spacing:1px;color:#c4cec5;margin-bottom:7px}.meter-label strong{font:12px var(--mono);color:var(--ink)}.meter-label strong small{font-size:8px;margin-left:4px;color:var(--muted)}.meter{height:4px;background:#8faaa424;overflow:hidden;position:relative}.meter>div{height:100%;transition:width .15s}.health-meter>div{background:#e0e7d1}.health-meter:after{position:absolute;inset:0;content:"";background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 2px),#1d2b2c calc(10% - 2px),#1d2b2c 10%)}.boost-label{margin-top:16px;margin-bottom:6px;font-size:7px;color:#96a89e}.boost-icon{color:var(--orange);font-size:13px;line-height:.5}.boost-meter{height:2px}.boost-meter>div{background:var(--orange)}.telemetry-row{margin-top:16px;padding-top:13px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:13px}.telemetry-row>span{white-space:nowrap}.telemetry-row b{font:12px var(--mono);letter-spacing:-.3px}.telemetry-row small{font:6px var(--mono);letter-spacing:.6px;color:#9caba2}.missile-symbol{font-size:8px;color:var(--orange);margin-right:4px}.transform-panel{width:356px;flex-shrink:0;pointer-events:auto}.transform-heading{display:flex;justify-content:space-between;margin-bottom:9px}.transform-heading .tiny-label{font-size:7px;letter-spacing:1px;display:flex;gap:5px;align-items:center}.transform-heading .status-dot{width:3px;height:3px}.mode-buttons{display:flex;gap:4px}.mode-button{position:relative;flex:1;height:112px;background:rgba(11,24,30,.78);border:1px solid #c8d9cb2c;padding:11px 4px 10px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;transition:background .2s,border-color .2s;backdrop-filter:blur(8px);color:#a5b4ac}.mode-button:hover{background:#18323ada;border-color:#e0e7d15c}.mode-button.active{border-color:var(--orange);color:var(--orange-light);background:linear-gradient(150deg,#6b3527b3,#15282eda)}.mode-button.active:after{content:"";position:absolute;bottom:-1px;left:calc(50% - 11px);height:2px;width:22px;background:var(--orange)}.mode-key{position:absolute;top:7px;left:8px;font:9px var(--mono);opacity:.7}.mode-silhouette{height:42px;width:51px;fill:currentColor;margin-bottom:9px;opacity:.88}.mode-label{font:9px var(--mono);letter-spacing:1px;font-weight:bold}.mode-type{font:5px var(--mono);letter-spacing:.7px;color:#a5b4ac;margin-top:5px}.mode-status{display:flex;justify-content:space-between;font:6px var(--mono);letter-spacing:1px;color:#8ea197;margin-top:10px}.mode-status strong{color:#d4dece;font-weight:400}.radar-panel{width:176px;flex-shrink:0}.radar-heading{display:flex;justify-content:space-between;margin-bottom:8px}.radar-heading .tiny-label{font-size:7px;letter-spacing:1px}.radar-frame{position:relative;background:#11232966;border:1px solid #b8cfbb25;height:153px;overflow:hidden}#radar{width:100%;height:100%;display:block;opacity:.92}.radar-corner{position:absolute;width:9px;height:9px;border-color:#b8cfbb6e;border-style:solid;pointer-events:none}.radar-corner-tl{top:-1px;left:-1px;border-width:1px 0 0 1px}.radar-corner-tr{top:-1px;right:-1px;border-width:1px 1px 0 0}.radar-corner-bl{bottom:-1px;left:-1px;border-width:0 0 1px 1px}.radar-corner-br{bottom:-1px;right:-1px;border-width:0 1px 1px 0}.radar-key{display:flex;gap:12px;font:6px var(--mono);letter-spacing:.8px;color:#a5b6aa;margin-top:9px}.radar-key span{display:flex;align-items:center;gap:4px}.radar-key span:last-child{margin-left:auto}.radar-key i{display:block;width:3px;height:3px;background:#e5edcd}.radar-key span:nth-child(2) i{background:var(--orange)}.bottom-caption{position:absolute;left:38px;right:38px;bottom:22px;display:flex;justify-content:space-between;font:6px var(--mono);letter-spacing:1.3px;color:#a5b2a580}.bottom-caption b{font-weight:400;color:#a5b2a550;margin-left:9px}.overlay{position:fixed;inset:0;z-index:12;background:#071318ab;backdrop-filter:blur(12px);display:grid;place-items:center;padding:30px}.dialog{background:linear-gradient(145deg,#182a31,#102027);border:1px solid #a8bdaf3d;border-top:2px solid var(--orange);padding:42px;max-width:440px;width:100%;box-shadow:0 30px 100px #0005}.dialog .intro-eyebrow{font-size:8px;letter-spacing:1.5px}.dialog h2{font-weight:400;font-size:39px;line-height:1.07;letter-spacing:-1.5px;margin:22px 0 18px}.dialog p{font-size:13px;line-height:1.7;color:#adbbb2;margin:0 0 27px}.dialog .primary-button{max-width:100%}.secondary-button{height:44px;margin-top:10px;border:1px solid var(--line);background:transparent;width:100%;font:9px var(--mono);letter-spacing:1.3px}.secondary-button:hover{background:#ffffff08;border-color:#d6e3cf66}.dialog p.dialog-footnote{font:7px var(--mono);letter-spacing:1px;color:#82958d;margin:22px 0 0;text-align:center}.full-controls{display:flex;flex-direction:column;gap:0;margin-top:26px}.full-controls>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 0;border-bottom:1px solid #d8e5d516;font-size:11px;color:#b9c6bb}.full-controls kbd{font-size:8px;padding:0 7px;height:24px}.controls-dialog{max-width:455px}.controls-dialog h2{font-size:34px}body[data-playing="true"] .world-marker{opacity:.45}

@media(min-width:1500px){.masthead{height:112px;padding:0 52px}.mission-panel{top:152px;left:52px}.intro-panel{right:9%;top:24%;width:370px}h1{font-size:75px}.intro-copy{font-size:14px}.combat-hud{left:52px;right:52px;bottom:65px}.comms{left:52px;bottom:285px}.bottom-caption{left:52px;right:52px;bottom:26px}.transform-panel{width:390px}.mode-button{height:122px}.mode-silhouette{height:47px}.radar-panel{width:190px}.radar-frame{height:167px}}
@media(max-height:850px){.masthead{height:84px}.mission-panel{top:108px}.world-marker{top:116px}.intro-panel{top:18.5%}h1{font-size:55px;margin:18px 0}.intro-copy{font-size:12px;line-height:1.65;margin-bottom:17px}.intro-controls{gap:10px 18px;margin-bottom:20px}.primary-button{height:48px}.combat-hud{bottom:47px}.vitals-panel{padding:14px 16px}.unit-heading{margin-bottom:16px}.telemetry-row{margin-top:13px;padding-top:11px}.mode-button{height:103px}.mode-silhouette{height:36px}.radar-frame{height:145px}.radar-panel{width:166px}.bottom-caption{bottom:17px}.comms{bottom:247px}.mission-stats{margin:17px 0 15px}}
@media(max-width:1100px){.masthead{padding:0 25px;gap:22px}.edition{padding-left:22px}.operation{margin-right:7px}.mission-panel{left:25px;width:242px}.combat-hud{left:25px;right:25px;gap:20px}.vitals-panel{width:242px}.transform-panel{width:310px}.mode-type{font-size:4.5px}.radar-panel{width:145px}.radar-frame{height:128px}.intro-panel{right:5%;width:320px}.comms{left:25px}.bottom-caption{left:25px;right:25px}.world-marker{display:none}.unit-heading .unit-id{display:none}}
@media(max-width:880px){.edition{display:none}.operation{margin-left:auto}.mission-panel{width:215px}.mission-panel h2{font-size:15px}.mission-panel p{font-size:10px}.mission-stats{gap:8px}.mission-stats strong{font-size:19px}.mission-stats .tiny-label{font-size:7px}.combat-hud{gap:15px}.vitals-panel{width:215px;padding:13px}.transform-panel{width:282px}.radar-panel{width:115px}.radar-frame{height:106px}.radar-key{gap:7px;font-size:5px}.radar-key span:last-child{display:none}.intro-panel{right:4%;width:295px}h1{font-size:54px}.comms{max-width:215px}.comms p{font-size:10px}.unit-heading strong{font-size:9px}.telemetry-row{gap:8px}.telemetry-row b{font-size:11px}.telemetry-row small{font-size:5px}.transform-heading .tiny-label{font-size:6px}.mode-label{font-size:8px}.mode-type{font-size:4px;letter-spacing:.5px}.mode-button{height:95px}.mode-silhouette{height:34px}.mode-status{font-size:5px}.bottom-caption{font-size:5px}}
@media(max-width:700px){.masthead{height:74px;padding:0 18px;gap:15px}.wordmark{font-size:23px;gap:8px}.brand-mark{width:23px;gap:3px}.brand-mark i{width:21px;height:4px}.brand-mark i:nth-child(2){width:17px}.brand-mark i:nth-child(3){width:13px}.operation{display:none}.top-actions{margin-left:auto;gap:5px}.icon-button{width:29px;height:29px}.mission-panel{top:91px;left:18px;width:191px;padding:12px 12px 0}.mission-panel .section-heading{font-size:7px}.mission-panel h2{font-size:14px;margin-top:11px}.mission-panel p{font-size:9px}.mission-stats{gap:7px;margin:13px 0}.mission-stats .tiny-label{font-size:6px}.mission-stats strong{font-size:17px}.mission-footer{margin:0 -12px;padding:8px 12px;font-size:6px;letter-spacing:.8px}.intro-panel{right:18px;top:31%;width:260px}.intro-eyebrow{font-size:6px;letter-spacing:1.4px}h1{font-size:49px;letter-spacing:-2.8px;margin:15px 0}.intro-copy{font-size:11px;max-width:240px;margin-bottom:16px}.intro-controls{gap:8px 13px;margin-bottom:17px}.intro-controls>div{gap:5px}.intro-controls>div>span:last-child{font-size:6px}kbd{height:21px;min-width:20px;font-size:8px}.primary-button{height:44px;font-size:9px}.deployment-note{font-size:5px;letter-spacing:.4px;margin-top:10px}.combat-hud{left:18px;right:18px;bottom:34px;gap:12px}.vitals-panel{width:170px;padding:11px}.unit-heading{gap:8px;margin-bottom:12px}.unit-insignia{font-size:23px;letter-spacing:-7px;width:25px}.unit-insignia span{font-size:18px}.unit-heading .tiny-label{font-size:5px;letter-spacing:.6px}.unit-heading strong{font-size:7px}.meter-label{font-size:6px;letter-spacing:.7px}.meter-label strong{font-size:10px}.boost-label{font-size:5px;margin-top:12px}.telemetry-row{margin-top:11px;padding-top:9px;gap:6px}.telemetry-row b{font-size:9px}.telemetry-row small{font-size:4px}.missile-symbol{font-size:6px;margin-right:2px}.transform-panel{width:250px}.transform-heading .tiny-label{font-size:5px}.mode-button{height:84px}.mode-silhouette{height:29px;margin-bottom:7px}.mode-label{font-size:7px;letter-spacing:.8px}.mode-type{font-size:3.5px;letter-spacing:.4px}.mode-key{font-size:7px;left:6px;top:6px}.mode-status{font-size:4px;letter-spacing:.8px}.radar-panel{display:none}.bottom-caption{left:18px;right:18px;bottom:12px;font-size:4px;letter-spacing:.8px}.comms{left:18px;bottom:199px}.comms p{font-size:9px}.comms .tiny-label{font-size:6px}.notice{font-size:8px;top:29%}.dialog{padding:30px;max-width:400px}.dialog h2{font-size:34px}}
@media(max-width:470px){.masthead{height:68px}.mission-panel{top:84px;width:177px}.mission-panel p{font-size:8px}.mission-panel h2{font-size:13px}.mission-stats strong{font-size:16px}.intro-panel{top:32%;width:240px}.intro-panel h1{font-size:43px;line-height:1}.intro-copy{font-size:10px;max-width:215px}.intro-controls{gap:8px 12px}.intro-controls kbd{height:19px;min-width:17px;font-size:7px}.intro-controls .wide-key{min-width:55px}.intro-controls>div>span:last-child{font-size:5px}.intro-panel .primary-button{height:41px;font-size:8px}.combat-hud{gap:8px}.vitals-panel{width:126px;padding:9px}.unit-insignia{display:none}.unit-heading{margin-bottom:11px}.unit-heading strong{font-size:7px}.meter-label{font-size:5px;letter-spacing:.4px}.meter-label strong{font-size:9px}.boost-label{font-size:4.5px}.telemetry-row{flex-wrap:wrap;justify-content:space-between;gap:5px}.telemetry-row>span{font-size:0}.telemetry-row b{font-size:8px}.telemetry-row small{font-size:4px}.telemetry-row .missile-readout{display:none}.transform-panel{width:calc(100vw - 174px)}.transform-heading .tiny-label{font-size:4px;letter-spacing:.5px}.transform-heading .tiny-label:last-child{display:none}.mode-buttons{gap:3px}.mode-button{height:80px;padding:8px 2px}.mode-silhouette{height:26px;width:35px}.mode-label{font-size:5px;letter-spacing:.5px}.mode-type{display:none}.mode-status{font-size:3.5px;letter-spacing:.6px}.mode-status>span{display:none}.mode-status strong{margin-left:auto}.comms{display:none}.bottom-caption>span:last-child{display:none}.intro-eyebrow{font-size:5px;letter-spacing:1.2px}.deployment-note{font-size:4.5px}.dialog{padding:25px}.dialog h2{font-size:31px}.dialog p{font-size:12px}.full-controls>div{font-size:10px}.full-controls kbd{font-size:7px}}
@media(max-height:670px) and (min-width:701px){.masthead{height:70px}.mission-panel{top:90px}.mission-panel p{display:none}.mission-panel h2{margin-bottom:0}.mission-stats{margin:13px 0}.intro-panel{top:18%;width:300px}.intro-panel h1{font-size:44px;margin:14px 0}.intro-copy{font-size:11px;max-width:280px;margin-bottom:12px}.intro-controls{gap:7px 15px;margin-bottom:16px}.intro-controls>div{gap:5px}.intro-controls kbd{height:19px;font-size:7px;min-width:18px}.intro-controls>div>span:last-child{font-size:6px}.primary-button{height:42px}.deployment-note{margin-top:10px;font-size:6px}.combat-hud{bottom:35px}.vitals-panel{padding:11px 14px}.unit-heading{margin-bottom:12px}.boost-label{margin-top:11px}.telemetry-row{margin-top:10px;padding-top:9px}.mode-button{height:88px}.mode-silhouette{height:31px}.radar-panel{width:140px}.radar-frame{height:119px}.comms{display:none}.world-marker{top:97px}.bottom-caption{bottom:13px}}
@media(max-height:590px) and (max-width:700px){.intro-panel{top:20%;width:240px}.intro-panel h1{font-size:39px;margin:12px 0}.intro-copy{font-size:10px;margin-bottom:12px}.intro-controls{display:none}.deployment-note{font-size:4px}.mission-panel{top:88px;width:170px}.mission-panel p{display:none}.mission-panel h2{font-size:12px}.mission-stats{margin:10px 0}.combat-hud{bottom:29px}.comms{display:none}.vitals-panel{padding:9px}.unit-heading{margin-bottom:9px}.telemetry-row{margin-top:9px;padding-top:8px}.boost-label{margin-top:9px}.mode-button{height:75px}.bottom-caption{bottom:10px}.dialog{padding:24px}.dialog h2{font-size:28px;margin:17px 0}.full-controls{margin-top:18px}.full-controls>div{padding:5px 0}.controls-dialog .dialog-footnote{margin-top:14px}}
.controls-dialog{max-height:calc(100vh - 60px);overflow:auto;scrollbar-width:thin;scrollbar-color:#ff704566 #102027}.full-controls>.fallback-heading{font:7px var(--mono);letter-spacing:1.4px;color:var(--orange-light);border:0;padding-top:18px;padding-bottom:5px}.controls-dialog #close-controls{margin-top:20px}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}
/* Keep bearings available in the narrow desktop side-panel as well. */
#wave-value{white-space:nowrap;font-size:13px;letter-spacing:-.6px;line-height:22px}
@media(max-width:700px){body[data-playing="true"] .radar-panel{display:block;position:fixed;top:94px;right:18px;width:112px}body[data-playing="true"] .radar-frame{height:106px}body[data-playing="true"] .radar-heading .tiny-label{font-size:8px}.mode-label{font-size:8px}.mode-type{font-size:5px}.mode-status{font-size:6px}.transform-heading .tiny-label{font-size:6px}.intro-eyebrow{font-size:8px}.deployment-note{font-size:6px}.bottom-caption{font-size:5px}}

.flight-hint{margin:8px 0 0;text-align:center;font:8px/1.5 monospace;letter-spacing:.45px;color:#a7b9b9} @media(max-width:700px){.flight-hint{font-size:7px;letter-spacing:0}}

/* A compact siege readout leaves the aiming area and player silhouette clear. */
.boss-signal{padding:8px 0;font:7px/1.5 var(--mono);letter-spacing:.65px;color:#f4bc85}.boss-challenge{width:100%;margin-top:10px!important;padding:11px 8px!important;font:9px var(--mono)!important;letter-spacing:1px;border-color:#ef98675e!important;color:#ffc89c!important;background:#1d2729a6!important}.boss-challenge:hover{border-color:var(--orange)!important;background:#59342880!important}.boss-hud{position:fixed;left:50%;top:77px;transform:translateX(-50%);width:min(410px,calc(100vw - 530px));min-width:240px;padding:9px 12px 7px;background:linear-gradient(120deg,#301b17e6,#13232be6);border:1px solid #ff855c77;border-top:2px solid #ff7045;backdrop-filter:blur(7px);pointer-events:none}.boss-heading{display:flex;justify-content:space-between;gap:12px;font:9px/1.4 var(--mono);letter-spacing:1px;color:#ffd8b5}.boss-heading strong{font-weight:500}.boss-heading>span{color:#b5c8c9;font-size:8px;white-space:nowrap}.boss-health{height:5px;background:#080e13;margin:7px 0 5px;overflow:hidden}.boss-health>div{height:100%;width:100%;background:linear-gradient(90deg,#e85436,#ffb35b);transition:width .12s linear}.boss-phase{font:7px/1.5 var(--mono);letter-spacing:1.5px;color:#efb78a}body[data-playing="true"]:has(#boss-hud:not(.hidden)) .notice{top:148px}.enemy-reference{margin-top:21px;padding-top:16px;border-top:1px solid var(--line)}.enemy-reference h3{margin:0 0 10px;font:11px var(--mono);font-weight:400;color:#ffc69e}.enemy-reference dl{margin:0}.enemy-reference dl>div{display:grid;grid-template-columns:115px 1fr;gap:9px;margin:9px 0}.enemy-reference dt{font:8px/1.5 var(--mono);color:#f0b17d;letter-spacing:.4px}.enemy-reference dd{margin:0;font:10px/1.5 var(--sans);color:#b9c6c1}
@media(max-width:900px){.boss-hud{top:225px;width:min(390px,calc(100vw - 40px));min-width:0}body[data-playing="true"]:has(#boss-hud:not(.hidden)) .notice{top:293px}}
@media(max-width:550px){.boss-hud{top:210px;width:calc(100vw - 24px);padding:7px 10px}.boss-heading{font-size:8px}.boss-phase{font-size:6px}.boss-signal{font-size:6px}.enemy-reference dl>div{grid-template-columns:94px 1fr}body[data-playing="true"]:has(#boss-hud:not(.hidden)) .notice{top:274px}}
@media(max-height:670px){.boss-challenge{padding:8px!important;font-size:8px!important}.deployment-note{margin-top:9px}.boss-signal{padding:5px 0}}

/* Combat instruments hug the corners, leaving the mech and skyline clear. */
.weapons-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;font:8px var(--mono);letter-spacing:.7px}.weapons-strip button{pointer-events:auto;display:flex;align-items:center;gap:9px;padding:5px 8px;border:1px solid #ff704566;background:#14272de6;font:8px var(--mono);letter-spacing:.8px}.weapons-strip button:hover{background:#29404a}.weapons-strip kbd{height:18px;min-width:19px;font-size:8px}.weapons-strip strong{font-size:13px;color:var(--orange-light)}.weapon-shortcut{color:#acbdb4;white-space:nowrap}.grapple-readout{display:flex;justify-content:space-between;gap:8px;margin-top:9px;font:8px/1.4 var(--mono);letter-spacing:.4px;color:#98d8da}.grapple-readout>span:last-child{white-space:nowrap}
body[data-playing="true"] .masthead{height:62px;padding:0 20px;background:linear-gradient(#0b1926a6,transparent)}body[data-playing="true"] .wordmark{font-size:23px}body[data-playing="true"] .edition{display:none}body[data-playing="true"] .world-marker,body[data-playing="true"] .comms,body[data-playing="true"] .bottom-caption{display:none}body[data-playing="true"] .mission-panel{top:78px;left:20px;width:230px;padding:10px 12px 0}body[data-playing="true"] .mission-panel h2,body[data-playing="true"] .mission-panel p{display:none}body[data-playing="true"] .mission-stats{margin:12px 0;gap:8px}body[data-playing="true"] .mission-footer{padding:8px 12px;margin:0 -12px;font-size:6px}body[data-playing="true"] .mission-stats strong{font-size:19px}body[data-playing="true"] #wave-value{font-size:11px}body[data-playing="true"] .combat-hud{left:20px;right:20px;bottom:16px;display:block;height:0}body[data-playing="true"] .vitals-panel{position:absolute;bottom:0;left:0;width:240px;padding:12px}body[data-playing="true"] .unit-heading{display:none}body[data-playing="true"] .transform-panel{position:absolute;bottom:0;right:0;width:320px}body[data-playing="true"] .transform-heading,body[data-playing="true"] .mode-status,body[data-playing="true"] .mode-type{display:none}body[data-playing="true"] .mode-button{height:51px;padding:10px 4px}body[data-playing="true"] .mode-silhouette{display:none}body[data-playing="true"] .mode-key{position:static;font-size:9px;margin-bottom:5px}body[data-playing="true"] .mode-label{font-size:9px}body[data-playing="true"] .flight-hint{text-align:right;font-size:8px}body[data-playing="true"] .radar-panel{display:block;position:fixed;top:78px;right:20px;width:150px}body[data-playing="true"] .radar-frame{height:142px}body[data-playing="true"] .notice{top:75px;font-size:9px;max-width:calc(100vw - 40px);white-space:normal;padding:8px 15px}
@media(max-width:800px){body[data-playing="true"] .operation{display:none}body[data-playing="true"] .mission-panel{width:201px}body[data-playing="true"] .vitals-panel{width:215px}body[data-playing="true"] .transform-panel{width:275px}body[data-playing="true"] .radar-panel{width:120px}body[data-playing="true"] .radar-frame{height:112px}body[data-playing="true"] .notice{top:225px}}
@media(max-width:550px){body[data-playing="true"] .masthead{padding:0 12px}body[data-playing="true"] .mission-panel{left:12px;width:190px}body[data-playing="true"] .radar-panel{right:12px;width:108px}body[data-playing="true"] .radar-frame{height:100px}body[data-playing="true"] .combat-hud{left:12px;right:12px;bottom:12px}body[data-playing="true"] .vitals-panel{width:145px;padding:9px}body[data-playing="true"] .transform-panel{width:calc(100vw - 180px);max-width:235px}body[data-playing="true"] .mode-label{font-size:7px;letter-spacing:0}body[data-playing="true"] .mode-button{height:48px}body[data-playing="true"] .flight-hint{font-size:7px}body[data-playing="true"] .telemetry-row .missile-readout{display:inline}.weapons-strip{gap:4px}.weapons-strip button{gap:4px;padding:4px;font-size:6px}.weapon-shortcut{font-size:6px}.grapple-readout{font-size:6px;letter-spacing:0}body[data-playing="true"] .telemetry-row{gap:5px}}
#hit-marker{position:absolute;width:56px;height:56px;opacity:0;pointer-events:none}#hit-marker b{position:absolute;left:50%;top:50%;width:11px;height:2px;background:#fff;box-shadow:0 0 6px #fff9,0 1px 2px #000}#hit-marker b:nth-child(1){transform:translate(-50%,-50%) rotate(45deg) translateX(-13px)}#hit-marker b:nth-child(2){transform:translate(-50%,-50%) rotate(135deg) translateX(-13px)}#hit-marker b:nth-child(3){transform:translate(-50%,-50%) rotate(225deg) translateX(-13px)}#hit-marker b:nth-child(4){transform:translate(-50%,-50%) rotate(315deg) translateX(-13px)}#hit-marker.hit{animation:hit-marker .16s ease-out}#hit-marker.kill{animation:kill-marker .42s ease-out}#hit-marker.kill b{background:#ff5a3c;box-shadow:0 0 9px #ff5a3ccc,0 1px 2px #000;width:15px}@keyframes hit-marker{0%{opacity:1;transform:scale(.8)}100%{opacity:0;transform:scale(1.15)}}@keyframes kill-marker{0%{opacity:1;transform:scale(1.5)}25%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.05)}}
.damage-arc{position:absolute;left:50%;top:50%;width:230px;height:230px;border-radius:50%;border-top:4px solid #ff3b2f;opacity:0;pointer-events:none;filter:drop-shadow(0 0 6px #ff2a1acc);-webkit-mask:linear-gradient(90deg,transparent 30%,#000 42%,#000 58%,transparent 70%);mask:linear-gradient(90deg,transparent 30%,#000 42%,#000 58%,transparent 70%)}.damage-arc.show{animation:damage-arc 1s ease-out}@keyframes damage-arc{0%{opacity:1}100%{opacity:0}}
.chain{position:absolute;left:50%;top:calc(50% - 92px);transform:translateX(-50%);font:700 15px var(--mono);letter-spacing:3px;color:#ffd3a8;text-shadow:0 0 14px #ff6a33cc,0 2px 4px #000;opacity:0;pointer-events:none;white-space:nowrap}.chain.show{animation:chain 1.4s ease-out}@keyframes chain{0%{opacity:0;transform:translateX(-50%) scale(1.7)}10%{opacity:1;transform:translateX(-50%) scale(1)}70%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-10px)}}
body.armor-critical #hit-flash{opacity:1!important;background:transparent;box-shadow:inset 0 0 160px 50px #e0281a44;animation:armor-pulse 1.1s ease-in-out infinite}@keyframes armor-pulse{50%{box-shadow:inset 0 0 190px 70px #ff2a1a66}}
.look-settings{margin:0 0 24px;padding:16px 0 4px;border-top:1px solid var(--line);font:8px var(--mono);letter-spacing:1.3px;color:#b9c6bb}.look-settings label{display:flex;justify-content:space-between;align-items:center;gap:12px}.look-settings output{color:var(--orange-light)}.look-settings input[type=range]{width:100%;margin:10px 0 16px;accent-color:var(--orange)}.look-settings .toggle{justify-content:flex-start;cursor:pointer}.look-settings .toggle input{accent-color:var(--orange);margin:0}

.scope{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .12s;background:radial-gradient(circle at 50% 50%,transparent 0 36vmin,rgba(255,196,120,.3) 36.2vmin 36.5vmin,rgba(3,7,9,.94) 36.8vmin)}body.scoped .scope{opacity:1}body.scoped .reticle-wrap{opacity:0}
.scope-h,.scope-v{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(90deg,rgba(255,226,170,.85) 0 44%,transparent 44% 56%,rgba(255,226,170,.85) 56%)}.scope-h{width:72vmin;height:1px}.scope-v{width:1px;height:72vmin;background:linear-gradient(180deg,rgba(255,226,170,.85) 0 44%,transparent 44% 56%,rgba(255,226,170,.85) 56%)}
#scope-range{position:absolute;left:calc(50% + 14px);top:calc(50% + 12px);font:10px var(--mono);font-weight:400;letter-spacing:1px;color:#ffd9a8;text-shadow:0 1px 4px #000}
.casualties{display:flex;justify-content:space-between;align-items:baseline;margin:-6px 0 14px;padding:8px 10px;border:1px solid #ff5a4040;background:#3a120d55;transition:background .3s}
.casualties .tiny-label{font-size:8px;letter-spacing:1px;color:#ffb3a3}.casualties strong{font-family:var(--mono);font-size:20px;font-weight:400;color:#ff7a62;letter-spacing:-.5px}
.casualties.fresh{background:#8a1d1066}.casualties.fresh strong{color:#fff;text-shadow:0 0 12px #ff4a2a}
#site-marker{position:fixed;transform:translate(-50%,-100%);pointer-events:none;z-index:4;font:9px var(--mono);letter-spacing:1px;color:#ffb39a;text-align:center;text-shadow:0 1px 4px #000;white-space:nowrap}
#site-marker i{display:block;width:12px;height:12px;margin:0 auto 5px;border:2px solid #ff5a3a;transform:rotate(45deg);box-shadow:0 0 12px #ff3a1a}#site-marker.hidden{display:none}
.difficulty{display:flex;align-items:center;gap:6px;margin:0 0 14px;pointer-events:auto}.difficulty .tiny-label{margin-right:8px}
.difficulty button{font:10px var(--mono);letter-spacing:1.5px;padding:7px 14px;border:1px solid var(--line);background:#0c19206b;color:#b9c6bb;cursor:pointer}.difficulty button.active{border-color:var(--orange);color:var(--ink);background:#ff704526}
#scope-reload{position:absolute;left:calc(50% + 14px);top:calc(50% + 30px);width:74px;height:3px;background:#2a1c12cc}#scope-reload i{display:block;height:100%;width:100%;background:#ffd9a8}
#scope-ready{position:absolute;left:calc(50% + 14px);top:calc(50% + 38px);font:9px var(--mono);font-style:normal;letter-spacing:1.4px;color:#ffd9a8;text-shadow:0 1px 4px #000}.scope.reloading #scope-ready{color:#ff8a5c}.scope.reloading #scope-reload i{background:#ff8a5c}

/* The surge strip: one clock and the numbers that matter, top and centre. */
.ops{position:fixed;top:8px;left:50%;transform:translateX(-50%);z-index:5;display:flex;align-items:stretch;width:min(640px,calc(100vw - 420px));min-width:360px;pointer-events:none;background:linear-gradient(180deg,#0b1820e6,#0b1820b3);border:1px solid #c8d9cb33;border-top:2px solid var(--ops,#7fd8c0);backdrop-filter:blur(8px);font-family:var(--mono);text-shadow:0 1px 3px #000;--ops:#7fd8c0}
body[data-playing="false"] .ops,body[data-playing="false"] .gauges{display:none}
.ops-count{flex:0 0 132px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:8px 14px}
.ops-count>span{font-size:9px;letter-spacing:1.4px;color:#a9bab3}
.ops-count strong{font-size:28px;font-weight:500;line-height:1.05;color:#f1f5ee;letter-spacing:-1px}
.ops-count em{font-style:normal;font-size:9px;letter-spacing:1px;color:#ffb27d}
.ops-count em b{font-weight:500;font-size:11px}
.ops-count.casualties{margin:0;border:0;border-left:1px solid #c8d9cb26;align-items:flex-end;text-align:right;background:#3a120d4d}
.ops-count.casualties>span{color:#ffb3a3}
.ops-count.casualties strong{color:#ff7a62;font-size:28px}
.ops-count:first-child{border-right:1px solid #c8d9cb26}
.ops-clock{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 10px 8px}
#ops-label{font-size:10px;letter-spacing:1.8px;color:var(--ops);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#ops-timer{font-size:30px;font-weight:500;line-height:1;letter-spacing:1px;color:#f6f8f2}
.ops-bar{display:block;width:100%;height:3px;background:#ffffff1a}
.ops-bar i{display:block;height:100%;width:100%;background:var(--ops);transition:width .25s linear}
#boss-signal{font-size:9px;letter-spacing:1px;color:#cfdad3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.ops[data-phase="warning"]{--ops:#ff5a3a;animation:ops-alarm .8s steps(2) infinite}
.ops[data-phase="attack"]{--ops:#ff9b5c}
.ops[data-phase="boss"]{--ops:#ff5a3a}
.ops[data-phase="end-cleared"]{--ops:#9ff0a8}
.ops[data-phase="end-overrun"]{--ops:#ff7a62}
.ops[data-phase="warning"] #ops-timer,.ops[data-phase="boss"] #ops-timer{color:#ffd2c2}
@keyframes ops-alarm{50%{border-top-color:#ffd0b8;background:linear-gradient(180deg,#3a1510e6,#0b1820b3)}}
body[data-playing="true"] .mission-panel,body[data-playing="true"] .vitals-panel{display:none}
body[data-playing="true"] .boss-hud{top:104px}
body[data-playing="true"] .notice{top:108px}
body[data-playing="true"]:has(#boss-hud:not(.hidden)) .notice{top:168px}
@media(max-width:1400px){body[data-playing="true"] .operation{display:none}body[data-playing="true"] .top-actions{margin-left:auto}}
@media(max-width:860px){.ops{width:calc(100vw - 24px);min-width:0;top:62px}.ops-count{flex-basis:96px;padding:6px 9px}.ops-count strong,.ops-count.casualties strong{font-size:21px}#ops-timer{font-size:23px}body[data-playing="true"] .radar-panel{top:150px}body[data-playing="true"] .boss-hud{top:150px}body[data-playing="true"] .notice{top:150px}body[data-playing="true"]:has(#boss-hud:not(.hidden)) .notice{top:210px}}
@media(prefers-reduced-motion:reduce){.ops[data-phase="warning"]{animation:none}}

/* Hull and fuel arcs flank the reticle; ammunition sits just below it. */
.gauges{position:absolute;left:50%;top:50%;width:260px;height:260px;transform:translate(-50%,-50%);pointer-events:none;transition:opacity .15s;font-family:var(--mono);text-shadow:0 1px 3px #000}
body.scoped .gauges{opacity:0}
.gauges svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.gauge-track{fill:none;stroke:#0b161c80;stroke-width:6;stroke-linecap:round}
.gauge-fill{fill:none;stroke:#eef3eacc;stroke-width:3;stroke-linecap:round;stroke-dasharray:100 100;transition:stroke-dasharray .15s}
.gauge-fill.boost{stroke:#ff9d5ccc}
.gauges.hull-low .gauge-fill.hull{stroke:#ff4a33}
.gauges.boost-locked .gauge-fill.boost{stroke:#8a9894aa}
.gauge-read{position:absolute;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:1px;font-size:8px;letter-spacing:1.2px;color:#c9d6cfcc;white-space:nowrap}
.gauge-read b{font-size:17px;font-weight:500;letter-spacing:-.4px;color:#f2f6efe6}
.gauge-read small{font-size:8px;letter-spacing:.6px;color:#a9bab3bb}
.gauge-read small i{font-style:normal;color:#dfe8e2}
.gauge-read.left{right:calc(50% + 100px);align-items:flex-end;text-align:right}
.gauge-read.right{left:calc(50% + 100px);align-items:flex-start}
.gauges.hull-low .gauge-read.left b{color:#ff6a50}
.gauges.boost-locked .gauge-read.right b{color:#8a9894}
.gauge-ammo{position:absolute;left:50%;top:calc(50% + 66px);transform:translateX(-50%);display:flex;align-items:baseline;gap:5px;font-size:8px;letter-spacing:1px;color:#c9d6cfcc;white-space:nowrap}
.gauge-ammo>b{font-size:14px;font-weight:500;color:#ffd0a8}
.gauge-ammo .missile-symbol{font-size:8px;margin:0}
.gauge-salvo{margin-left:6px;color:#a9bab3}
.gauge-salvo b{font-weight:500;color:#ffb27d}
.gauge-grapple{position:absolute;left:50%;top:calc(50% + 84px);transform:translateX(-50%);display:none;gap:8px;font-size:8px;letter-spacing:1px;color:#98d8da;white-space:nowrap}
.gauge-grapple.show{display:flex}

.crash-note{margin-top:8px;font:9px var(--mono);letter-spacing:1px;color:#ffb39a}
#device-lost{position:fixed;left:50%;top:40%;transform:translate(-50%,-50%);z-index:20;display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 28px;background:#101e25f0;border:1px solid #ff704566;border-top:2px solid var(--orange);font:10px var(--mono);letter-spacing:1.4px;color:#d7dfd4;text-align:center}
#device-lost strong{font-size:14px;color:#ffb39a;font-weight:500}
#device-lost button{padding:8px 18px;border:1px solid var(--orange);background:#ff704526;font:10px var(--mono);letter-spacing:1.4px}
.fullscreen-tip{display:flex;flex-direction:column;gap:9px;margin:-10px 0 24px;padding:14px 16px;border:1px solid #ff704559;border-left:2px solid var(--orange);background:#ff70450d}
.fullscreen-tip strong{font:10px var(--mono);letter-spacing:1.4px;color:var(--orange-light);font-weight:500}
.fullscreen-tip span{font-size:12px;line-height:1.6;color:#c7d0c8}
.fullscreen-tip .secondary-button{margin-top:3px;border-color:var(--orange)}
