:root{--ink: #f2eedf;--muted: #b9b39c;--accent: #e0b84a;--panel: rgba(17, 20, 12, .88);--line: rgba(224, 184, 74, .35);--red: #e0573a}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#11140c;color:var(--ink);font-family:Inter,system-ui,sans-serif}canvas#game{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.hidden{display:none!important}.screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse at center,#0a0c068c,#0a0c06eb);z-index:20;overflow-y:auto}.screen.clear{background:#0a0c068c}.panel{width:min(720px,100%);background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:28px 30px;margin:auto;box-shadow:0 20px 60px #00000080}h1,h2{font-family:Oswald,Impact,sans-serif;letter-spacing:.06em;margin:0}h1{font-size:clamp(40px,9vw,72px);line-height:1;color:var(--accent)}h2{font-size:clamp(28px,6vw,40px)}.si{font-family:Noto Sans Sinhala,sans-serif;font-weight:700;font-size:20px;color:var(--muted);margin:6px 0 12px}.eyebrow{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.2em;color:var(--accent);font-size:13px;margin-bottom:6px}.eyebrow.red{color:var(--red)}.lede{color:var(--ink);opacity:.9;line-height:1.5}.note{color:var(--muted);font-size:13px;margin-bottom:0}.controls{color:var(--muted);font-size:13px;line-height:1.6;margin-top:14px}.controls b{color:var(--ink);margin-right:6px}.row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;align-items:center}.row.col{flex-direction:column;align-items:stretch}label{color:var(--muted);font-size:14px;display:flex;gap:10px;align-items:center}select{background:#222818;color:var(--ink);border:1px solid var(--line);padding:6px 8px;border-radius:4px;font:inherit}.btn{font-family:Oswald,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-size:16px;padding:10px 20px;border-radius:4px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);color:#1a1a0e;border-color:var(--accent);font-weight:600}.btn.primary:hover{filter:brightness(1.1)}.missions{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:18px}.mcard{text-align:left;background:#ffffff0a;border:1px solid var(--line);border-radius:4px;padding:10px 12px;color:var(--ink);cursor:pointer;font:inherit}.mcard:hover:not(:disabled){border-color:var(--accent);background:#e0b84a14}.mcard:disabled{opacity:.4;cursor:not-allowed}.mcard .n{font-family:Oswald,sans-serif;font-size:12px;color:var(--accent);letter-spacing:.15em}.mcard .t{font-family:Oswald,sans-serif;font-size:20px}.mcard .s{font-family:Noto Sans Sinhala,sans-serif;font-size:13px;color:var(--muted)}.mcard .d{font-size:12px;color:var(--muted)}.mcard .done{color:#9bd16a;font-size:12px}.b-place{color:var(--muted);font-size:14px}.b-text p,.e-text p,.c-text{line-height:1.6}.b-objs-title{font-family:Oswald,sans-serif;color:var(--accent);letter-spacing:.15em;text-transform:uppercase;font-size:13px;margin-top:10px}.b-objs{margin:6px 0 0;padding-left:22px;line-height:1.7}.c-stats{color:var(--muted);font-size:14px}.loading{margin-top:24px}.loading-bar{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.loading-bar div{height:100%;width:0;background:var(--accent);transition:width .2s}.loading-text{color:var(--muted);font-size:13px;margin-top:8px}#clickToPlay{position:fixed;left:50%;top:60%;transform:translate(-50%);z-index:15;background:var(--panel);border:1px solid var(--line);padding:10px 18px;border-radius:4px;font-family:Oswald,sans-serif;letter-spacing:.1em;pointer-events:none}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10;font-family:Oswald,sans-serif;text-shadow:0 1px 3px rgba(0,0,0,.8)}.objective{position:absolute;left:16px;top:16px;max-width:min(360px,60vw)}.obj-mission{font-size:12px;letter-spacing:.2em;color:var(--accent);text-transform:uppercase}.obj-text{font-size:19px;margin-top:2px}.obj-sub{font-size:14px;color:var(--muted);font-family:Inter,sans-serif}.compass{position:absolute;top:14px;left:50%;transform:translate(-50%);width:min(320px,50vw);height:26px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent);mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent)}.compass-strip{position:absolute;top:0;left:0;height:100%;white-space:nowrap}.compass-strip span{position:absolute;top:2px;width:30px;margin-left:-15px;text-align:center;font-size:15px}.compass-strip span.minor{font-size:11px;color:var(--muted);top:5px}.compass-strip span.obj{color:var(--accent);font-size:14px}.compass-tick{position:absolute;left:50%;bottom:0;width:2px;height:6px;background:var(--accent)}.crosshair{position:absolute;left:50%;top:50%;width:0;height:0}.crosshair i{position:absolute;background:#ffffffe6;box-shadow:0 0 2px #000}.crosshair i:nth-child(1),.crosshair i:nth-child(2){width:2px;height:8px;left:-1px}.crosshair i:nth-child(3),.crosshair i:nth-child(4){height:2px;width:8px;top:-1px}.crosshair i:nth-child(1){top:calc(-8px - var(--gap, 6px))}.crosshair i:nth-child(2){top:var(--gap, 6px)}.crosshair i:nth-child(3){left:calc(-8px - var(--gap, 6px))}.crosshair i:nth-child(4){left:var(--gap, 6px)}.hitmarker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:22px;color:#fff;opacity:0;transition:opacity .15s}.hitmarker.on{opacity:1;transition:none}.hitmarker.kill{color:var(--red)}.waypoint{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px}.wp-dot{width:14px;height:14px;border:2px solid var(--accent);transform:rotate(45deg);background:#e0b84a40}.wp-dist{font-size:12px;color:var(--accent)}.prompt{position:absolute;left:50%;top:62%;transform:translate(-50%);text-align:center;display:none}.prompt.on{display:block}.prompt-text{font-size:17px}.prompt-bar{width:200px;height:4px;background:#fff3;margin:6px auto 0}.prompt-bar div{height:100%;width:0;background:var(--accent)}.toasts{position:absolute;left:50%;top:22%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;width:90vw}.toast{font-size:18px;letter-spacing:.05em;text-align:center;animation:toast 3.5s forwards}.toast.big{font-size:26px;color:var(--accent)}@keyframes toast{0%{opacity:0;transform:translateY(8px)}8%{opacity:1;transform:none}80%{opacity:1}to{opacity:0}}.killfeed{position:absolute;right:16px;top:16px;text-align:right;font-size:14px;font-family:Inter,sans-serif}.killfeed div{animation:toast 4s forwards}.status{position:absolute;left:16px;bottom:16px;width:min(260px,40vw)}.hp-label{font-size:12px;letter-spacing:.2em;color:var(--muted)}.hp-bar{height:8px;background:#00000080;border:1px solid rgba(255,255,255,.25);margin-top:3px}.hp-bar div{height:100%;background:#c9d36a;width:100%;transition:width .15s}.hp-bar div.low{background:var(--red)}.squad{position:absolute;left:16px;bottom:54px;font-size:12px;color:var(--muted);font-family:Inter,sans-serif;line-height:1.5}.ammo{position:absolute;right:16px;bottom:14px;text-align:right}.ammo-mag{font-size:40px}.ammo-res{font-size:20px;color:var(--muted);margin-left:4px}.ammo-name{font-size:12px;letter-spacing:.2em;color:var(--muted)}.ammo.low .ammo-mag{color:var(--red)}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;background:radial-gradient(ellipse at center,transparent 45%,rgba(160,20,10,.75));transition:opacity .3s}#touch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11;pointer-events:none}#touch .stick-zone{position:absolute;left:0;bottom:0;width:50%;height:240px;pointer-events:auto}#touch .look-zone{position:absolute;right:0;top:0;width:55%;height:100%;pointer-events:auto}#touch .stick{position:absolute;left:22px;bottom:30px;width:120px;height:120px;border-radius:50%;border:2px solid rgba(255,255,255,.45);background:radial-gradient(circle,#ffffff14,#00000040);opacity:.75;pointer-events:none}#touch .stick.on{opacity:1}#touch .stick-label{position:absolute;left:0;right:0;top:-20px;text-align:center;font:11px Oswald,sans-serif;letter-spacing:.15em;color:#ffffffb3}#touch .stick.on .stick-label{display:none}.btn-sprint.on{background:#e0b84a73}#touch .knob{position:absolute;left:35px;top:35px;width:50px;height:50px;border-radius:50%;background:#ffffff59}.tbtn{position:absolute;pointer-events:auto;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:#00000059;color:#fff;font-family:Oswald,sans-serif;font-size:14px;width:62px;height:62px;touch-action:none;user-select:none;-webkit-user-select:none}.tbtn.down{background:#e0b84a80}.btn-fire{right:24px;bottom:90px;width:84px!important;height:84px!important}.btn-aim{right:124px;bottom:40px}.btn-reload{right:120px;bottom:140px;width:48px!important;height:48px!important}.btn-action{right:30px;bottom:196px;width:52px!important;height:52px!important}.btn-sprint{left:150px;bottom:204px;width:52px!important;height:52px!important}.btn-pause{right:16px;top:60px;width:40px!important;height:40px!important}#hud.touch-mode .ammo,#hud.touch-mode .status{bottom:auto;top:110px}@media (max-width: 600px){.panel{padding:20px 16px}.obj-text{font-size:16px}.compass{top:80px}}.panel.wide{width:min(1000px,100%)}.panel.center{text-align:center}.panel h3{font-family:Oswald,sans-serif;letter-spacing:.08em;color:var(--accent);font-weight:400;margin:18px 0 8px;font-size:16px;text-transform:uppercase}.btn.big{font-size:20px;padding:14px 34px;margin-top:20px}.btn.danger{border-color:#e0573a99;color:var(--red)}.btn:focus-visible,.mbtn:focus-visible,.mcard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.menu-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:22px;margin-top:16px}.menu-list{display:flex;flex-direction:column;gap:6px}.mbtn{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#ffffff08;border:1px solid transparent;border-left:3px solid var(--line);color:var(--ink);padding:8px 14px;cursor:pointer;font:inherit;border-radius:2px;transition:background .15s,border-color .15s}.mbtn span{font-family:Oswald,sans-serif;font-size:19px;letter-spacing:.06em;text-transform:uppercase}.mbtn small{color:var(--muted);font-size:12px}.mbtn small.planned{color:#8a8470;font-style:italic}.mbtn:hover:not(:disabled),.mbtn:focus-visible{background:#e0b84a1a;border-left-color:var(--accent)}.mbtn:disabled{opacity:.45;cursor:not-allowed}.menu-side{display:flex;flex-direction:column;gap:14px}.rank-card{border:1px solid var(--line);padding:14px;border-radius:4px;background:#00000040}.rank-card .rc-name{font-family:Oswald,sans-serif;font-size:22px}.rank-card .rc-sub{color:var(--muted);font-size:13px}.xpbar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin:8px 0 4px}.xpbar div{height:100%;background:var(--accent)}@media (max-width: 760px){.menu-grid{grid-template-columns:1fr}}.tag{display:inline-block;font-family:Oswald,sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:3px 8px;border-radius:2px;margin:10px 0 4px}.tag.history{background:#7fc8e81f;color:#9fd2ea;border:1px solid rgba(127,200,232,.35)}.tag.fiction{background:#e0b84a1f;color:var(--accent);border:1px solid var(--line)}.b-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px}@media (max-width: 760px){.b-cols{grid-template-columns:1fr;gap:6px}}.b-fiction,.c-fiction{font-style:italic;line-height:1.6;color:#e8dfc4}.b-squad{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.chip{font-size:12px;padding:3px 9px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff0a}.squad-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:12px}.squad-card{border:1px solid var(--line);border-radius:4px;padding:12px 14px;background:#00000040}.squad-card .n{font-family:Oswald,sans-serif;font-size:19px}.squad-card .r{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.squad-card p{margin:0;font-size:14px;line-height:1.5}.profile-head{display:flex;gap:20px;align-items:center}.profile-head .ph-name{font-family:Oswald,sans-serif;font-size:30px}.profile-head .ph-sub{color:var(--muted)}.profile-missions{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.pm{border:1px solid rgba(255,255,255,.12);padding:8px 10px;border-radius:3px;font-size:13px}.pm.done{border-color:#9bd16a80}.pm b{font-family:Oswald,sans-serif;font-weight:400;font-size:16px;display:block}.medal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.medal{display:flex;gap:10px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.1);border-radius:3px;font-size:13px;opacity:.45}.medal.on{opacity:1;border-color:var(--line)}.medal .ico{width:30px;height:30px;flex:none;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f4d77a,#8a6a1e);box-shadow:0 0 0 2px #3a5a2a}.medal:not(.on) .ico{background:#333;box-shadow:none}.medal b{display:block;font-family:Oswald,sans-serif;font-weight:400;font-size:15px}.insignia svg{width:120px;height:60px}.insignia{margin:6px 0}.archive-body h3{margin-top:22px}.timeline{list-style:none;padding:0;margin:0;border-left:2px solid var(--line)}.timeline li{padding:6px 0 10px 16px;position:relative;line-height:1.5;opacity:0;animation:rise .6s forwards}.timeline li:before{content:"";position:absolute;left:-6px;top:12px;width:10px;height:10px;border-radius:50%;background:var(--accent)}.timeline li b{font-family:Oswald,sans-serif;font-weight:400;color:var(--accent);margin-right:8px}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sources a{color:#9fd2ea}.sources li{margin-bottom:4px;line-height:1.5}.e-text p,.archive-body p{line-height:1.65}.e-squad li{margin-bottom:6px;line-height:1.5}.closing{font-family:Oswald,sans-serif;font-size:20px;letter-spacing:.03em;color:var(--accent);text-align:center;padding:16px 0 4px;line-height:1.5}.settings{display:flex;flex-direction:column;gap:12px;margin-top:14px}.settings label{justify-content:space-between}.settings input[type=range]{flex:1;accent-color:var(--accent)}.settings output{width:44px;text-align:right;color:var(--ink)}.credits-body p{line-height:1.6}.xp-box{margin-top:10px;border:1px solid var(--line);border-radius:4px;padding:10px 12px;background:#00000040}.xp-line{display:flex;justify-content:space-between;font-size:14px;padding:2px 0}.xp-line.total{border-top:1px solid var(--line);margin-top:6px;padding-top:6px;font-family:Oswald,sans-serif;font-size:18px;color:var(--accent)}.new-medal{color:#9bd16a;font-size:14px;margin-top:6px}.panel[data-screen=promotion]{position:relative;overflow:hidden}.confetti{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.promo-rank{font-size:clamp(30px,6vw,46px);color:var(--accent)}.promo-lines p{margin:6px 0;line-height:1.5}.promo-lines b{font-family:Oswald,sans-serif;font-weight:400}.radio{position:absolute;left:50%;bottom:96px;transform:translate(-50%);max-width:min(720px,90vw);background:#0a0c06b8;border-left:3px solid var(--accent);padding:8px 14px;font-family:Inter,sans-serif;font-size:16px;line-height:1.45;opacity:0;transition:opacity .25s;text-shadow:none}.radio.on{opacity:1}.radio.tip{border-left-color:#7fc8e8;background:#142832bf}.radio-who{font-family:Oswald,sans-serif;letter-spacing:.08em;margin-right:10px;text-transform:uppercase;font-size:14px}#prologue{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;overflow:hidden;font-family:Oswald,sans-serif;color:#e9e4d2}#prologue .pro-rain{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:3;pointer-events:none}#prologue .pro-dark{position:absolute;top:0;right:0;bottom:0;left:0;background:#050604;transition:opacity 2.5s;z-index:1}#prologue .pro-dark.out{opacity:.15}#prologue .pro-lines{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:2;transition:opacity 1s}#prologue .pro-lines div{font-size:clamp(22px,4vw,40px);letter-spacing:.12em;animation:rise 1.4s forwards;opacity:0}#prologue .pro-lines.out{opacity:0}#prologue .pro-map{position:absolute;left:50%;top:50%;height:min(78vh,640px);transform:translate(-50%,-52%);z-index:2;opacity:0;transition:opacity 1.5s;overflow:visible}#prologue .pro-map.on{opacity:1}#prologue .pro-island{fill:#50643240;stroke:#c9b26a;stroke-width:1.2;stroke-dasharray:1400;stroke-dashoffset:1400;transition:stroke-dashoffset 3s ease-in-out}#prologue .pro-map.on .pro-island{stroke-dashoffset:0}#prologue .pin{animation:rise .6s forwards;opacity:0}#prologue .pin circle{fill:#e0573a;stroke:#fff;stroke-width:.8}#prologue .pin text{fill:#f2eedf;font-size:9px;font-family:Oswald,sans-serif;letter-spacing:.04em}#prologue .pin text.d{fill:#e0b84a;font-size:7px}#prologue .pro-caption{position:absolute;left:50%;bottom:12vh;transform:translate(-50%);width:min(760px,90vw);text-align:center;z-index:4;font-family:Inter,sans-serif;font-size:clamp(15px,2vw,19px);line-height:1.55;opacity:0;transition:opacity .8s;text-shadow:0 2px 6px #000}#prologue .pro-caption.on{opacity:1}#prologue .pc-tag{display:block;font-family:Oswald,sans-serif;font-size:12px;letter-spacing:.3em;color:#e0b84a;margin-bottom:4px}#prologue .pro-card{position:absolute;left:6vw;bottom:14vh;max-width:min(420px,86vw);z-index:4;background:#080a05b8;border-left:3px solid #e0b84a;padding:14px 18px;opacity:0;transform:translate(-20px);transition:opacity .5s,transform .5s}#prologue .pro-card.on{opacity:1;transform:none}#prologue .pc-name{font-size:26px;letter-spacing:.04em}#prologue .pc-role{font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:#b9b39c;margin-bottom:6px}#prologue .pc-bio{font-family:Inter,sans-serif;font-size:15px;line-height:1.5}#prologue .pro-title{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:4;opacity:0;transition:opacity 2s}#prologue .pro-title.on{opacity:1}#prologue .pro-title-main{font-size:clamp(48px,11vw,120px);color:#e0b84a;letter-spacing:.1em;font-weight:600}#prologue .pro-title-si{font-family:Noto Sans Sinhala,sans-serif;font-size:clamp(20px,3vw,30px);color:#b9b39c}#prologue .pro-title-sub{margin-top:10px;letter-spacing:.3em;color:#b9b39c;text-transform:uppercase;font-size:14px}#prologue .pro-skip{position:absolute;right:22px;bottom:22px;z-index:5;background:#0006;color:#e9e4d2;border:1px solid rgba(255,255,255,.3);font-family:Oswald,sans-serif;letter-spacing:.15em;padding:8px 16px;cursor:pointer;border-radius:3px}#prologue .pro-skip:hover{border-color:#e0b84a}.detect{position:absolute;left:50%;top:50%;width:0;height:0}.detect i{position:absolute;left:0;top:0;height:5px;border-radius:3px;opacity:.9;box-shadow:0 0 4px #0009}.markers i{position:absolute;width:12px;height:12px;transform:translate(-50%,-50%) rotate(45deg);border:2px solid #e0573a;background:#e0573a40}.markers i.runner{border-color:#ffdf5a;background:#ffdf5a66;width:16px;height:16px}.stealth{position:absolute;right:16px;top:46px;font-size:15px;letter-spacing:.25em;padding:3px 10px;border:1px solid currentColor}.stealth[data-level=green]{color:#9bd16a}.stealth[data-level=amber]{color:#e8a23a}.stealth[data-level=red]{color:#e0573a;animation:blink .8s infinite}@keyframes blink{50%{opacity:.4}}.stance-ind{position:absolute;left:16px;bottom:34px;font-size:13px;letter-spacing:.2em;color:var(--accent)}.status{bottom:56px!important}.squad{bottom:96px!important}.orders{position:absolute;left:16px;bottom:14px;font-size:12px;letter-spacing:.15em;color:var(--muted)}.ammo-gren{font-size:12px;letter-spacing:.2em;color:var(--muted)}.killfeed{top:80px}.alarm-banner{position:absolute;left:50%;top:56px;transform:translate(-50%);color:#e0573a;font-size:24px;letter-spacing:.3em;display:none;animation:blink .7s infinite}.alarm-banner.on{display:block}.insert-skip{position:absolute;right:22px;bottom:22px;font-size:14px;letter-spacing:.15em;color:var(--muted);display:none}.insert-skip.on{display:block}.scope,.binos{position:absolute;top:0;right:0;bottom:0;left:0;display:none}.scope.on,.binos.on{display:block}.scope svg,.binos svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.breath{position:absolute;left:50%;bottom:70px;transform:translate(-50%);width:160px;height:4px;background:#ffffff26}.breath div{height:100%;background:#e8e2c8}.scope-hint,.binos-hint{position:absolute;left:50%;bottom:44px;transform:translate(-50%);font-size:13px;color:var(--muted);letter-spacing:.1em;white-space:nowrap}.binos-range{position:absolute;left:50%;bottom:72px;transform:translate(-50%);color:var(--accent);font-size:18px;letter-spacing:.2em}#map{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12;background:#080a05db;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-family:Oswald,sans-serif}#map canvas{border:1px solid var(--line);image-rendering:auto}.map-info{text-align:center;color:var(--ink);font-size:16px;letter-spacing:.05em;max-width:90vw}.map-info span{color:var(--muted);font-size:13px;font-family:Inter,sans-serif}#map.hidden{display:none}#hud.cinema>*:not(.radio):not(.insert-skip):not(.toasts){visibility:hidden}#letterbox{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4}#letterbox i{position:absolute;left:0;right:0;height:11vh;background:#000;transform:scaleY(0);transition:transform .9s ease}#letterbox i:first-child{top:0;transform-origin:top}#letterbox i:last-child{bottom:0;transform-origin:bottom}#letterbox.on i{transform:scaleY(1)}#titlecard{position:fixed;left:6vw;top:16vh;z-index:5;pointer-events:none;opacity:0;color:#f2ede0;text-shadow:0 2px 12px rgba(0,0,0,.7)}#titlecard .tc-name{font:700 clamp(28px,5vw,56px)/1 "Oswald","Impact",sans-serif;letter-spacing:.12em;text-transform:uppercase}#titlecard .tc-sub{margin-top:10px;font:500 clamp(12px,1.6vw,16px)/1.3 system-ui,sans-serif;letter-spacing:.25em;text-transform:uppercase;opacity:.85}#titlecard.on{animation:titlecard 6.5s ease forwards}@keyframes titlecard{0%{opacity:0;transform:translateY(12px)}15%,75%{opacity:1;transform:none}to{opacity:0}}#fade{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;opacity:0;pointer-events:none;z-index:6}#fade.up{animation:fadeup 1.6s ease forwards}@keyframes fadeup{0%{opacity:1}to{opacity:0}}.loadout h3{margin:14px 0 6px}.lo-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.lo-item{text-align:left;padding:10px 12px;background:#ffffff0a;color:inherit;border:1px solid rgba(255,255,255,.15);border-radius:6px;cursor:pointer;font:inherit}.lo-item b{display:block;font-family:Oswald,sans-serif;letter-spacing:.04em}.lo-item small{display:block;opacity:.75;margin-top:4px}.lo-item.on{border-color:#e0b84a;background:#e0b84a24}.lo-item:disabled{opacity:.4;cursor:not-allowed}body.nvg #game{filter:grayscale(1) sepia(1) hue-rotate(58deg) saturate(3.2) brightness(1.15) contrast(1.15)}#nvg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3;display:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.85) 78%),repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 1px,transparent 1px 3px)}body.nvg #nvg-overlay{display:block}.coop-status{margin:12px 0;padding:10px 12px;border-left:3px solid #7fc8e8;background:#7fc8e814}.coop-invite{display:flex;gap:8px;margin:8px 0}.coop-invite .coop-link{flex:1;min-width:0;padding:8px;background:#00000059;color:inherit;border:1px solid rgba(255,255,255,.2);border-radius:4px;font:13px/1.2 monospace}.coop-host-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}.coop-host-controls select{padding:6px}.tcol{position:absolute;display:flex;flex-direction:column;gap:8px;pointer-events:none}.tcol-left{left:14px;bottom:250px}.tcol-right{right:10px;top:110px}.tbtn.tsm{position:static;width:54px!important;height:34px!important;border-radius:17px;font-size:11px;letter-spacing:.06em;pointer-events:auto}.btn-aim.on{background:#e0b84a73}.map-bar{display:flex;gap:8px}#map canvas{cursor:crosshair;touch-action:none}.rotate-hint{display:none}@media (orientation: portrait) and (max-width: 700px){#hud .squad,#hud .orders,#hud .stance-ind{display:none}#hud .radio{font-size:13px;left:12px;right:12px;max-width:none;bottom:250px;transform:none}#hud .obj-text{font-size:14px}#hud .obj-sub,#hud .obj-mission{font-size:11px}#hud .ammo-mag{font-size:34px}#titlecard .tc-name{font-size:26px}#titlecard .tc-sub{font-size:10px}.tcol-right{top:220px;gap:6px}.tcol-left{bottom:250px;gap:6px}#hud .radio{top:198px;bottom:auto;right:76px;font-size:12px}#hud .stealth{right:66px;font-size:11px;padding:3px 8px}#titlecard{top:36vh}.rotate-hint{display:block;position:absolute;left:50%;top:46%;transform:translate(-50%);padding:6px 12px;background:#0000008c;border-radius:14px;font-size:12px;white-space:nowrap;animation:hintfade 7s ease forwards;pointer-events:none}@keyframes hintfade{0%,75%{opacity:1}to{opacity:0;visibility:hidden}}}.coop-name-row{display:flex;gap:10px;align-items:center;margin:8px 0}.coop-name-row input,.coop-chat-row input,.chat-row input{flex:1;min-width:0;padding:8px 10px;background:#00000059;color:inherit;border:1px solid rgba(255,255,255,.25);border-radius:4px;font:inherit}.coop-invite{flex-direction:column;align-items:stretch}.coop-share-row{display:flex;gap:8px;flex-wrap:wrap}.coop-players{margin:10px 0}.coop-players .chip{display:inline-block;padding:2px 8px;margin:2px;border:1px solid rgba(127,200,232,.6);border-radius:10px}.coop-social{display:flex;flex-direction:column;gap:8px;margin:10px 0}.coop-social [data-act=coop-mic].on{background:#9bd16a40;border-color:#9bd16a}.coop-chat-log{max-height:160px;overflow-y:auto;padding:8px;background:#0000004d;border-radius:4px;font-size:14px;min-height:40px}.coop-chat-row,.chat-row{display:flex;gap:6px}.coop-quick,.chat-quick{display:flex;flex-wrap:wrap;gap:6px}.btn.small{padding:4px 10px;font-size:13px}.cl b{color:#7fc8e8;margin-right:4px}.cl.mine b{color:#e0b84a}.cl.sys{color:#9a9480;font-style:italic}.nametags{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.ntag{position:absolute;transform:translate(-50%,-100%);color:#7fc8e8;font:600 13px Oswald,sans-serif;letter-spacing:.06em;text-align:center;text-shadow:0 1px 3px #000;white-space:nowrap}.ntag small{display:block;font:10px Inter,sans-serif;opacity:.8}.voice{position:absolute;left:16px;top:128px;font-size:13px;color:#9bd16a}.voice .mic-on{color:#e0573a}.chat-log{position:absolute;left:16px;bottom:150px;width:min(360px,60vw);font-size:13px;text-shadow:0 1px 2px #000;pointer-events:none}.chat-box{position:absolute;left:50%;bottom:30%;transform:translate(-50%);width:min(520px,92vw);padding:10px;background:#0a0c06d9;border:1px solid rgba(255,255,255,.2);border-radius:6px;pointer-events:auto;display:flex;flex-direction:column;gap:8px;z-index:13}.chat-box.hidden,.tbtn.coop-only{display:none}#hud.coop~#touch .tbtn.coop-only,body.coop #touch .tbtn.coop-only{display:block}.btn-mic.on{background:#e0573a80}@media (orientation: portrait) and (max-width: 700px){.chat-log{top:330px;bottom:auto}.voice{top:300px}}.coop-via-row{display:flex;gap:10px;align-items:center;margin:6px 0}.coop-via-row select{flex:1;min-width:0;padding:6px}.wbar{position:absolute;left:50%;bottom:10px;transform:translate(-50%);display:flex;gap:4px;pointer-events:auto}.wslot{font:12px Oswald,sans-serif;letter-spacing:.05em;color:#ddd;background:#00000059;border:1px solid rgba(255,255,255,.18);border-radius:4px;padding:3px 8px;text-align:left;min-width:82px;cursor:pointer;text-shadow:0 1px 2px #000}.wslot b{color:var(--accent);margin-right:3px}.wslot small{display:block;font:10px Inter,sans-serif;color:var(--muted)}.wslot.on{border-color:var(--accent);background:#e0b84a33;color:#fff}.ammo-gren span{margin-right:6px;opacity:.6}.ammo-gren span.on{color:var(--accent);opacity:1}.ammo-gren small{display:block;font:10px Inter,sans-serif;letter-spacing:.04em}.vhud{position:absolute;right:16px;bottom:16px;width:230px;display:none;padding:8px 10px;background:#00000059;border-radius:4px}body.invehicle .vhud{display:block}body.invehicle #hud .ammo,body.invehicle #hud .wbar,body.invehicle #hud .stance-ind{display:none}.vh-name{font-size:15px;letter-spacing:.08em;margin-bottom:4px}.vh-row{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);margin:3px 0}.vh-row span{width:34px}.vh-bar{flex:1;height:6px;background:#ffffff26}.vh-bar div{height:100%;width:100%;background:#9bd16a}.vh-heat div{background:#e0b84a}.vh-heat.hot div{background:var(--red)}.vh-info{font:11px Inter,sans-serif;color:#ddd;line-height:1.5;margin-top:4px}.vh-warn{color:var(--red);font-size:15px;letter-spacing:.1em}.down{color:var(--red)}.support{position:absolute;left:50%;top:18%;transform:translate(-50%);width:min(460px,92vw);padding:10px;background:#0a0c06e0;border:1px solid rgba(255,255,255,.2);border-radius:6px;pointer-events:auto;z-index:13;display:flex;flex-direction:column;gap:6px}.support.hidden{display:none}.sup-head{display:flex;align-items:center;gap:10px;letter-spacing:.12em;color:var(--accent)}.sup-head small{flex:1;font:11px Inter,sans-serif;color:var(--muted);letter-spacing:0}.sup-row{text-align:left;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#eee;border-radius:4px;padding:7px 10px;cursor:pointer;font:inherit}.sup-row b{display:block;font-weight:400;letter-spacing:.05em}.sup-row small{display:block;font:11px Inter,sans-serif;color:var(--muted)}.sup-row em{display:block;font:11px Inter,sans-serif;color:#9bd16a;font-style:normal}.sup-row:disabled{opacity:.45;cursor:default}.sup-note{font:11px Inter,sans-serif;color:var(--muted)}.zoom-level{position:absolute;left:calc(50% + 60px);top:calc(50% + 40px);font-size:18px;letter-spacing:.15em;display:none}body.scoped .zoom-level{display:block}.zoom-ctl{position:absolute;right:200px;top:22%;display:none;flex-direction:column;gap:10px;pointer-events:none}body.scoped #touch .zoom-ctl{display:flex}.tbtn.heli-only,.tbtn.det-only{display:none}body.invehicle[data-vehicle=air] .tbtn.heli-only{display:block}body.c4armed:not(.invehicle) .tbtn.det-only{display:block}body.invehicle .tbtn.foot-only,body.invehicle .btn-sprint,body.invehicle .btn-reload{display:none}@media (orientation: portrait) and (max-width: 700px){#hud-top .wbar{bottom:auto!important;top:160px;left:8px;transform:none;flex-direction:column}.wslot{min-width:0;padding:2px 6px;font-size:10px}.vhud{top:110px;bottom:auto;width:180px}}#hud-top{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12;pointer-events:none;font-family:Oswald,sans-serif;text-shadow:0 1px 3px rgba(0,0,0,.8)}#hud.hidden~#hud-top,#hud.cinema~#hud-top,body.scoped #hud-top .wbar{display:none}body.invehicle #hud-top .wbar{display:none}#hud.touch-mode~#hud-top .wbar{bottom:2px}#hud.touch-mode~#hud-top .wslot{min-width:0;padding:2px 6px;font-size:10px}#hud.touch-mode .ammo{right:80px}.support{max-height:84vh;overflow-y:auto}@media (max-height: 500px){.support{top:4%}.sup-row{padding:4px 8px}}body.invehicle #hud .prompt{top:auto;bottom:120px}body.invehicle #hud .prompt-text{font-size:13px;opacity:.8}#hud.touch-mode .vhud{top:96px;bottom:auto;right:76px;width:190px;padding:5px 8px}#hud.touch-mode .vh-info{font-size:10px;line-height:1.35}
