: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;background:#93c9e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{min-width:320px}button{color:inherit;font:inherit;border:0}#scene{background:#93c9e8;width:100%;height:100%;display:block}#vignette{pointer-events:none;opacity:.88;background:radial-gradient(circle at 50% 48%,#0000 0 52%,#0000000f 82%,#00000038 100%),linear-gradient(#ffffff0f,#1435401f);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}.readout{border:1px solid var(--hud-line);background:linear-gradient(135deg, #63e8ff24, transparent 42%), linear-gradient(180deg, #ffffff0e, #fff0), var(--hud-bg);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));gap:8px;width:min(380px,50vw - 28px);min-width:248px;padding:12px;transition:opacity .14s;display:grid;position:absolute;bottom:24px;box-shadow:inset 0 0 0 1px #ffffff0a,0 18px 54px #00000047,0 0 26px #53d6ff1f}.readout:before{pointer-events:none;opacity:.32;content:"";background:linear-gradient(90deg,#63e8ff29,#0000 34% 66%,#63e8ff17),repeating-linear-gradient(#ffffff09 0 1px,#0000 1px 7px);position:absolute;inset:0}.readout.left{left:24px}.readout.right{justify-items:end;right:24px}.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:8px 9px;position:relative;box-shadow:inset 3px 0 #63e8ff2e}.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:7px 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:10px;margin-top:7px;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-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 .readout.left{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 #systemState{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.target-hp span{background:linear-gradient(90deg, var(--hud-red), #ffd45a)}.target-name{color:#fff2bb;text-align:right;text-transform:uppercase;margin-top:10px;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:150px;height:150px;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;inset:38px;box-shadow:0 0 16px #52d0ff47,inset 0 0 14px #52d0ff1f}.lock-reticle{opacity:0;border-color:#ffda58e0;transition:opacity .12s,transform .12s;inset:24px}.lock-reticle.locked{opacity:1;transform:scale(.74)}.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%}.damage-flash{opacity:0;background:radial-gradient(circle,#0000 42%,#ff2e266b);transition:opacity .12s;position:absolute;inset:0}.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}.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{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;bottom:126px;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:78px;height:14px;transition:opacity .12s;position:absolute;transform:translate(-50%,-50%)}.enemy-health:before{color:#edf6ffdb;content:attr(data-name);text-align:center;text-shadow:0 1px 4px #000c;font-size:9px;font-weight:900;position:absolute;inset:-10px 0 auto}.enemy-health span{background:#050c129e;border:1px solid #ffd85c70;position:absolute;inset:3px 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}.banner{text-align:left;pointer-events:auto;background:linear-gradient(90deg,#03080cd1 0 24%,#03080c33 42%,#03080cc2 100%),linear-gradient(#03080cb8,#03080c1f 42%,#03080cd1);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}.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;grid-template:"top top top""left stage right"1fr"tabs tabs tabs"/minmax(260px,340px) minmax(220px,1fr) minmax(260px,330px);gap:16px;display:grid;position:absolute;inset:22px}.lobby-top{pointer-events:auto;grid-area:top;justify-content:space-between;align-items:center;min-height:46px;display:flex}.lobby-user{color:#edf6ffe6;background:#040a0f94;border:1px solid #90dcff3d;align-items:center;gap:10px;min-width:240px;padding:10px 12px;font-size:12px;font-weight:900;display:inline-flex}.lobby-user b{color:#f7d45b;font-size:11px}.lobby-top button,.friend-actions button{color:#edf6ff;cursor:pointer;background:#040a0f9e;border:1px solid #90dcff47;min-height:38px;font-weight:900}.lobby-left-panel,.lobby-right-panel{pointer-events:auto;background:#040c12ad;border:1px solid #90dcff38;align-self:end;gap:10px;padding:12px;display:grid;box-shadow:0 18px 48px #00000047}.lobby-left-panel{grid-area:left}.lobby-right-panel{grid-area:right}.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:#edf6ffd6;background:#040a0f66;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-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-lobby-panel[hidden]{display:none}.friend-room-created b{color:#f7d45b;letter-spacing:0;font-size:18px}.friend-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.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}.lobby-tabs{pointer-events:auto;grid-area:tabs;grid-template-columns:repeat(5,minmax(84px,128px));justify-self:center;gap:8px;display:grid}.lobby-tabs button{color:#edf6ff;cursor:pointer;background:#040a0f9e;border:1px solid #90dcff47;min-height:44px;font-size:12px;font-weight:900}.lobby-tabs button:hover,.lobby-tabs button.selected,.lobby-top button:hover,.friend-actions button:hover,.ready-button:hover{color:#f7d45b;border-color:#f6c84fb8}.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,.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,.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}.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{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}.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-tab.selected,.part-card:hover,.part-card.selected,.frame-card:hover,.frame-card.selected,.map-card:hover,.map-card.selected,.pvp-mode-card:hover,.pvp-mode-card.selected,.shield-card:hover,.shield-card.selected,.weapon-card:hover,.weapon-card.selected{background:#f6c84f1f;border-color:#f6c84fad}.menu-option.controller-focus,.deploy-button.controller-focus,.auth-mode button.controller-focus,.account-bar button.controller-focus,.lobby-mode-field select.controller-focus,.friend-lobby-panel input.controller-focus,.lobby-top button.controller-focus,.friend-actions button.controller-focus,.ready-button.controller-focus,.lobby-tabs button.controller-focus,.pvp-actions button.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{border-color:#7af8ffeb;box-shadow:0 0 0 2px #7af8ff3d,0 0 22px #7af8ff2e}.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;grid-template-rows:minmax(150px,1fr) auto;width:min(330px,100vw - 44px);min-height:0;max-height:calc(100vh - 174px);position:fixed;top:92px;right:22px}#weaponPreview{background:radial-gradient(circle at 50% 44%,#73e1ff1f,#0000 58%),#040a0f5c;border:1px solid #90dcff2e;width:100%;min-height:176px;display:block}.weapon-detail{gap:8px;display:grid}.weapon-detail strong{color:#f7d45b;font-size:18px;line-height:1.1}.weapon-detail p{color:#edf6ffd6;min-height:0;margin:0;font-size:12px;font-weight:700;line-height:1.4}.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{grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:10px;display:grid}.menu-actions.single{grid-template-columns:1fr}.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 .center-reticle,body.menu-open .overheat-alert{opacity:0}#touchControls{pointer-events:none;justify-content:space-between;align-items:end;padding:0 18px 18px;transition:opacity .14s;display:none;position:fixed;inset:auto 0 0}body.menu-open #touchControls{opacity:0}.stick{pointer-events:auto;touch-action:none;background:#040a0f6b;border:1px solid #90dcff47;border-radius:50%;width:118px;height:118px;position:relative}.stick span{background:#ffdc582e;border:1px solid #ffdc58a8;border-radius:50%;width:48px;height:48px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.touch-buttons{pointer-events:auto;grid-template-columns:repeat(2,74px);gap:10px;display:grid}.touch-buttons button{color:#edf6ff;touch-action:manipulation;background:#040a0f9e;border:1px solid #90dcff47;min-height:54px;font-size:11px;font-weight:900}.touch-buttons #touchFire{color:#f7d45b;border-color:#f6c84f8a;grid-column:span 2;min-height:62px}@media (width<=760px),(pointer:coarse){.top-bar{top:12px;left:12px;right:12px}.brand,.mission{min-height:30px;padding:0 9px;font-size:11px}.readout{width:calc(50vw - 18px);min-width:150px;padding:9px;bottom:160px}.banner{gap:8px;width:100vw;height:100vh;max-height:none;padding:12px;inset:0}.banner>strong{font-size:clamp(26px,11vw,46px)}.readout.left{left:12px}.readout.right{right:12px}.meter,.target-panel{padding:7px}.panel-title{min-height:20px;font-size:9px}.panel-title b{padding:2px 5px;font-size:9px}.sortie-layout{grid-template-columns:1fr;gap:8px;width:auto;inset:84px 12px 72px}.lobby-shell{grid-template:"top""left""right"1fr"tabs"/1fr;inset:12px;overflow:hidden}.lobby-left-panel,.lobby-right-panel{align-self:start;padding:10px}.lobby-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;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)}.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{grid-template-rows:minmax(132px,auto) auto;width:auto;min-height:0;max-height:230px;position:fixed;inset:auto 12px 72px}#weaponPreview{height:168px;min-height:0}.weapon-detail{gap:6px}.weapon-detail strong{font-size:17px}.weapon-detail p{font-size:11px;line-height:1.35}.weapon-stats{gap:4px}.weapon-grid,.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}.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{grid-template-columns:1fr}.stats span:nth-child(2){display:none}.overheat-alert{min-width:220px;padding:8px 14px;bottom:132px}.radar{width:110px;height:110px}.center-reticle{width:120px;height:120px}#touchControls{display:flex}}
