/* One screen to choose a map, set up, and play. Gameplay styles stay independent. */
:root{--lobby-amber:#f3b27e;--lobby-white:#edf0ed;--lobby-muted:#a3b1b8;--lobby-line:#adbec329}
.booting #menu,.booting #masthead{visibility:hidden}
body:not(.playing) #masthead{inset:0 0 auto;height:66px;padding:0 4%;gap:34px;background:#0e171c;border-bottom:1px solid var(--lobby-line);z-index:14}
body:not(.playing) #masthead .wordmark{font-size:17px;letter-spacing:2px;white-space:nowrap}
body:not(.playing) #masthead .logo{width:32px;height:32px;font-size:26px;color:#152028;background:var(--lobby-amber)}
body:not(.playing) #masthead .build-tag{display:none}.lobby-navigation{display:flex;align-self:stretch;align-items:stretch;gap:27px;margin-right:auto;margin-left:16px}
.lobby-navigation>button,.lobby-navigation #controls-button{position:relative;border:0;background:none;color:#a5b3bb;font:700 11px Arial;letter-spacing:.8px;padding:0;white-space:nowrap}.lobby-navigation>span{display:flex}.lobby-navigation #controls-button{height:100%}.lobby-navigation button:hover{color:#fff}.lobby-navigation>button.active{color:var(--lobby-amber)}.lobby-navigation>button.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--lobby-amber)}
.playing .lobby-navigation{display:none}body:not(.playing) .top-actions{gap:10px}body:not(.playing) .icon-button{width:36px;height:36px;border-color:var(--lobby-line);background:#16232a}
#menu{overflow:auto;background:radial-gradient(ellipse at 20% 20%,#243b4145,transparent 65%),#0c151b;color:var(--lobby-white);scrollbar-width:thin;scrollbar-color:#51606a #0c151b}
#menu:has(#lobby-drawer:not([hidden])){z-index:20}
.lobby-shell{width:min(1280px,92%);margin:0 auto;padding:92px 0 20px}
.lobby-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.lobby-kicker{font:10px monospace;letter-spacing:2px;color:var(--lobby-amber)}.lobby-heading h1{font:600 clamp(25px,2.7vw,38px)/1.15 Arial;letter-spacing:-1.2px;margin:8px 0 0}.solo-label{font:11px monospace;letter-spacing:.8px;color:#aebfc3;display:flex;align-items:center;gap:9px}.solo-label i{width:5px;height:5px;border-radius:50%;background:#a7ceac}
.lobby-grid{display:grid;grid-template-columns:minmax(0,1fr) 354px;gap:26px;align-items:start}.battlefields{min-width:0}
.map-hero{height:246px;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(140deg,#486068,#1a292e);border:1px solid #9bb2b532}.map-hero img{width:100%;height:100%;object-fit:cover;display:block}.map-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#09151bef,transparent 70%)}.map-hero-label{position:absolute;left:25px;bottom:22px;right:25px}.map-hero-label>span{font:10px monospace;letter-spacing:1.8px;color:#e6c7a3}.map-hero-label h2{font:700 38px/1.1 Arial;letter-spacing:-1.3px;margin:7px 0}.map-hero-label p{font:12px/1.5 Arial;color:#d3dfdf;margin:0;max-width:90%}.map-hero-badge{position:absolute;right:13px;top:13px;font:9px monospace;letter-spacing:1px;color:#e5e9e3;background:#0b1727b3;padding:7px 9px}
.section-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 11px}.section-label h2{font:600 14px Arial;letter-spacing:0;margin:0}.section-label>span{font:10px Arial;color:#94a8b2}.section-label>button{border:0;background:none;color:var(--lobby-amber);font:11px Arial;padding:0}
#lobby-map-slot .map-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#lobby-map-slot .map-choice{position:relative;display:block;min-height:0;background:#14232b;border:1px solid #a8c1cb35;color:#d7e1e1;transition:border-color .15s,background .15s;overflow:hidden}
#lobby-map-slot .map-choice canvas{display:block;width:100%;height:76px;object-fit:cover;opacity:.85}
#lobby-map-slot .map-choice>span{padding:10px 11px;display:block}#lobby-map-slot .map-choice b{font:600 14px Arial;white-space:normal}#lobby-map-slot .map-choice small{font:10px/1.4 Arial;color:#a5b5bb;letter-spacing:0;margin-top:4px}
#lobby-map-slot .map-choice.selected{border-color:var(--lobby-amber);background:#302c27;box-shadow:inset 0 -2px var(--lobby-amber)}#lobby-map-slot .map-choice.selected:after{content:'✓';position:absolute;right:7px;top:7px;display:grid;place-items:center;width:20px;height:20px;background:var(--lobby-amber);color:#192128;font:700 12px Arial;border-radius:50%}#lobby-map-slot .map-choice.selected canvas{opacity:1}#lobby-map-slot .map-choice:hover{border-color:#f1c19c;background:#28353a}.map-note{font:11px/1.5 Arial;color:#9bafb8;margin:10px 0 0;min-height:17px}
.training-direct{margin-top:19px}.training-direct .section-label{margin-top:0}.training-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.training-links a{display:flex;align-items:center;gap:12px;padding:15px 16px;min-height:68px;margin:0;border:1px solid var(--lobby-line);background:#18262d;text-decoration:none;color:#e2e8e7;transition:border-color .15s}.training-links a:hover,.training-links a.selected{border-color:var(--lobby-amber);background:#2e2b27}.training-links b{font:600 13px Arial}.training-links small{display:block;font:11px/1.4 Arial;color:#9eb1bb;margin-top:5px}.training-links a>span:last-child:not(:first-child){margin-left:auto}.training-links .training-icon{font:25px Arial;color:#c8b69c}#lobby-range-slot .training-link{display:grid;grid-template-columns:1fr 18px;gap:0 10px}#lobby-range-slot .training-link>span{font:600 13px Arial;grid-column:1}#lobby-range-slot .training-link small{grid-column:1}#lobby-range-slot .training-link>b{grid-column:2;grid-row:1/3;font:21px Arial;color:#c8b69c}
.deploy-panel{padding:21px;background:#14222ad9;border:1px solid var(--lobby-line);border-top:2px solid var(--lobby-amber);box-shadow:0 10px 40px #0002;min-width:0}.deploy-panel>.section-label:first-child{margin-top:0}.deploy-panel .section-label>span{font:9px monospace;letter-spacing:.4px;color:#b4bdb8}
.deploy-panel .game-mode-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:0 0 17px}.deploy-panel .game-mode-switch button{min-width:0;min-height:61px;padding:11px 5px;text-align:center;font:600 13px Arial;letter-spacing:0;background:#0c171f;border:1px solid #b0c6cd2b;color:#bac7cd}.deploy-panel .game-mode-switch small{font:10px Arial;line-height:1.4;margin-top:5px;color:#98acb7}.deploy-panel .game-mode-switch [aria-pressed=true]{border-color:var(--lobby-amber);color:#ffcfaa;background:#e9ad7912;box-shadow:inset 0 -2px var(--lobby-amber)}.deploy-panel .game-mode-switch button:hover{border-color:#d9c3ac}
.deploy-selection h2{font:600 18px/1.3 Arial;letter-spacing:-.3px;margin:0 0 7px}.deploy-selection>p{font:12px/1.5 Arial;color:#a8bac4;margin:0;min-height:36px}.deploy-panel .frontline-run-choice{margin:12px 0 0;gap:6px}.deploy-panel .frontline-run-choice button{padding:9px 8px;text-align:center;background:#101b23}.deploy-panel .frontline-run-choice b{font:600 10px Arial}.deploy-panel .frontline-run-choice small{display:none}.deploy-panel .frontline-run-choice [aria-pressed=true]{background:#adc4ab0c;color:#d2e4cd;border-color:#a4b9aa70;box-shadow:none}
.inline-select{margin-top:13px;display:flex;align-items:center;gap:12px}.inline-select label{font:12px Arial;color:#bcc8cd}.deploy-panel select{min-width:0;border:1px solid #a6bcc340;border-radius:0;background:#0f1c24;color:#ecede5;padding:9px;font:12px Arial;flex:1;color-scheme:dark}.weapon-heading{margin-top:21px}
#lobby-weapons-slot .loadout-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}#lobby-weapons-slot .loadout-option{min-height:58px;padding:10px 2px;background:#0e1a22;text-align:center;border:1px solid #b4c8d12e;color:#b8c8ce;border-radius:0}#lobby-weapons-slot .loadout-option b{font:600 14px Arial;letter-spacing:.2px}#lobby-weapons-slot .loadout-option small{font:9px Arial;color:#96abb7;margin-top:7px}#lobby-weapons-slot .loadout-option.selected{color:#f8cba8;border-color:#e9b082;background:#d8a16d12}
#lobby-magazine-slot .magazine-row{margin:12px 0 0;padding:0;display:flex;align-items:center;gap:10px}#lobby-magazine-slot label{font:11px Arial;color:#aabcc5;letter-spacing:0}#lobby-magazine-slot select{font-size:11px;padding:8px}
.deploy-panel .difficulty-row{padding:16px 0 0;gap:5px;flex-wrap:nowrap}.deploy-panel .difficulty-row>span{font:10px Arial;letter-spacing:0;color:#aabcc5}.deploy-panel .difficulty{font:10px Arial;letter-spacing:0;padding:7px 8px;border-radius:0}.deploy-panel .difficulty.selected{background:#dab58d13;border-color:#d6ae7a75;color:#f6d4ac}.deploy-panel .survival-note{font:10px/1.5 Arial;color:#8ea6b4;margin:8px 0 17px;min-height:15px}
#lobby-start-slot #start{width:100%;min-height:56px;padding:0 20px;border:0;border-radius:0;background:var(--lobby-amber);color:#15212a}#lobby-start-slot #start>span:first-child{font:800 14px Arial;letter-spacing:1px}#lobby-start-slot #start>span:last-child{font-size:25px}#lobby-start-slot #start:hover{background:#ffd0a6}#lobby-start-slot #start:disabled{background:#3f4c55;color:#a9b6bf;cursor:not-allowed;transform:none}
.lobby-deployment-note{font:10px/1.5 Arial;color:#9eb0b9;margin:10px 0 0;text-align:center}.lobby-configure{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 0 0;margin:12px 0 0;border:0;border-top:1px solid var(--lobby-line);background:none;color:#c2c9c5;text-align:left;font:11px Arial}.lobby-configure b{font:17px Arial}.lobby-configure:hover{color:var(--lobby-amber)}
.lobby-footer{display:flex;align-items:center;gap:25px;margin-top:24px;padding:16px 0 0;border-top:1px solid var(--lobby-line);font:10px Arial;color:#8198a7}.lobby-footer>span:last-child{margin-left:auto;font:9px monospace;letter-spacing:.7px}.lobby-footer #opening-replay{font:11px Arial;padding:0;color:#a5b7c0}
#lobby-drill-slot .range-cards{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:13px 0 0}#lobby-drill-slot .range-card{padding:10px;min-height:0}#lobby-drill-slot .range-card>b{font-size:11px}#lobby-drill-slot .range-card small{font-size:9px}#lobby-drill-slot .range-card p{display:none}
.lobby-shell button:focus-visible,.lobby-shell a:focus-visible,.lobby-shell select:focus-visible,.lobby-navigation button:focus-visible{outline:2px solid #ffd0a6;outline-offset:3px}
/* The modal menus contain the existing controls, with their original save behavior. */
.lobby-drawer{position:fixed;inset:0;z-index:40;display:flex;justify-content:flex-end;padding:26px;background:transparent}
.drawer-backdrop{position:absolute;inset:0;border:0;background:#04090fb3;backdrop-filter:blur(7px)}
.drawer-sheet{position:relative;width:690px;max-width:100%;height:calc(100% - 48px);display:flex;flex-direction:column;background:linear-gradient(135deg,#17232bf7,#0d171ffb);border:1px solid #d1dbe02e;box-shadow:0 24px 80px #0008;animation:drawer-arrive .23s ease-out;overflow:hidden}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:26px 30px;border-bottom:1px solid #cad6dd21;gap:20px}.drawer-header small{font:8px monospace;letter-spacing:1.4px;color:#cda47c}.drawer-header h2{font:500 31px/1.1 Arial;letter-spacing:-1px;margin:8px 0 0}.drawer-header>button{display:flex;align-items:center;gap:10px;border:0;background:none;color:#bbc6ce;font:8px monospace;letter-spacing:.8px;padding:10px 0}.drawer-header kbd{font-size:8px;color:#8295a4;padding:3px;border:1px solid #c4d4e329}.drawer-header b{font:26px Arial;color:#dce1e4;margin-left:8px}.drawer-header>button:hover{color:#f4b88c}
.drawer-scroll{padding:25px 30px;overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#7c827c #172028;overscroll-behavior:contain}
.drawer-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 30px;border-top:1px solid #cad6dd21;background:#0a131b66}.drawer-footer>span{font:9px/1.6 Arial;color:#8da1af;max-width:55%}.drawer-footer>button{padding:13px 14px;border:1px solid #dcba9159;background:#deb38b0c;color:#e4c09d;font:700 8px Arial;letter-spacing:1px;white-space:nowrap}.drawer-footer>button span{margin-left:15px}.drawer-footer>button:hover{background:#deb38b24}
.drawer-scroll .mission-board{position:static;width:100%;max-width:none;max-height:none;overflow:visible;background:none;border:0;box-shadow:none;padding:0;margin:0;backdrop-filter:none}
.drawer-scroll .story-board{border:0}.drawer-scroll .story-board-top{padding:0 0 18px;background:none}.drawer-scroll .chapter-art{height:175px;background:#152b2f}.drawer-scroll .chapter-art canvas{display:block;width:100%;height:100%;object-fit:cover;opacity:.5}.drawer-scroll .chapter-coordinate,.drawer-scroll .chapter-number{display:none}.drawer-scroll .chapter-art-caption{left:23px;bottom:22px}.drawer-scroll .chapter-art-caption b{font-size:45px}.drawer-scroll .chapter-brief{padding:25px 0 0}.drawer-scroll .chapter-brief h2{font-size:27px}.drawer-scroll .story-future{display:none}.drawer-scroll .story-feature-line{margin-top:18px}.drawer-scroll .story-route{margin-top:25px;grid-template-columns:repeat(2,1fr)}
.drawer-scroll .map-options{grid-template-columns:repeat(4,1fr)}.drawer-scroll .map-choice{min-width:0}.drawer-scroll .map-choice>span{padding:9px}.drawer-scroll .map-choice b{font-size:10px}.drawer-scroll .map-choice small{font-size:7px}.drawer-scroll .map-summary{padding:14px 0 22px}.drawer-scroll .board-heading{padding:18px 0}.drawer-scroll .mission-list{padding:0;max-height:none}.drawer-scroll .mission-brief{margin:20px 0 0}.drawer-scroll .frontline-brief{padding:22px 0 0}.drawer-scroll .frontline-brief h2{font-size:29px}.drawer-scroll .map-select-heading{padding:0 0 15px}.drawer-scroll .training-menu{padding:0}.drawer-scroll .training-menu>h2{font-size:28px}
.armory-display{position:relative;background:radial-gradient(ellipse at 55% 50%,#b6c7cf12,transparent 65%),repeating-linear-gradient(90deg,transparent,transparent 48px,#d7e1e205 49px,#d7e1e205 50px);border-block:1px solid #c7d7df20;padding:17px 19px 20px;min-height:240px;overflow:hidden}.armory-display>span{font:8px monospace;letter-spacing:2px;color:#8ba0ae}.armory-display canvas{width:100%;height:175px;display:block;filter:drop-shadow(0 15px 8px #0005)}.armory-display>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.armory-display b{font:600 27px Arial;letter-spacing:2px}.armory-display>div>span{font:8px monospace;letter-spacing:.8px;color:#d0ad86}
#lobby-armory-slot #lobby-loadout{margin:23px 0 0;background:none;border:0;padding:0;max-width:none}#lobby-armory-slot #lobby-loadout>summary{display:none}.drawer-scroll .loadout-options{grid-template-columns:repeat(4,1fr);gap:8px}.drawer-scroll .loadout-option{min-height:68px;background:#0c18224f;padding:13px}.drawer-scroll .loadout-option b{font-size:15px;letter-spacing:1px}.drawer-scroll .loadout-option small{font-size:8px;margin-top:8px}.drawer-scroll .loadout-option.selected{border-color:#d9a575;background:#cfa16e14}.drawer-scroll .armory-label{margin:0 0 12px}.drawer-scroll .armory-label>span{font-size:9px;letter-spacing:1.3px}.drawer-scroll .loadout-description{font-size:12px;line-height:1.8;color:#a6b8c2}.drawer-scroll .weapon-power{font:9px/1.8 monospace;color:#dec09d;margin:17px 0 12px}.drawer-scroll .magazine-row{padding:17px 0 10px;border-top:1px solid #c7d3dc22;margin-top:22px}.drawer-scroll .magazine-row label{font-size:9px}.drawer-scroll .magazine-row select{padding:10px;color:#e3d2bc;background:#15232e}.drawer-scroll .magazine-note{font-size:10px;color:#9aafbe}.drawer-footnote{font:10px/1.7 Arial;color:#7e96a6;margin:23px 0 0}
.training-pane-intro{font:14px Arial;color:#b3c2cb;margin:0 0 22px}
#lobby-range-slot .training-link,.training-destination{display:block;position:relative;padding:27px;margin:0 0 15px;color:#dce5e8;text-decoration:none;border:1px solid #c2d4dd2e;background:linear-gradient(120deg,#20333ca6,#13263050);min-height:155px}
#lobby-range-slot .training-link>span{font:600 23px Arial;letter-spacing:-.5px;display:block;margin:10px 0}#lobby-range-slot .training-link small{font:12px/1.7 Arial;color:#9bb1bd;display:block;max-width:80%}#lobby-range-slot .training-link b{position:absolute;right:25px;bottom:25px;color:#deb48d;font:28px Arial}
#lobby-range-slot .training-link:before{content:'01 / PRACTICE AT YOUR PACE';font:8px monospace;letter-spacing:1.4px;color:#e4b38c}
.training-destination{background:linear-gradient(120deg,#d79d6a19,#13263050)}.training-destination>small{font:8px monospace;letter-spacing:1.4px;color:#e4b38c}.training-destination>b{font:600 23px Arial;letter-spacing:-.5px;display:block;margin:12px 0}.training-destination>p{font:12px/1.7 Arial;color:#9bb1bd;margin:0 0 18px}.training-destination>span{font:8px monospace;letter-spacing:1px;color:#e5bc95}#lobby-range-slot .training-link:hover,.training-destination:hover{border-color:#e2b68c88;background-color:#bc936717}
#lobby-explore-slot{padding-top:10px}#lobby-explore-slot .practice-button{margin:0;padding:18px 0}#lobby-explore-slot .foundry-button{display:block}
/* A short brand ident, with no unrelated character or map briefing. */
#opening{position:fixed;inset:0;z-index:50;overflow:hidden;background:#0a1118;color:#f1eee8;--film-progress:0}
.cinema-title-art{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 30%,#55574745,transparent 60%);overflow:hidden}.cinema-title-art i{position:absolute;width:30%;height:140%;left:45%;top:-20%;transform:skew(-25deg);background:linear-gradient(90deg,#94b2b30a,#9cb6ba13);border-left:1px solid #b8c5c51f}.cinema-title-art i:nth-child(2){left:15%;width:18%}.cinema-title-art i:nth-child(3){left:84%;width:10%;background:#e0a3730e}
.cinema-vignette{position:absolute;inset:0;background:radial-gradient(ellipse,transparent 30%,#040a11aa)}.cinema-light{position:absolute;inset:-30%;background:linear-gradient(110deg,transparent 43%,#f6bb8229 50%,transparent 55%);transform:translateX(-50%)}
.cinema-top,.cinema-bottom{position:absolute;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;z-index:5}.cinema-top{top:30px;font:10px monospace;letter-spacing:2px;color:#9caeb6}.cinema-emblem{font:900 italic 32px Arial;color:var(--lobby-amber);display:flex;gap:17px;align-items:center}.cinema-emblem>span{font:8px/1.7 monospace;letter-spacing:1.5px;color:#9bb0bb}.cinema-bottom{bottom:30px;font:10px monospace;letter-spacing:1px;color:#91a8b5}.cinema-bottom>div{display:flex;gap:20px}.cinema-bottom button{font:10px monospace;letter-spacing:1px;background:#12232b;border:1px solid #c0cdd535;padding:12px 15px;color:#d2dce0}.cinema-bottom #opening-skip{color:var(--lobby-amber)}
.cinema-entry{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:30px;text-align:center}.cinema-kicker{font:11px monospace;letter-spacing:4px;color:#d7b390}.cinema-entry h1{font:900 clamp(70px,12vw,170px)/.9 Arial;letter-spacing:-.065em;margin:25px 0 22px;color:#edf1ef}.cinema-entry h1>span{font:600 20px Arial;letter-spacing:18px;color:#e3b28a;padding:19px 0 0 18px}.cinema-title-rule{font:9px monospace;letter-spacing:2px;color:#9bacb7;margin:10px 0 37px}.cinema-entry #opening-enter{display:flex;justify-content:space-between;align-items:center;min-width:235px;padding:18px 22px;background:var(--lobby-amber);color:#14232b;border:0;font:800 12px Arial;letter-spacing:2px}.cinema-entry #opening-enter b{font:23px Arial}.cinema-entry #opening-enter:hover{background:#ffcca0}.cinema-entry p{font:9px monospace;letter-spacing:1.3px;color:#8aa1af;margin:14px 0}.cinema-watch{border:0;background:none;color:#ccd5d9;padding:12px;font:10px Arial;letter-spacing:1px}
.cinema-signature{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transform:scale(.9);transition:opacity .3s,transform 1.1s}.signature-mark{font:900 italic 140px/.8 Arial;color:var(--lobby-amber);text-shadow:0 0 60px #f6ad6c22}.cinema-signature strong{font:900 clamp(45px,8vw,105px)/1 Arial;letter-spacing:-4px;margin-top:26px}.cinema-signature>span:last-child{font:600 15px Arial;letter-spacing:15px;color:#d9b18c;margin:20px 0 0 15px}
#opening[data-state=playing] .cinema-signature{opacity:1;transform:scale(1)}#opening[data-state=playing] .cinema-light{animation:ident-sweep 3.8s ease-out both}#opening[data-shot=ready] .cinema-signature strong,#opening[data-shot=ready] .cinema-signature>span:last-child{opacity:0}#opening[data-shot=deploy] .signature-mark{text-shadow:0 0 70px #f6ad6c50}.cinema-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#ffffff12}.cinema-progress i{display:block;width:calc(var(--film-progress)*100%);height:100%;background:var(--lobby-amber)}
@keyframes ident-sweep{to{transform:translateX(50%)}}@keyframes drawer-arrive{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
.cinema-reduced *,.lobby-reduced *{animation:none!important;transition:none!important}.cinema-reduced .cinema-light{display:none}
#error,#mobile-note{z-index:70}
@media(min-width:1500px) and (min-height:850px){.lobby-shell{padding-top:112px}.map-hero{height:310px}#lobby-map-slot .map-choice canvas{height:100px}.training-links a{min-height:78px}.lobby-grid{gap:32px;grid-template-columns:minmax(0,1fr) 380px}.deploy-panel{padding:26px}}
@media(max-height:760px) and (min-width:901px){.lobby-shell{padding-top:82px}.lobby-heading{margin-bottom:16px}.lobby-heading h1{font-size:29px}.map-hero{height:202px}.lobby-grid{gap:20px}.deploy-panel{padding:17px}.deploy-panel .game-mode-switch{margin-bottom:12px}.deploy-panel .game-mode-switch button{min-height:55px;padding:8px 4px}.deploy-selection>p{min-height:32px;font-size:11px}.weapon-heading{margin-top:15px}.deploy-panel .difficulty-row{padding-top:12px}.deploy-panel .survival-note{margin-bottom:12px}.lobby-configure{margin-top:9px;padding-top:10px}.lobby-footer{margin-top:17px}#lobby-map-slot .map-choice canvas{height:64px}.training-direct{margin-top:15px}.training-links a{padding:12px}.map-hero-label h2{font-size:33px}}
@media(max-width:1100px){.lobby-shell{width:94%}.lobby-grid{grid-template-columns:minmax(0,1fr) 325px;gap:18px}body:not(.playing) #masthead{padding:0 3%;gap:20px}.lobby-navigation{gap:20px;margin-left:5px}#lobby-map-slot .map-choice>span{padding:9px 7px}#lobby-map-slot .map-choice b{font-size:12px}#lobby-map-slot .map-choice small{font-size:9px}.training-links a{padding:12px 10px}.training-links small{font-size:10px}.training-links .training-icon{display:none}.map-hero-label p{font-size:11px}}
@media(max-width:900px){body:not(.playing) #masthead{height:61px;gap:18px}.lobby-navigation{gap:17px}.lobby-navigation>button,.lobby-navigation #controls-button{font-size:9px}.lobby-navigation #lobby-play{display:none}.lobby-shell{padding-top:84px;width:92%;max-width:700px}.lobby-grid{grid-template-columns:1fr;gap:24px}.map-hero{height:220px}.deploy-panel{display:block}.lobby-footer{flex-wrap:wrap;padding-bottom:60px}.solo-label{font-size:9px}.lobby-heading h1{font-size:28px}.drawer-sheet{height:calc(100% - 40px)}.drawer-header{padding:20px}.drawer-scroll{padding:20px}.drawer-footer{padding:16px 20px}.cinema-bottom>span{display:none}}
@media(max-width:560px){body:not(.playing) #masthead .wordmark{font-size:12px;letter-spacing:1px}body:not(.playing) #masthead .logo{width:26px;height:26px;font-size:22px}.lobby-navigation{margin:0;gap:12px}.lobby-navigation #lobby-training,.lobby-navigation #lobby-armory{display:none}.lobby-heading{align-items:flex-start}.lobby-heading h1{font-size:24px}.lobby-kicker{font-size:8px}.solo-label{font-size:8px;gap:5px;margin-top:3px}#lobby-map-slot .map-options{grid-template-columns:repeat(2,1fr)}#lobby-map-slot .map-choice canvas{height:75px}#lobby-map-slot .map-choice b{font-size:14px}.map-hero{height:210px}.map-hero-label{left:18px;bottom:18px}.map-hero-label h2{font-size:32px}.training-links{grid-template-columns:1fr}.lobby-footer>span:last-child{display:none}.lobby-drawer{padding:10px}.drawer-header h2{font-size:24px}.drawer-header kbd{display:none}.cinema-entry h1{font-size:72px}.cinema-kicker{font-size:9px}.cinema-bottom{left:6%;right:6%;justify-content:flex-end}.cinema-bottom button{font-size:9px;padding:10px}.cinema-top>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.cinema *,.lobby-shell *{animation:none!important;transition:none!important}}

.map-explore{position:absolute;right:14px;bottom:20px;padding:10px 12px;background:#0c1924c9;border:1px solid #bdd0d148;color:#e5d3bb;font:11px Arial}.map-explore:hover{border-color:var(--lobby-amber);background:#172a33}.map-hero-label p{max-width:75%}.drawer-scroll .map-select-heading{display:none}#lobby-drill-slot .range-card>span:nth-child(2)>span{display:none}#lobby-drill-slot .range-card>span:nth-child(2)>b{font-size:12px}#lobby-drill-slot .range-card-number{font-size:13px}
.cinema-signature,.cinema-title-art,.cinema-light,.cinema-vignette{pointer-events:none}
/* Keep the primary action in view at desktop and laptop heights. */
.cinema-signature,.cinema-title-art,.cinema-light,.cinema-vignette{pointer-events:none}
.deploy-panel .deploy-selection h2{display:none}
.deploy-panel .game-mode-switch{margin-bottom:12px}.deploy-panel .game-mode-switch button{min-height:52px;padding:8px 4px}
.deploy-panel .deploy-selection>p{font-size:12px;line-height:1.45;min-height:35px}
.deploy-panel .frontline-run-choice{margin-top:10px}.deploy-panel .frontline-run-choice button{padding:8px}
.deploy-panel .weapon-heading{margin:16px 0 9px}
#lobby-weapons-slot .loadout-option{min-height:52px;padding:8px 2px}
#lobby-magazine-slot .magazine-row{margin-top:10px}
.deploy-panel .difficulty-row{padding:13px 0 16px}
.deploy-panel .survival-note{display:none}
.lobby-deployment-note:empty{display:none}
.lobby-configure{border:0;margin:11px 0 0;padding:0;font-size:11px}
#lobby-range-slot .training-link:before{display:none}
#lobby-range-slot .training-link{min-height:68px;padding:15px 16px;margin:0;display:grid;grid-template-columns:1fr 18px;border:1px solid var(--lobby-line);background:#18262d}
#lobby-range-slot .training-link>span{font:600 13px Arial;margin:0;color:#e2e8e7}
#lobby-range-slot .training-link small{font:11px/1.4 Arial;max-width:none;margin-top:5px}
#lobby-range-slot .training-link b{position:static;align-self:center;font:21px Arial}
#lobby-range-slot .training-link:hover,#lobby-range-slot .training-link.selected{border-color:var(--lobby-amber);background:#2e2b27}
@media(max-height:700px) and (min-width:901px){body:not(.playing) #masthead{height:56px}.lobby-shell{padding-top:70px}.lobby-heading{margin-bottom:13px}.lobby-heading h1{font-size:26px;margin-top:5px}.lobby-kicker{font-size:9px}.map-hero{height:173px}.deploy-panel{padding:14px 16px}.deploy-panel>.section-label:first-child{margin-bottom:8px}.deploy-panel .game-mode-switch{margin-bottom:10px}.deploy-panel .game-mode-switch button{min-height:47px;font-size:12px}.deploy-panel .game-mode-switch small{font-size:9px;margin-top:4px}.deploy-panel .weapon-heading{margin-top:12px}.deploy-panel .deploy-selection>p{font-size:11px;min-height:30px}.deploy-panel .difficulty-row{padding:10px 0 12px}#lobby-start-slot #start{min-height:49px}#lobby-map-slot .map-choice canvas{height:58px}.training-direct{margin-top:12px}.lobby-footer{margin-top:13px;padding-top:12px}.lobby-configure{margin-top:9px}}

/* Complete four-weapon armory lineup. */
.armory-display{min-height:292px}
.armory-display canvas{height:214px}
.armory-display .armory-weapon-labels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:2px 0 12px;text-align:center}
.armory-display .armory-weapon-labels b{font:700 10px monospace;letter-spacing:1px;color:#d9c4aa}
.armory-display .armory-selected{border-top:1px solid #c7d7df20;padding-top:12px}
.armory-display .armory-selected b{font-size:24px}
.training-pane-intro{font:13px/1.6 Arial;color:#b8c8ce;margin:0 0 18px}
.training-explore-heading{font:8px monospace;letter-spacing:1.5px;color:#d7ad86;border-top:1px solid #cad6dd21;padding:17px 0 8px;margin-top:8px}
.training-destination{display:block;position:relative;padding:20px 22px;margin:0 0 11px;color:#dce5e8;text-decoration:none;border:1px solid #c2d4dd2e;background:linear-gradient(120deg,#20333ca6,#13263050);min-height:0}
.training-destination>small{font:8px monospace;letter-spacing:1.3px;color:#e4b38c}
.training-destination>b{font:600 21px Arial;display:block;margin:9px 0}
.training-destination>p{font:11px/1.6 Arial;color:#9bb1bd;margin:0 0 12px}
.training-destination>span{font:8px monospace;letter-spacing:1px;color:#e5bc95}
.training-destination:hover{border-color:#e2b68c88;background-color:#bc936717}
#lobby-training[aria-expanded="true"]{color:var(--lobby-amber)}

/* Tap-to-select armory cards aligned beneath each weapon model. */
.armory-display .armory-weapon-labels{align-items:stretch;gap:8px;margin:4px 0 13px}
.armory-display .armory-weapon-tap{appearance:none;width:100%;min-width:0;min-height:38px;padding:9px 4px;border:1px solid #a8c8cd2b;background:#10202a;color:#afc2c8;border-radius:2px;font:700 10px monospace;letter-spacing:1.2px;cursor:pointer;touch-action:manipulation;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.armory-display .armory-weapon-tap:hover{border-color:#d5a4778a;background:#d5a47712;color:#f0d0ae}
.armory-display .armory-weapon-tap.selected,.armory-display .armory-weapon-tap[aria-pressed="true"]{border-color:#e4ad7d;background:#d99b6424;color:#f4c79d;box-shadow:inset 0 -2px 0 #dfa876}
.armory-display .armory-weapon-tap:active{transform:translateY(1px)}
.armory-display .armory-weapon-tap:focus-visible{outline:2px solid #f0c69e;outline-offset:2px}
