:root{--font-main: "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, sans-serif;--font-mono: "Consolas", "Courier New", monospace;--color-hud-bg: rgba(12, 16, 20, .78);--color-hud-border: rgba(255, 255, 255, .15);--color-accent-amber: #f59e0b;--color-accent-green: #10b981;--color-accent-red: #ef4444;--color-accent-blue: #38bdf8;--color-boss-red: #dc2626;--color-boss-bg: rgba(20, 5, 5, .88)}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}html,body{width:100%;height:100%;overflow:hidden;background:#05080a;color:#f1f5f9;font-family:var(--font-main)}#game-container{width:100vw;height:100vh;position:absolute;top:0;left:0;z-index:1}#hud-overlay{position:absolute;top:0;left:0;width:100vw;height:100vh;z-index:10;pointer-events:none}#compass-container{position:absolute;top:16px;left:50%;transform:translate(-50%);width:320px;height:34px;background:var(--color-hud-bg);border:1px solid var(--color-hud-border);border-radius:6px;overflow:hidden;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#compass-ribbon{display:flex;position:absolute;top:5px;left:0;width:1000px;transition:transform .05s linear}.compass-mark{width:40px;text-align:center;font-size:11px;font-weight:700;letter-spacing:1px;color:#94a3b8}#compass-needle{position:absolute;bottom:2px;left:50%;transform:translate(-50%);color:var(--color-accent-amber);font-size:10px}#control-hint{position:absolute;top:58px;left:50%;transform:translate(-50%);background:var(--color-hud-bg);border:1px solid var(--color-hud-border);border-radius:4px;padding:6px 14px;font-size:12px;font-weight:700;color:#fde68a;letter-spacing:.5px;opacity:0;pointer-events:none;transition:opacity .3s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#control-hint.visible{opacity:1}#objective-indicator{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1);transition:opacity .2s}#objective-indicator.objective-hidden{display:none}#objective-arrow{display:inline-block;color:#ffe28a;font-size:26px;text-shadow:0 0 10px rgba(255,226,138,.9),0 0 2px #fff;transition:transform .1s linear;animation:objectivePulse 1.4s ease-in-out infinite}@keyframes objectivePulse{0%,to{opacity:1}50%{opacity:.6}}#objective-distance{font-family:var(--font-mono);font-weight:800;color:#fff;font-size:13px}.objective-label{font-size:9px;letter-spacing:1.5px;color:#94a3b8;font-weight:700}#mission-tracker{position:absolute;top:20px;left:24px;background:var(--color-hud-bg);border:1px solid var(--color-hud-border);border-left:4px solid var(--color-accent-amber);padding:14px 18px;border-radius:4px;min-width:280px;max-width:360px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 24px #00000080}.mission-badge{font-size:9px;font-weight:800;letter-spacing:2px;color:var(--color-accent-amber);margin-bottom:4px}#mission-title{font-size:14px;font-weight:700;color:#fff;margin-bottom:4px}#mission-objective{font-size:12px;color:#cbd5e1;line-height:1.4;margin-bottom:8px}#mission-progress-bar{width:100%;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-bottom:6px}#mission-progress-fill{width:0%;height:100%;background:var(--color-accent-amber);transition:width .3s ease}#mission-subtext{font-size:10px;color:#64748b;font-family:var(--font-mono)}#top-actions{position:absolute;top:20px;right:24px;display:flex;gap:10px;pointer-events:auto}.hud-btn{background:var(--color-hud-bg);border:1px solid var(--color-hud-border);color:#e2e8f0;font-size:12px;font-weight:600;padding:8px 14px;border-radius:4px;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hud-btn:hover{background:#ffffff26;border-color:#cbd5e1;transform:translateY(-1px)}#boss-hud{position:absolute;top:66px;left:50%;transform:translate(-50%);width:580px;background:var(--color-boss-bg);border:1px solid rgba(220,38,38,.4);box-shadow:0 0 35px #dc262659,inset 0 0 15px #000c;border-radius:4px;padding:12px 20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .5s ease,transform .5s ease}.boss-hud-hidden{opacity:0;pointer-events:none;transform:translate(-50%,-30px)!important}.boss-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.boss-skull{font-size:18px;filter:drop-shadow(0 0 6px red)}#boss-name{font-size:16px;font-weight:900;letter-spacing:3px;color:#fecaca;text-shadow:0 0 10px rgba(239,68,68,.8);flex-grow:1;margin-left:10px}.boss-phase-badge{font-size:10px;font-weight:800;padding:3px 8px;background:#ef444440;border:1px solid rgba(239,68,68,.6);color:#fca5a5;border-radius:3px;letter-spacing:1px}.boss-bar-outer{position:relative;width:100%;height:18px;background:#000000b3;border:1px solid rgba(255,255,255,.15);border-radius:3px;overflow:hidden}#boss-bar-lag{position:absolute;top:0;left:0;height:100%;background:#f97316;transition:width .6s cubic-bezier(.2,.8,.2,1);z-index:1}#boss-bar-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#991b1b,#ef4444);box-shadow:0 0 12px #ef4444;transition:width .15s ease-out;z-index:2}.boss-stats-row{display:flex;justify-content:space-between;font-size:11px;color:#fca5a5;font-family:var(--font-mono);margin-top:6px;font-weight:600}#crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;pointer-events:none}.ch-part{position:absolute;background:#ffffffd9;box-shadow:0 0 3px #000c}.ch-top{top:2px;left:15px;width:2px;height:7px}.ch-bottom{bottom:2px;left:15px;width:2px;height:7px}.ch-left{top:15px;left:2px;width:7px;height:2px}.ch-right{top:15px;right:2px;width:7px;height:2px}.ch-dot{position:absolute;top:15px;left:15px;width:2px;height:2px;background:#f87171;border-radius:50%}#hitmarker{position:absolute;top:0;left:0;width:32px;height:32px;transition:opacity .12s}.hitmarker-hidden{opacity:0}.hitmarker-kill .hm-line{background:#fbbf24;box-shadow:0 0 8px #fbbf24;width:9px}.hitmarker-kill .hm-tl{top:3px;left:3px}.hitmarker-kill .hm-tr{top:3px;right:3px}.hitmarker-kill .hm-bl{bottom:3px;left:3px}.hitmarker-kill .hm-br{bottom:3px;right:3px}.hm-line{position:absolute;width:7px;height:2px;background:#ef4444;box-shadow:0 0 4px #ef4444}.hm-tl{top:6px;left:6px;transform:rotate(45deg)}.hm-tr{top:6px;right:6px;transform:rotate(-45deg)}.hm-bl{bottom:6px;left:6px;transform:rotate(-45deg)}.hm-br{bottom:6px;right:6px;transform:rotate(45deg)}#sniper-scope{position:absolute;top:0;left:0;width:100vw;height:100vh;z-index:5;pointer-events:none;background:radial-gradient(circle at center,transparent 38%,rgba(0,0,0,.95) 48%,#000 70%);display:flex;align-items:center;justify-content:center}.scope-hidden{display:none!important}.scope-cross-h{position:absolute;width:100vw;height:1px;background:#00ff8066}.scope-cross-v{position:absolute;height:100vh;width:1px;background:#00ff8066}.scope-reticle-circle{width:140px;height:140px;border:1px solid rgba(0,255,128,.35);border-radius:50%}.scope-zoom-text{position:absolute;bottom:22%;font-family:var(--font-mono);font-size:12px;letter-spacing:2px;color:#34d399}#damage-vignette{position:absolute;top:0;left:0;width:100vw;height:100vh;pointer-events:none;box-shadow:inset 0 0 80px #dc262600;transition:box-shadow .25s ease-out;z-index:6}#damage-vignette.active{box-shadow:inset 0 0 100px #dc2626d9}#interact-prompt{position:absolute;bottom:30%;left:50%;transform:translate(-50%);background:var(--color-hud-bg);border:1px solid var(--color-accent-amber);padding:8px 16px;border-radius:20px;font-size:13px;font-weight:600;box-shadow:0 0 15px #f59e0b4d;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.prompt-hidden{display:none}.key-tag{background:var(--color-accent-amber);color:#000;padding:2px 6px;border-radius:4px;font-weight:800;margin-right:6px}#companion-hud{position:absolute;bottom:120px;left:28px;background:var(--color-hud-bg);border:1px solid var(--color-hud-border);padding:10px 14px;border-radius:4px;min-width:220px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.companion-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-size:11px;font-weight:700}.comp-badge{font-size:9px;background:#10b98133;color:var(--color-accent-green);border:1px solid rgba(16,185,129,.4);padding:1px 5px;border-radius:3px}.comp-bar-outer{width:100%;height:6px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-bottom:4px}#comp-health-fill{width:100%;height:100%;background:var(--color-accent-green);transition:width .2s}.comp-subtext{font-size:9px;color:#94a3b8;font-family:var(--font-mono)}#player-health-hud{position:absolute;bottom:24px;left:28px;background:var(--color-hud-bg);border:1px solid var(--color-hud-border);padding:14px 18px;border-radius:4px;min-width:260px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 20px #0009}.health-label-row{display:flex;justify-content:space-between;font-weight:800;font-size:12px;letter-spacing:1px;margin-bottom:6px}.hud-tag{color:#94a3b8}#player-hp-numeric{color:#fff;font-family:var(--font-mono)}.player-bar-outer{width:100%;height:14px;background:#0009;border:1px solid rgba(255,255,255,.2);border-radius:2px;overflow:hidden;margin-bottom:10px}#player-health-fill{width:100%;height:100%;background:linear-gradient(90deg,#10b981,#34d399);box-shadow:0 0 10px #10b981;transition:width .2s ease-out,background .3s}.stamina-row{display:flex;align-items:center;gap:8px}.stamina-tag{font-size:9px;color:#94a3b8;font-weight:700;letter-spacing:1px}.stamina-bar-outer{flex-grow:1;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}#player-stamina-fill{width:100%;height:100%;background:var(--color-accent-blue);transition:width .1s linear}#weapon-hud{position:absolute;bottom:24px;right:28px;background:var(--color-hud-bg);border:1px solid var(--color-hud-border);padding:14px 18px;border-radius:4px;min-width:280px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 20px #0009;text-align:right}.weapon-name-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}#weapon-name{font-size:13px;font-weight:800;letter-spacing:1px}.tier-rare,.tier-standard{font-size:9px;padding:2px 6px;border-radius:3px;background:#38bdf833;color:#38bdf8;border:1px solid rgba(56,189,248,.4);font-weight:800}.tier-advanced{font-size:9px;padding:2px 6px;border-radius:3px;background:#f59e0b33;color:#f59e0b;border:1px solid rgba(245,158,11,.4);font-weight:800}.ammo-row{display:flex;justify-content:flex-end;align-items:flex-end;gap:12px;margin-bottom:10px}#ammo-count{font-family:var(--font-mono);font-size:34px;font-weight:900;line-height:1}.ammo-slash{font-size:20px;color:#64748b;margin:0 3px}#ammo-reserve{font-size:18px;color:#94a3b8}.ammo-type-col{display:flex;flex-direction:column;align-items:flex-end;font-size:10px;font-family:var(--font-mono);color:#94a3b8}#reload-hint{color:var(--color-accent-amber);font-weight:700;margin-top:2px}.weapon-slots{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}.w-slot{font-size:10px;padding:3px 8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:3px;color:#94a3b8;font-family:var(--font-mono)}.w-slot.active{background:#f59e0b33;border-color:var(--color-accent-amber);color:#fef3c7;font-weight:700}.w-slot.locked{opacity:.4;filter:grayscale(.6)}.w-slot.locked:after{content:" 🔒"}.slot-num{font-weight:900;color:#fff}#notification-feed{position:absolute;top:100px;right:28px;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.notif-item{background:#0f172ad9;border-left:3px solid var(--color-accent-amber);padding:8px 14px;border-radius:3px;font-size:12px;color:#e2e8f0;box-shadow:0 4px 12px #0006;animation:notifSlide .3s ease}@keyframes notifSlide{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.notif-achievement{border-left-color:#fbbf24;background:#422e04e6;color:#fef3c7;font-weight:700}#version-tag{position:absolute;bottom:6px;right:8px;font-size:9px;letter-spacing:1px;color:#e2e8f059;font-family:var(--font-mono)}#mobile-notice{position:fixed;top:0;left:0;width:100%;z-index:60;background:#b45309f2;color:#fff;font-size:12px;font-weight:600;text-align:center;padding:8px 16px}.notice-hidden{display:none!important}.modal-screen{position:absolute;top:0;left:0;width:100vw;height:100vh;z-index:50;background:#05080cd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;pointer-events:auto}.modal-hidden{display:none!important}.modal-box{background:#0f172a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:32px;box-shadow:0 20px 50px #000c;max-width:540px;width:90%;color:#e2e8f0}.modal-start{text-align:center}.game-logo{font-size:38px;font-weight:900;letter-spacing:6px;background:linear-gradient(135deg,#f59e0b,#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:4px}.game-subtitle{font-size:11px;letter-spacing:4px;color:#94a3b8;margin-bottom:24px;font-family:var(--font-mono)}.game-intro{font-size:14px;line-height:1.6;color:#cbd5e1;margin-bottom:24px}.start-meta-row{display:flex;justify-content:center;gap:24px;font-size:12px;color:#cbd5e1;margin-bottom:18px}.start-meta-row strong{color:#fbbf24}.version-footer{margin-top:16px;font-size:10px;letter-spacing:2px;color:#e2e8f066;font-family:var(--font-mono)}.start-instruction{background:#0006;border:1px solid rgba(255,255,255,.08);padding:16px;border-radius:6px;font-size:12px;color:#94a3b8;line-height:1.8;margin-bottom:28px;text-align:left}.btn-primary{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;border:none;font-size:14px;font-weight:800;letter-spacing:2px;padding:14px 32px;border-radius:4px;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #d9770666}.btn-primary:hover{background:linear-gradient(135deg,#f59e0b,#d97706);transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b99}.btn-secondary{background:#ffffff1a;color:#cbd5e1;border:1px solid rgba(255,255,255,.2);font-size:13px;font-weight:700;padding:12px 24px;border-radius:4px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#fff3;color:#fff}.modal-large{max-width:900px;width:90%;max-height:85vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:14px;margin-bottom:16px}.modal-header h2{font-size:18px;font-weight:800;letter-spacing:1px}.modal-close-btn{background:transparent;border:none;color:#94a3b8;font-size:18px;cursor:pointer}.world-tabs{display:flex;gap:12px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1)}.tab-btn{background:transparent;border:none;border-bottom:2px solid transparent;padding:8px 16px;font-size:13px;font-weight:700;color:#94a3b8;cursor:pointer;transition:all .2s}.tab-btn.active{color:#fff;border-bottom-color:var(--color-accent-amber)}.tab-content{display:none;overflow-y:auto;flex-grow:1;padding-right:8px}.tab-content.active{display:block}.tab-description{font-size:12px;color:#94a3b8;margin-bottom:16px;line-height:1.5}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.country-card{background:#1e293bb3;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:16px;transition:all .2s;cursor:pointer}.country-card:hover{border-color:var(--color-accent-amber);transform:translateY(-2px);box-shadow:0 6px 18px #00000080}.country-card.active-map{border-color:var(--color-accent-green);box-shadow:0 0 15px #10b98140}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-title{font-size:15px;font-weight:800}.danger-tag{font-size:10px;font-weight:900;padding:2px 6px;border-radius:3px;font-family:var(--font-mono)}.danger-C{background:#0284c7;color:#fff}.danger-B{background:#d97706;color:#fff}.danger-A{background:#dc2626;color:#fff}.danger-S{background:#7c3aed;color:#fff}.card-env{font-size:12px;color:#cbd5e1;margin-bottom:12px}.card-stats{font-size:11px;color:#94a3b8;font-family:var(--font-mono);display:flex;flex-direction:column;gap:4px}.card-locked-badge{font-size:10px;color:#f87171;font-weight:700;margin-top:8px}.bestiary-layout{display:grid;grid-template-columns:240px 1fr;gap:16px;height:480px}.bestiary-sidebar{border-right:1px solid rgba(255,255,255,.1);overflow-y:auto;padding-right:10px}.bestiary-item{padding:10px 12px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.bestiary-item:hover,.bestiary-item.active{background:#ffffff1a}.bestiary-item.active{border-left:3px solid var(--color-accent-amber)}.bestiary-detail{overflow-y:auto;padding-left:10px}.beast-header{border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:12px;margin-bottom:16px}.beast-name{font-size:22px;font-weight:900;color:#fff}.beast-species{font-size:12px;color:#94a3b8;font-family:var(--font-mono)}.beast-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.beast-cell{background:#0000004d;padding:10px;border-radius:4px}.beast-cell-title{font-size:10px;color:#64748b;text-transform:uppercase;font-weight:700;margin-bottom:4px}.beast-cell-val{font-size:13px;font-weight:600;color:#e2e8f0}.controls-grid{display:grid;grid-template-columns:140px 1fr;gap:10px;font-size:13px;line-height:1.5}.controls-grid div:nth-child(odd){color:var(--color-accent-amber);font-family:var(--font-mono)}.game-over-title{color:#ef4444;font-size:28px;letter-spacing:2px;margin-bottom:10px}.game-over-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 20px;background:#00000059;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:14px 18px;margin:18px 0;font-size:13px;color:#cbd5e1;text-align:left}.game-over-stats span{color:#fff;font-weight:800;font-family:var(--font-mono)}.modal-mission-complete,.modal-pause{text-align:center;max-width:440px}.mission-complete-title{color:var(--color-accent-green);font-size:24px;letter-spacing:2px;margin-bottom:6px}.mission-complete-subtitle{font-size:13px;color:#94a3b8;margin-bottom:12px}.mc-stars{font-size:30px;color:#fbbf24;letter-spacing:4px;margin-bottom:6px}.mc-stats-grid{margin:14px 0 22px}.pause-title{font-size:26px;letter-spacing:4px;color:#e2e8f0;margin-bottom:22px}.modal-pause .btn-primary,.modal-pause .btn-secondary{display:block;width:100%;margin-bottom:10px}.victory-title{color:#10b981;font-size:28px;letter-spacing:2px;margin-bottom:10px}.victory-subtitle{font-size:14px;color:#94a3b8;margin-bottom:16px}.victory-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}@media(max-width:1400px),(max-height:800px){#boss-hud{width:min(500px,86vw);top:54px;padding:10px 16px}#player-health-hud{bottom:16px;left:18px;min-width:220px;padding:10px 14px}#weapon-hud{bottom:16px;right:18px;min-width:240px;padding:10px 14px}#companion-hud{bottom:100px;left:18px;min-width:200px;padding:8px 12px}#mission-tracker{top:14px;left:18px;padding:10px 14px;min-width:240px}.modal-large{max-height:90vh}.bestiary-layout{height:380px}}@media(max-width:640px){#compass-container{width:220px;height:28px;top:44px}#control-hint{top:80px;font-size:10px;padding:5px 10px;max-width:80vw}#mission-tracker{top:80px;left:10px;right:10px;max-width:none;min-width:0;padding:8px 12px}#top-actions{top:auto;bottom:10px;left:10px;right:10px;justify-content:center;flex-wrap:wrap}#companion-hud{display:none}#player-health-hud{bottom:12px;left:10px;min-width:0;width:46vw;padding:8px 10px}#weapon-hud{bottom:12px;right:10px;min-width:0;width:46vw;padding:8px 10px}.weapon-slots{display:none}#notification-feed{top:auto;bottom:90px;right:10px;max-width:70vw}.modal-box{padding:20px}}
