:root{--cream:#f4efd9;--gold:#e8c481;--green:#b5d9a6;--ink:#142821;--muted:#b9c9b7;--red:#ed9972}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#7b9891;color:var(--cream);font-family:Arial,Helvetica,sans-serif;touch-action:none;overscroll-behavior:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;user-select:none}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button,kbd{font-family:inherit}.hidden{display:none!important}#scene{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#081d1fd9,transparent 76%),linear-gradient(0deg,#081d1f88,transparent 25%,transparent 80%,#081d1f66)}.playing .vignette{background:linear-gradient(0deg,#081a2059,transparent 20%,transparent 80%,#081a2059)}header{position:absolute;top:27px;left:34px;right:34px;display:flex;justify-content:space-between;align-items:center;z-index:5;pointer-events:none}.brand{display:flex;gap:10px;align-items:center;color:var(--cream);text-decoration:none;font-size:16px;letter-spacing:2.4px;pointer-events:auto}.brand svg{width:35px;height:35px;fill:var(--gold)}.brand b{color:var(--gold);font-weight:400}.brand small{display:block;font-size:7px;letter-spacing:2.2px;margin-top:5px;color:#d5dfcb}.top-actions{display:flex;align-items:center;gap:7px;pointer-events:auto}.edition{font-size:9px;letter-spacing:2px;color:var(--gold);margin-right:13px}.icon-btn{width:35px;height:35px;border:1px solid #e3e6c433;border-radius:50%;background:#17302790;backdrop-filter:blur(8px);font-size:12px}.icon-btn:hover{border-color:var(--gold)}.menu{position:absolute;left:7%;top:27%;width:550px;max-width:88vw}.eyebrow{font-size:9px;letter-spacing:2.2px;font-weight:700;color:var(--gold);display:flex;align-items:center;gap:10px}.eyebrow i{width:25px;height:1px;background:var(--gold)}h1{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:clamp(45px,5.5vw,78px);line-height:1.07;letter-spacing:1px;margin:22px 0;font-weight:900}h1 em{font-style:normal;color:var(--gold)}.intro{font-size:14px;line-height:1.9;margin:0 0 22px;color:#e2e6d9}.feature-line{display:flex;gap:15px;font-size:7px;letter-spacing:1.4px;color:#c1ccba;margin-bottom:25px}.feature-line span+span{border-left:1px solid #bbccad55;padding-left:15px}.primary{display:flex;justify-content:space-between;align-items:center;width:330px;max-width:100%;min-height:56px;padding:0 23px;border:0;background:var(--gold);color:#183024;letter-spacing:1.7px;font-size:11px;font-weight:800;box-shadow:0 7px 30px #13292333;transition:background .2s,transform .2s}.primary b{font-size:24px;font-weight:400}.primary:hover{background:#f5d49b;transform:translateY(-1px)}.menu-links{display:flex;gap:28px}.text-btn{background:none;border:0;font-size:11px;color:#d5decc;letter-spacing:.4px;padding:17px 0;text-align:left}.text-btn:hover{color:var(--gold)}.text-btn span{margin-left:9px;color:var(--gold)}.control-preview{display:flex;gap:22px;align-items:center;margin-top:20px}.control-preview b{display:block;color:var(--gold);font-size:8px;letter-spacing:1.3px}.control-preview span{display:block;margin-top:6px;font-size:11px;color:#d0dbc9}.control-preview i{font-size:18px;font-style:normal;color:#9dad9d}.menu-note{font-size:8px;margin-top:24px;color:#adbda9;line-height:1.6}#sceneCaption{position:absolute;right:35px;bottom:35px;text-align:right}#sceneCaption span{font-size:8px;letter-spacing:2.5px;color:#e2d5b3}#sceneCaption p{font-family:Georgia,serif;font-size:19px;font-style:italic;margin:10px 0}#loading{position:absolute;bottom:20px;left:30px;font-size:12px;color:var(--gold)}
/* The battlefield stays open; task details and radio live in the paused journal. */
#hud{position:absolute;inset:0;pointer-events:none}#hud button,#joystick{pointer-events:auto}
.playing header{top:14px;left:18px;right:18px}.playing .brand,.playing .edition{display:none}.playing .top-actions{width:100%;gap:7px}.playing #pause{margin-left:auto}
.icon-btn{width:44px;height:44px;font-size:15px}.hud-menu-button{min-height:44px;display:flex;align-items:center;gap:7px;padding:0 13px;border:1px solid #d3dbc43d;border-radius:5px;background:#122a27a6;backdrop-filter:blur(8px);font-size:8px;letter-spacing:1px}.hud-menu-button b{font-size:19px;font-family:Georgia,serif;color:var(--gold)}.hud-menu-button:hover,.hud-menu-button.active{border-color:var(--gold);background:#183d30ce}
.panel{background:#102b2791;border:1px solid #d5dec02a;backdrop-filter:blur(5px);border-radius:5px}
.compass{position:absolute;top:20px;left:50%;transform:translateX(-50%);display:flex;justify-content:space-around;align-items:center;width:175px;height:22px;font-size:10px;text-shadow:0 1px 5px #061918}.compass b{color:var(--gold);font-size:13px}.compass i{position:absolute;top:27px;left:50%;height:5px;width:1px;background:var(--gold)}.compass small{position:absolute;top:36px;font-size:7px;letter-spacing:1px;color:#d3dbc8}
.navigation{position:absolute;top:68px;left:50%;transform:translateX(-50%);font-size:9px;font-weight:600;letter-spacing:1px;color:var(--gold);text-shadow:0 1px 6px #08241d;max-width:50%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map{position:absolute;top:71px;left:18px;width:112px;padding:7px}.map-title{display:flex;justify-content:space-between;font-size:6px;letter-spacing:1px}.map-title b{color:var(--gold)}.map canvas{display:block;width:100%;height:88px}
.squad-orders{position:absolute;top:66px;left:205px;width:182px;display:flex;flex-direction:column;gap:5px;padding:7px;background:#102c27ed;border:1px solid #ccdaac55;border-radius:6px;box-shadow:0 8px 25px #051b1b66}.orders-label{font-size:7px;letter-spacing:1px;padding:4px 4px 6px;color:var(--gold)}.order{display:flex;align-items:center;gap:8px;min-height:46px;text-align:left;background:#6c8b7110;border:1px solid #bacda83b;border-radius:4px;padding:7px}.role-icon{font-size:22px;color:var(--gold);width:26px;text-align:center}.order div{flex:1}.order b{font-size:8px;letter-spacing:.5px}.order small{display:block;font-size:8px;color:#bbcbb7;margin-top:4px}.order kbd{font-size:8px;color:var(--gold)}.cooling{opacity:.5!important}.order.active{border-color:var(--gold)}
.squad-popup{position:absolute;z-index:12;width:220px;background:#102d26f5;border:1px solid #d9d3a06b;border-radius:7px;padding:10px;box-shadow:0 8px 32px #03171070;pointer-events:auto}.squad-popup-heading{display:flex;align-items:center;justify-content:space-between}.squad-popup-heading>b{font-size:10px;letter-spacing:1px;color:var(--gold)}.squad-popup-heading button{width:40px;height:40px;border:0;background:none;font-size:23px}.squad-popup>small{display:block;font-size:9px;color:var(--muted);margin:0 0 8px}.unit-orders{display:grid;grid-template-columns:1fr 1fr;gap:5px}.unit-orders button{min-height:44px;border:1px solid #bad0ae45;background:#b8ce9c12;border-radius:3px;font-size:9px;line-height:1.4;padding:5px}.unit-orders button:hover{border-color:var(--gold);background:#c6dba329}
.point-order-hint{position:absolute;z-index:11;left:50%;top:100px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:3px 5px 3px 12px;background:#18382de8;border:1px solid #d3d3a363;border-radius:5px;font-size:10px;max-width:85vw}.point-order-hint button{min-height:40px;padding:0 10px;color:var(--gold);font-size:8px;background:none;border:0}
.world-label{position:absolute;transform:translate(-50%,-100%);color:var(--gold);text-align:center;text-shadow:0 1px 5px #031811}.world-label>span{font-size:13px}.world-label b{display:none}.world-label small{display:block;font-size:8px;margin-top:3px}
.notice-toast{position:absolute;top:103px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;max-width:min(420px,65vw);padding:10px 15px;background:#14372bd9;border:1px solid #e4d8a34f;border-radius:5px;font-size:10px;box-shadow:0 5px 20px #10271b33;animation:toast-in .18s ease-out}.notice-toast>span{color:var(--green);font-size:14px}.notice-toast>b{font-size:10px;font-weight:500;line-height:1.4}.notice-toast p{display:none}.killfeed{position:absolute;right:20px;top:77px;font-size:8px;color:var(--gold);text-shadow:0 1px 4px #071b17;letter-spacing:.5px;transition:opacity .25s}
.shot-warning{position:absolute;left:50%;top:98px;transform:translateX(-50%);display:flex;gap:8px;align-items:center;background:#663520e8;border:1px solid #eab5788c;padding:8px 12px;border-radius:5px;color:#ffddb1}.shot-warning>span{font-size:18px}.shot-warning b{font-size:9px;font-weight:600;white-space:nowrap}.shot-warning small{display:none}.shot-warning strong{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums}.drone-panel{position:absolute;left:18px;top:188px;width:112px;padding:6px 8px}.drone-panel>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:7px}.drone-panel b{font-size:13px;color:var(--gold)}.drone-panel small{display:none}.exposure-meter{height:2px;background:#bfc7a638;margin-top:5px}.exposure-meter i{display:block;height:100%;background:var(--red);transition:width .2s}.drone-panel.danger{border-color:#e7a07499;background:#593923d4}.danger{color:var(--red)!important}
.player-status{position:absolute;bottom:26px;left:20px;width:170px;text-shadow:0 1px 4px #081d12}.health-label{display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:1px}.health-label b{font-size:15px;color:var(--green);font-weight:600;font-variant-numeric:tabular-nums}.health,.progress,.tank-health{height:4px;background:#d6dfbd35;overflow:hidden}.health{margin-top:5px;border-radius:2px}.health i,.progress i,.tank-health i{display:block;height:100%;background:var(--gold);transition:width .2s}.health i{width:100%;background:var(--green)}#woundHint{font-size:7px;display:block;min-height:9px;margin-top:4px;color:var(--red)}
.survival-panel{position:absolute;left:20px;bottom:81px;width:170px;display:grid;grid-template-columns:1fr 1fr;column-gap:10px;text-shadow:0 1px 4px #081d12}.survival-line{display:flex;align-items:center;justify-content:space-between;font-size:6px;letter-spacing:.8px}.survival-line b{font-size:10px;font-weight:500;color:var(--gold)}.survival-meter{height:2px;background:#d6dfbd35;margin-top:4px}.survival-meter i{display:block;height:100%;background:var(--gold)}.survival-line:nth-child(1){grid-column:1;grid-row:1}.survival-meter:nth-child(2){grid-column:1;grid-row:2}.survival-line:nth-child(3){grid-column:2;grid-row:1}.survival-meter:nth-child(4){grid-column:2;grid-row:2}.survival-meter.stamina i{background:#acd2da}.condition-line{position:absolute;bottom:35px;left:0;font-size:6px;white-space:nowrap}.condition-line>span{display:none}.condition-line button{min-height:40px;font-size:8px;letter-spacing:.6px;border:1px solid #eda97788;border-radius:4px;background:#503221d9;color:#f7c897;padding:0 10px}
.weapon-panel{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);width:242px;padding:8px 9px;background:linear-gradient(0deg,#112d25cf,#10251d55);border:1px solid #ccd5b736;border-radius:5px;backdrop-filter:blur(4px)}.ammo-line{display:flex;align-items:baseline;gap:5px;padding:0 3px 6px}.ammo-line #weaponName{font-size:8px;letter-spacing:.8px;margin-right:auto}.ammo-line b{font-size:23px;line-height:1;font-weight:500;font-variant-numeric:tabular-nums}.ammo-divider{opacity:.45}.ammo-line #ammoReserve{font-size:11px;color:var(--muted)}.ammo-line small{font-size:6px;color:var(--gold)}.weapon-slots{display:flex;gap:5px}.weapon-slot{position:relative;min-height:40px;flex:1;min-width:0;padding:3px 2px;border:1px solid #d7dec331;border-radius:3px;background:#243b2510;display:flex;flex-direction:column;align-items:center;justify-content:center}.weapon-slot svg{width:48px;height:17px;fill:#d0d9bf}.weapon-slot span{font-size:5px;letter-spacing:.5px;margin-top:3px}.weapon-slot kbd{position:absolute;top:3px;left:4px;font-size:6px;color:#ccd6ba}.weapon-slot.selected{background:#b9a86532;border-color:var(--gold)}.weapon-slot.selected svg{fill:var(--gold)}
.combat-controls{position:absolute;bottom:26px;right:20px;width:251px;height:139px;pointer-events:none}.combat-controls button{position:absolute;pointer-events:auto}.utility{width:48px;height:48px;border:1px solid #d4dfbb72;border-radius:50%;background:#13302780;backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center}.utility b{font-size:22px;color:#f1d296;line-height:1}.utility small{font-size:5px;margin-top:4px;white-space:nowrap}.utility kbd{position:absolute;top:6px;left:6px;font-size:6px;color:#d2dbc1}.utility em{font-style:normal;color:var(--gold);font-size:8px}.utility.active{background:#b9a86555;border-color:var(--gold)}.heal{left:0;top:0}.grenade{left:58px;top:0}.reload{left:116px;top:0}.aim{left:103px;bottom:4px}.fire-button{right:0;bottom:0;width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #eac789bb;border-radius:50%;background:#b7a46927;backdrop-filter:blur(4px);touch-action:none}.fire-button svg{width:36px;height:36px;stroke:#f0d9a7;stroke-width:1.8;fill:none}.fire-button b{font-size:6px;letter-spacing:1px;margin-top:4px}.fire-button.firing{background:#d9a45055;box-shadow:0 0 15px #e8b45830}
.stance-controls{position:absolute;bottom:33px;left:209px;display:flex;gap:6px}.stance-controls button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #d4dfbb72;border-radius:50%;background:#13302780;touch-action:none}.stance-controls b{font-size:21px;color:var(--gold);line-height:1}.stance-controls small{font-size:5px;margin-top:4px}.stance-controls button.active{background:#b9a86555;border-color:var(--gold)}
#crosshair{position:absolute;top:50%;left:50%;width:2px;height:2px;--spread:8px;filter:drop-shadow(0 1px 1px #0009)}#crosshair i{position:absolute;background:#faf5db;border-radius:1px}#crosshair i:nth-child(1){width:2px;height:6px;left:0;bottom:var(--spread)}#crosshair i:nth-child(2){width:2px;height:6px;left:0;top:var(--spread)}#crosshair i:nth-child(3){height:2px;width:6px;top:0;right:var(--spread)}#crosshair i:nth-child(4){height:2px;width:6px;top:0;left:var(--spread)}#crosshair b{position:absolute;width:3px;height:3px;left:-.5px;top:-.5px;border-radius:50%;background:#fff}#crosshair.aimed i{opacity:.3}#crosshair.enemy i,#crosshair.enemy b{background:#ffb18b}#hitmarker{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:30px;line-height:1;color:#fff4ce;opacity:0;text-shadow:0 1px 4px #07180c}#hitmarker.kill{color:#efad72}#targetInfo{position:absolute;top:calc(50% + 27px);left:50%;transform:translateX(-50%);text-align:center;text-shadow:0 1px 5px #0009}#targetName{font-size:7px;letter-spacing:.6px;color:#f4c394}#targetHealth{display:block;font-size:7px;color:#f2e1c6;margin-top:3px}
.interact-button,.action-panel{position:absolute;bottom:128px;left:50%;transform:translateX(-50%);width:225px;max-width:60vw;min-height:44px;padding:9px 12px;background:#13352cd9;border:1px solid #e7cb8b80;border-radius:5px;backdrop-filter:blur(5px)}.interact-button{display:flex;align-items:center;gap:10px;text-align:left}.interact-button kbd{font-size:11px;color:var(--gold);padding:5px;border:1px solid #e6d4985e;border-radius:3px}.interact-button b{font-size:9px;font-weight:600;line-height:1.4}.interact-button small{display:none}.action-panel{font-size:9px}.action-panel b{float:right;color:var(--gold);font-size:10px}.action-panel .progress{clear:both;margin-top:8px;height:2px}.action-panel small{display:none}
#joystick{display:none;position:absolute;left:22px;bottom:25px;width:108px;height:108px;border:1px solid #e4ddbf50;border-radius:50%;background:#1732214a;touch-action:none}#joystick>span{position:absolute;inset:19px;border:1px solid #dfdfbe2a;border-radius:50%}#stick{position:absolute;left:33px;top:33px;width:40px;height:40px;border-radius:50%;background:#e3cb8560;border:1px solid #efdda2a0;pointer-events:none}#joystick small{display:none}.save-status{position:absolute;bottom:6px;left:20px;font-size:6px;letter-spacing:.8px;color:#c9d9bc;transition:opacity .3s}.mouse-hint{position:absolute;bottom:110px;left:50%;transform:translateX(-50%);font-size:8px;color:#e4d4ae;text-shadow:0 1px 5px #061d15}.demo-banner{position:absolute;top:88px;left:50%;transform:translateX(-50%);font-size:7px;white-space:nowrap;color:var(--gold)}.demo-banner button{min-height:40px;background:none;border:0;font-size:9px;color:var(--cream);text-decoration:underline}.demo-banner span{margin:0 8px}.desktop-help,.orientation-hint{display:none!important}
#damageFlash{position:absolute;inset:0;box-shadow:inset 0 0 100px #c8491f;opacity:0;pointer-events:none;z-index:3;transition:opacity .12s}
.modal{position:absolute;inset:0;z-index:20;background:#0c2327a9;backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;touch-action:pan-y}.modal-card{width:470px;max-width:100%;max-height:calc(100dvh - 40px);overflow:auto;flex-shrink:0;padding:28px;background:linear-gradient(140deg,#1b3730fa,#102920f5);border:1px solid #cbdab943;border-radius:7px;box-shadow:0 12px 55px #081c1c80;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:#9bab8588 transparent}.modal h2{font-family:Georgia,serif;font-size:31px;font-weight:400;margin:12px 0 18px}.modal p{font-size:12px;line-height:1.8;color:#c6d4bd}.modal .primary{width:100%;min-height:48px;font-size:10px}.modal .text-btn{display:block;min-height:42px;padding:14px 0 8px}.pause-touch{display:none}.pause-settings{display:flex;gap:8px;margin:15px 0}.help-card{width:650px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.help-grid b{font-size:8px;letter-spacing:1px;color:var(--gold)}.help-grid p{font-size:11px;margin:7px 0;line-height:1.7}.help-tank{font-size:11px!important;border-left:2px solid var(--gold);padding-left:12px;margin:18px 0}.result-stats{display:flex;justify-content:space-between;border-block:1px solid #c6d0a634;margin:18px 0;padding:17px 0}.result-stats b{display:block;font-size:26px;font-weight:400;color:var(--gold)}.result-stats span{display:block;font-size:8px;margin-top:6px;letter-spacing:1px;color:var(--muted)}.best{font-size:10px!important;color:var(--gold)!important}#resumeCheckpoint{margin-bottom:10px}
.inventory-card,.tasks-card{width:610px}.inventory-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;position:sticky;top:-28px;background:#1b352b;z-index:1;padding-top:4px;box-shadow:0 -28px 0 #1b352b}.inventory-heading h2{margin-bottom:12px}.inventory-heading>.icon-btn{flex-shrink:0}.inventory-condition{font-size:11px!important;color:var(--gold)!important;margin-bottom:16px}.inventory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.inventory-item{min-height:104px;padding:12px 7px;background:#b8d3a00a;border:1px solid #cbdab638;border-radius:4px;text-align:center}.inventory-item>span{display:block;font-size:7px;letter-spacing:.8px;color:var(--muted)}.inventory-item>b{display:block;font-size:28px;font-weight:400;color:var(--gold);margin:8px 0}.inventory-item small{display:block;font-size:8px;line-height:1.5;color:var(--muted)}.inventory-note{font-size:10px!important}.inventory-footer{margin-top:23px}.inventory-footer>span{display:block;font-size:8px;color:var(--muted);margin-bottom:14px}.task-current{padding:15px 0;border-bottom:1px solid #cbd5ad37;margin-bottom:20px}.task-current h2{font-family:inherit;font-size:23px;margin:10px 0}.task-current p{font-size:12px;margin:10px 0 16px}.objective-foot{display:flex;justify-content:space-between;gap:10px;margin-top:9px;font-size:10px;color:var(--muted)}.objective-foot b{color:var(--gold);font-size:13px}.journal>.eyebrow{display:flex;justify-content:space-between}.journal ol{list-style:none;margin:16px 0 0;padding:0}.journal li{display:flex;gap:13px;margin-bottom:15px;opacity:.4}.journal li>b{font-size:11px;color:var(--gold);width:22px;flex-shrink:0}.journal strong{font-size:11px;font-weight:500;display:block}.journal small{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:4px}.journal li.current{opacity:1}.journal li.current strong{color:var(--gold)}.journal li.done{opacity:.6}.journal li.done>b{color:var(--green)}.radio{display:flex;gap:12px;padding:14px 0;margin:10px 0 20px;border-block:1px solid #cbd5ad37}.radio>span{font-size:23px;color:var(--gold)}.radio b{font-size:8px;color:var(--gold);letter-spacing:1px}.radio p{font-size:11px;margin:5px 0}.tank{position:static;margin:15px 0 20px;padding:13px;background:#6d472326}.tank>div:first-child{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}.tank span{color:var(--red)}.tank-health{height:3px;margin-top:9px}.tank-health i{background:var(--red);width:100%}.tank p{font-size:11px;margin:10px 0 0}
.continue-button{position:relative;display:block;width:330px;max-width:100%;padding:12px 35px 12px 15px;margin-top:9px;text-align:left;border:1px solid #e8c4816b;background:#153229d9}.continue-button b{display:block;font-size:9px;letter-spacing:1px}.continue-button span{display:block;font-size:8px;margin-top:5px;color:var(--muted)}.continue-button i{position:absolute;right:13px;top:16px;color:var(--gold);font-style:normal}.menu{top:22%;width:630px}h1{font-size:clamp(40px,4.9vw,69px)}
@keyframes toast-in{from{opacity:0;translate:0 5px}to{opacity:1;translate:0 0}}html:has(.modal:not(.hidden)),body:has(.modal:not(.hidden)){touch-action:pan-y}
@media(pointer:coarse),(max-width:760px),(max-height:520px){#joystick{display:block}.pause-touch{display:block}.pause-desktop{display:none}.combat-controls kbd,.weapon-slot kbd,.order kbd,.interact-button kbd{display:none}.mouse-hint{display:none!important}.edition{display:none}.playing header{top:10px;left:12px;right:12px}.hud-menu-button{padding:0 9px;gap:5px;font-size:7px}.top-actions{gap:5px!important}.player-status{left:146px;bottom:24px;width:130px}.survival-panel{left:146px;bottom:74px;width:130px}.stance-controls{left:26px;bottom:146px}.weapon-panel{width:213px;padding:7px;bottom:16px}.combat-controls{right:17px;bottom:24px;width:188px;height:133px}.heal{left:0;top:0}.grenade{left:55px;top:0}.reload{left:110px;top:0}.aim{left:50px;bottom:9px}.fire-button{width:76px;height:76px}.utility{width:46px;height:46px}.utility small{font-size:5px}.squad-orders{left:160px;top:60px}.map{left:12px;top:63px;width:104px}.map canvas{height:80px}.drone-panel{left:12px;top:174px;width:104px}.compass{top:19px;width:142px}.navigation{top:63px;font-size:8px}.interact-button,.action-panel{bottom:111px;width:207px}.notice-toast{top:95px;padding:8px 11px;max-width:56vw}.notice-toast>b{font-size:9px}.shot-warning{top:94px}.shot-warning b{font-size:8px}.shot-warning strong{font-size:15px}.save-status{left:146px;bottom:6px;font-size:5px}}
@media(max-width:760px) and (min-height:521px){header{top:18px;left:20px;right:20px}.brand{font-size:13px}.brand svg{width:30px;height:30px}.brand small{font-size:6px;letter-spacing:1.2px}.menu{top:19%;width:350px}.menu h1{font-size:clamp(36px,9vw,52px)}.intro{font-size:12px}.primary,.continue-button{width:100%}.control-preview{margin-top:10px}.menu-note{margin-top:14px}.feature-line{font-size:6px;gap:9px;letter-spacing:.7px}.feature-line span+span{padding-left:9px}#sceneCaption{right:22px;bottom:20px}#sceneCaption p{font-size:14px}.playing header{top:10px}.hud-menu-button{min-height:42px;padding:0 8px;font-size:7px}.hud-menu-button b{font-size:18px}.playing #pause{width:42px;height:42px}.compass{top:65px;left:57%;width:128px}.compass small{top:28px}.compass i{top:22px}.navigation{top:111px;left:57%;max-width:58%;font-size:7px}.map{top:63px;width:94px}.map canvas{height:73px}.drone-panel{top:166px;width:94px}.squad-orders{left:auto;right:57px;top:58px;width:176px}.notice-toast{top:136px;left:59%;max-width:65vw;padding:9px 11px}.shot-warning{top:137px;left:59%;padding:8px 10px;gap:6px;max-width:70vw}.shot-warning b{font-size:7px}.shot-warning>span{font-size:14px}.shot-warning strong{font-size:15px}.player-status{left:18px;bottom:260px;width:132px}.survival-panel{left:18px;bottom:308px;width:132px}.weapon-panel{bottom:16px;width:238px}.combat-controls{right:15px;bottom:118px;width:177px;height:137px}.fire-button{width:80px;height:80px}.aim{left:40px;bottom:7px}.heal{left:0}.grenade{left:55px}.reload{left:110px}#joystick{left:20px;bottom:128px}.stance-controls{left:22px;bottom:77px;gap:7px}.interact-button,.action-panel{left:auto;right:16px;transform:none;bottom:273px;width:calc(100% - 181px);max-width:230px;min-height:44px;padding:9px 10px}.interact-button b{font-size:8px}.action-panel{font-size:8px}.action-panel b{font-size:9px}.killfeed{top:201px;right:16px;font-size:7px}.point-order-hint{top:137px;max-width:85vw;width:290px;font-size:9px}.save-status{bottom:7px;left:18px;font-size:5px}.modal{padding:13px}.modal-card{padding:22px;max-height:calc(100dvh - 26px)}.modal h2{font-size:27px}.inventory-heading{top:-22px;box-shadow:0 -22px 0 #1b352b}.inventory-heading .eyebrow{font-size:7px;letter-spacing:.8px}.inventory-grid{grid-template-columns:1fr 1fr}.help-grid{grid-template-columns:1fr}.help-grid p{font-size:11px}.demo-banner{top:107px;font-size:6px}.demo-banner button{font-size:8px}.squad-popup{width:210px}}
@media(max-height:520px){header{top:16px;left:25px;right:25px}.brand{font-size:13px}.brand svg{width:28px;height:28px}.brand small{font-size:5px}.menu{top:19%;width:460px}.menu h1{font-size:34px;margin:12px 0}.menu .intro{font-size:10px;line-height:1.6;margin-bottom:10px}.menu .feature-line{margin-bottom:13px;font-size:6px}.menu .primary{min-height:40px;width:285px;font-size:9px}.continue-button{width:285px;padding:8px 30px 8px 12px;margin-top:6px}.continue-button b{font-size:7px}.continue-button span{font-size:6px;margin-top:4px}.continue-button i{top:10px}.menu-links .text-btn{padding:10px 0;font-size:9px}.control-preview,.menu-note{display:none}#sceneCaption{bottom:20px;right:24px}#sceneCaption p{font-size:15px}.compass{width:122px}.map{width:87px}.map canvas{height:65px}.drone-panel{top:154px;width:87px}.navigation{top:64px;font-size:7px}.notice-toast{top:89px;max-width:49vw}.shot-warning{top:88px}.player-status{left:144px;bottom:24px;width:112px}.survival-panel{left:144px;bottom:72px;width:112px}.stance-controls{left:28px;bottom:148px}.weapon-panel{width:202px;bottom:17px}.weapon-slot{min-height:40px}.weapon-slot svg{width:41px}.ammo-line b{font-size:21px}.ammo-line #weaponName{font-size:7px}.combat-controls{right:14px;bottom:24px;width:172px;height:128px}.utility{width:44px;height:44px}.heal{left:0}.grenade{left:51px}.reload{left:102px}.aim{left:35px;bottom:8px}.fire-button{width:72px;height:72px}.interact-button,.action-panel{bottom:109px;width:193px;min-height:44px}.interact-button b{font-size:8px}.action-panel{font-size:8px}.killfeed{top:68px;right:17px;font-size:7px}.squad-popup{width:208px}.unit-orders button{font-size:8px}.point-order-hint{top:94px;max-width:52vw;font-size:9px}.modal-card{max-height:calc(100dvh - 30px);padding:22px 26px}.inventory-heading{top:-22px;box-shadow:0 -22px 0 #1b352b}.modal h2{font-size:27px}.task-current h2{font-size:22px}.modal p{font-size:11px}.demo-banner{top:79px}.demo-banner button{min-height:32px}}
@media(max-height:520px) and (max-width:740px){.hud-menu-button span{display:none}.hud-menu-button{width:42px;justify-content:center;padding:0}.compass{top:19px}.map{width:81px}.map canvas{height:60px}.drone-panel{top:149px;width:81px}.player-status{left:139px;width:92px}.survival-panel{left:139px;width:92px;column-gap:6px}.weapon-panel{width:182px}.weapon-slot svg{width:36px}.ammo-line #weaponName{font-size:6px}.weapon-slot span{font-size:4.5px}.combat-controls{width:159px;right:11px}.reload{left:98px}.grenade{left:49px}.aim{left:24px}.interact-button,.action-panel{width:180px}.squad-orders{left:104px}.save-status{left:139px}}
.armor-hud{position:absolute;left:20px;bottom:123px;display:flex;gap:12px}.armor-hud>div{width:45px;position:relative;display:grid;grid-template-columns:23px 1fr;align-items:center;column-gap:4px;color:#e2e5d8;filter:drop-shadow(0 1px 3px #092519)}.armor-hud svg{width:23px;height:25px;fill:currentColor;stroke:#142a23;stroke-width:1.2}.armor-hud span{font-size:8px}.armor-hud i{grid-column:1/3;height:2px;background:#dce3c52c;margin-top:3px}.armor-hud i>b{display:block;height:100%;background:currentColor}.armor-hud .worn{color:#e8c481}.armor-hud .broken{color:#ed9275}.bag-armor{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 16px}.bag-armor>div{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #bccbad39;background:#c1d4a711;border-radius:4px}.bag-armor svg{width:35px;height:40px;fill:#d9ddc8;stroke:#1e382a;stroke-width:1.2}.bag-armor b{display:block;font-size:10px;color:var(--gold)}.bag-armor small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.loot-open{position:absolute;z-index:8;left:50%;bottom:181px;transform:translateX(-50%);min-height:44px;padding:0 14px;display:flex;align-items:center;gap:8px;background:#22352fe5;border:1px solid #d4c1769c;border-radius:4px;color:#edda9d;font-size:9px;letter-spacing:.8px}.loot-open>b{font-size:21px}.loot-panel{position:absolute;z-index:10;top:120px;right:20px;width:285px;max-height:calc(100dvh - 265px);overflow:auto;padding:10px;background:#182824ee;border:1px solid #d3d2b454;border-radius:5px;box-shadow:0 8px 35px #04191375;touch-action:pan-y}.loot-heading{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1px}.loot-heading>b{color:#e2d6a9}.loot-heading button{width:40px;height:40px;border:0;background:transparent;font-size:22px}.loot-live{display:block;color:#aebdad;font-size:8px;margin:-2px 0 9px}.loot-row{width:100%;min-height:60px;display:flex;align-items:center;gap:10px;padding:9px;margin-top:5px;border:1px solid #c7d0b02f;border-radius:3px;background:#75866b16;text-align:left}.loot-row.upgrade{border-left:3px solid #e3c365;background:#d5bb5920}.loot-icon{display:flex;align-items:center;justify-content:center;width:29px;flex-shrink:0;color:#dcdcc4;font-size:24px}.loot-icon svg{width:27px;height:32px;fill:currentColor;stroke:#1a2a20;stroke-width:1.2}.loot-item-copy{flex:1}.loot-item-copy b{font-size:10px;font-weight:500;display:block}.loot-item-copy small{font-size:8px;line-height:1.6;color:#bac9b0;display:block;margin-top:4px}.loot-action{font-size:7px;letter-spacing:.5px;color:var(--gold)}
@media(pointer:coarse),(max-width:760px),(max-height:520px){.armor-hud{left:146px;bottom:107px;gap:9px}.loot-open{bottom:160px}.loot-panel{top:110px;right:12px;width:263px;max-height:calc(100dvh - 220px)}}
@media(max-width:760px) and (min-height:521px){.armor-hud{left:18px;bottom:345px}.loot-open{left:auto;right:16px;bottom:325px;transform:none;max-width:calc(100% - 182px);font-size:8px;padding:0 9px;letter-spacing:.5px}.loot-panel{right:14px;top:218px;width:260px;max-width:calc(100% - 28px);max-height:calc(100dvh - 475px)}.bag-armor{gap:6px}.bag-armor>div{padding:9px;gap:7px}.bag-armor b{font-size:9px}.bag-armor small{font-size:8px}.bag-armor svg{width:28px}}
@media(max-height:520px){.armor-hud{left:144px;bottom:105px;gap:7px}.armor-hud>div{width:42px}.loot-panel{top:63px;right:15px;width:263px;max-height:calc(100dvh - 213px)}.loot-row{min-height:56px}.loot-open{bottom:158px}.loot-heading button{height:30px}}
@media(max-height:520px) and (max-width:740px){.armor-hud{left:139px;gap:6px}.armor-hud>div{width:40px}}
.loot-panel{display:grid;grid-template-columns:1fr 1fr;gap:5px;width:310px}.loot-heading,.loot-live{grid-column:1/-1}.loot-live{margin-bottom:3px}.loot-row{margin:0;min-height:85px;display:grid;grid-template-columns:25px minmax(0,1fr);gap:6px;padding:8px}.loot-icon{width:25px;align-self:start}.loot-icon svg{width:24px;height:29px}.loot-item-copy b{font-size:9px;line-height:1.4}.loot-item-copy small{font-size:8px;line-height:1.4}.loot-action{grid-column:2;text-align:right;font-size:6px;margin-top:2px}.loot-row.upgrade{border-left-width:2px}.loot-panel .loot-heading button{width:40px;min-height:40px}
@media(max-width:760px),(max-height:520px){.loot-panel{width:280px}.loot-row{padding:7px;gap:5px;min-height:80px;grid-template-columns:22px minmax(0,1fr)}.loot-icon{width:22px}.loot-icon svg{width:21px}.loot-item-copy b{font-size:8px}.loot-item-copy small{font-size:7px}.loot-action{font-size:6px}}
/* A fixed screen-centre sight; the impact marker shows muzzle obstruction. */
#crosshair{width:40px;height:40px;transform:translate(-50%,-50%);filter:none;--reticle:#fffbed}#crosshair i{left:auto;right:auto;top:auto;bottom:auto;background:var(--reticle)!important;box-shadow:0 0 0 1px #091912d9,0 1px 2px #061812cc;border-radius:1px;opacity:1!important}#crosshair i:nth-child(1){width:2px;height:7px;left:19px;top:4px;bottom:auto}#crosshair i:nth-child(2){width:2px;height:7px;left:19px;top:29px}#crosshair i:nth-child(3){width:7px;height:2px;left:4px;top:19px;right:auto}#crosshair i:nth-child(4){width:7px;height:2px;left:29px;top:19px}#crosshair b{left:18px;top:18px;width:4px;height:4px;background:var(--reticle)!important;border-radius:50%;box-shadow:0 0 0 1.5px #091912e6,0 1px 3px #061812d9}#crosshair em{position:absolute;inset:12px;border:1px solid var(--reticle);border-radius:50%;box-shadow:0 0 0 1px #10261a66;opacity:0}#crosshair.aimed em{opacity:.65}#crosshair.aimed i:nth-child(1){top:8px;height:5px}#crosshair.aimed i:nth-child(2){top:27px;height:5px}#crosshair.aimed i:nth-child(3){left:8px;width:5px}#crosshair.aimed i:nth-child(4){left:27px;width:5px}#crosshair.enemy{--reticle:#ffb08c}#crosshair.blocked,#crosshair.empty{--reticle:#e8b765}#crosshair.grenade{--reticle:#f1d288}#crosshair.grenade em{inset:3px;border-style:dashed;opacity:.8}.aim-block-marker{position:absolute;transform:translate(-50%,-50%);font-size:22px;font-weight:600;line-height:1;color:#ffc273;text-shadow:0 1px 2px #071d15,1px 0 #071d15,-1px 0 #071d15}.aim-range{position:absolute;top:calc(50% + 24px);left:50%;transform:translateX(-50%);font-size:9px;font-weight:600;color:#f3e6c6;text-shadow:0 1px 3px #061b13;letter-spacing:.7px}#targetInfo{top:calc(50% + 42px)}#targetName{font-size:8px}#targetHealth{font-size:8px}
.navigation{display:none}.next-step{position:absolute;top:72px;left:50%;transform:translateX(-50%);width:365px;max-width:56vw;min-height:48px;display:flex;align-items:center;gap:9px;padding:7px 10px;background:linear-gradient(90deg,#122e25b8,#122e2559);border-left:2px solid #e8c4818c;border-radius:0 4px 4px 0;text-shadow:0 1px 3px #071e17}.next-step>span{font-size:21px;color:var(--gold);width:19px;flex-shrink:0;text-align:center}.next-step>div{flex:1;min-width:0}.next-step b{display:block;font-size:11px;line-height:1.35;font-weight:600}.next-step small{display:block;margin-top:4px;font-size:10px;line-height:1.4;color:#d2dec5}.next-step button{min-width:54px;min-height:40px;padding:0 8px;background:#dfc48021;border:1px solid #e8c48180;border-radius:4px;font-size:8px;font-weight:600;color:var(--gold)}.next-step.urgent{border-color:#efae77;background:linear-gradient(90deg,#5a3326cf,#3f2d2580)}.next-step.urgent>span{color:#efae77}.notice-toast,.shot-warning{top:142px}.point-order-hint{top:139px}
.weapon-panel{width:334px;bottom:17px;padding:10px 12px;border-color:#d6debd5c;background:linear-gradient(0deg,#102920e8,#172d23a8)}.ammo-line{padding-bottom:6px;gap:7px}.ammo-line #weaponName{font-size:11px;letter-spacing:1px}.ammo-line b{font-size:29px}.ammo-line #ammoReserve{font-size:14px}.ammo-line small{font-size:8px}.weapon-readiness{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.7px;color:#bcd4a5;margin-bottom:5px;min-height:12px}.weapon-readiness #weaponReloadTime{color:var(--gold);font-size:10px}.weapon-reload{height:3px;background:#cad9a918;margin-bottom:7px;border-radius:2px;overflow:hidden}.weapon-reload i{display:block;height:100%;background:var(--gold);width:0;transition:width .05s linear}.weapon-reload.active{background:#cfbb7440}.weapon-slot{min-height:61px;padding:5px 3px;gap:2px;border-color:#d6e0bc40}.weapon-slot svg{width:57px;height:20px}.weapon-slot>span{font-size:8px;letter-spacing:.6px;margin-top:1px}.weapon-slot .slot-ammo{font-size:10px;font-variant-numeric:tabular-nums;color:#d9e4c9;margin-top:2px}.weapon-slot kbd{font-size:8px;left:5px;top:4px}.weapon-slot.selected{background:#d8ba6540;border-color:#f1d08d;box-shadow:inset 0 2px 0 #efd18b}.weapon-slot.selected .slot-ammo{color:#ffe0a8}.weapon-slot.empty .slot-ammo{color:#eea17d}.interact-button,.action-panel{bottom:165px}.loot-open{bottom:216px}.utility small{font-size:6px}.fire-button b{font-size:8px}.mouse-hint{bottom:151px;font-size:9px;max-width:70vw;white-space:nowrap}
.grenade-guide{position:absolute;bottom:167px;left:50%;transform:translateX(-50%);width:285px;max-width:65vw;padding:10px 12px;background:#142e24e3;border:1px solid #e4c58490;border-radius:5px;pointer-events:auto;box-shadow:0 5px 24px #09231955}.grenade-guide-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.grenade-guide-title b{font-size:10px;letter-spacing:.7px;color:var(--gold)}.grenade-guide-title strong{font-size:19px;font-weight:500;color:#f0deaa}.grenade-guide>small{display:block;font-size:10px;line-height:1.4;color:#d0dcc2;margin-top:5px}.grenade-guide-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}.grenade-guide-actions button{min-height:40px;padding:0 15px;border:1px solid #d9dda453;border-radius:4px;background:#8fab8710;font-size:9px;font-weight:600;letter-spacing:.6px}.grenade-guide-actions #grenadeThrow{background:#d7bd79;color:#142d22;border-color:#eed7a0}.grenade-guide.blocked{border-color:#e9a56e}.grenade-guide.danger{border-color:#ef8d6d;background:#54352adf}.grenade-guide.danger .grenade-guide-title b,.grenade-guide.danger .grenade-guide-title strong{color:#ffc295}.grenade.active{border-color:#f7d997;background:#d0b5625e}
@media(pointer:coarse),(max-width:760px),(max-height:520px){.weapon-panel{width:280px;padding:8px 9px;bottom:13px}.ammo-line #weaponName{font-size:10px}.ammo-line b{font-size:26px}.ammo-line #ammoReserve{font-size:12px}.ammo-line small{font-size:7px}.weapon-slot{min-height:55px;padding:4px 2px}.weapon-slot svg{width:49px;height:18px}.weapon-slot>span{font-size:7px}.weapon-slot .slot-ammo{font-size:9px}.weapon-readiness{font-size:7px}.weapon-reload{margin-bottom:6px}.interact-button,.action-panel{bottom:151px}.loot-open{bottom:201px}.grenade-guide{bottom:151px;width:266px}.next-step{width:326px;max-width:53vw}.next-step b{font-size:10px}.next-step small{font-size:9px}.next-step button{font-size:7px;min-width:48px}.utility small{font-size:6px}}
@media(max-width:760px) and (min-height:521px){.next-step{top:111px;left:auto;right:12px;transform:none;width:calc(100% - 132px);max-width:none;gap:7px;padding:7px 8px}.next-step>span{width:13px;font-size:18px}.next-step b{font-size:10px}.next-step small{font-size:9px}.next-step button{padding:0 6px;min-width:45px;font-size:7px}.notice-toast,.shot-warning{top:204px}.point-order-hint{top:199px}.weapon-panel{width:300px;max-width:calc(100% - 24px);bottom:12px;padding:8px 9px}.weapon-slot{min-height:52px}.weapon-slot svg{width:53px}.weapon-slot>span{font-size:8px}.weapon-slot .slot-ammo{font-size:10px}.ammo-line #weaponName{font-size:11px}.weapon-readiness{font-size:8px}.player-status{bottom:291px}.survival-panel{bottom:339px}.armor-hud{bottom:375px}.stance-controls{bottom:238px;left:20px}#joystick{bottom:125px}.combat-controls{bottom:146px}.interact-button,.action-panel{bottom:300px}.loot-open{bottom:351px}.grenade-guide{bottom:291px;left:auto;right:14px;transform:none;width:calc(100% - 177px);max-width:240px;padding:9px}.grenade-guide-title{gap:5px;align-items:flex-start}.grenade-guide-title b{font-size:8px;line-height:1.3;max-width:90px}.grenade-guide-title strong{font-size:16px;white-space:nowrap}.grenade-guide>small{font-size:8px}.grenade-guide-actions{gap:5px;justify-content:space-between;margin-top:8px}.grenade-guide-actions button{padding:0 8px;font-size:8px}.killfeed{top:259px}.loot-panel{top:254px;max-height:calc(100dvh - 531px)}}
@media(max-height:520px){.next-step{top:62px;width:310px;min-height:45px;padding:6px 8px}.next-step b{font-size:10px}.next-step small{font-size:9px}.next-step>span{font-size:19px}.notice-toast,.shot-warning{top:125px}.weapon-panel{width:266px;bottom:13px;padding:7px 8px}.weapon-slot{min-height:48px}.weapon-slot svg{height:16px;width:46px}.weapon-slot>span{font-size:7px}.weapon-slot .slot-ammo{font-size:9px}.ammo-line{padding-bottom:4px}.ammo-line b{font-size:24px}.ammo-line #weaponName{font-size:9px}.weapon-readiness{min-height:10px;margin-bottom:4px;font-size:7px}.weapon-reload{height:2px;margin-bottom:5px}.interact-button,.action-panel{bottom:143px}.loot-open{bottom:192px}.grenade-guide{bottom:141px;width:253px;padding:8px 10px}.grenade-guide-title b{font-size:9px}.grenade-guide-title strong{font-size:17px}.grenade-guide>small{font-size:9px}.grenade-guide-actions{margin-top:7px}.grenade-guide-actions button{min-height:36px}.point-order-hint{top:124px}.loot-panel{top:61px;max-height:calc(100dvh - 213px)}}
@media(max-height:520px) and (max-width:740px){.weapon-panel{width:226px;padding:7px}.weapon-slot>span{font-size:6px}.weapon-slot .slot-ammo{font-size:8px}.weapon-slot svg{width:39px}.ammo-line #weaponName{font-size:8px}.ammo-line b{font-size:23px}.ammo-line #ammoReserve{font-size:11px}.ammo-line small{font-size:6px}.weapon-readiness{font-size:6px}.player-status,.survival-panel{left:135px;width:80px}.armor-hud{left:135px;gap:5px}.armor-hud>div{width:38px}.next-step{width:295px;max-width:48vw}.next-step b{font-size:9px}.next-step small{font-size:8px}.grenade-guide{width:224px}.grenade-guide>small{font-size:8px}.grenade-guide-actions button{font-size:8px;min-height:36px}}
.mouse-hint{bottom:172px}.grenade-mode .mouse-hint{display:none!important}
@media(max-width:760px) and (min-height:521px){#joystick{width:96px;height:96px;bottom:141px}#stick{left:27px;top:27px}}
/* Keep the throw controls outside the sight and projected arc in landscape. */
@media(max-height:520px){.grenade-guide{left:auto;right:12px;top:84px;bottom:auto;transform:none;width:224px;max-width:none}}
@media(max-height:520px) and (max-width:740px){.grenade-mode .next-step{left:122px;right:auto;transform:none;width:calc(100% - 390px);max-width:none}}
@media(max-height:350px){.grenade-guide{top:64px}}
/* Solo operation: reconnaissance stays beside the map; actions stay contextual. */
.operation #squadToggle,.operation #squadOrders,.operation #squadPopup,.operation #pointOrderHint{display:none!important}
.scout-launch svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.scout-launch.risk{color:#ffd49a;border-color:#e5b67580;background:#b37a3624}
.scout-launch.scanning{color:#c8e4ca;border-color:#b1d9ae90}
.scout-launch:disabled{opacity:.7;cursor:default}
.recon-readout{display:flex;flex-direction:column;gap:5px;border-top:1px solid #cdd5c12b;padding-top:7px;margin-top:6px;line-height:1.25}
.recon-readout span{font-size:10px;letter-spacing:.15px;color:#dbe4d2;font-variant-numeric:tabular-nums;white-space:nowrap}
.recon-readout b{font-size:8px;font-weight:500;line-height:1.4;color:#bacbb3;letter-spacing:.3px}
.recon-readout.risk span,.recon-readout.risk b{color:#f2c38d}.recon-readout.intel b{color:#b9ecb8}
.operation .drone-panel{top:239px}
.medevac-button{border-color:#aadbc589;background:linear-gradient(110deg,#173b30ed,#243a33dc);color:#dceadd}
.medevac-button kbd{color:#c8e7d5}.medevac-button>i{font-style:normal;font-size:20px;color:#bfe4cd;margin-left:auto}
.next-step button{line-height:1.3}
@media(max-width:760px) and (min-height:521px){.scout-launch{min-width:46px;flex-direction:column;justify-content:center;gap:2px;padding:3px 7px}.scout-launch svg{width:22px;height:21px}.scout-launch span{font-size:7px;white-space:nowrap}.recon-readout{gap:4px;padding-top:5px;margin-top:5px}.recon-readout span{font-size:9px;letter-spacing:0}.recon-readout b{font-size:8px;letter-spacing:0}.operation .drone-panel{top:210px}.medevac-button b{font-size:9px;line-height:1.4}.medevac-button small{font-size:8px}.medevac-button>i{display:none}}
@media(max-height:520px){.recon-readout{gap:3px;padding-top:5px;margin-top:4px}.recon-readout span{font-size:9px;letter-spacing:0}.recon-readout b{font-size:8px;letter-spacing:0}.operation .drone-panel{top:199px}.medevac-button{left:auto;right:14px;top:83px;bottom:auto;transform:none;width:220px;min-height:48px}.medevac-button b{font-size:10px}.medevac-button small{font-size:9px}}
@media(max-height:520px) and (max-width:740px){.scout-launch{flex-direction:column;gap:1px;min-width:42px}.scout-launch svg{width:21px;height:21px}.scout-launch span{display:block;font-size:6px;white-space:nowrap}.operation .drone-panel{top:197px}.medevac-button{right:12px;width:206px}.medevac-button b{font-size:9px}.medevac-button>i{font-size:16px}}
/* Landscape threat feedback sits beside the map, clear of crouch/run touches. */
@media(max-height:520px){.operation .drone-panel{left:112px;top:150px;width:115px}}
/* Keep the avatar visible above the landscape weapon rail; slots remain 44px. */
@media(max-height:520px){.weapon-panel{padding:4px 8px}.ammo-line{height:21px;min-height:21px;padding-bottom:0;line-height:1}.ammo-line b{font-size:21px;line-height:1}.ammo-line #weaponName{font-size:8px}.ammo-line #ammoReserve{font-size:11px}.weapon-readiness{min-height:8px;line-height:8px;font-size:6px;margin-bottom:0}.weapon-readiness #weaponReloadTime{font-size:8px}.weapon-reload{height:2px;margin-bottom:3px}.weapon-slot{min-height:44px;padding:2px;gap:0}.weapon-slot svg{height:13px;width:42px}.weapon-slot>span{font-size:6px;line-height:8px;margin-top:0}.weapon-slot .slot-ammo{font-size:8px;line-height:10px;margin-top:0}}
