
:root{font-family:"Segoe UI","Microsoft YaHei",sans-serif;color:#eef2ed;background:#0d1417;font-synthesis:none;--acid:#d2f777;--dim:#9aa7a7}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}#world{position:fixed;inset:0;width:100%;height:100%;display:block}#vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 30%,#09101680 100%)}#hurt{position:fixed;inset:0;pointer-events:none;opacity:0;box-shadow:inset 0 0 150px 60px #b21619;transition:opacity .2s}#hud{position:fixed;inset:0;pointer-events:none;opacity:0;transition:opacity .3s}header{display:flex;align-items:flex-start;justify-content:space-between;padding:30px 38px;text-shadow:0 2px 10px #000}.brand{display:flex;gap:12px;font-weight:850;font-size:19px;letter-spacing:2px}.brand i,.eyebrow i{width:9px;height:9px;background:var(--acid);margin-top:7px;box-shadow:0 0 18px #d2f75555}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:2px;color:#cad3cf;margin-top:5px}.wave{position:absolute;left:50%;transform:translateX(-50%);text-align:center;background:#111b20c9;border-top:2px solid var(--acid);padding:12px 36px;backdrop-filter:blur(10px)}.wave>span{font-weight:800;font-size:20px;letter-spacing:3px}.wave small{display:block;color:#bdc9c4;margin-top:5px;font-size:11px;letter-spacing:1px}.stats{display:flex;gap:28px;color:#d1d9d5;font-size:12px}.stats b{display:block;color:white;font-size:23px;font-weight:650;letter-spacing:1px;margin-top:4px}footer{position:absolute;bottom:27px;left:38px;right:38px;display:flex;align-items:flex-end;justify-content:space-between}.health,.ammo{background:linear-gradient(90deg,#0c161eda,transparent);padding:13px 18px;min-width:180px;border-left:2px solid #b6c5bc}.health small,.ammo small{font-size:10px;letter-spacing:2px;color:#d0d8d1}.health strong,.ammo strong{display:block;font-size:44px;font-weight:750;line-height:1.2;font-variant-numeric:tabular-nums}.health em,.ammo em{font-style:normal;font-size:17px;font-weight:400;color:#a3aea8;margin-left:9px}.bar{width:145px;height:3px;background:#ffffff20;margin-top:9px}.bar i{display:block;width:100%;height:100%;background:var(--acid);transition:width .2s}.ammo{text-align:right;background:linear-gradient(270deg,#0c161eda,transparent);border-left:0;border-right:2px solid var(--acid)}.controls{font-size:10px;letter-spacing:1px;color:#d0d9d0;text-shadow:0 1px 6px #000;opacity:.8;padding-bottom:8px}.controls span{margin:0 8px;opacity:.5}#crosshair{position:absolute;left:50%;top:50%;width:0;height:0;--gap:7px}#crosshair i{position:absolute;background:#dcffae;box-shadow:0 0 2px #0009}#crosshair i:nth-child(1){width:2px;height:7px;left:-1px;bottom:var(--gap)}#crosshair i:nth-child(2){width:2px;height:7px;left:-1px;top:var(--gap)}#crosshair i:nth-child(3){width:7px;height:2px;top:-1px;right:var(--gap)}#crosshair i:nth-child(4){width:7px;height:2px;top:-1px;left:var(--gap)}#crosshair em{position:absolute;width:2px;height:2px;left:-1px;top:-1px;background:#fff}#hitmarker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:35px;line-height:1;color:#fff;opacity:0;text-shadow:0 0 5px black}#announcement{position:absolute;top:23%;left:50%;transform:translateX(-50%);text-align:center;opacity:0;transition:opacity .2s;text-shadow:0 2px 30px #000}#announcement small{display:block;letter-spacing:5px;font-size:11px;color:var(--acid);margin-bottom:10px}#announcement strong{font-size:40px;letter-spacing:5px}#combatTip{position:absolute;left:50%;bottom:150px;transform:translateX(-50%);font-size:13px;letter-spacing:2px;color:var(--acid);text-shadow:0 2px 5px black}#reload{position:absolute;left:50%;top:62%;transform:translateX(-50%);display:none;text-align:center;width:140px}#reload span{display:block;height:3px;background:var(--acid);transform-origin:left}#reload b{display:block;font-size:11px;font-weight:500;letter-spacing:3px;margin-top:9px}#killfeed{position:absolute;top:120px;right:38px;text-align:right;font-size:11px}.feed{margin:6px 0;background:#102021b8;border-right:2px solid var(--acid);padding:7px 12px;color:#e6eedf}.feed b{color:var(--acid);margin-left:18px}#radar{position:absolute;bottom:155px;left:38px;width:160px;height:160px;opacity:.85}#radar canvas{border:1px solid #d3efce44;border-radius:50%;background:#0e1924b8}#radar>span{position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);font-size:9px;letter-spacing:3px;white-space:nowrap;color:#c8d7ce}#floaters{position:absolute;inset:0}.damage{position:absolute;font-size:19px;font-weight:800;animation:rise .65s ease-out forwards;text-shadow:0 2px 3px #000}.damage.head{color:var(--acid);font-size:25px}@keyframes rise{to{transform:translateY(-45px);opacity:0}}.overlay{position:fixed;inset:0;display:flex;align-items:center;background:linear-gradient(90deg,#0a141bf5 0%,#101d23d9 36%,#101b2155 75%);backdrop-filter:blur(2px)}.intro{width:55%;padding:40px 0 40px 8vw}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:4px;color:var(--acid);font-weight:700}.eyebrow i{margin:0;width:6px;height:6px}h1{font-size:clamp(55px,6.3vw,100px);line-height:1.05;letter-spacing:7px;font-weight:850;margin:28px 0 22px}h1 span{display:block;font-size:17px;font-weight:500;letter-spacing:13px;margin-top:18px;color:#8eaaa5}.lead{font-size:16px;line-height:1.9;color:#c3ceca;letter-spacing:1px}.features{display:flex;gap:22px;font-size:10px;color:#c7d0c7;margin:29px 0}.features b{color:var(--acid);margin-right:7px;font-size:10px;font-weight:500}.intro button,.dialog button{display:flex;align-items:center;justify-content:space-between;width:340px;padding:17px 22px;background:var(--acid);border:0;color:#15241b;font-size:15px;letter-spacing:2px;font-weight:750;transition:background .2s}.intro button:hover,.dialog button:hover{background:#e4ff9f}.intro button:disabled{background:#70806b;color:#18291f;cursor:wait}.intro button b,.dialog button b{font-size:24px;font-weight:400}.loadingbar{height:2px;width:340px;background:#ffffff12;margin-top:9px}.loadingbar i{display:block;height:100%;width:0;background:var(--acid);transition:width .2s}#status{color:#9eafa7;font-size:11px;min-height:16px;margin-top:8px;max-width:420px}.instructions{display:grid;grid-template-columns:repeat(2,max-content);gap:14px 30px;margin-top:26px;color:#9faeaa;font-size:11px}kbd{font-family:inherit;color:#e1e8e2;font-size:10px;display:inline-block;min-width:42px;margin-right:8px}.credit{font-size:9px;color:#6e837d;margin-top:32px;max-width:450px;line-height:1.8}.intro-right{position:absolute;right:6vw;top:16%;bottom:16%;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}.maptag{border-right:2px solid var(--acid);text-align:right;padding-right:17px}.maptag>span{color:var(--acid);font-size:10px;letter-spacing:3px}.maptag b{display:block;font-size:36px;letter-spacing:6px;margin:10px 0}.maptag small{color:#d1dace;letter-spacing:2px;font-size:11px}.motif{display:flex;align-items:center;gap:25px;font-size:120px;font-weight:250;line-height:1;color:#e2ecd333}.motif span{font-size:17px;color:#d4e1d7;font-weight:700;letter-spacing:4px;line-height:1.5}.dialog{margin:auto;background:#111d23ed;border-top:2px solid var(--acid);padding:40px;width:510px;box-shadow:0 20px 100px #0008}.dialog h2{font-size:31px;letter-spacing:1px;margin:20px 0 15px}.dialog>p{font-size:13px;color:#a8b8b1;line-height:1.8}.dialog button{width:100%;margin-top:24px}.dialog button.secondary{background:transparent;color:#aab8b0;border:1px solid #b3c7bd30;justify-content:center;font-size:12px;margin-top:10px;padding:13px}.sensitivity{display:flex;align-items:center;gap:14px;margin-top:25px;font-size:12px;color:#bac6c0}.sensitivity input{width:180px;accent-color:var(--acid)}.quiet{font-size:11px!important;color:#7f948b!important;text-align:center;margin-top:20px}.results{display:flex;justify-content:space-between;margin:30px 0}.results small{display:block;font-size:11px;color:#a9bcb1;margin-bottom:9px}.results b{font-size:36px;font-weight:600}.hidden{display:none!important}#unsupported{position:fixed;inset:auto 15px 15px;background:#17252d;color:#d8f5b3;padding:14px;font-size:13px;border:1px solid #d2f77755;z-index:20}@media(max-width:900px){.intro{width:80%;padding-left:7vw}.intro-right{opacity:.4;z-index:-1}.features{gap:12px}.controls{display:none}header{padding:20px}.brand{font-size:14px}.stats{gap:15px}.wave{top:80px}footer{left:20px;right:20px}.dialog{width:min(92%,510px);padding:25px}#radar{left:20px;width:130px;height:130px}#radar canvas{width:130px;height:130px}}@media(max-height:740px){.intro{padding-top:25px;padding-bottom:20px}h1{font-size:64px;margin:18px 0}.lead{font-size:14px}.features{margin:19px 0}.instructions{margin-top:18px}.credit{margin-top:18px}.intro-right{top:12%;bottom:12%}}


.sensitivity input{width:175px;padding:9px 10px;background:#0b151b;color:#e4eddf;border:1px solid #788979;border-radius:3px;outline:none}.sensitivity input:focus{border-color:#d2f777}.sensitivity #sensValue{font-size:10px;white-space:nowrap;color:#94a790}

.render-quality{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;font-size:13px;color:#b7c6bd}.render-quality select{font:inherit;color:#e9eee6;background:#14242c;border:1px solid #78927c;padding:8px 12px}

#radar.expanded{position:fixed;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);width:min(80vh,80vw);height:min(80vh,80vw);border-radius:8px;z-index:45;background:#0d1921f5}#radar.expanded canvas{width:100%;height:100%;border-radius:0}#radar canvas{border-radius:0}

#radar canvas{width:160px;height:160px;display:block}#radar.expanded canvas{width:100%;height:100%}#radar.expanded{max-height:80vh;overflow:hidden}

#scope-view{position:fixed;inset:0;pointer-events:none;z-index:2}#scope-view[hidden]{display:none}#scope-view .scope-aperture{position:absolute;left:50%;top:50%;width:102vmin;height:102vmin;transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 0 100vmax #000}#scope-view img{position:absolute;left:50%;top:50%;width:110vmin;height:110vmin;transform:translate(-50%,-50%);filter:invert(1);mix-blend-mode:multiply}#scope-view i{position:absolute;left:50%;top:50%;width:3px;height:3px;background:#ff3636;border-radius:50%;transform:translate(-50%,-50%)}body[data-scoped="true"] #crosshair{visibility:hidden}body[data-aiming="true"] #crosshair{opacity:0}

#scope-view .scope-reticle{position:absolute;left:50%;top:50%;width:110vmin;height:110vmin;transform:translate(-50%,-50%);background:#070707;mask-image:url(assets/native/sniper-crosshair.png);mask-mode:luminance;mask-size:100% 100%}
