
#tactical-ui{--g-ink:#ecebdc;--g-muted:#a7b0a5;--g-accent:#dbc58e;--g-line:#c7d4bd22;--g-bg:#18231f;font-family:Inter,Arial,sans-serif;color:var(--g-ink);pointer-events:none}
#tactical-ui [hidden]{display:none!important}
#tactical-ui button,#tactical-ui input,#tactical-ui select{font:inherit}
#tactical-ui button{cursor:pointer}
#tactical-ui button:focus-visible,#tactical-ui select:focus-visible,#tactical-ui input:focus-visible{outline:2px solid var(--g-accent);outline-offset:4px}
.g-overlay{position:fixed;inset:0;z-index:100;background:linear-gradient(115deg,#15221feF,#15221fe3 48%,#1e2d25eb),radial-gradient(ellipse at 70% 20%,#54775b55,transparent 70%);backdrop-filter:blur(10px);overflow:auto;pointer-events:auto;display:flex;align-items:center;justify-content:center;padding:30px}
.g-menu{width:min(1160px,100%);position:relative}
.g-menu-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--g-line);padding:0 0 25px}
.g-wordmark{font-size:22px;letter-spacing:4px;color:var(--g-ink);text-decoration:none;font-weight:800}.g-wordmark span{font-weight:400;color:var(--g-accent);font-size:12px;letter-spacing:2px;margin-left:8px}
.g-build{font:10px ui-monospace,monospace;letter-spacing:2px;color:var(--g-muted)}
.g-menu-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:72px;padding:36px 0 32px}
.g-overline{font:9px ui-monospace,monospace;letter-spacing:2px;color:#b6c3b6;display:flex;align-items:center;gap:9px}.g-overline>span{height:6px;width:6px;background:var(--g-accent);border-radius:50%}
.g-intro h1{font-size:clamp(35px,4.4vw,59px);font-weight:550;line-height:1.12;letter-spacing:-2px;margin:23px 0 20px}.g-intro h1 em{font-family:Georgia,serif;font-weight:400;color:#b6c9b7;font-style:italic}
.g-description{font-size:13px;line-height:1.8;color:#aab8ac;max-width:405px}
.g-ready{font-size:11px;color:#c2d6b9;margin:25px 0 18px;display:flex;align-items:center;gap:8px}.g-dot{width:5px;height:5px;background:#b3cc9a;border-radius:50%}
.g-room-label,.g-panel-kicker{font:8px ui-monospace,monospace;letter-spacing:2px;color:#9cad9e;display:block}
#g-room{width:100%;padding:11px 12px;border:1px solid #d1d9c531;background:#ffffff05;color:var(--g-ink);border-radius:3px;margin:8px 0 13px;font-size:12px}
#g-room option,#g-quality option{background:#203027;color:var(--g-ink)}
.g-actions{display:flex;gap:10px}.g-primary{display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--g-accent);color:#243027;border:0;border-radius:3px;font-size:13px;font-weight:650!important;min-height:48px;padding:14px 19px;flex:1}.g-primary:hover{background:#ead7a9}.g-primary>span{font-size:22px}
.g-primary.g-secondary{background:transparent;border:1px solid var(--g-line);color:var(--g-ink);font-size:11px;flex:.8}
.g-capture-note{font-size:9px;color:#8d9f91;line-height:1.7;margin-top:10px}.g-text{border:0;background:transparent;color:var(--g-accent);font-size:11px;padding:8px 0}
.g-session-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--g-line);padding-top:18px;margin-top:23px}
.g-session-modes b{font:10px ui-monospace,monospace;letter-spacing:1.5px;display:block;color:#aebcae}.g-session-modes small{font-size:8px;color:#7e9081;display:block;line-height:1.7;margin:7px 0}.g-session-modes span{font:8px ui-monospace,monospace;color:#819585}
.g-briefing{border-left:1px solid var(--g-line);padding-left:37px}
.g-tabs{display:flex;gap:25px;border-bottom:1px solid var(--g-line);margin-bottom:25px}
.g-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:0 0 13px;color:#869b8b;font:9px ui-monospace,monospace!important;letter-spacing:1.6px}.g-tabs button.selected{color:var(--g-accent);border-bottom-color:var(--g-accent)}
.g-tab-panel h2{font-family:Georgia,serif;font-size:30px;line-height:1.2;font-weight:400;margin:15px 0 23px;color:#e2e6d6}
.g-loadout-list>div{display:flex;align-items:center;border-top:1px solid var(--g-line);padding:14px 0;gap:18px}.g-loadout-list i{font:10px ui-monospace,monospace;color:#839987;font-style:normal}.g-loadout-list span{font-size:12px;letter-spacing:1px;flex:1}.g-loadout-list small{display:block;font-size:9px;color:#83988b;margin-top:5px;letter-spacing:0}.g-loadout-list b{font:18px ui-monospace,monospace;font-weight:400;color:#bfccb8}
.g-tip{font-size:10px;color:#8fa294;line-height:1.8;margin:16px 0}
.g-training-tip{border:1px solid var(--g-line);display:flex;align-items:center;gap:15px;padding:12px 14px;background:#c7d9b805;border-radius:3px}.g-training-tip>span{font-size:23px;color:#b9cda9;font-weight:300}.g-training-tip p{font-size:9px;color:#a3b39e;line-height:1.8;margin:0}.g-training-tip kbd{font:9px ui-monospace,monospace;color:var(--g-accent)}
.g-setting{display:block;font-size:11px;color:#b7c6b5;position:relative;margin:13px 0}.g-setting output{float:right;font:10px ui-monospace,monospace;color:var(--g-accent)}.g-setting input{display:block;width:100%;height:18px;margin-top:8px;accent-color:var(--g-accent)}.g-setting select{display:block;width:100%;margin-top:9px;background:#ffffff06;border:1px solid var(--g-line);color:var(--g-ink);padding:9px;font-size:11px;border-radius:3px}
.g-check{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:#a7bca9;margin:14px 0}.g-check input{accent-color:var(--g-accent);width:14px;height:14px}
.g-controls{display:grid;grid-template-columns:1fr 1.1fr;gap:14px 20px;margin:0;font-size:11px}.g-controls dt{color:#8fa593}.g-controls dd{margin:0;color:#d5ddcb}
.g-menu-bottom{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--g-line);padding-top:20px;gap:20px}.g-menu-bottom nav{display:flex;gap:25px;margin-top:12px}.g-menu-bottom button{background:transparent;padding:0;border:0;color:#c3d0bb;font-size:11px}.g-menu-bottom>a{font-size:10px;text-decoration:none;color:#889e8c}
.tactical-menu-button{font:9px ui-monospace,monospace;letter-spacing:1px;background:#e5eadd;color:#465b45;border:1px solid #c7d4be;border-radius:3px;padding:10px 12px;margin-right:12px}
body.tactical-engaged .app-header,body.tactical-engaged #sidebar{display:none!important}
body.tactical-engaged .app-body{height:100dvh}
body.tactical-engaged #viewer{position:fixed;inset:0;width:100vw;height:100dvh;border-radius:0}
body.tactical-engaged .viewer-top,body.tactical-engaged .selection-card,body.tactical-engaged .camera-rail,body.tactical-engaged .bottom-bar,body.tactical-engaged .scene-caption,body.tactical-engaged #labels,body.tactical-engaged #walk-help,body.tactical-engaged #walk-pad,body.tactical-engaged #tour-status,body.tactical-engaged .layers-panel,body.tactical-engaged .inventory-panel{display:none!important}
.g-hud{position:fixed;inset:0;z-index:70;pointer-events:none;background:radial-gradient(ellipse at center,transparent 50%,#0b151419 100%);color:#f1f0dc;text-shadow:0 1px 7px #0009}
.g-hud-top{position:absolute;top:25px;left:32px;right:32px;display:flex;justify-content:space-between;align-items:flex-start}.g-hud-top b{font:10px ui-monospace,monospace;letter-spacing:2px}.g-hud-top small{display:block;font-size:11px;color:#e3e9d3;margin:9px 0 0 15px}.g-live-dot{display:inline-block;width:5px;height:5px;background:#c9da9d;border-radius:50%;margin-right:9px;vertical-align:2px}
.g-practice-stats{display:flex;align-items:center;gap:22px}.g-practice-stats>span{font:9px ui-monospace,monospace;letter-spacing:1.5px;color:#d2dec4}.g-practice-stats strong{font:22px ui-monospace,monospace}.g-practice-stats button{pointer-events:auto;border:1px solid #eef3cf44;background:#18251f99;color:#eceddb;border-radius:3px;width:32px;height:32px}
.g-crosshair{--gap:5px;position:absolute;left:50%;top:50%;width:0;height:0}.g-crosshair i{position:absolute;background:#edf7d4;box-shadow:0 0 2px #000d;display:block;width:7px;height:2px}.g-crosshair i:nth-child(1){right:var(--gap);top:-1px}.g-crosshair i:nth-child(2){left:var(--gap);top:-1px}.g-crosshair i:nth-child(3){left:-1px;bottom:var(--gap);width:2px;height:7px}.g-crosshair i:nth-child(4){left:-1px;top:var(--gap);width:2px;height:7px}.g-crosshair>span{position:absolute;width:2px;height:2px;border-radius:50%;background:#edf7d4;left:-1px;top:-1px}
.g-hitmarker{position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);font:36px Arial,sans-serif;color:#fff9d9}.g-hitmarker.head{color:#e9c37d}
.g-killfeed{position:absolute;right:30px;top:90px;font:10px ui-monospace,monospace;text-align:right}.g-killfeed>div{padding:9px 13px;margin-bottom:5px;background:#1a2b24ce;border-right:2px solid #b7c8a3;letter-spacing:1px}.g-killfeed>div.head{border-color:#e5bd7b;color:#f0d49f}
.g-pickup{position:absolute;left:50%;bottom:24%;transform:translateX(-50%);border:1px solid #d9dfc339;background:#14271fce;padding:12px 18px;font:11px ui-monospace,monospace;letter-spacing:.4px;border-radius:3px;white-space:nowrap}
.g-hud-bottom{position:absolute;left:33px;right:33px;bottom:48px;display:flex;justify-content:space-between;align-items:flex-end}
.g-vitals{display:flex;gap:25px}.g-vitals>div{width:95px}.g-vitals span{display:block;font:8px ui-monospace,monospace;letter-spacing:2px;color:#e3e9ce}.g-vitals b{font:34px ui-monospace,monospace;display:block;margin:5px 0}.g-vitals i{display:block;width:100%;height:3px;background:#f2f2d929}.g-vitals em{display:block;height:100%;width:100%;background:#c3d3a5}.g-vitals>div:last-child em{background:#b3c8c4}
.g-posture{font:8px ui-monospace,monospace;letter-spacing:2px;color:#e1e8cf;position:absolute;left:50%;bottom:0;transform:translateX(-50%)}
.g-weapon-status{text-align:right}.g-weapon-status small{font:8px ui-monospace,monospace;letter-spacing:2px;color:#d2ddc1}.g-weapon-status>b{font:14px ui-monospace,monospace;display:block;margin:8px 0}.g-weapon-status strong{font:40px ui-monospace,monospace;line-height:1.1}.g-weapon-status span{font:18px ui-monospace,monospace;color:#c7d1bb;margin-left:10px}.g-weapon-status p{font:8px ui-monospace,monospace;color:#b5c7b2;letter-spacing:1px;margin:7px 0 0}
.g-hotkeys{position:absolute;bottom:14px;left:33px;display:flex;gap:23px;font:7px ui-monospace,monospace;letter-spacing:1px;color:#d0dcc3aa}
.g-debug{position:absolute;left:25px;top:90px;background:#101f18e6;border:1px solid #c5d0b638;color:#d7e6c7;padding:15px;font:11px/1.8 ui-monospace,monospace;min-width:240px;margin:0;text-shadow:none}
.g-notice{position:fixed;bottom:145px;left:50%;transform:translate(-50%,10px);z-index:150;background:#1b3029ed;border:1px solid #b9cda64d;color:#e2e9d2;padding:12px 20px;border-radius:3px;font-size:11px;opacity:0;transition:opacity .15s,transform .15s;pointer-events:none}.g-notice.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.g-overlay{padding:24px}.g-menu-grid{gap:30px}.g-briefing{padding-left:23px}.g-intro h1{font-size:40px}.g-session-modes{gap:5px}.g-menu-bottom nav{gap:15px}}
@media(max-width:600px){.g-overlay{display:block;padding:24px 20px}.g-menu-top{padding-bottom:18px}.g-wordmark{font-size:18px}.g-wordmark span{font-size:10px}.g-build{font-size:7px;letter-spacing:.7px}.g-menu-grid{grid-template-columns:1fr;gap:30px;padding:25px 0}.g-briefing{border-left:0;border-top:1px solid var(--g-line);padding:25px 0 0}.g-intro h1{font-size:43px;margin:19px 0}.g-description{font-size:12px}.g-menu-bottom{align-items:flex-start;flex-direction:column}.g-menu-bottom nav{gap:17px;flex-wrap:wrap}.g-menu-bottom button{font-size:10px}.tactical-menu-button{font-size:7px;padding:8px;margin-right:4px}.g-hud-top{top:18px;left:18px;right:18px}.g-hud-bottom{left:18px;right:18px;bottom:40px}.g-practice-stats{gap:9px}.g-practice-stats>span{display:none}.g-vitals{gap:12px}.g-vitals>div{width:65px}.g-hotkeys{left:18px;gap:10px;font-size:6px}.g-weapon-status strong{font-size:33px}}

.g-prop-inspect{position:absolute;left:50%;top:calc(50% + 46px);transform:translateX(-50%);font:9px ui-monospace,monospace;letter-spacing:.5px;color:#e1e8d1;background:#17292099;padding:7px 12px;border-radius:2px;white-space:nowrap;max-width:80vw;overflow:hidden;text-overflow:ellipsis}
#g-difficulty{width:100%;padding:10px 12px;border:1px solid #d1d9c531;background:#ffffff05;color:var(--g-ink);border-radius:3px;margin:8px 0 16px;font-size:12px}#g-difficulty option{background:#203027}
.g-mode-live{border-left:2px solid var(--g-accent);padding-left:10px}.g-mode-live b,.g-mode-live span{color:var(--g-accent)}
.g-round-summary{position:fixed;inset:0;z-index:120;pointer-events:auto;background:linear-gradient(120deg,#12251af0,#1e2b22ed);backdrop-filter:blur(14px);display:grid;place-items:center;padding:25px;overflow:auto}
.g-result-card{width:min(510px,100%);border:1px solid var(--g-line);padding:40px;background:#c6d5b705;border-radius:4px}.g-result-card h2{font-family:Georgia,serif;font-weight:400;font-size:42px;margin:18px 0;color:#e8ead9}.g-result-card>p{font-size:12px;color:#9db09f;margin:0 0 28px}.g-result-score{display:flex;align-items:center;justify-content:center;gap:38px;border-block:1px solid var(--g-line);padding:18px 0}.g-result-score>div{text-align:center;min-width:70px}.g-result-score span{font:9px ui-monospace,monospace;letter-spacing:2px;color:#9daf9c;display:block}.g-result-score b{font:58px ui-monospace,monospace;color:var(--g-accent)}.g-result-score i{font:25px ui-monospace,monospace;color:#8aa08a}.g-result-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px 30px;margin:25px 0}.g-result-stats>div{display:flex;flex-direction:column;gap:7px}.g-result-stats dt{font-size:10px;color:#8fa48f}.g-result-stats dd{margin:0;font:16px ui-monospace,monospace;color:#d9e1c9}
.g-round-chip{position:absolute;top:17%;left:50%;transform:translateX(-50%);font:12px ui-monospace,monospace;letter-spacing:2px;padding:15px 22px;border:1px solid #d9e2bd40;background:#15291bd6;color:#f0e6c0;white-space:nowrap}
.g-damage-direction{position:absolute;inset:0;transform-origin:center}.g-damage-direction i{position:absolute;top:calc(50% - 110px);left:calc(50% - 17px);width:34px;height:10px;background:#e7a260;clip-path:polygon(50% 0,100% 100%,50% 65%,0 100%);filter:drop-shadow(0 1px 4px #332113)}
.g-damage-vignette{position:absolute;inset:0;box-shadow:inset 0 0 100px 8px #b8733638}.g-practice-stats .urgent{color:#efb178}.g-debug{max-height:calc(100vh - 260px);overflow:hidden;font-size:10px;line-height:1.55}
@media(max-width:600px){.g-result-card{padding:25px}.g-result-card h2{font-size:32px}.g-round-chip{font-size:9px;padding:12px}.g-result-stats{gap:15px}}
.g-session-modes button{background:transparent;text-align:left;border:1px solid transparent;border-left:2px solid #8fa08c33;border-radius:2px;padding:8px 9px;color:inherit}.g-session-modes button:hover{background:#d6e1c70a}.g-session-modes button.selected{border-color:#d1c18e44;border-left-color:var(--g-accent);background:#d6e1c70b}.g-session-modes button:not(.selected) b,.g-session-modes button:not(.selected) span{color:#91a18f}
.g-wave-strip{position:absolute;top:82px;left:50%;transform:translateX(-50%);font:10px ui-monospace,monospace;letter-spacing:1px;color:#e7d7ab;padding:9px 14px;background:#16251edb;border:1px solid #cdd7b92c;border-radius:3px;white-space:nowrap}.g-round-summary.survival .g-result-score b{font-size:38px}.g-round-summary.survival .g-result-score{gap:28px}.g-round-summary.survival .g-result-score>div{min-width:115px}@media(max-width:600px){.g-wave-strip{font-size:8px;top:90px}.g-round-summary.survival .g-result-score b{font-size:29px}.g-session-modes button{padding:8px 6px}}

/* Milestone 5: shared menus, readable controls and a bounded HUD. */
.g-overlay{align-items:flex-start;padding:clamp(20px,3vw,38px)}.g-menu{margin-block:auto}.g-menu-grid{gap:48px;padding-block:28px}.g-intro h1{font-size:clamp(35px,4vw,54px);margin-block:20px}.g-session-modes{margin:20px 0 22px;padding-top:14px}.g-session-modes button{min-height:91px}.g-session-modes button b{font-size:11px}.g-session-modes small,.g-session-modes span{font-size:9px}.g-session-modes button.selected b,.g-session-modes button.selected span{color:var(--g-accent)}
#tactical-ui button:disabled{cursor:default;opacity:.5}.g-room-label{font-size:9px}.g-room-label small{letter-spacing:0;font:10px Inter,Arial,sans-serif;color:var(--g-muted);display:block;margin-top:7px}.g-panel-kicker{font-size:9px}.g-tabs{gap:20px}.g-tabs button{font-size:10px!important}.g-tab-panel{max-height:570px;overflow:auto;scrollbar-width:thin;scrollbar-color:#829a8555 transparent;padding:1px 8px 5px 1px}.g-tab-panel h2{margin-bottom:18px}.g-tip{font-size:11px}.g-setting{font-size:12px;margin:15px 0}.g-check{font-size:11px}.g-setting output{font-size:11px}.g-settings-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.g-settings-footer{border-top:1px solid var(--g-line);padding-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:5px 18px}.g-settings-footer>span{font:10px/1.7 ui-monospace,monospace;color:#b5c5a9;flex:1;min-width:130px}
.g-session-status{padding:10px 12px;border-left:2px solid var(--g-accent);background:#d7e1c909;font:11px/1.7 ui-monospace,monospace;color:#d9dfc7;margin-bottom:14px}.g-pause-actions{display:flex;gap:22px;margin-top:7px}.g-bindings{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.g-bindings>div{border-bottom:1px solid var(--g-line);display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;min-height:46px;font-size:11px}.g-bindings button{min-width:43px;padding:7px 9px;background:#d7e1ca09;border:1px solid #b4c3a83d;border-radius:3px;color:#e5dfbd;font:11px ui-monospace,monospace!important}.g-bindings button:hover{border-color:var(--g-accent);background:#d7e1ca15}.g-fixed-controls{border-top:1px solid var(--g-line);padding-top:16px;margin-top:15px}
.g-rebind-dialog{position:fixed;inset:0;z-index:180;display:grid;place-items:center;background:#101d17ee;pointer-events:auto;padding:24px}.g-rebind-dialog>div{width:min(390px,100%);background:#203127;border:1px solid #c9d2b639;border-radius:4px;padding:30px}.g-rebind-dialog h2{font:32px Georgia,serif;margin:20px 0;color:#e9e4ca}.g-rebind-dialog p{font-size:12px;line-height:1.8;color:#bac8b1;min-height:44px}.g-rebind-dialog button{width:100%;margin-top:18px}
.g-table-wrap{width:100%;overflow-x:auto;margin:18px 0 24px}.g-table-wrap table{border-collapse:collapse;width:100%;text-align:left;font:11px ui-monospace,monospace;white-space:nowrap}.g-table-wrap caption{text-align:left;font:11px Inter,Arial,sans-serif;color:#bac8b2;margin-bottom:12px}.g-table-wrap th,.g-table-wrap td{padding:11px 9px;border-bottom:1px solid var(--g-line)}.g-table-wrap thead th{font-weight:400;color:#92a48f;font-size:10px}.g-table-wrap tbody th{font-weight:400;color:#dddcc2}.g-table-wrap td{color:#d4ddc5}.g-result-card{width:min(570px,100%);margin-block:auto}.g-round-summary{place-items:start center}.g-result-card .g-table-wrap{margin-top:0}.g-scoreboard{position:fixed;inset:0;z-index:105;display:grid;place-items:center;padding:25px;background:#132219c9;backdrop-filter:blur(8px);pointer-events:none;color:var(--g-ink)}.g-scoreboard[role=dialog]{pointer-events:auto;background:#132219ef}.g-score-card{width:min(680px,100%);max-height:calc(100dvh - 50px);overflow:auto;border:1px solid #b8c7a73d;border-radius:4px;background:#203026f5;padding:30px}.g-score-card h2{font:33px Georgia,serif;margin:17px 0 12px}.g-score-card>p{font:12px/1.7 ui-monospace,monospace;color:#c3cead}.g-score-card .g-result-stats{grid-template-columns:repeat(3,1fr)}
.g-critical{color:#f4bb87!important}.g-reload-progress{height:3px;width:100%;background:#e4e7d328;margin-top:9px}.g-reload-progress i{display:block;height:100%;width:var(--progress,0%);background:var(--g-accent)}
.g-hud-top,.g-hud-bottom{left:max(24px,calc((100vw - 2100px)/2));right:max(24px,calc((100vw - 2100px)/2))}.g-hud-top>div:first-child{transform:scale(var(--g-hud-scale,1));transform-origin:top left}.g-practice-stats{transform:scale(var(--g-hud-scale,1));transform-origin:top right}.g-vitals{transform:scale(var(--g-hud-scale,1));transform-origin:bottom left}.g-weapon-status{transform:scale(var(--g-hud-scale,1));transform-origin:bottom right}.g-hotkeys{left:max(24px,calc((100vw - 2100px)/2));transform:scale(var(--g-hud-scale,1));transform-origin:bottom left;font-size:9px;letter-spacing:.4px;white-space:pre}.g-wave-strip{transform:translateX(-50%) scale(var(--g-hud-scale,1));transform-origin:top center}.g-killfeed{right:max(24px,calc((100vw - 2100px)/2))}.g-pickup{white-space:normal;text-align:center;max-width:80vw}.g-round-chip{white-space:normal;text-align:center;max-width:85vw}.g-notice{max-width:min(600px,90vw);text-align:center;line-height:1.7}
#tour-quality{background:#edf1e5;border:1px solid #bdcbb5;border-radius:3px;color:#42543f;font:11px Inter,Arial,sans-serif;padding:5px 8px;max-width:125px}
@media(max-width:1000px){.g-menu-grid{gap:30px}.g-briefing{padding-left:24px}.g-tabs{gap:15px}.g-bindings{gap:0 15px}.g-bindings>div{font-size:10px}}
@media(max-width:760px){.g-menu-grid{grid-template-columns:1fr 1fr;gap:22px}.g-intro h1{font-size:35px}.g-briefing{padding-left:18px}.g-tabs{gap:11px}.g-tabs button{font-size:8px!important;letter-spacing:.6px}.g-bindings{grid-template-columns:1fr}.g-session-modes{gap:4px}.g-session-modes button{padding-inline:6px}.g-session-modes small,.g-session-modes span{font-size:8px}.g-hotkeys{font-size:7px}}
@media(max-width:600px){.g-menu-grid{grid-template-columns:1fr;gap:28px}.g-briefing{padding:24px 0 0}.g-tab-panel{max-height:none;padding-right:3px}.g-tabs{justify-content:space-between;gap:14px}.g-tabs button{font-size:10px!important;letter-spacing:1px}.g-bindings{grid-template-columns:1fr 1fr}.g-session-modes small,.g-session-modes span{font-size:9px}.g-build{font-size:8px}.g-intro h1{font-size:43px}.g-score-card{padding:20px}.g-score-card .g-result-stats{grid-template-columns:1fr 1fr}.g-hud-top,.g-hud-bottom{left:18px;right:18px}.g-hotkeys{left:18px;font-size:6px;white-space:normal;max-width:85vw}.g-wave-strip{max-width:88vw;white-space:normal;text-align:center}.g-vitals{gap:10px}.g-vitals>div{width:56px}.g-weapon-status p{max-width:160px;line-height:1.8}.g-result-score{gap:20px}.g-result-card{padding:23px}.g-notice{bottom:100px}}
@media(prefers-reduced-motion:reduce){.g-notice{transition:none}}

.g-addon-settings{margin-top:24px;border-top:1px solid var(--g-line);padding-top:20px}.g-addon-settings fieldset{min-width:0;border:1px solid var(--g-line);border-radius:4px;padding:10px 14px 12px;margin:18px 0}.g-addon-settings legend{padding:0 7px;font:12px Inter,Arial,sans-serif;color:#d8ddc5}.g-feature-status{font:10px/1.7 ui-monospace,monospace;color:#cabd95;margin:4px 0 10px}.g-addon-settings details{border-top:1px solid var(--g-line);margin-top:10px;padding-top:11px}.g-addon-settings summary{cursor:pointer;font-size:11px;color:#b8c9af;padding:4px 0;line-height:1.7}.g-addon-settings summary:focus-visible{outline:2px solid var(--g-accent);outline-offset:4px}.g-addon-settings details .g-setting:first-of-type{margin-top:18px}.g-addon-settings .g-setting select{max-width:100%}
/* Controller focus stays visible after programmatic gamepad navigation. */
.gamepad-input #tactical-ui :focus {outline:2px solid var(--g-gold,#dec491);outline-offset:4px;box-shadow:0 0 0 5px #dec49120}
.g-pad-settings{padding:18px 0 24px;border-bottom:1px solid #ffffff16;margin-bottom:24px}
.g-pad-settings h3{font-size:24px;margin:10px 0}.g-pad-settings h4{margin-top:24px}
.g-pad-settings summary{cursor:pointer;padding:14px 0;color:#ddd4be}
.g-pad-bindings>div{display:grid;grid-template-columns:1fr 90px 90px;gap:8px;align-items:center;padding:7px 0}
.g-pad-bindings>div[hidden]{display:none}.g-pad-bindings select{min-width:0;padding:8px}
@media(max-width:500px){.g-pad-bindings>div{grid-template-columns:1fr 75px 75px;font-size:12px}}
.g-grenade-status{position:absolute;right:32px;bottom:190px;display:grid;grid-template-columns:auto auto;gap:4px 16px;max-width:270px;padding:9px 12px;background:#142024df;border:1px solid #d6b56c55;color:#d8c18b;font-size:11px;pointer-events:none}.g-grenade-status b{font-size:20px;text-align:right}.g-grenade-status small{grid-column:1/-1;font-size:9px;letter-spacing:.05em}.g-grenade-status>i{grid-column:1/-1;height:3px;background:#ffffff16}.g-grenade-status em{display:block;height:100%;background:#e4bd70;width:0}
.touch-device .g-grenade-status{left:45%;right:auto;bottom:78px;max-width:200px;padding:4px 7px}.touch-device .g-grenade-status b{font-size:15px}.touch-device .g-grenade-status small{font-size:8px}

.g-violence-notice{margin:12px 0;padding:12px 14px;background:#341e2440;border-left:2px solid #a9636e;font-size:11px;color:#e6c4ca}.g-violence-notice>b{letter-spacing:.1em;text-transform:uppercase;font-size:10px}.g-violence-notice p{margin:6px 0;line-height:1.55}.g-violence-notice .g-text{font-size:10px;margin-right:12px;min-height:32px}.g-screen-blood{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}.g-screen-blood i{position:absolute;border-radius:43% 57% 38% 62%;background:radial-gradient(ellipse at 30% 25%,var(--blood-color) 0 16%,transparent 18%),radial-gradient(ellipse at 58% 60%,var(--blood-color) 0 35%,transparent 39%),radial-gradient(ellipse at 80% 40%,var(--blood-color) 0 8%,transparent 11%);pointer-events:none}
