:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf6ff;--hud-bg:#030a0ead;--hud-bg-strong:#040e14d6;--hud-line:#73e0ff5c;--hud-line-hot:#ff5b469e;--hud-cyan:#63e8ff;--hud-green:#79ffc2;--hud-amber:#f7d45b;--hud-red:#ff5548;--laser-charge:0turn;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);background:#93c9e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none;min-width:320px}button{color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:0}canvas,#hud,#touchControls{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}input,textarea,select{-webkit-user-select:text;user-select:text}#scene{background:#93c9e8;width:100%;height:100%;display:block}#vignette{pointer-events:none;display:none;position:fixed;inset:0}#hud{pointer-events:none;position:fixed;inset:0}.top-bar{text-transform:uppercase;letter-spacing:0;justify-content:space-between;align-items:center;gap:14px;display:flex;position:absolute;top:18px;left:22px;right:22px}.brand,.mission{border:1px solid var(--hud-line);background:linear-gradient(135deg, #63e8ff21, transparent 38%), var(--hud-bg);color:#e7f6ff;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);align-items:center;min-height:34px;padding:0 13px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff0a,0 0 26px #2aaeff26}.brand-mark{border:2px solid #f6c84f;width:11px;height:11px;margin-right:9px;transform:rotate(45deg);box-shadow:0 0 18px #f6c84f8c}.combat-clock{z-index:5;pointer-events:none;text-transform:uppercase;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);background:linear-gradient(90deg,#f6c84f29,#0000 52%),#030a0eb8;border:1px solid #f6c84f6b;grid-template-columns:auto auto;align-items:center;gap:10px;min-width:184px;min-height:48px;padding:6px 16px;display:grid;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff0b,0 16px 42px #00000052,0 0 28px #f6c84f24}.combat-clock span{color:#a6e1ffd1;font-size:10px;font-weight:1000}.combat-clock b{color:#fff4b1;text-align:right;text-shadow:0 0 18px #f6c84f4d;font-size:30px;font-weight:1000;line-height:1}.spectator-fight-hud{z-index:6;pointer-events:none;text-transform:uppercase;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);align-items:start;gap:12px;width:min(1180px,100vw - 36px);display:grid;position:absolute;top:14px;left:50%;transform:translate(-50%)}.spectator-fight-hud[hidden]{display:none}.spectator-camera-controls{z-index:7;pointer-events:auto;background:#030a0e9e;border:1px solid #90dcff42;gap:6px;padding:5px;display:flex;position:absolute;top:92px;left:50%;transform:translate(-50%)}.spectator-camera-controls[hidden]{display:none}.spectator-camera-controls button{color:#edf6ffc2;letter-spacing:0;cursor:pointer;background:#040a0f85;border:1px solid #90dcff3d;min-width:62px;min-height:30px;font-size:11px;font-weight:1000}.spectator-camera-controls button.selected{color:#fff0a8;background:#f6c84f2e;border-color:#f6c84fb8;box-shadow:0 0 18px #f6c84f2e}.replay-controls{left:50%;bottom:calc(18px + var(--safe-bottom));z-index:9;pointer-events:auto;background:linear-gradient(90deg,#63e8ff21,#0000 48%),#030a0ec7;border:1px solid #90dcff47;grid-template-columns:repeat(5,auto) minmax(160px,340px) auto;align-items:center;gap:7px;width:min(820px,100vw - 28px);padding:7px;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 18px 48px #00000057}.replay-controls[hidden]{display:none}.replay-controls button{color:#edf6ff;cursor:pointer;background:#040a0f94;border:1px solid #90dcff42;min-width:58px;min-height:32px;font-size:11px;font-weight:1000}.replay-controls #replayExitButton{color:#ffb7bd;border-color:#ff5e6b8a}.replay-controls input{accent-color:#f7d45b;width:100%}.replay-controls span{color:#edf6ffd1;white-space:nowrap;min-width:82px;font-size:11px;font-weight:1000}.spectator-side{background:linear-gradient(90deg,#63e8ff2e,#0000 42%),#030a0eb8;border:1px solid #e8faff38;align-items:center;min-width:0;min-height:68px;padding:8px;display:grid;box-shadow:inset 0 0 0 1px #ffffff0a,0 12px 34px #00000042}.spectator-side.host{clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%);grid-template-columns:64px minmax(0,1fr)}.spectator-side.guest{clip-path:polygon(14px 0,100% 0,100% 100%,0 100%);background:linear-gradient(270deg,#ff68582e,#0000 42%),#030a0eb8;grid-template-columns:minmax(0,1fr) 64px}.spectator-fighter-info{gap:6px;min-width:0;display:grid}.spectator-name{color:#f7fbff;text-overflow:ellipsis;text-shadow:0 2px 12px #000000c7;white-space:nowrap;font-size:15px;font-weight:1000;line-height:1;overflow:hidden}.spectator-side.guest .spectator-name{text-align:right}.spectator-health-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.spectator-side.guest .spectator-health-row{grid-template-columns:auto minmax(0,1fr)}.spectator-health{background:repeating-linear-gradient(90deg,#ffffff14 0 1px,#0000 1px 28px),#ffffff14;border:1px solid #edf6ff47;height:20px;position:relative;overflow:hidden;box-shadow:inset 0 0 14px #00000047}.spectator-health:after{content:"";border-top:1px solid #ffffff40;position:absolute;inset:0}.spectator-health span{transform-origin:0;background:linear-gradient(90deg,#7dffba 0%,#f4e66a 62%,#ff785f 100%);width:100%;position:absolute;inset:0 auto 0 0;box-shadow:0 0 18px #7effbc52}.spectator-side.guest .spectator-health span{transform-origin:100%;left:auto;right:0}.spectator-hp-text,.spectator-health-row b{color:#edf6ffdb;text-align:right;min-width:62px;font-size:11px;font-weight:1000}.spectator-side.guest .spectator-health-row b{text-align:left}.spectator-side.critical .spectator-health span{background:linear-gradient(90deg,#ff5548,#f7d45b);box-shadow:0 0 20px #ff55486b}.spectator-side.defeated{opacity:.68}.spectator-side.defeated .spectator-name{color:#edf6ff94}.spectator-face{--face-main:#d8edf2;--face-accent:#63e8ff;background:linear-gradient(135deg, #ffffff42, transparent 36%), linear-gradient(180deg, var(--face-main), #041219e0 72%);width:54px;height:52px;box-shadow:inset 0 0 18px #ffffff14, 0 0 20px color-mix(in srgb, var(--face-accent) 36%, transparent);clip-path:polygon(16% 0,84% 0,100% 24%,88% 100%,12% 100%,0 24%);border:1px solid #edf6ff47;position:relative}.spectator-face:before{background:linear-gradient(90deg, transparent 0 10%, var(--face-accent) 10% 42%, transparent 42% 58%, var(--face-accent) 58% 90%, transparent 90%), #03080cad;height:12px;box-shadow:0 0 14px color-mix(in srgb, var(--face-accent) 52%, transparent);content:"";position:absolute;top:16px;left:9px;right:9px}.spectator-face:after{height:4px;box-shadow:0 0 8px color-mix(in srgb, var(--face-accent) 34%, transparent);content:"";background:#03080ca8;position:absolute;bottom:9px;left:15px;right:15px}.spectator-face span{clip-path:polygon(50% 0,100% 100%,0 100%);background:#03080ca3;width:16px;height:7px;position:absolute;top:7px;left:19px}.spectator-face[data-frame=light]{--face-main:#baf2ff;--face-accent:#60ffdb}.spectator-face[data-frame=heavy]{--face-main:#f0dec6;--face-accent:#ff9a56}.spectator-face[data-frame=custom]{--face-main:#d8edf2;--face-accent:#f7d45b}.spectator-timer{color:#fff3ba;text-shadow:0 0 16px #f7d45b66,0 3px 12px #000c;clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,14px 100%,0 calc(100% - 14px),0 14px);background:linear-gradient(#f7d45b38,#0000 52%),#030a0edb;border:1px solid #f7d45b6b;place-items:center;min-height:62px;font-size:28px;font-weight:1000;line-height:1;display:grid}body.spectator-mode .top-bar,body.spectator-mode .combat-clock,body.spectator-mode .readout,body.spectator-mode .center-reticle,body.spectator-mode .enemy-bars,body.spectator-mode .overheat-alert,body.spectator-mode #touchControls{display:none}.readout{min-width:0;box-shadow:none;pointer-events:none;background:0 0;border:0;padding:0;transition:opacity .14s;position:absolute}.readout:before{display:none}.readout.left{width:auto;display:block;inset:0}.readout.right{top:78px;right:max(22px, calc(var(--safe-right) + 16px));width:132px;display:block;bottom:auto}.readout.left>.panel-title,.readout.left .stats,.readout.right>.panel-title,.readout.right .target-panel{display:none}.panel-title{z-index:1;color:#e7f6ffd1;letter-spacing:0;justify-content:space-between;align-items:center;min-height:24px;font-size:10px;font-weight:900;display:flex;position:relative}.panel-title span{color:var(--hud-cyan)}.panel-title b{border-left:2px solid var(--hud-cyan);color:#fff;background:#63e8ff1a;padding:3px 7px;font-size:10px}.meter,.target-panel{z-index:1;background:#040a0f6b;border:1px solid #90dcff33;width:100%;padding:7px 8px;position:relative;box-shadow:inset 3px 0 #63e8ff2e}.armor-meter{left:max(24px, calc(var(--safe-left) + 18px));bottom:calc(28px + var(--safe-bottom));clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));background:linear-gradient(135deg,#63e8ff2e,#0000 45%),linear-gradient(90deg,#02080cd1,#07141a94),#03090dc2;border-color:#90dcff61;width:304px;max-width:calc(50vw - 48px);padding:13px 16px 14px 18px;position:absolute;overflow:hidden;box-shadow:inset 4px 0 #63e8ff85,inset 0 0 0 1px #ffffff0d,0 18px 42px #0000004d,0 0 26px #63e8ff21}.armor-meter:before,.armor-meter:after{pointer-events:none;content:"";position:absolute}.armor-meter:before{opacity:.52;background:linear-gradient(90deg,#63e8ff2e,#0000 32%),repeating-linear-gradient(90deg,#ffffff0a 0 1px,#0000 1px 18px);inset:0}.armor-meter:after{opacity:.9;border-top:2px solid #f7d45ba8;border-right:2px solid #f7d45ba8;width:42px;height:14px;top:12px;right:12px}.armor-meter .label{z-index:1;color:#daf5ffe6;align-items:end;font-size:11px;position:relative}#armorValue{color:#fff;text-shadow:0 0 14px #63e8ff70,0 2px 10px #0000008c;font-size:28px;font-weight:1000;line-height:1}.armor-meter .bar{z-index:1;background:repeating-linear-gradient(90deg,#ffffff1c 0 2px,#0000 2px 24px),#ffffff14;border-color:#def6ff3d;height:16px;margin-top:8px;position:relative}.ultimate-meter{left:50%;bottom:calc(42px + var(--safe-bottom));background:radial-gradient(circle, #02080ceb 0 49%, transparent 50%), conic-gradient(from -90deg, #f7d45b var(--ultimate-charge,0turn), #7af8ff1a 0), #030b10c2;border-color:#f7d45b6b;border-radius:50%;place-items:center;width:104px;height:104px;padding:0;display:grid;position:absolute;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff0d,0 18px 42px #0000004d,0 0 28px #f7d45b29}.ultimate-meter:before,.ultimate-meter:after{pointer-events:none;content:"";border-radius:50%;position:absolute}.ultimate-meter:before{background:radial-gradient(circle,#63e8ff1c,#0000 62%),#030a0ee6;border:1px solid #90dcff3d;inset:10px}.ultimate-meter:after{border:1px solid #90dcff38;border-color:#f7d45bb8 #90dcff38 #63e8ff85;inset:-6px}.ultimate-meter .label{z-index:1;text-align:center;justify-items:center;gap:3px;display:grid;position:relative}.ultimate-meter .label span:first-child{color:#a6e1ffdb;font-size:9px}#shieldValue{color:#fff4b1;text-shadow:0 0 16px #f7d45b5c;font-size:21px;font-weight:1000;line-height:1}.ultimate-meter .bar{display:none}.fuel-meter{left:50%;bottom:calc(22px + var(--safe-bottom));width:192px;box-shadow:none;background:0 0;border:0;padding:0;position:absolute;transform:translate(-50%)}.fuel-meter .label{display:none}.fuel-meter .bar{background:repeating-linear-gradient(90deg,#ffffff1a 0 1px,#0000 1px 18px),#02080cad;border-color:#63e8ff47;height:8px;margin:0;box-shadow:0 0 18px #63e8ff29,inset 0 0 0 1px #ffffff0a}.heat-meter{right:max(28px, calc(var(--safe-right) + 20px));bottom:calc(32px + var(--safe-bottom));clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);background:linear-gradient(#ff56481f,#0000 48%),#03090dbd;border-color:#ff80525c;justify-items:center;width:74px;height:184px;padding:12px 10px;display:grid;position:absolute;box-shadow:inset 0 0 0 1px #ffffff0a,0 18px 42px #0000004d,0 0 24px #ff564821}.heat-meter .label{color:#ffdab8db;text-align:center;justify-items:center;gap:2px;font-size:9px;display:grid}.heat-meter .label span:last-child{justify-items:center;display:grid}#heatValue{color:#ffe3bd;text-shadow:0 0 14px #ff704857;font-size:22px;font-weight:1000;line-height:1}.heat-meter .bar{background:linear-gradient(#ff564829,#f7d45b1a 36%,#7af8ff14),#ffffff0e;border-color:#ffead238;width:17px;height:118px;margin:8px auto 0;overflow:visible}.heat-meter .bar:before{z-index:2;content:"";background:#ff6858;height:2px;position:absolute;bottom:82%;left:-9px;right:-9px;box-shadow:0 0 10px #ff5648ad,0 0 0 1px #03080cb8}.heat-meter .bar span{background:linear-gradient(0deg, var(--hud-cyan) 0%, var(--hud-amber) 58%, var(--hud-red) 100%);transform-origin:bottom;width:100%;height:100%;inset:auto 0 0}.heat-meter .heat-status{color:#ffdab8c7;justify-content:center;min-height:12px;margin-top:6px;font-size:9px}body.ultimate-ready .ultimate-meter{animation:1s ease-in-out infinite ultimateReadyPulse}body.ultimate-active .ultimate-meter{border-color:#7af8ffa3;box-shadow:inset 0 0 0 1px #ffffff0f,0 18px 42px #0000004d,0 0 32px #7af8ff3d}.target-panel{min-height:118px}.label,.stats{color:#e6f7ffe0;letter-spacing:0;justify-content:space-between;align-items:center;gap:12px;font-size:10px;font-weight:800;display:flex}.stats{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid;position:relative}.stats span{color:#a6e1ffdb;white-space:nowrap;background:linear-gradient(90deg,#63e8ff1a,#0000),#040a0f80;border:1px solid #90dcff2e;min-width:0;padding:6px 8px}.stats b{float:right;color:#fff}.bar{background:repeating-linear-gradient(90deg,#ffffff17 0 1px,#0000 1px 20px),#ffffff12;border:1px solid #def6ff29;height:8px;margin-top:6px;position:relative;overflow:hidden}.bar span{background:linear-gradient(90deg, var(--hud-cyan), var(--hud-amber));transform-origin:0;width:100%;position:absolute;inset:0 auto 0 0;box-shadow:0 0 18px #4de2ff7a}.bar.energy span{background:linear-gradient(90deg, var(--hud-green), #4ec4ff)}.bar.shield span{background:linear-gradient(90deg,#8bf6ff,#5f8dff)}.bar.heat span{background:linear-gradient(90deg, var(--hud-cyan) 0%, var(--hud-amber) 58%, var(--hud-red) 100%);box-shadow:0 0 18px #ff5d455c}.heat-meter .bar.heat span{background:linear-gradient(0deg, var(--hud-cyan) 0%, var(--hud-amber) 58%, var(--hud-red) 100%);box-shadow:0 0 18px #ff5d455c}.heat-status{color:#a6e1ffdb;justify-content:flex-end;min-height:14px;margin-top:5px;font-size:10px;font-weight:900;display:flex}body.heat-hot .heat-status{color:var(--hud-amber)}body.overheated .heat-meter{border-color:var(--hud-line-hot);box-shadow:inset 0 0 0 1px #ffffff0d,0 18px 54px #00000047,0 0 34px #ff564842}body.overheated .heat-status,body.overheated #heatValue{color:#ffe9c7;animation:.7s steps(2,end) infinite heatPulse}.bar.lock span{background:linear-gradient(90deg, var(--hud-red), var(--hud-amber));width:0%}.bar.lock{height:5px}.bar.target-hp span{background:linear-gradient(90deg, var(--hud-red), #ffd45a)}.target-name{color:#fff2bb;text-align:right;text-transform:uppercase;margin-top:8px;font-size:12px;font-weight:800}.target-health{margin-top:10px}.radar{z-index:1;background:radial-gradient(circle,#63e8ff1a,#0000 58%),#040a0f85;border:1px solid #90dcff3d;width:118px;height:118px;position:relative;box-shadow:inset 0 0 0 1px #ffffff09}#radarCanvas{width:100%;height:100%;display:block}.center-reticle{width:150px;height:150px;transition:opacity .14s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.center-reticle:before,.center-reticle:after{content:"";border:1px solid #63e8ff3d;position:absolute;inset:16px}.center-reticle:after{border-color:#f7d45b6b;inset:58px;transform:rotate(45deg)}.ring,.lock-reticle{border:1px solid #e8faff9e;border-radius:50%;position:absolute;box-shadow:0 0 16px #52d0ff47,inset 0 0 14px #52d0ff1f}.ring{inset:38px}.ring:before{background:conic-gradient(from -90deg, var(--hud-amber) var(--laser-charge), #7af8ff1f 0);content:"";opacity:0;-webkit-mask-composite:xor;border-radius:50%;padding:4px;transition:opacity .12s;position:absolute;inset:-6px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.lock-reticle{opacity:0;border-color:#ffda58e0;width:58px;height:58px;transition:opacity .12s,transform .12s;inset:50% auto auto 50%;transform:translate(-50%,-50%)scale(1.05)}.lock-reticle:before,.lock-reticle:after{content:"";border:1px solid #ffda586b;border-radius:50%;position:absolute;inset:8px}.lock-reticle:after{border-color:#fff4b1b8;inset:22px}.lock-reticle.locked{opacity:1;transform:translate(-50%,-50%)scale(.86)}.cross{background:#e8faffc7;position:absolute;box-shadow:0 0 10px #63e8ff6b}.cross.h{height:1px;top:50%;left:20px;right:20px}.cross.v{width:1px;top:20px;bottom:20px;left:50%}body.laser-scope .center-reticle{opacity:1;width:220px;height:220px}body.laser-scope .center-reticle:before{border-color:#7af8ff57;border-radius:50%;inset:10px}body.laser-scope .center-reticle:after{border-color:#7af8ffdb;inset:103px;transform:rotate(45deg)}body.laser-scope .ring{border-color:#7af8ffeb;inset:32px;box-shadow:0 0 24px #7af8ff6b,inset 0 0 18px #7af8ff2e}body.laser-scope .ring:before{opacity:1}body.laser-scope .cross{background:#7af8ffe0;box-shadow:0 0 14px #7af8ff94}body.laser-scope .cross.h{left:0;right:0}body.laser-scope .cross.v{top:0;bottom:0}body.laser-scope .lock-reticle{opacity:0}body.laser-charged .ring,body.laser-charged .center-reticle:after{border-color:#f7d45bf2;box-shadow:0 0 26px #f7d45b7a,inset 0 0 18px #f7d45b2e}.damage-flash{opacity:0;pointer-events:none;background:radial-gradient(circle at 50% 52%,#0000 40%,#ff2e2614 58%,#ff2e2694 100%),linear-gradient(90deg,#ff2e2642,#0000 18% 82%,#ff2e2642);transition:opacity .12s;position:absolute;inset:0}body.armor-warning .armor-meter{border-color:#ff5e487a;box-shadow:inset 3px 0 #ff5e4857,0 0 18px #ff5e4814}body.armor-warning .armor-meter .label,body.armor-warning #armorValue,body.armor-warning #systemState{color:#ffd0c8}body.armor-warning .armor-meter .bar span{background:linear-gradient(90deg,#ff5548,#f7d45b);box-shadow:0 0 18px #ff554866}body.armor-critical .armor-meter{border-color:#ff4040b8;animation:.86s steps(2,end) infinite lowHpPanelPulse}body.combat-hud-muted .readout,body.combat-hud-muted .combat-clock,body.combat-hud-muted .center-reticle,body.combat-hud-muted .enemy-bars,body.combat-hud-muted .overheat-alert,body.combat-hud-muted .damage-flash{opacity:0!important}@keyframes lowHpPanelPulse{50%{box-shadow:inset 3px 0 #ff5e4899,0 0 30px #ff404038}}@keyframes ultimateReadyPulse{50%{box-shadow:inset 0 0 0 1px #ffffff14,0 18px 42px #0000004d,0 0 42px #f7d45b61}}.combat-overlay{z-index:4;pointer-events:none;text-align:center;text-transform:uppercase;place-content:center;gap:8px;display:grid;position:absolute;inset:0}.combat-overlay[hidden]{display:none}.combat-overlay strong{color:#f7d45b;text-shadow:0 0 18px #f6c84f7a,0 8px 38px #000000b8;font-size:clamp(72px,15vw,190px);font-weight:1000;line-height:.82}.combat-overlay span{color:#edf6ffdb;text-shadow:0 4px 24px #000000c7;font-size:clamp(13px,2vw,24px);font-weight:1000}.combat-overlay[data-mode=countdown] strong{animation:.28s ease-out overlayPop}.match-intro{z-index:28;pointer-events:none;background:linear-gradient(90deg,#040c12eb,#040a0e94 45%,#070a0c94 55%,#120907eb),#03080cc2;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;padding:clamp(28px,5vw,72px);display:grid;position:absolute;inset:0}.match-intro[hidden]{display:none}.match-card{background:#040a0f9e;border:1px solid #90dcff40;grid-template-rows:auto minmax(180px,1fr) auto;min-width:0;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0d,0 20px 60px #00000052}.match-card.local{border-color:#7af8ff57}.match-card.remote{border-color:#ff765c6b}.match-card-head{gap:8px;min-width:0;padding:18px 22px 0;display:grid}.match-card-head span{color:#a6e1ffc7;letter-spacing:.14em;font-size:11px;font-weight:1000}.match-card.remote .match-card-head span{color:#ffc28ed1}.match-card-head strong{color:#edf6ff;text-overflow:ellipsis;text-shadow:0 8px 34px #000000ad;white-space:nowrap;font-size:clamp(28px,4.3vw,64px);font-weight:1000;line-height:.95;overflow:hidden}.match-card canvas{width:100%;height:100%;min-height:180px}.match-card dl{background:#90dcff1f;border-top:1px solid #90dcff29;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;display:grid}.match-card dl div{background:#040a0fc7;gap:5px;min-width:0;padding:13px 14px;display:grid}.match-card dt{color:#a6e1ffad;font-size:10px;font-weight:1000}.match-card dd{color:#edf6ff;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(13px,1.5vw,18px);font-weight:1000;overflow:hidden}.match-vs{color:#f7d45b;text-shadow:0 0 18px #f6c84f7a,0 8px 38px #000000b8;align-self:center;padding:0 clamp(14px,2.5vw,44px);font-size:clamp(52px,9vw,138px);font-weight:1000;line-height:1}.combat-overlay[data-result=win] strong{color:#f7d45b}.combat-overlay[data-result=loss] strong{color:#ff6858}.combat-overlay[data-result=draw] strong{color:#7af8ff}@keyframes overlayPop{0%{opacity:0;transform:scale(.74)}to{opacity:1;transform:scale(1)}}.overheat-alert{z-index:3;color:#ffe9c7;opacity:0;text-align:center;text-transform:uppercase;pointer-events:none;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);background:linear-gradient(90deg,#ff554838,#f7d45b14),#060a0cb8;border:1px solid #ff5c489e;min-width:260px;padding:10px 18px;transition:opacity .12s,transform .12s;display:grid;position:absolute;top:calc(50% + 92px);bottom:auto;left:50%;transform:translate(-50%)translateY(8px);box-shadow:inset 0 0 0 1px #ffffff0d,0 0 34px #ff564857}.overheat-alert strong{color:#ffdc80;letter-spacing:0;font-size:15px;line-height:1}.overheat-alert span{color:#ffeaccd1;font-size:10px;font-weight:900}body.overheated .overheat-alert{opacity:1;animation:.7s steps(2,end) infinite heatPulse;transform:translate(-50%)translateY(0)}body.overheated .ring,body.overheated .cross,body.overheated .center-reticle:after{background:#ff5c48b8;border-color:#ff5c48a8;box-shadow:0 0 16px #ff5c4870}@keyframes heatPulse{50%{opacity:.52}}.enemy-bars{pointer-events:none;position:absolute;inset:0}.enemy-health{opacity:0;width:58px;height:10px;transition:opacity .12s;position:absolute;transform:translate(-50%,-50%)}.enemy-health:before{color:#edf6ffdb;content:attr(data-name);opacity:0;text-align:center;text-shadow:0 1px 4px #000c;font-size:9px;font-weight:900;transition:opacity .12s;position:absolute;inset:-13px -24px auto}.enemy-health span{background:#050c129e;border:1px solid #ffd85c70;position:absolute;inset:2px 0}.enemy-health b{transform-origin:0;background:linear-gradient(90deg,#ff5c4f,#ffd45a);width:100%;position:absolute;inset:0 auto 0 0}.enemy-health.locked span{border-color:#ffd85ceb;box-shadow:0 0 14px #ffd85c47}.enemy-health.locked:before{opacity:1}.banner{text-align:left;pointer-events:auto;background:linear-gradient(90deg,#03080c8a 0 22%,#03080c14 43%,#03080c7a 100%),linear-gradient(#03080c6b,#03080c0a 44%,#03080c8a);border:0;gap:0;width:100vw;height:100vh;max-height:none;padding:22px;display:grid;position:absolute;inset:0;overflow:hidden;transform:none;box-shadow:inset 0 0 0 1px #90dcff14}#gamepadCursor{z-index:10000;pointer-events:none;background:#040a0f2e;border:2px solid #7af8fff2;border-radius:50%;width:20px;height:20px;position:fixed;top:50vh;left:50vw;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #040a0f80,0 0 18px #7af8ff6b}#gamepadCursor:after{content:"";background:#7af8ffe0;border-radius:50%;position:absolute;inset:6px;box-shadow:0 0 10px #7af8ff94}#gamepadCursor.is-hovering{border-color:#f7d45bfa;box-shadow:0 0 0 2px #040a0f8f,0 0 22px #f7d45b7a}#gamepadCursor.is-hovering:after{background:#f7d45bf0;box-shadow:0 0 12px #f7d45bad}.banner[hidden]{display:none}.banner>strong{color:#f7d45b;letter-spacing:0;font-size:clamp(30px,4.4vw,52px);line-height:.9}.banner:not([data-step=auth])>strong,.banner:not([data-step=auth])>span,.banner:not([data-step=auth])>.menu-eyebrow,.banner:not([data-step=auth])>.account-bar,.banner>strong:empty,.banner>span:empty{display:none}.banner span{color:#edf6ffc7;text-transform:uppercase;font-size:13px;font-weight:800}.banner[data-step=home],.banner[data-step=result],.banner[data-step=controls],.banner[data-step=enemy],.banner[data-step=pvp-mode],.banner[data-step=pvp]{width:100vw}.banner[data-step=auth]{place-content:center}.menu-eyebrow{color:#a6e1ffd1;text-transform:uppercase;font-size:11px;font-weight:900}.main-menu{gap:10px;display:grid}.main-menu[hidden],.lobby-shell[hidden],.sortie-layout[hidden],.menu-section[hidden],.auth-panel[hidden],.account-bar[hidden],.weapon-preview-panel[hidden],.menu-actions[hidden],.menu-actions button[hidden],.pvp-actions button[hidden],.pvp-fields[hidden],.pvp-fields label[hidden]{display:none}.lobby-shell{pointer-events:none;display:block;position:absolute;inset:22px}.lobby-top{display:contents}.banner[data-step=assemble] .lobby-left-panel,.banner[data-step=weapon] .lobby-left-panel,.banner[data-step=map] .lobby-left-panel,.banner[data-step=controls] .lobby-left-panel{display:none}.lobby-user{clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,15px 100%,0 calc(100% - 15px));color:#edf6ffe6;pointer-events:auto;background:linear-gradient(90deg,#0d222bd1,#08141a70),linear-gradient(135deg,#63e8ff3d,#0000 42%);border:1px solid #90dcff57;flex-direction:column;align-items:flex-start;gap:4px;width:min(360px,30vw);min-width:250px;padding:12px 18px 13px;font-size:13px;font-weight:900;display:inline-flex;position:absolute;top:0;left:0;box-shadow:0 18px 42px #00000047,inset 4px 0 #63e8ff94}.lobby-user:after{content:"";background:linear-gradient(90deg,#0000,#f6c84fc7);width:42px;height:2px;position:absolute;bottom:9px;right:16px}.lobby-user b{color:#f7d45b;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.lobby-top-actions{pointer-events:auto;grid-template-columns:repeat(5,minmax(74px,1fr));align-items:stretch;gap:6px;width:min(520px,100vw - 44px);display:grid;position:absolute;bottom:0;right:0}.lobby-top button,.friend-actions button,.history-head button,.history-pager button,.history-detail-top button,.ranking-head button,.ranking-pager button,.loadout-edit-button{color:#edf6ff;cursor:pointer;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));background:linear-gradient(135deg,#63e8ff29,#0000 42%),#08161da8;border:1px solid #90dcff4d;min-height:38px;font-weight:900}.lobby-top-actions button{min-height:40px;padding:0 9px;font-size:11px}.friend-actions button:disabled,.ranking-pager button:disabled,.history-pager button:disabled{cursor:not-allowed;opacity:.45}.lobby-left-panel,.lobby-right-panel{pointer-events:auto;background:#08181f94;border:1px solid #a3e8ff4d;gap:10px;padding:12px;display:grid;position:absolute;box-shadow:0 18px 42px #00000038}.lobby-left-panel{width:min(340px,30vw);bottom:0;left:0}.lobby-right-panel{clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));background:linear-gradient(90deg,#08181fa3,#08181f6b),linear-gradient(135deg,#f6c84f29,#0000 45%);width:min(330px,29vw);top:50%;right:0;transform:translateY(-50%)}.banner[data-step=assemble] .lobby-right-panel,.banner[data-step=weapon] .lobby-right-panel{display:none}.lobby-mode-field,.friend-lobby-panel label{gap:6px;display:grid}.lobby-mode-field span,.friend-lobby-panel span,.lobby-right-panel>span{color:#a6e1ffc7;font-size:10px;font-weight:900}.lobby-mode-field select,.friend-lobby-panel input{color:#edf6ff;min-width:0;height:44px;font:inherit;background:#040a0fbd;border:1px solid #90dcff4d;padding:0 10px;font-size:15px;font-weight:900}.lobby-mode-summary,.lobby-status{color:#edf6ffe6;background:#08181f57;border:1px solid #90dcff29;min-height:34px;padding:9px 10px;font-size:11px;font-weight:900}.ready-button{color:#f7d45b;cursor:pointer;background:linear-gradient(90deg,#f6c84f38,#63e8ff1a);border:1px solid #f6c84fb8;min-height:58px;font-size:18px;font-weight:1000}.friend-lobby-panel{gap:9px;display:grid}.friend-lobby-panel.room-active{z-index:43;pointer-events:auto;background:linear-gradient(135deg,#63e8ff1f,#0000 38%),linear-gradient(#08141bfa,#040a0ff5);border:1px solid #90dcff47;gap:12px;width:min(860px,100vw - 44px);max-height:min(720px,100vh - 44px);padding:16px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 28px 92px #000000a3,inset 0 0 0 1px #f6c84f14}.friend-room-created{background:#f6c84f1a;border:1px solid #f6c84f57;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.friend-room-created[hidden],.friend-room-members[hidden],.friend-lobby-panel[hidden],.friend-invite-panel[hidden],.friend-incoming-list[hidden],.ranking-panel[hidden],.history-panel[hidden],.history-detail-overlay[hidden]{display:none}.friend-room-created b{color:#f7d45b;letter-spacing:0;font-size:18px}.friend-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:7px;display:grid}.friend-lobby-panel.room-active .friend-actions{grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;padding-top:2px}.friend-actions button[data-friend-action]{letter-spacing:0;text-shadow:0 1px #00000073;min-height:42px;padding:0 10px;font-size:12px}.friend-actions button[data-friend-action=create],.friend-actions button[data-friend-action=join]{color:#eafcff;background:linear-gradient(135deg,#7af8ff3d,#0000 44%),linear-gradient(#0c2630eb,#040d12db);border-color:#7af8ff94}.friend-actions button[data-friend-action=spectate],.friend-actions button[data-friend-action=invite]{color:#edf6ffeb;background:linear-gradient(135deg,#90dcff21,#0000 44%),#040a0fb8;border-color:#90dcff57}.friend-actions button[data-friend-action=ready]{color:#dfffea;background:linear-gradient(135deg,#5beba13d,#0000 46%),linear-gradient(#082d22eb,#040f0ed6);border-color:#5beba194}.friend-actions button[data-friend-action=ready].is-ready{color:#fff4b1;background:linear-gradient(135deg,#f6c84f52,#0000 48%),linear-gradient(#3a2a0aeb,#100c05db);border-color:#f6c84fbd}.friend-actions button[data-friend-action=start]{color:#ffe68a;background:linear-gradient(135deg,#ff8d3b47,#0000 44%),linear-gradient(#4a2d08f0,#110c04e6);border-color:#f6c84fc7;min-height:50px;font-size:15px}.friend-actions button[data-friend-action=leave]{color:#ffd8d8;background:linear-gradient(135deg,#ff69692e,#0000 46%),linear-gradient(#300c10e6,#0f0507d1);border-color:#ff69698f}.friend-lobby-panel.room-active .friend-actions button[data-friend-action=join]{grid-column:span 4}.friend-lobby-panel.room-active .friend-actions button[data-friend-action=spectate],.friend-lobby-panel.room-active .friend-actions button[data-friend-action=ready]{grid-column:span 3}.friend-lobby-panel.room-active .friend-actions button[data-friend-action=invite]{grid-column:span 2}.friend-lobby-panel.room-active .friend-actions button[data-friend-action=start]{grid-column:span 8}.friend-lobby-panel.room-active .friend-actions button[data-friend-action=leave]{grid-column:span 4}.friend-invite-panel{background:#040a0f80;border:1px solid #90dcff38;gap:8px;padding:9px;display:grid}.friend-manage-popover,.ranking-popover,.history-popover{z-index:44;pointer-events:auto;background:linear-gradient(135deg,#63e8ff1a,#0000 36%),linear-gradient(#08141bfa,#040a0ff5);width:min(760px,100vw - 44px);max-height:min(720px,100vh - 44px);position:fixed;inset:50% auto auto 50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 28px 90px #0000009e,inset 0 0 0 1px #f6c84f14}.friend-manage-popover:before,.ranking-popover:before,.history-popover:before{content:"";z-index:-1;background:#0000007a;position:fixed;inset:-100vh -100vw}.history-popover{width:min(980px,100vw - 44px)}.friend-manage-popover{width:min(680px,100vw - 44px)}.ranking-panel,.history-panel{border:1px solid #90dcff38;gap:8px;padding:14px;display:grid}.friend-manage-popover{border-color:#90dcff38;padding:14px}.history-head,.ranking-head,.friend-invite-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.history-head span,.ranking-head span,.ranking-filter span{color:#a6e1ffc7;font-size:10px;font-weight:900}.history-head button,.ranking-head button,.friend-invite-head button{min-height:30px;padding:0 10px}.history-list{gap:7px;min-height:0;max-height:min(510px,100vh - 210px);padding-right:2px;display:grid;overflow:auto}.history-row{cursor:pointer;background:#040a0f6b;border:1px solid #90dcff29;border-left-width:4px;grid-template-columns:74px minmax(0,1fr) auto;align-items:start;gap:9px;min-height:88px;padding:8px;display:grid}.history-row:hover{border-color:#f6c84f6b}.history-row.result-win{background:#2886ff21;border-left-color:#5eb7ff}.history-row.result-loss{background:#ff405021;border-left-color:#ff5e6b}.history-row.result-draw{background:#edf6ff14;border-left-color:#edf6ffe6}.history-result{gap:5px;display:grid}.history-result b{color:#edf6ff;font-size:13px;line-height:1.1}.history-result small,.history-time{color:#a6e1ffb8;font-size:10px;font-weight:900}.history-main{gap:4px;min-width:0;display:grid}.history-main b,.history-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-main b{color:#edf6ff;font-size:12px}.history-main small{color:#edf6ffb8;font-size:10px;font-weight:900}.history-time{white-space:nowrap}.history-delta.positive{color:#5eb7ff}.history-delta.negative{color:#ff5e6b}.history-delta.neutral{color:#edf6ffe0}.history-pager{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.history-pager button{min-height:32px}.history-pager span{color:#edf6ffc7;white-space:nowrap;font-size:10px;font-weight:900}.history-detail-overlay{z-index:72;padding:max(16px, var(--safe-top)) max(16px, var(--safe-right)) max(16px, var(--safe-bottom)) max(16px, var(--safe-left));pointer-events:auto;background:#00000085;place-items:center;display:grid;position:fixed;inset:0}.history-detail-shell{width:min(980px,100%);max-height:min(720px, calc(100vh - 32px - var(--safe-top) - var(--safe-bottom)));background:linear-gradient(90deg,#050e14f5,#0d151be6 50%,#050e14f5),#040a0ff5;border:1px solid #90dcff42;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:14px;display:grid;box-shadow:0 22px 70px #00000094,inset 0 0 0 1px #f6c84f14}.history-detail-overlay[data-result=win] .history-detail-shell{border-color:#5eb7ff85}.history-detail-overlay[data-result=loss] .history-detail-shell{border-color:#ff5e6b85}.history-detail-top{justify-content:space-between;align-items:start;gap:12px;display:flex}.history-detail-actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.history-detail-actions button{color:#edf6ffdb;cursor:pointer;background:#040a0f94;border:1px solid #90dcff42;min-height:34px;font-size:11px;font-weight:1000}.history-detail-actions #historyReplayButton{color:#fff0a8;background:#f6c84f24;border-color:#f6c84f8f}.history-detail-actions #historyReplayButton:disabled{color:#edf6ff70;cursor:default;background:#040a0f61;border-color:#90dcff2e}.history-detail-top>div:first-child{gap:4px;min-width:0;display:grid}.history-detail-top span{color:#a6e1ffc7;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:900;overflow:hidden}.history-detail-top strong{color:#f7d45b;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(20px,3vw,34px);line-height:.96;overflow:hidden}.history-detail-top button{min-width:72px;min-height:34px;padding:0 12px}.history-detail-stage{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:12px;min-height:0;display:grid}.history-detail-side{background:#040a0f7a;border:1px solid #90dcff2e;grid-template-rows:auto minmax(180px,1fr) auto;min-width:0;min-height:0;padding:10px;display:grid}.history-detail-side.local{border-color:#5eb7ff47}.history-detail-side.remote{border-color:#ff8f9a47}.history-detail-name{justify-content:space-between;align-items:center;gap:8px;display:flex}.history-detail-name span{color:#a6e1ffb8;font-size:10px;font-weight:900}.history-detail-name strong{color:#edf6ff;text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.history-detail-side canvas{width:100%;height:100%;min-height:180px;display:block}.history-detail-side dl{gap:6px;margin:0;display:grid}.history-detail-side dl div{border-top:1px solid #90dcff1f;justify-content:space-between;align-items:center;gap:10px;min-height:22px;display:flex}.history-detail-side dt,.history-detail-side dd{margin:0;font-size:10px;font-weight:900}.history-detail-side dt{color:#a6e1ffb8}.history-detail-side dd{color:#edf6ffe6;text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-detail-vs{color:#f7d45b;text-align:center;background:#f6c84f14;border:1px solid #f6c84f52;align-self:center;min-width:104px;padding:10px 8px;font-size:13px;font-weight:1000;line-height:1.35}.history-detail-vs.positive{color:#5eb7ff;border-color:#5eb7ff7a}.history-detail-vs.negative{color:#ff5e6b;border-color:#ff5e6b7a}.history-detail-vs.neutral{color:#edf6ffe6;border-color:#edf6ff52}.history-detail-meta{color:#edf6ffc7;background:#040a0f70;border:1px solid #90dcff24;min-height:32px;padding:8px 10px;font-size:10px;font-weight:900}.ranking-filter{gap:6px;display:grid}.ranking-filter select{color:#edf6ff;min-width:0;height:38px;font:inherit;background:#040a0fbd;border:1px solid #90dcff4d;padding:0 10px;font-size:13px;font-weight:900}.ranking-self{background:#f6c84f1a;border:1px solid #f6c84f57;gap:3px;min-height:52px;padding:9px 10px;display:grid}.ranking-self b{color:#f7d45b;font-size:18px;line-height:1.1}.ranking-self small{color:#edf6ffd1;font-size:10px;font-weight:900}.ranking-list{gap:6px;min-height:0;max-height:min(430px,100vh - 290px);padding-right:2px;display:grid;overflow:auto}.ranking-row{background:#040a0f6b;border:1px solid #90dcff29;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:42px;padding:7px 8px;display:grid}.ranking-row.is-self{background:#f6c84f1f;border-color:#f6c84f7a}.ranking-rank{color:#f7d45b;font-size:12px;font-weight:1000}.ranking-player{min-width:0}.ranking-player b,.ranking-player small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ranking-player b{color:#edf6ff;font-size:12px}.ranking-player small{color:#a6e1ffb8;margin-top:3px;font-size:10px;font-weight:900}.ranking-rate{color:#edf6ff;white-space:nowrap;font-size:12px;font-weight:1000}.ranking-pager{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.ranking-pager button{min-height:32px}.ranking-pager button:disabled{cursor:not-allowed;opacity:.45}.ranking-pager span{color:#edf6ffc7;white-space:nowrap;font-size:10px;font-weight:900}.friend-social-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.friend-status{color:#edf6ffc7;background:#040a0f6b;border:1px solid #90dcff29;min-height:28px;padding:7px 8px;font-size:10px;font-weight:900}.friend-list,.friend-incoming-list{gap:6px;display:grid}.friend-incoming-list{z-index:58;pointer-events:auto;width:min(430px,100vw - 32px);position:fixed;top:86px;right:24px}.friend-invite-toast{background:linear-gradient(135deg,#f6c84f29,#0000 48%),#050c11f0;border-color:#f6c84f6b;min-height:82px;padding:12px;box-shadow:0 18px 46px #0000006b}.friend-invite-toast b{color:#f7d45b;font-size:15px}.friend-invite-toast-actions{gap:7px;display:flex}.friend-manage-popover .friend-list{min-height:0;max-height:min(420px,100vh - 300px);padding-right:2px;overflow:auto}.friend-row{background:#040a0f6b;border:1px solid #90dcff29;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:42px;padding:7px 8px;display:grid}.friend-row b,.friend-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.friend-row b{color:#edf6ff;font-size:12px;display:block}.friend-row small{color:#a6e1ffb8;margin-top:3px;font-size:10px;font-weight:900;display:block}.friend-row button{color:#edf6ff;cursor:pointer;white-space:nowrap;background:#040a0fb8;border:1px solid #90dcff4d;min-height:32px;padding:0 10px;font-weight:900}.friend-room-members{background:#040a0f6b;border:1px solid #90dcff33;gap:6px;padding:9px 10px;display:grid}.friend-lobby-panel.room-active .friend-room-members{grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);gap:10px;padding:12px}.friend-room-members div{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:8px;min-height:22px;display:grid}.friend-lobby-panel.room-active .friend-room-members div{background:#040a0f70;border:1px solid #90dcff29;min-height:54px;padding:10px}.friend-lobby-panel.room-active .friend-room-members div:nth-child(3){grid-area:1/2/span 2;align-content:start}.friend-room-members b{color:#edf6ff;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;overflow:hidden}.friend-lobby-panel.room-active .friend-room-members b{white-space:normal;font-size:14px}.lobby-right-panel strong{color:#f7d45b;font-size:19px;line-height:1.12}.lobby-right-panel dl{gap:8px;margin:0;display:grid}.lobby-right-panel dl div{border-top:1px solid #90dcff24;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.lobby-right-panel dt,.lobby-right-panel dd{margin:0;font-size:11px;font-weight:900}.lobby-right-panel dt{color:#a6e1ffc7}.lobby-right-panel dd{color:#edf6ffeb;text-align:right}.loadout-edit-button{width:100%;min-height:40px}.lobby-tabs{clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,12px 100%,0 50%);pointer-events:auto;background:#03080cb8;border:1px solid #90dcff4d;grid-template-columns:repeat(3,minmax(112px,154px));gap:0;display:grid;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 16px 38px #00000047,inset 0 -1px #f6c84f1f}.lobby-tabs button{color:#edf6ff;cursor:pointer;clip-path:none;background:linear-gradient(#ffffff12,#0000 45%),#040a0fb8;border:0;border-right:1px solid #90dcff33;min-height:46px;font-size:12px;font-weight:900;position:relative}.lobby-tabs button:last-child{border-right:0}.lobby-tabs button:after{content:"";background:#63e8ff00;height:2px;transition:background .14s,box-shadow .14s;position:absolute;bottom:7px;left:18%;right:18%}.lobby-tabs button:hover,.lobby-tabs button.selected,.lobby-top button:hover,.loadout-edit-button:hover,.friend-actions button:hover,.history-head button:hover,.history-pager button:hover,.history-detail-top button:hover,.ranking-head button:hover,.ranking-pager button:hover,.ready-button:hover{color:#f7d45b;border-color:#f6c84fb8}.lobby-tabs button:hover,.lobby-tabs button.selected{background:linear-gradient(#f6c84f2e,#0000 48%),#09141ae6}.lobby-tabs button:hover:after,.lobby-tabs button.selected:after{background:#f6c84fdb;box-shadow:0 0 14px #f6c84f85}.account-bar{color:#edf6ffdb;background:#040a0f70;border:1px solid #90dcff33;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;font-size:11px;font-weight:900;display:flex}.account-bar button{color:#edf6ff;min-height:30px;font:inherit;cursor:pointer;background:#040a0f9e;border:1px solid #90dcff42;font-size:10px;font-weight:900}.auth-panel{background:#07151d94;border:1px solid #90dcff38;gap:10px;padding:12px;display:grid}.auth-mode{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.auth-mode button{color:#edf6ff;min-height:40px;font:inherit;cursor:pointer;background:#040a0f94;border:1px solid #90dcff42;font-size:12px;font-weight:900}.auth-mode button:hover,.auth-mode button.selected{color:#f7d45b;background:#f6c84f1f;border-color:#f6c84fad}.auth-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.auth-fields label{text-align:left;gap:5px;display:grid}.auth-fields span{color:#a6e1ffc7;font-size:10px;font-weight:900}.auth-fields input{color:#edf6ff;min-width:0;height:42px;font:inherit;background:#040a0fb8;border:1px solid #90dcff3d;padding:0 10px;font-size:14px;font-weight:800}.auth-status{color:#edf6ffd1;text-align:left;background:#040a0f75;border:1px solid #90dcff2e;min-height:30px;padding:8px 10px;font-size:11px;font-weight:900}.menu-option{color:#edf6ff;cursor:pointer;text-align:left;background:#040a0f94;border:1px solid #90dcff42;gap:4px;min-height:74px;padding:14px 16px;display:grid}.menu-option:hover{background:#f6c84f1f;border-color:#f6c84fb8}.menu-option span{color:#f7d45b;text-transform:none;font-size:18px;font-weight:900}.menu-option small{color:#edf6ffc7;font-size:11px;font-weight:800}.sortie-layout{pointer-events:auto;grid-template-columns:1fr;align-items:start;gap:12px;width:min(540px,100vw - 44px);display:grid;position:absolute;top:92px;bottom:82px;left:22px;overflow:auto}.sortie-left{align-content:start;gap:8px;display:grid}.enemy-config,.pvp-config,.pvp-mode-config,.preset-config,.assemble-config,.frame-config,.map-config,.shield-config,.weapon-config,.control-guide,.weapon-preview-panel{background:#07151d94;border:1px solid #90dcff38;gap:8px;padding:10px;display:grid}.enemy-config label,.pvp-config>label,.pvp-mode-config>label,.preset-config>label,.assemble-config>label,.frame-config>label,.map-config>label,.shield-config>label,.weapon-config>label,.control-guide>label{color:#edf6ffdb;justify-content:space-between;align-items:center;font-size:11px;font-weight:900;display:flex}.pvp-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.pvp-actions.single{grid-template-columns:1fr}.pvp-actions button{color:#edf6ff;cursor:pointer;background:#040a0f9e;border:1px solid #90dcff47;min-height:46px;font-weight:900}.pvp-actions button:hover{color:#f7d45b;border-color:#f6c84fad}.pvp-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pvp-fields label{text-align:left;gap:5px;display:grid}.pvp-fields span{color:#a6e1ffc7;font-size:10px;font-weight:900}.pvp-fields input{color:#edf6ff;min-width:0;height:40px;font:inherit;text-transform:uppercase;background:#040a0fb8;border:1px solid #90dcff3d;padding:0 10px;font-size:14px;font-weight:800}#playerNameInput{text-transform:none}.pvp-fields input[readonly]{color:#edf6ffb3;cursor:default}.pvp-status{color:#edf6ffd1;text-align:left;background:#040a0f75;border:1px solid #90dcff2e;min-height:34px;padding:8px 10px;font-size:11px;font-weight:900}.preset-actions{grid-template-columns:minmax(0,1fr) 76px;gap:8px;display:grid}.preset-actions input,.preset-actions button,.preset-apply,.preset-delete{color:#edf6ff;font:inherit;background:#040a0f9e;border:1px solid #90dcff3d;font-weight:900}.preset-actions input{min-width:0;height:40px;padding:0 10px;font-size:13px}.preset-actions button,.preset-apply,.preset-delete{cursor:pointer}.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.preset-card{grid-template-columns:minmax(0,1fr) 52px;gap:6px;display:grid}.preset-apply{text-align:left;align-content:center;gap:3px;min-height:50px;padding:8px 10px;display:grid}.preset-apply span{color:#edf6ff;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.preset-apply small,.preset-empty{color:#a6e1ffb3;font-size:9px;font-weight:800}.preset-delete{color:#edf6ffc2;min-height:50px;padding:0 6px;font-size:10px}.preset-empty{background:#040a0f5c;border:1px dashed #90dcff33;grid-column:1/-1;padding:8px 10px}.preset-actions button:hover,.preset-card.selected .preset-apply,.preset-apply:hover,.preset-delete:hover{background:#f6c84f1f;border-color:#f6c84fad}.preset-card.selected .preset-apply span{color:#f7d45b}.audio-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.audio-settings label{background:#040a0f6b;border:1px solid #90dcff29;grid-template-columns:34px minmax(0,1fr) 30px;align-items:center;gap:8px;min-height:40px;padding:7px 8px;display:grid}.audio-settings span,.audio-settings b{color:#edf6ffdb;font-size:10px;font-weight:900}.audio-settings b{text-align:right}.audio-settings input{accent-color:#f7d45b;min-width:0}.control-grid{text-align:left;grid-template-columns:minmax(64px,.42fr) minmax(0,1fr);gap:4px 10px;display:grid}.control-grid span{color:#a6e1ffc7;font-size:10px;font-weight:900}.control-grid b{color:#edf6ffeb;font-size:10px;font-weight:900}.part-tabs,.part-grid,.frame-grid,.map-grid,.pvp-mode-grid,.shield-grid,.weapon-grid{gap:7px;display:grid}.part-tabs{grid-template-columns:repeat(6,minmax(0,1fr))}.part-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.frame-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.map-grid,.pvp-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shield-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.weapon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.part-tab,.part-card,.frame-card,.map-card,.pvp-mode-card,.shield-card,.weapon-card{isolation:isolate;cursor:pointer;text-align:left;background:#040a0f85;border:1px solid #90dcff38;align-content:center;gap:3px;min-height:50px;padding:9px 10px;display:grid;position:relative;overflow:hidden}.part-tab>*,.part-card>*,.frame-card>*,.map-card>*,.pvp-mode-card>*,.shield-card>*,.weapon-card>*{z-index:1;position:relative}.part-tab{text-align:center;min-height:38px;padding:7px 8px}.assemble-config{grid-template-columns:132px minmax(0,1fr)}.assemble-config>label{grid-column:1/-1}.assemble-config .part-tabs{grid-template-columns:1fr;align-content:start}.assemble-config .part-grid{grid-template-columns:1fr}.part-card{min-height:78px}.frame-card,.map-card{min-height:46px}.pvp-mode-card{min-height:62px}.shield-card{min-height:54px}.part-card input,.frame-card input,.map-card input,.pvp-mode-card input,.shield-card input,.weapon-card input{opacity:0;pointer-events:none;position:absolute}.part-tab,.part-card span,.frame-card span,.map-card span,.pvp-mode-card span,.shield-card span,.weapon-card span{color:#edf6ff;font-size:11px;font-weight:900}.part-card small,.frame-card small,.map-card small,.pvp-mode-card small,.shield-card small,.weapon-card small{color:#a6e1ffb3;font-size:9px;font-weight:800}.part-tab:hover,.part-card:hover,.frame-card:hover,.map-card:hover,.pvp-mode-card:hover,.shield-card:hover,.weapon-card:hover{background:#4de2ff17;border-color:#7af8ff8c}.part-tab.selected,.part-card.selected,.frame-card.selected,.map-card.selected,.pvp-mode-card.selected,.shield-card.selected,.weapon-card.selected{background:linear-gradient(90deg,#f7d45b42,#f7d45b14 52%,#040a0f94),#f6c84f24;border-color:#f7d45bfa;box-shadow:inset 0 0 0 1px #fff4b147,0 0 18px #f7d45b33}.part-tab.selected:before,.part-card.selected:before,.frame-card.selected:before,.map-card.selected:before,.pvp-mode-card.selected:before,.shield-card.selected:before,.weapon-card.selected:before{content:"";z-index:0;background:linear-gradient(#fff4b1,#f7d45b 55%,#ff8d3b);width:5px;position:absolute;inset:0 auto 0 0;box-shadow:0 0 18px #f7d45b9e}.menu-option.controller-focus,.deploy-button.controller-focus,.auth-mode button.controller-focus,.account-bar button.controller-focus,.lobby-mode-field select.controller-focus,.ranking-filter select.controller-focus,.friend-lobby-panel input.controller-focus,.friend-invite-panel input.controller-focus,.lobby-top button.controller-focus,.friend-actions button.controller-focus,.history-head button.controller-focus,.history-pager button.controller-focus,.history-detail-top button.controller-focus,.history-row.controller-focus,.ranking-head button.controller-focus,.ranking-pager button.controller-focus,.friend-invite-head button.controller-focus,.friend-row button.controller-focus,.ready-button.controller-focus,.loadout-edit-button.controller-focus,.lobby-tabs button.controller-focus,.pvp-actions button.controller-focus,.preset-actions input.controller-focus,.preset-actions button.controller-focus,.audio-settings input.controller-focus,.preset-apply.controller-focus,.preset-delete.controller-focus,.part-tab.controller-focus,.part-card.controller-focus,.frame-card.controller-focus,.map-card.controller-focus,.pvp-mode-card.controller-focus,.shield-card.controller-focus,.weapon-card.controller-focus{outline-offset:2px;border-color:#7af8ffeb;outline:2px solid #7af8ffc7;box-shadow:0 0 0 2px #7af8ff3d,0 0 24px #7af8ff3d}.part-tab.controller-focus:not(.selected),.part-card.controller-focus:not(.selected),.frame-card.controller-focus:not(.selected),.map-card.controller-focus:not(.selected),.pvp-mode-card.controller-focus:not(.selected),.shield-card.controller-focus:not(.selected),.weapon-card.controller-focus:not(.selected){background:linear-gradient(90deg,#4de2ff2e,#4de2ff0d),#040a0f94}.part-tab.selected.controller-focus,.part-card.selected.controller-focus,.frame-card.selected.controller-focus,.map-card.selected.controller-focus,.pvp-mode-card.selected.controller-focus,.shield-card.selected.controller-focus,.weapon-card.selected.controller-focus{box-shadow:inset 0 0 0 1px #fff4b152,0 0 0 2px #7af8ff47,0 0 26px #f7d45b40,0 0 24px #7af8ff38}.part-tab.selected,.part-card.selected span,.frame-card.selected span,.map-card.selected span,.pvp-mode-card.selected span,.shield-card.selected span,.weapon-card.selected span{color:#f7d45b}.weapon-preview-panel{text-align:left;pointer-events:auto;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 14px));background:linear-gradient(135deg,#63e8ff24,#0000 42%),linear-gradient(#091b23d1,#040c11bd);grid-template-rows:auto;width:min(380px,100vw - 44px);min-height:0;max-height:calc(100vh - 164px);padding:14px;position:fixed;top:auto;bottom:92px;right:22px;box-shadow:inset 0 0 0 1px #ffffff0a,0 20px 48px #00000047}#weaponPreview{display:none}.weapon-detail{gap:10px;display:grid}.weapon-detail strong{color:#f7d45b;font-size:20px;line-height:1.1}.weapon-detail p{color:#edf6ffd6;min-height:0;margin:0;font-size:13px;font-weight:700;line-height:1.45}.weapon-stats{gap:5px;display:grid}.weapon-stats div{grid-template-columns:54px 1fr;align-items:center;gap:8px;display:grid}.weapon-stats span{color:#a6e1ffd1;font-size:10px;font-weight:900}.weapon-stats i{background:#ffffff14;border:1px solid #def6ff2e;height:9px;position:relative;overflow:hidden}.weapon-stats b{transform-origin:0;background:linear-gradient(90deg,#4de2ff,#f7d45b);width:100%;position:absolute;inset:0 auto 0 0;transform:scaleX(.5)}.enemy-stepper{grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;display:grid}.enemy-stepper button,.deploy-button{color:#edf6ff;cursor:pointer;background:#040a0f9e;border:1px solid #90dcff47;min-height:42px;font-weight:900}.menu-actions{z-index:8;pointer-events:auto;grid-template-columns:92px 150px;justify-content:end;gap:8px;width:min(540px,100vw - 44px);display:grid;position:absolute;bottom:22px;left:22px}.menu-actions.single{grid-template-columns:160px}.menu-actions .deploy-button{min-height:34px;padding:6px 10px;font-size:11px;line-height:1}.deploy-button.secondary{color:#edf6ffc7;background:#040a0f75}.enemy-stepper button:hover,.deploy-button:hover{color:#f7d45b;border-color:#f6c84fad}#enemyCount{color:#f7d45b;font-size:24px;font-weight:900}#enemyRange{accent-color:#f7d45b;width:100%}.deploy-button{color:#f7d45b;letter-spacing:0;background:#f6c84f21;border-color:#f6c84f94;min-height:50px}body.menu-open .readout,body.menu-open .combat-clock,body.menu-open .center-reticle,body.menu-open .overheat-alert,body.menu-open .enemy-bars{opacity:0}#touchControls{z-index:8;padding:0 max(12px, var(--safe-right)) calc(12px + var(--safe-bottom)) max(12px, var(--safe-left));pointer-events:none;grid-template-columns:auto minmax(70px,1fr) auto;align-items:end;gap:12px;transition:opacity .14s;display:none;position:fixed;inset:auto 0 0}body.menu-open #touchControls{opacity:0;visibility:hidden}.stick,.look-pad{pointer-events:auto;touch-action:none;background:#040a0f6b;border:1px solid #90dcff47;border-radius:50%;width:104px;height:104px;position:relative;box-shadow:inset 0 0 0 1px #ffffff09,0 10px 32px #00000029}.stick span,.look-pad span{background:#ffdc582e;border:1px solid #ffdc58a8;border-radius:50%;width:42px;height:42px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.look-pad{background:radial-gradient(circle,#63e8ff1f,#0000 58%),#040a0f57;border-style:dashed;justify-self:end;width:92px;height:92px}.look-pad span{background:#7af8ff24;border-color:#7af8ff94;width:32px;height:32px}.look-pad b{color:#edf6ffad;font-size:9px;font-weight:900;line-height:1;position:absolute;bottom:15px;left:50%;transform:translate(-50%)}.touch-buttons{pointer-events:auto;grid-template-columns:repeat(3,52px);gap:6px;display:grid}.touch-buttons button{color:#edf6ff;touch-action:manipulation;background:#040a0f9e;border:1px solid #90dcff47;min-height:44px;font-size:10px;font-weight:900;box-shadow:0 8px 24px #0000002e}.touch-buttons button.pressed{color:#f7d45b;background:#f6c84f29;border-color:#f6c84fc7}.touch-buttons #touchFire{color:#f7d45b;border-color:#f6c84f8a;grid-column:span 2;min-height:50px}@media (width<=760px),(pointer:coarse){.top-bar{top:12px;left:12px;right:12px}.brand,.mission{min-height:30px;padding:0 9px;font-size:11px}.combat-clock{gap:7px;min-width:132px;min-height:36px;padding:5px 10px;top:8px}.combat-clock span{font-size:8px}.combat-clock b{font-size:21px}.spectator-fight-hud{grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);gap:6px;width:calc(100vw - 16px);top:8px}.spectator-side{min-height:50px;padding:6px}.spectator-side.host{grid-template-columns:42px minmax(0,1fr)}.spectator-side.guest{grid-template-columns:minmax(0,1fr) 42px}.spectator-face{width:36px;height:36px}.spectator-face:before{height:9px;top:12px;left:7px;right:7px}.spectator-face:after{height:3px;bottom:7px;left:10px;right:10px}.spectator-face span{width:10px;height:5px;top:5px;left:13px}.spectator-name{font-size:10px}.spectator-health-row{gap:4px}.spectator-health{height:14px}.spectator-health-row b{min-width:0;font-size:9px}.spectator-timer{min-height:44px;font-size:18px}.spectator-camera-controls{gap:4px;padding:4px;top:60px}.spectator-camera-controls button{min-width:48px;min-height:27px;padding:0 6px;font-size:9px}.replay-controls{bottom:calc(8px + var(--safe-bottom));grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;width:calc(100vw - 16px);padding:5px}.replay-controls button{min-width:0;min-height:30px;padding:0 5px;font-size:9px}.replay-controls input{grid-column:1/-2}.replay-controls span{text-align:right;min-width:0;font-size:9px}.readout{clip-path:none;gap:0;width:auto;min-width:0;padding:0;bottom:auto}.banner{gap:8px;width:100vw;height:100vh;max-height:none;padding:12px;inset:0}.banner>strong{font-size:clamp(26px,11vw,46px)}.readout.left{inset:0}.readout.right{top:calc(54px + var(--safe-top));right:max(8px, var(--safe-right));width:94px}.meter,.target-panel{padding:5px}.panel-title{min-height:18px;font-size:8px}.panel-title b{padding:2px 5px;font-size:8px}.label,.stats{gap:6px;font-size:8px}.bar{height:7px;margin-top:4px}.radar{width:94px;height:94px}.armor-meter{left:max(8px, var(--safe-left));bottom:calc(112px + var(--safe-bottom));width:min(146px,50vw - 50px);max-width:none;padding:8px 10px 9px 12px}.armor-meter:after{width:28px;height:10px}.armor-meter .label{font-size:10px}#armorValue{font-size:18px}.armor-meter .bar{height:11px;margin-top:5px}.ultimate-meter{bottom:calc(112px + var(--safe-bottom));width:78px;height:78px}.ultimate-meter:before{inset:8px}.ultimate-meter:after{inset:-4px}.ultimate-meter .label span:first-child{font-size:8px}#shieldValue{font-size:16px}.fuel-meter{bottom:calc(98px + var(--safe-bottom));width:128px}.fuel-meter .bar{height:6px}.heat-meter{right:max(8px, var(--safe-right));bottom:calc(112px + var(--safe-bottom));width:48px;height:128px;padding:8px 6px}.heat-meter .label{font-size:8px}#heatValue{font-size:16px}.heat-meter .bar{width:12px;height:76px;margin-top:5px}.heat-status{display:none}.target-name{margin-top:6px;font-size:9px}.target-health{display:none}.sortie-layout{grid-template-columns:1fr;gap:8px;width:auto;inset:84px 12px 72px}.lobby-shell{padding-bottom:calc(52px + var(--safe-bottom));grid-template:"top""left""right"1fr"tabs"/1fr;display:grid;inset:12px;overflow:auto}.lobby-top{min-height:38px}.lobby-user{min-width:0;padding:8px 9px;font-size:11px}.lobby-left-panel,.lobby-right-panel{align-self:start;gap:7px;padding:8px}.lobby-mode-field select,.friend-lobby-panel input{height:38px;font-size:13px}.lobby-mode-summary,.lobby-status{min-height:30px;padding:7px 8px;font-size:10px}.ready-button{min-height:46px;font-size:15px}.lobby-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%}.lobby-tabs button{min-height:38px;font-size:10px}.friend-actions{grid-template-columns:1fr}.menu-option{min-height:66px;padding:12px}.menu-option span{font-size:16px}.enemy-config,.pvp-config,.pvp-mode-config,.assemble-config,.frame-config,.map-config,.shield-config,.weapon-config,.control-guide{gap:8px;padding:10px}.control-grid{grid-template-columns:minmax(58px,.36fr) minmax(0,1fr)}.audio-settings,.assemble-config{grid-template-columns:1fr}.assemble-config>label,.assemble-config .part-tabs,.assemble-config .part-grid{grid-column:auto}.pvp-actions,.auth-fields,.pvp-fields{grid-template-columns:1fr}.pvp-mode-grid,.shield-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weapon-preview-panel{right:max(8px, var(--safe-right));grid-template-rows:auto;width:min(300px,100vw - 16px);min-height:0;max-height:176px;padding:10px;position:fixed;top:auto;bottom:72px;left:auto}.weapon-detail{gap:6px}.weapon-detail p{font-size:11px;line-height:1.35}.weapon-stats{gap:4px}.weapon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preset-grid{grid-template-columns:1fr}.preset-actions{grid-template-columns:minmax(0,1fr) 66px}.frame-grid,.part-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.part-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.part-card{min-height:54px}.part-tab{min-height:34px;padding:6px}.part-card small{display:none}.frame-card,.pvp-mode-card,.shield-card,.weapon-card{min-height:38px;padding:7px 9px}.frame-card small,.pvp-mode-card small,.shield-card small,.weapon-card small{display:none}.preset-apply{min-height:42px;padding:7px 9px}.preset-delete{min-height:42px}.preset-apply small{display:none}.deploy-button{min-height:44px}.menu-actions{grid-template-columns:minmax(82px,.34fr) minmax(0,1fr);gap:8px}.weapon-card small{display:none}.enemy-health{width:62px}.stats{display:none}.overheat-alert{min-width:220px;padding:8px 14px;top:calc(50% + 58px);bottom:auto}.match-intro{grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);grid-template-columns:1fr;gap:8px;padding:12px}.match-card{grid-template-rows:auto minmax(105px,1fr) auto}.match-card-head{gap:4px;padding:11px 12px 0}.match-card-head strong{font-size:clamp(23px,9vw,38px)}.match-card canvas{min-height:105px}.match-card dl div{padding:8px}.match-card dd{font-size:12px}.match-vs{justify-self:center;padding:0;font-size:44px}.radar{width:94px;height:94px;display:block}.center-reticle{width:96px;height:96px}.center-reticle:before{inset:12px}.center-reticle:after{inset:38px}.ring{inset:28px}.lock-reticle{width:46px;height:46px;inset:auto}#touchControls{padding:0 max(8px, var(--safe-right)) calc(8px + var(--safe-bottom)) max(8px, var(--safe-left));gap:7px;display:grid}body.spectator-mode.spectator-free-camera #touchControls{opacity:1;visibility:visible;grid-template-columns:auto minmax(58px,1fr) auto;display:grid}body.spectator-mode.spectator-free-camera .touch-buttons{grid-template-columns:repeat(3,clamp(42px,13vw,52px))}body.spectator-mode.spectator-free-camera #touchLock,body.spectator-mode.spectator-free-camera #touchSpecial{display:none}.stick{width:clamp(78px,25vw,104px);height:clamp(78px,25vw,104px)}.stick span{width:clamp(34px,10vw,42px);height:clamp(34px,10vw,42px)}.look-pad{width:clamp(58px,22vw,92px);height:clamp(58px,22vw,92px)}.look-pad span{width:clamp(26px,8vw,32px);height:clamp(26px,8vw,32px)}.look-pad b{font-size:8px;bottom:8px}.touch-buttons{grid-template-columns:repeat(3,clamp(42px,13vw,52px));gap:5px}.touch-buttons button{min-height:clamp(38px,11vw,44px);font-size:9px}.touch-buttons #touchFire{min-height:clamp(42px,12vw,50px)}.lobby-shell{inset:max(8px, var(--safe-left)) max(8px, var(--safe-right)) calc(8px + var(--safe-bottom)) max(8px, var(--safe-left));grid-template-rows:auto auto auto auto;grid-template-areas:"top""tabs""left""right";align-content:start;gap:8px;padding-bottom:0;display:grid}.lobby-top{gap:8px;display:flex;position:static}.lobby-top-actions{flex-wrap:wrap;justify-content:flex-end;gap:5px;width:auto;max-width:190px;display:flex;position:static;bottom:auto;right:auto}.lobby-user{flex:auto;width:auto;min-height:36px;position:static;overflow:hidden}.lobby-user span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lobby-top button{min-height:36px;padding:0 8px;font-size:10px}.history-detail-overlay{padding:max(8px, var(--safe-top)) max(8px, var(--safe-right)) max(8px, var(--safe-bottom)) max(8px, var(--safe-left));align-items:start}.history-detail-shell{max-height:calc(100vh - 16px - var(--safe-top) - var(--safe-bottom));gap:8px;padding:9px;overflow:auto}.history-detail-top strong{font-size:18px}.history-detail-stage{grid-template-columns:1fr;gap:8px}.history-detail-vs{justify-self:stretch;min-width:0;padding:7px;font-size:11px}.history-detail-side{grid-template-rows:auto 170px auto;padding:8px}.history-detail-side canvas{min-height:160px}.lobby-tabs{grid-template-columns:repeat(3,minmax(0,1fr));justify-self:stretch;gap:0;position:static;top:auto;left:auto;transform:none}.lobby-tabs button{min-height:34px;padding:0 2px;font-size:9px}.lobby-left-panel,.lobby-right-panel{width:auto;box-shadow:none;position:static;transform:none}.lobby-right-panel strong{font-size:15px}.lobby-right-panel dl{gap:0}.lobby-right-panel dl div{padding:6px 0}.banner[data-step=assemble] .lobby-shell,.banner[data-step=weapon] .lobby-shell,.banner[data-step=map] .lobby-shell,.banner[data-step=controls] .lobby-shell{inset:max(8px, var(--safe-left)) max(8px, var(--safe-right)) auto max(8px, var(--safe-left));z-index:30;grid-template-rows:1fr;grid-template-areas:"tabs";height:36px;padding:0;display:grid;overflow:visible}.banner[data-step=assemble] .lobby-top,.banner[data-step=assemble] .lobby-left-panel,.banner[data-step=assemble] .lobby-right-panel,.banner[data-step=weapon] .lobby-top,.banner[data-step=weapon] .lobby-left-panel,.banner[data-step=weapon] .lobby-right-panel,.banner[data-step=map] .lobby-top,.banner[data-step=map] .lobby-left-panel,.banner[data-step=map] .lobby-right-panel,.banner[data-step=controls] .lobby-top,.banner[data-step=controls] .lobby-left-panel,.banner[data-step=controls] .lobby-right-panel{display:none}.sortie-layout{z-index:4;top:58px;bottom:calc(52px + var(--safe-bottom));left:max(8px, var(--safe-left));right:max(8px, var(--safe-right))}.menu-actions{left:max(8px, var(--safe-left));right:max(8px, var(--safe-right));bottom:calc(8px + var(--safe-bottom));grid-template-columns:88px 142px;width:auto}.menu-actions.single{grid-template-columns:142px}.banner[data-step=assemble] .sortie-layout,.banner[data-step=weapon] .sortie-layout{top:58px}.weapon-preview-panel{z-index:5;top:auto;right:max(8px, var(--safe-right));bottom:calc(52px + var(--safe-bottom));grid-template-rows:auto;grid-template-columns:1fr;gap:6px;width:min(286px,100vw - 16px);height:auto;max-height:148px;padding:8px;left:auto}#weaponPreview{display:none}.weapon-detail{align-content:start;min-width:0;overflow:hidden}.weapon-detail strong{font-size:14px}.weapon-detail p{max-height:42px;font-size:10px;overflow:hidden}.weapon-stats div{grid-template-columns:42px minmax(0,1fr);gap:5px}}@media (width<=720px),(height<=560px){.friend-lobby-panel.room-active{width:calc(100vw - 20px);max-height:calc(100vh - 84px);padding:10px;top:calc(50% + 8px)}.friend-lobby-panel.room-active .friend-room-members{grid-template-columns:1fr}.friend-lobby-panel.room-active .friend-room-members div:nth-child(3){grid-area:auto}.friend-lobby-panel.room-active .friend-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.friend-incoming-list{top:max(10px, var(--safe-top));right:max(10px, var(--safe-right));left:max(10px, var(--safe-left));width:auto}.friend-invite-toast{min-height:70px;padding:9px}}
