@font-face{font-family:LocalMono;src:local('DejaVu Sans Mono'),local('Consolas');font-display:swap}
:root{color-scheme:dark;--gold:#e6ab54;--paper:#e7e2cd;--muted:#999c8b;--red:#e35735;--cyan:#62c8cf}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#080b09}body{font-family:LocalMono,'Courier New',monospace;color:var(--paper);overscroll-behavior:none}button{font:inherit;cursor:pointer;touch-action:manipulation;color:inherit}button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{cursor:wait}#game{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate;user-select:none;background:#11140f}#view{width:100%;height:100%;display:block;image-rendering:auto;outline:0;touch-action:none}#vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 130px 35px #0006;background:none;z-index:1}#topbar{position:absolute;left:32px;right:24px;top:24px;display:flex;justify-content:space-between;gap:12px;align-items:center;z-index:4}.sector{display:flex;align-items:center;gap:12px;letter-spacing:2px;font-size:12px;text-shadow:0 2px 2px #000}.sector span:nth-child(2){color:#adb1a0}.sector b{font-size:14px;color:#e1e3ce}.status-light{height:6px;width:6px;background:var(--gold);box-shadow:0 0 9px #e6ab5455}.top-actions{display:flex;align-items:center;gap:8px}.top-actions button{height:34px;min-width:36px;border:1px solid #d4d9ba36;background:#0c100bc9;color:#c0c5ad;font-size:20px}.top-actions #sound{font-size:11px;letter-spacing:1px;padding:0 12px}.top-actions button:hover{border-color:var(--gold);color:var(--gold)}#mission{position:absolute;top:78px;left:32px;display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:1px;text-shadow:0 2px 2px #000;z-index:3}#mission b{color:var(--gold);font-size:14px}.mission-mark{color:var(--gold);font-size:22px}#message{position:absolute;top:22%;left:15%;right:15%;text-align:center;font-size:16px;letter-spacing:2px;color:var(--gold);text-shadow:2px 2px #000;pointer-events:none;z-index:4;opacity:0;transition:opacity .15s}#crosshair{position:absolute;left:50%;top:50%;width:18px;height:18px;transform:translate(-50%,-50%);z-index:2;pointer-events:none;filter:drop-shadow(1px 1px #000)}#crosshair i{position:absolute;background:#f2e9ccb0}#crosshair i:nth-child(1){width:1px;height:5px;top:0;left:8px}#crosshair i:nth-child(2){width:1px;height:5px;bottom:0;left:8px}#crosshair i:nth-child(3){height:1px;width:5px;left:0;top:8px}#crosshair i:nth-child(4){height:1px;width:5px;right:0;top:8px}#hitmarker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:28px;color:#fff6c5;opacity:0;z-index:3;pointer-events:none}#bottomHint{position:absolute;bottom:9px;width:100%;text-align:center;color:#b3b39c;font-size:10px;letter-spacing:1px;z-index:3}#bottomHint span{color:#6f7868}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5;background:linear-gradient(90deg,#040804dc 0%,#060a05c7 37%,#04070465 75%,#04060484),linear-gradient(0deg,#020403c9,transparent 35%,#02040350);backdrop-filter:blur(1px)}.menu-panel{text-align:center;padding:25px 30px;max-width:660px;width:100%;transform:translateY(-20px)}.eyebrow{display:flex;align-items:center;justify-content:center;gap:13px;color:var(--gold);font-size:12px;letter-spacing:6px;margin-bottom:22px}.eyebrow span{height:1px;width:26px;background:#b485425c}h1{font-family:Impact,'Arial Black',sans-serif;font-weight:900;font-size:clamp(62px,9vw,116px);line-height:.83;letter-spacing:7px;transform:skew(-5deg);margin:0;color:#dedcc9;text-shadow:2px 2px 0 #59604e,4px 5px 0 #151c12,0 8px 30px #0009}h1 strong{font-weight:900;color:var(--gold);display:inline-block;margin-top:12px;text-shadow:2px 2px 0 #7c4a26,4px 5px 0 #151c12,0 8px 30px #0009}.menu-subtitle{margin-top:27px;color:#acb29c;font-size:11px;letter-spacing:3px}.menu-divider{height:1px;width:48px;background:#b8965c;margin:24px auto}.menu-panel p{font-size:13px;line-height:1.7;color:#c0c2ac;margin:0 0 23px;letter-spacing:.3px}.primary{width:290px;max-width:100%;display:inline-flex;justify-content:space-between;align-items:center;padding:17px 20px;background:#d99b42;border:1px solid #f4c67c;color:#16170e;font-weight:bold;font-size:15px;letter-spacing:2px;box-shadow:0 4px 0 #5a3b1b,0 12px 28px #0006;transition:background .12s,transform .12s}.primary:hover:enabled{background:#edb961;transform:translateY(-1px)}.primary:active:enabled{transform:translateY(2px)}.primary:disabled{background:#736a45;border-color:#93845b;color:#d7d1ae}#loadTrack{height:2px;width:290px;max-width:100%;margin:7px auto 0;background:#2f3524}#loadProgress{display:block;width:0;height:100%;background:#f6d395;transition:width .2s}#controls{display:flex;gap:22px;justify-content:center;margin-top:34px}#controls>div{display:flex;flex-direction:column;gap:10px;align-items:center}kbd{border:1px solid #6673546b;box-shadow:0 2px #12190d;background:#151c1180;padding:6px 9px;font:11px LocalMono,'Courier New',monospace;color:#b7c2a7;min-height:27px}#controls span{font-size:10px;letter-spacing:2px;color:#818c74}.extra-controls{font-size:10px;letter-spacing:.5px;color:#818c74;margin-top:25px}.overlay-footer{position:absolute;bottom:24px;left:32px;right:32px;display:flex;justify-content:space-between;color:#707d64;letter-spacing:2px;font-size:10px}.menu-active #topbar,.menu-active #mission,.menu-active #hud,.menu-active #crosshair,.menu-active #bottomHint{visibility:hidden}.paused h1,.endgame h1{font-size:64px;line-height:1;letter-spacing:3px}.paused .eyebrow,.endgame .eyebrow{margin-bottom:26px}.paused .menu-subtitle,.endgame .menu-subtitle{margin-top:20px}#touchControls{display:none;position:absolute;inset:0;z-index:2;pointer-events:none}#joystick{position:absolute;left:28px;bottom:150px;width:112px;height:112px;border:1px solid #e0e7c536;border-radius:50%;background:#131b0e33;pointer-events:auto;touch-action:none}#stick{position:absolute;left:35px;top:35px;width:40px;height:40px;border:1px solid #e4e9cc50;background:#dee9c91c;border-radius:50%;pointer-events:none}#lookZone{position:absolute;right:0;top:110px;width:52%;height:calc(100% - 250px);pointer-events:auto;touch-action:none}#touchFire{position:absolute;right:35px;bottom:145px;width:80px;height:80px;border:2px solid #d2a65b99;border-radius:50%;background:#85622e55;color:#ecd4a0;letter-spacing:1px;pointer-events:auto;touch-action:none}#touchSwitch{position:absolute;right:129px;bottom:165px;width:54px;height:40px;background:#17211299;border:1px solid #96a27f66;color:#d1d8bd;font-size:13px;pointer-events:auto;touch-action:none}.menu-active #touchControls{display:none!important}.map-open #crosshair{visibility:hidden}@media(pointer:coarse){#touchControls{display:block}#bottomHint{display:none}#controls{display:none}.extra-controls{font-size:0}.extra-controls:after{content:'LEFT STICK — MOVE  ·  SWIPE RIGHT — AIM';font-size:10px}.menu-panel{transform:none}.overlay-footer{bottom:18px}}@media(max-width:700px){#topbar{left:16px;right:14px;top:14px}.sector{gap:7px;letter-spacing:1px}.sector span:nth-child(2){display:none}#mission{top:60px;left:16px;font-size:10px;gap:8px}#bottomHint{font-size:7px;letter-spacing:0}#joystick{left:20px;bottom:125px}#touchFire{right:22px;bottom:121px}#touchSwitch{right:112px;bottom:141px}.menu-panel{padding:20px}h1{font-size:83px;letter-spacing:4px}.eyebrow{margin-bottom:22px}#controls{gap:13px}.overlay-footer{left:20px;right:20px;font-size:8px}.menu-subtitle{font-size:9px;letter-spacing:2px}#message{font-size:12px;left:10%;right:10%}}@media(max-height:600px){.menu-panel{transform:none;padding:10px 20px}h1{font-size:65px;line-height:.85}.eyebrow{margin-bottom:13px;font-size:10px}h1 strong{margin-top:7px}.menu-subtitle{margin-top:17px;font-size:10px}.menu-divider{margin:15px auto}.menu-panel p{margin-bottom:14px;font-size:12px}.primary{padding:13px 18px}#controls{margin-top:20px}#controls>div{gap:6px}.extra-controls{margin-top:14px}.overlay-footer{bottom:12px;font-size:9px}#topbar{top:12px}#mission{top:53px}#joystick{bottom:111px;width:94px;height:94px}#stick{left:26px;top:26px}#touchFire{bottom:105px;width:66px;height:66px}#touchSwitch{bottom:118px}#bottomHint{bottom:4px}}

#bossHud{position:absolute;left:50%;transform:translateX(-50%);top:28px;width:min(310px,35%);z-index:3;text-align:center;pointer-events:none}#bossHud[hidden]{display:none}#bossHud>span{font-size:11px;letter-spacing:4px;color:#edb090;text-shadow:1px 1px #000}#bossHud>i{display:block;height:5px;border:1px solid #703b2a;background:#1b100a;margin-top:7px}#bossBar{display:block;height:100%;background:#cf542d;transition:width .15s}.menu-active #bossHud{display:none}@media(max-width:700px){#bossHud{top:95px;width:50%}.extra-controls{font-size:9px}}

/* Clean rendered art: quiet surfaces and smooth display sampling. */
.menu-actions{display:flex;justify-content:center;align-items:flex-start;gap:12px;flex-wrap:wrap}.start-action{width:290px;max-width:100%}#moreGamesButton{width:190px;justify-content:center;text-decoration:none;background:#172022;border-color:#9e855577;color:var(--gold);box-shadow:0 4px 0 #080d0f,0 12px 28px #0006}#moreGamesButton:hover{background:#243234;border-color:var(--gold);transform:translateY(-1px)}#moreGamesButton:active{transform:translateY(2px)}#moreGamesButton:focus-visible{outline:2px solid var(--gold);outline-offset:4px}@media(max-width:560px){.menu-actions{gap:8px}#moreGamesButton{width:290px}}
#vignette{box-shadow:inset 0 0 120px 24px #0004}#overlay{backdrop-filter:none}h1{text-shadow:0 3px 0 #485654,0 12px 30px #0008}h1 strong{text-shadow:0 3px 0 #744824,0 12px 30px #0008}

/* Corner HUD overlays the full-height view without a central panel. */
#hud{position:absolute;left:max(28px,calc(env(safe-area-inset-left) + 16px));right:max(28px,calc(env(safe-area-inset-right) + 16px));bottom:max(28px,calc(env(safe-area-inset-bottom) + 12px));display:flex;justify-content:space-between;align-items:flex-end;gap:24px;z-index:3;pointer-events:none}
.hud-group{display:flex;align-items:flex-end;gap:28px}
.hud-cell{display:flex;flex-direction:column;gap:3px;min-width:84px;text-shadow:0 2px 4px #000,0 0 10px #000b}
.hud-label,#weaponName{font-size:14px;line-height:1.4;letter-spacing:1px;color:var(--paper);white-space:nowrap}
.hud-value{display:flex;align-items:baseline;gap:6px}
.hud-value b{font-size:38px;line-height:1;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--stat-color,var(--paper))}
.hud-cell small{font-size:12px;line-height:1.2;letter-spacing:.5px;color:#b8c4be}
.health{--stat-color:var(--red)}.armor{--stat-color:var(--cyan)}.ammo{--stat-color:var(--gold);width:216px;min-width:0}
.health .hud-value small,.armor .hud-value small{color:var(--stat-color)}
.hud-cell>i{display:block;height:2px;width:100%;margin-top:4px;background:#e7e2cd24}
.hud-cell em{display:block;width:100%;height:100%;background:var(--stat-color);transition:width .15s}
.hud-right{text-align:right}.hud-right .hud-value{justify-content:flex-end}
.ammo-heading{display:flex;align-items:baseline;justify-content:flex-end;gap:12px}
#weaponHint{white-space:nowrap}.kills{min-width:76px}.kills .hud-value b{font-size:30px}
#hostilesHud{position:absolute;top:76px;right:max(28px,calc(env(safe-area-inset-right) + 16px));align-items:flex-end;text-align:right;z-index:3;pointer-events:none}
#hostilesHud .hud-value{justify-content:flex-end}.menu-active #hostilesHud{visibility:hidden}
#extractionHud{position:absolute;top:116px;left:32px;display:flex;align-items:center;gap:12px;color:#a4ed83;z-index:3;pointer-events:none;text-shadow:0 2px 4px #000,0 0 10px #000}
#extractionHud[hidden]{display:none}#extractionHud>div{display:flex;flex-direction:column;gap:4px}#extractionHud span{font-size:14px;letter-spacing:1px}#extractionDistance{margin-left:10px;font-variant-numeric:tabular-nums}#extractionTurn{font-size:12px;letter-spacing:1px;color:#d0e5c4}
#extractionArrow{width:32px;height:32px;flex:none;fill:#a4ed8330;stroke:#a4ed83;stroke-width:2;filter:drop-shadow(0 2px 3px #000)}.menu-active #extractionHud,.map-open #extractionHud{visibility:hidden}
@media(max-width:700px){
  #hud{left:max(16px,calc(env(safe-area-inset-left) + 8px));right:max(16px,calc(env(safe-area-inset-right) + 8px));bottom:max(24px,calc(env(safe-area-inset-bottom) + 10px))}
  .hud-group{gap:16px}.hud-cell{min-width:72px}.hud-value b{font-size:32px}.hud-label,#weaponName{font-size:12px}.ammo{width:168px;min-width:0}#weaponHint{display:none}
  #hostilesHud{top:64px;right:max(16px,calc(env(safe-area-inset-right) + 8px))}
  #extractionHud{left:16px;top:112px;gap:9px}
}
@media(max-width:560px){
  .hud-group{flex-direction:column;gap:12px}.hud-left{align-items:flex-start}.hud-right{align-items:flex-end}.ammo{width:160px}.kills .hud-value b{font-size:26px}
  #mission{right:116px;flex-wrap:wrap;row-gap:2px}#objective{flex:1;min-width:0}#bossHud{top:140px}
}
@media(max-height:600px){
  #hud{bottom:max(18px,calc(env(safe-area-inset-bottom) + 8px))}.hud-group{gap:18px}.hud-value b{font-size:30px}.hud-label,#weaponName{font-size:12px}.kills .hud-value b{font-size:26px}
  #hostilesHud{top:58px}
  #extractionHud{top:92px}
}
@media(pointer:coarse) and (max-width:560px){
  #joystick{bottom:calc(184px + env(safe-area-inset-bottom))}#touchFire{bottom:calc(180px + env(safe-area-inset-bottom))}#touchSwitch{bottom:calc(200px + env(safe-area-inset-bottom))}
}

/* Keep the longer series title readable on narrow screens. */
h1 .series-title{display:block;font-size:clamp(30px,8vw,80px);line-height:1;letter-spacing:clamp(2px,.5vw,5px)}h1 .game-subtitle{display:block;font-size:clamp(26px,7vw,64px);line-height:1;letter-spacing:clamp(2px,.4vw,4px)}

#weaponName{min-width:0;white-space:normal}

.publisher-logo{display:block;width:124px;max-width:42vw;height:auto;filter:brightness(0) invert(1)}
@media(max-height:600px){.publisher-logo{width:112px}}
