:root{--orange:#ff7a1a;--orange-d:#b84a00;--purple:#9a55ff;--purple-d:#5a22b8;--ink:#14121a;--paper:#fff8ee;--panel:#14121ab8;--display:"Lilita One", "Arial Rounded MT Bold", system-ui, sans-serif;--body:"Nunito", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--paper);font-family:var(--body);margin:0;overflow:hidden}#app{position:fixed;inset:0}#game-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}#vignette{pointer-events:none;background:radial-gradient(#0000 55%,#1e120a61 130%);position:absolute;inset:0}.hidden{display:none!important}button{font-family:var(--display);cursor:pointer}kbd{font-family:var(--display);background:#ffffff24;border-radius:5px;padding:1px 7px}#menu{z-index:30;display:flex;position:absolute;inset:0;overflow-y:auto}#menu-bg{background:var(--menu-bg) center/cover no-repeat;filter:saturate(1.1);position:fixed;inset:0}#menu-bg:after{content:"";background:radial-gradient(at 50% 30%,#14121a59,#14121aeb 75%);position:absolute;inset:0}#menu.ingame #menu-bg{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0e0c14c7}#menu.ingame #menu-bg:after{display:none}#menu-inner{flex-direction:column;align-items:center;gap:14px;width:min(1180px,100%);margin:auto;padding:24px 16px 32px;display:flex;position:relative}#logo{filter:drop-shadow(0 10px 24px #00000080);width:min(560px,86vw);height:auto;margin-bottom:-18px}#menu.ingame #logo,#menu.ingame #tagline{display:none}#tagline{text-align:center;text-shadow:0 2px 8px #000;margin:0;font-size:18px;font-weight:800}#tagline span{opacity:.85;font-size:14px;font-weight:600;display:block}#menu-row{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field>span{font-family:var(--display);letter-spacing:.08em;opacity:.8;font-size:13px}#name-input{font:800 18px var(--body);color:var(--paper);background:#0a0810b3;border:3px solid #ffffff2e;border-radius:12px;outline:none;width:220px;padding:10px 14px}#name-input:focus{border-color:#fff}#team-pick,#mode-pick{gap:6px;display:flex}#mode-pick button{color:var(--paper);background:#0a0810b3;border:3px solid #ffffff2e;border-radius:12px;padding:10px 14px;font-size:17px}#mode-pick button.active{color:var(--ink);background:#ffd23f;border-color:#fff}#menu.ingame #menu-row{display:flex}#menu.ingame #menu-row .field:not(.mode-field){display:none}#team-pick button{color:var(--paper);background:#0a0810b3;border:3px solid #ffffff2e;border-radius:12px;padding:10px 16px;font-size:17px}#team-pick button.active{color:var(--ink);background:#fff;border-color:#fff}#team-pick button.t-orange.active{background:var(--orange);color:#fff;border-color:#ffd2ad}#team-pick button.t-purple.active{background:var(--purple);color:#fff;border-color:#e3d2ff}#class-grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:10px;width:100%;display:grid}@media (width<=1100px){#class-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=560px){#class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.class-card{text-align:left;color:var(--paper);background:#1d1b26;border:3px solid #ffffff1f;border-radius:16px;flex-direction:column;padding:0;transition:transform .12s,border-color .12s;display:flex;position:relative;overflow:hidden}.class-card:hover{border-color:#ffffff80;transform:translateY(-4px)}.class-card.active{box-shadow:0 0 0 3px var(--accent,var(--orange)), 0 14px 30px #00000080;border-color:#fff;transform:translateY(-4px)}.class-card img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.class-card .cc-body{flex-direction:column;gap:3px;padding:8px 10px 10px;display:flex}.class-card .cc-flag{filter:drop-shadow(0 2px 3px #0009);font-size:22px;position:absolute;top:8px;left:8px}.class-card .cc-key{font:14px var(--display);background:#0000008c;border-radius:8px;padding:2px 8px;position:absolute;top:8px;right:8px}.class-card .cc-name{font:20px var(--display);line-height:1}.class-card .cc-meta{opacity:.75;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:800}.class-card .cc-blurb{opacity:.85;min-height:45px;font-size:12px;font-weight:600;line-height:1.25}.class-card .cc-stats{opacity:.9;grid-template-columns:34px 1fr;align-items:center;gap:3px 6px;font-size:10px;font-weight:900;display:grid}.class-card .cc-stats i{background:#ffffff1f;border-radius:3px;height:6px;display:block;overflow:hidden}.class-card .cc-stats i b{background:linear-gradient(90deg, var(--orange), var(--purple));height:100%;display:block}#menu-actions{align-items:center;gap:18px;display:flex}#server-status{opacity:.85;font-size:14px;font-weight:800}#play-button{color:#fff;background:linear-gradient(135deg, var(--orange), #ff4d6d 55%, var(--purple));border:0;border-radius:16px;padding:12px 54px;font-size:30px;transition:transform 80ms;box-shadow:0 6px #6b2a9a,0 14px 30px #00000073}#play-button:hover:not(:disabled){transform:translateY(-2px)}#play-button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px #6b2a9a}#play-button:disabled{filter:grayscale(.8);opacity:.6;cursor:default}#click-to-play{z-index:25;cursor:pointer;background:#0a081073;place-items:center;display:grid;position:absolute;inset:0}#click-to-play div{text-align:center;background:var(--panel);border:2px solid #ffffff26;border-radius:16px;padding:18px 28px}#click-to-play b{font:30px var(--display);display:block}#click-to-play span{opacity:.8;font-size:14px;font-weight:700}#hud{--paper:#f4e7cc;--paper2:#e9d6b0;--ink:#2a1d14;--inkSoft:#2a1d148c;--team:var(--orange);--teamDark:var(--orange-d);pointer-events:none;z-index:10;font-family:var(--body);color:var(--ink);position:absolute;inset:0}.paper{background:linear-gradient(170deg, var(--paper), var(--paper2));border:3px solid var(--ink);box-shadow:5px 5px #2a1d1473}#objective{top:max(12px, env(safe-area-inset-top));grid-template-columns:128px 78px 128px;align-items:center;gap:6px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.clock{border:3px solid var(--ink);color:#fff8ee;text-shadow:0 2px #00000059;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;height:54px;display:flex;box-shadow:4px 4px #2a1d1473}.clock.orange{background:linear-gradient(180deg, #ff9a45, var(--orange-d));transform:rotate(-2deg)}.clock.purple{background:linear-gradient(180deg, #b27dff, var(--purple-d));transform:rotate(2deg)}.clock .team-tag{font:12px var(--display);letter-spacing:.14em;opacity:.95}.clock strong{font:28px var(--display);font-variant-numeric:tabular-nums;line-height:1}.clock.owner{outline-offset:2px;outline:3px solid #fff3c4}#point-badge{filter:drop-shadow(4px 4px #2a1d1473);width:78px;height:78px;position:relative}#point-badge svg{width:100%;height:100%;transform:rotate(-90deg)}#point-badge .ring-bg{fill:var(--paper);stroke:var(--ink);stroke-width:5px}#cap-ring{fill:none;stroke:#fff;stroke-width:7px;stroke-linecap:round;stroke-dasharray:157;stroke-dashoffset:157px}#point-badge.owner-orange .ring-bg{fill:#ffb36b}#point-badge.owner-purple .ring-bg{fill:#c6a2ff}#point-icon{filter:grayscale(.2);place-items:center;font-size:28px;display:grid;position:absolute;inset:0}#point-count{font:14px var(--display);background:var(--ink);color:var(--paper);border-radius:10px;padding:0 7px;position:absolute;bottom:-2px;right:-6px}#point-count:empty{display:none}#point-status{font:15px var(--display);letter-spacing:.04em;color:var(--ink);background:var(--paper);border:2px solid var(--ink);border-radius:8px;grid-column:1/-1;justify-self:center;padding:1px 12px;box-shadow:3px 3px #2a1d1466}#killfeed{top:14px;right:max(14px, env(safe-area-inset-right));flex-direction:column;align-items:flex-end;gap:6px;max-width:46vw;display:flex;position:absolute}.kf{background:var(--paper);border:2px solid var(--ink);white-space:nowrap;color:var(--ink);border-radius:8px;align-items:center;gap:7px;padding:3px 10px;font-size:14px;font-weight:900;animation:.22s ease-out kfin;display:flex;box-shadow:3px 3px #2a1d1466}.kf.me{background:#fff3c4}.kf .o{color:#c25300}.kf .p{color:#6a2fd0}.kf .verb{font-family:var(--display);background:var(--ink);color:var(--paper);border-radius:6px;padding:1px 7px;font-size:12px}@keyframes kfin{0%{opacity:0;transform:translate(30px)}}#crosshair{--gap:7px;width:0;height:0;position:absolute;top:50%;left:50%}#crosshair i{background:#fff;border-radius:2px;transition:transform 50ms;position:absolute;box-shadow:0 0 0 1.5px #140c08d9}#crosshair i:first-child{width:3px;height:9px;left:-1.5px;top:calc(-1 * var(--gap) - 9px)}#crosshair i:nth-child(2){width:3px;height:9px;left:-1.5px;top:var(--gap)}#crosshair i:nth-child(3){width:9px;height:3px;top:-1.5px;left:calc(-1 * var(--gap) - 9px)}#crosshair i:nth-child(4){width:9px;height:3px;top:-1.5px;left:var(--gap)}#crosshair b{background:#fff;border-radius:50%;width:5px;height:5px;position:absolute;top:-2.5px;left:-2.5px;box-shadow:0 0 0 1.5px #140c08d9}#hitmarker{opacity:0;filter:drop-shadow(0 0 1px #000);background:linear-gradient(45deg,#0000 44%,#fff 44% 56%,#0000 56%),linear-gradient(-45deg,#0000 44%,#fff 44% 56%,#0000 56%);width:34px;height:34px;margin:-17px 0 0 -17px;position:absolute;top:50%;left:50%;-webkit-mask:radial-gradient(circle,#0000 8px,#000 9px);mask:radial-gradient(circle,#0000 8px,#000 9px)}#hitmarker.show{animation:.25s ease-out hm}#hitmarker.head{background:linear-gradient(45deg,#0000 42%,#ffd23f 42% 58%,#0000 58%),linear-gradient(-45deg,#0000 42%,#ffd23f 42% 58%,#0000 58%)}@keyframes hm{0%{opacity:1;transform:scale(1.35)}to{opacity:0;transform:scale(1)}}#charge-bar{background:var(--paper);border:2px solid var(--ink);border-radius:5px;width:96px;height:10px;margin-left:-48px;display:none;position:absolute;top:calc(50% + 34px);left:50%;overflow:hidden}#charge-bar span{background:linear-gradient(90deg,#ffd23f,#ff6a3d);width:0;height:100%;display:block}#heal-label{font:16px var(--display);color:#0f6f86;border:2px solid var(--ink);background:#f4e7cce6;border-radius:8px;padding:0 8px;position:absolute;top:calc(50% + 50px);left:50%;transform:translate(-50%)}#heal-label:empty{display:none}#damage-vignette{opacity:0;background:radial-gradient(ellipse at center, transparent 55%, var(--hitcol,#ff7a1a) 140%);position:absolute;inset:0}#lowhp{opacity:0;background:radial-gradient(#0000 45%,#aa14148c 120%);transition:opacity .3s;position:absolute;inset:0}#lowhp.on{opacity:1;animation:1s infinite heartbeat}@keyframes heartbeat{0%,to{opacity:.55}15%{opacity:1}30%{opacity:.65}45%{opacity:.95}}#dmg-dirs{width:0;height:0;position:absolute;top:50%;left:50%}.dmg-dir{transform-origin:38px 170px;opacity:0;background:radial-gradient(ellipse at 50% 120%, var(--c,#ff7a1a) 40%, transparent 72%);clip-path:polygon(0 100%,50% 0,100% 100%,50% 72%);filter:drop-shadow(0 0 2px #000);width:76px;height:34px;animation:1.1s ease-out forwards dmgdir;position:absolute;top:-170px;left:-38px}@keyframes dmgdir{0%{opacity:1}70%{opacity:.85}to{opacity:0}}#dmg-numbers{position:absolute;inset:0}.dmg-num{font:26px var(--display);color:#fff3c4;-webkit-text-stroke:1.5px var(--ink);paint-order:stroke fill;text-shadow:2px 2px #2a1d1499;animation:.85s ease-out forwards dmgnum;position:absolute;transform:translate(-50%,-50%)}.dmg-num.head{color:#ffd23f;font-size:32px}@keyframes dmgnum{0%{opacity:1;transform:translate(-50%,-50%)scale(1.35)}20%{transform:translate(-50%,-70%)scale(1)}to{opacity:0;transform:translate(-50%,-190%)scale(.9)}}#health-cluster{left:max(18px, env(safe-area-inset-left));bottom:max(18px, env(safe-area-inset-bottom));align-items:center;gap:0;display:flex;position:absolute}#hp-portrait-wrap{border:4px solid var(--ink);background:var(--team);z-index:2;border-radius:50%;width:86px;height:86px;overflow:hidden;box-shadow:5px 5px #2a1d1473}#hud-portrait{object-fit:cover;width:100%;height:100%;display:block}#hp-cross{z-index:1;background:var(--ink);clip-path:polygon(33% 0,67% 0,67% 33%,100% 33%,100% 67%,67% 67%,67% 100%,33% 100%,33% 67%,0 67%,0 33%,33% 33%);filter:drop-shadow(5px 5px #2a1d1473);place-items:center;width:104px;height:104px;margin-left:-14px;display:grid;position:relative}#hp-cross:before{content:"";background:linear-gradient(170deg, var(--paper), var(--paper2));clip-path:polygon(33% 0,67% 0,67% 33%,100% 33%,100% 67%,67% 67%,67% 100%,33% 100%,33% 67%,0 67%,0 33%,33% 33%);position:absolute;inset:4px}#hp-value{font:38px var(--display);font-variant-numeric:tabular-nums;color:var(--ink);line-height:1;position:relative}#hp-side{flex-direction:column;gap:6px;margin-left:4px;display:flex}#hud-class{font:14px var(--display);letter-spacing:.03em;background:var(--team);color:#fff8ee;border:2px solid var(--ink);text-shadow:0 1px #0000004d;white-space:nowrap;border-radius:6px;padding:1px 9px;transform:rotate(-2deg);box-shadow:3px 3px #2a1d1466}#hp-bar{background:var(--paper);border:3px solid var(--ink);border-radius:4px;width:150px;height:14px;overflow:hidden;box-shadow:3px 3px #2a1d1466}#hp-bar span{background:repeating-linear-gradient(90deg,#6bd36b 0 12px,#58c058 12px 14px);width:100%;height:100%;transition:width .15s;display:block}#health-cluster.low #hp-bar span{background:repeating-linear-gradient(90deg,#e2453a 0 12px,#c83a30 12px 14px)}#health-cluster.low #hp-value{color:#b8241b;animation:.5s infinite alternate pulse}@keyframes pulse{to{opacity:.55}}#ammo-cluster{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));text-align:right;background:linear-gradient(170deg, var(--paper), var(--paper2));border:3px solid var(--ink);border-radius:12px;min-width:190px;padding:8px 16px 10px;position:absolute;transform:rotate(1.5deg);box-shadow:5px 5px #2a1d1473}#weapon-name{font:13px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--teamDark)}#ammo-row{line-height:1}#ammo-value{font:50px var(--display);font-variant-numeric:tabular-nums;color:var(--ink);line-height:1}#ammo-max{font:22px var(--display);color:var(--inkSoft)}#ammo-pips{flex-wrap:wrap-reverse;justify-content:flex-end;gap:3px;max-width:180px;margin-top:4px;margin-left:auto;display:flex}#ammo-pips i{background:var(--team);border:2px solid var(--ink);box-sizing:border-box;border-radius:50%;width:11px;height:11px}#ammo-pips i.empty{border-color:var(--inkSoft);background:0 0}#ammo-pips.bar i{display:none}#reload-bar{border:2px solid var(--ink);visibility:hidden;background:#2a1d1426;border-radius:4px;height:8px;margin-top:6px;overflow:hidden}#reload-bar span{background:var(--team);width:0;height:100%;display:block}#build-status{font:13px var(--display);color:var(--ink);margin-top:6px}#build-status:empty{display:none}#build-status.ready{color:#2f7d32;animation:.6s infinite alternate pulse}#hint-line{color:#fff8ee;text-shadow:0 1px 2px #000;opacity:.7;white-space:nowrap;font-size:12px;font-weight:900;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}#downed-overlay{background:radial-gradient(ellipse at center, transparent 35%, rgba(var(--paint-rgb,154,85,255), .55) 100%);flex-direction:column;justify-content:flex-start;align-items:center;gap:10px;padding-top:25vh;display:flex;position:absolute;inset:0}.downed-title{font:66px var(--display);letter-spacing:.03em;color:#fff3c4;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:5px 5px #2a1d1480;transform:rotate(-3deg)}.downed-sub{font:20px var(--display);background:var(--paper);border:3px solid var(--ink);border-radius:10px;padding:3px 14px;box-shadow:4px 4px #2a1d1473}#downed-overlay.danger .downed-sub{color:#b8241b;animation:.3s infinite alternate pulse}#downed-overlay.safe .downed-sub{color:#2f7d32}#recover-bar{background:var(--paper);border:3px solid var(--ink);border-radius:6px;width:min(420px,80vw);height:22px;overflow:hidden;box-shadow:4px 4px #2a1d1473}#recover-bar span{background:repeating-linear-gradient(90deg,#6bd36b 0 14px,#58c058 14px 16px);width:0;height:100%;display:block}#downed-overlay.danger #recover-bar span{background:repeating-linear-gradient(90deg,#e2453a 0 14px,#c83a30 14px 16px)}#fire-pressure{background:#2a1d14;border:3px solid #fff3c4;border-radius:6px;width:min(420px,80vw);height:30px;position:relative;overflow:hidden}#fire-pressure span{background:repeating-linear-gradient(-45deg,#e2453a 0 10px,#b8241b 10px 20px);width:0;position:absolute;inset:0 auto 0 0}#fire-pressure em{z-index:1;text-align:center;font:14px var(--display);color:#fff3c4;font-style:normal;line-height:24px;display:block;position:relative}#downed-threat{font:18px var(--display);color:#fff8ee;text-shadow:0 2px 0 var(--ink)}#dead-overlay{background:#2a1d1473;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.dead-title{font:76px var(--display);color:#fff3c4;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:6px 6px #2a1d1480;transform:rotate(-3deg)}#dead-by{font:22px var(--display);background:var(--paper);border:3px solid var(--ink);border-radius:10px;padding:2px 14px}#dead-by .o{color:#c25300}#dead-by .p{color:#6a2fd0}#respawn-timer{font:32px var(--display);color:#fff8ee;text-shadow:0 3px 0 var(--ink)}.dead-hint{color:#fff8ee;text-shadow:0 1px 2px #000;font-weight:900}#round-banner{font:84px var(--display);text-align:center;color:#fff8ee;border:4px solid var(--ink);text-shadow:0 4px #0000004d;border-radius:14px;padding:10px 54px;animation:.4s cubic-bezier(.2,1.6,.4,1) pop;position:absolute;top:22vh;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:8px 8px #2a1d1480}#round-banner small{font-size:22px;display:block}#carry-banner{font:22px var(--display);color:var(--ink);border:3px solid var(--ink);white-space:nowrap;background:#ffd23f;border-radius:10px;padding:6px 20px;animation:.6s infinite alternate pulse;position:absolute;top:160px;left:50%;transform:translate(-50%)rotate(-1.5deg);box-shadow:5px 5px #2a1d1473}#announce{font:24px var(--display);background:var(--ink);color:var(--paper);border:3px solid var(--paper);white-space:nowrap;border-radius:10px;padding:4px 18px;animation:.3s cubic-bezier(.2,1.6,.4,1) pop;position:absolute;top:124px;left:50%;transform:translate(-50%);box-shadow:4px 4px #2a1d1473}@keyframes pop{0%{opacity:0;transform:translate(-50%)scale(.5)}}#scoreboard{grid-template-columns:1fr 1fr;gap:16px;width:min(1000px,94vw);display:grid;position:absolute;top:120px;left:50%;transform:translate(-50%)}.sb-col{background:linear-gradient(170deg, var(--paper), var(--paper2));border:3px solid var(--ink);border-top-width:10px;border-radius:12px;padding:10px 14px;box-shadow:6px 6px #2a1d1473}.sb-col.orange{border-top-color:var(--orange);transform:rotate(-.6deg)}.sb-col.purple{border-top-color:var(--purple);transform:rotate(.6deg)}.sb-col h3{font:24px var(--display);margin:0 0 6px}.sb-col table{border-collapse:collapse;width:100%;font-size:14px;font-weight:900}.sb-col th{font:11px var(--display);color:var(--inkSoft);text-align:right;letter-spacing:.08em}.sb-col th:first-child,.sb-col td:first-child{text-align:left}.sb-col td{text-align:right;font-variant-numeric:tabular-nums;border-top:2px dashed #2a1d142e;padding:4px 2px}.sb-col tr.me td{background:#ffd23f59}.sb-col td .bot{color:var(--inkSoft);margin-left:4px;font-size:10px}.sb-col td .cls{color:var(--inkSoft);font-size:12px}#soak-overlay{pointer-events:none;z-index:4;opacity:0;background:radial-gradient(18% 26% at 6% 0,#28143c8c,#0000 70%),radial-gradient(10% 34% at 22% 0,#28143c73,#0000 70%),radial-gradient(14% 22% at 78% 0,#28143c80,#0000 70%),radial-gradient(9% 30% at 94% 0,#28143c73,#0000 70%);transition:opacity .25s;position:fixed;inset:0;box-shadow:inset 0 0 120px 30px #3c1e5059}body.soaked #soak-overlay{opacity:1;animation:1.4s ease-in-out infinite alternate soak-drip}@keyframes soak-drip{0%{background-position:0 0,0 0,0 0,0 0}to{background-position:0 14px,0 26px,0 10px,0 22px}}#scope{pointer-events:none;z-index:3;background:radial-gradient(circle,#0000 0 min(38vh,38vw),#08080af5 calc(min(38vh,38vw) + 1.5px));position:absolute;inset:0}#scope.hidden{display:none}#scope .scope-lens{border-radius:50%;width:min(76vh,76vw);height:min(76vh,76vw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 60px 18px #0000008c,0 0 0 6px #121214}#scope .scope-lens i.h{background:#0a0a0ce6;height:1.5px;margin-top:-.75px;position:absolute;top:50%;left:0;right:0}#scope .scope-lens i.v{background:#0a0a0ce6;width:1.5px;margin-left:-.75px;position:absolute;top:0;bottom:0;left:50%}#scope .scope-lens i.h:before,#scope .scope-lens i.h:after{content:"";background:#0a0a0cf2;width:34%;height:5.5px;position:absolute;top:-2px}#scope .scope-lens i.h:before{left:0}#scope .scope-lens i.h:after{right:0}#scope .scope-lens i.v:after{content:"";background:#0a0a0cf2;width:5.5px;height:34%;position:absolute;bottom:0;left:-2px}#scope .scope-lens i.tick{top:50%;left:calc(50% + var(--x) * 4.2%);background:#0a0a0ce6;width:1.5px;height:12px;margin:-6px 0 0 -.75px;position:absolute}#scope .scope-lens i.tickv{left:50%;top:calc(50% + var(--y) * 4.2%);height:1.5px;width:calc(14px - var(--y) * 2px);margin-left:calc(-7px + var(--y) * 1px);background:#0a0a0ce6;position:absolute}#scope .scope-lens b.center{background:#ff3b2f;border-radius:50%;width:4px;height:4px;margin:-2px;position:absolute;top:50%;left:50%;box-shadow:0 0 4px #ff3b2f}#scope .scope-charge{background:#ffffff2e;border-radius:4px;width:160px;height:8px;position:absolute;top:calc(50% + min(38vh,38vw) - 46px);left:50%;overflow:visible;transform:translate(-50%)}#scope .scope-charge span{background:linear-gradient(90deg,#ffd23f,#ff7a1a);border-radius:4px;width:0;height:100%;display:block}#scope .scope-charge em{text-align:center;letter-spacing:.14em;color:#ffffffb3;font:900 10px/1 system-ui,sans-serif;position:absolute;top:11px;left:0;right:0}#scope .scope-charge.full span{background:#ff3b2f;box-shadow:0 0 8px #ff3b2f}#laser-glint{pointer-events:none;opacity:0;background:radial-gradient(circle,#fff 0,#ff3b2f 35%,#ff1e1400 70%);border-radius:50%;width:12px;height:12px;margin:-6px;transition:opacity .12s;position:absolute;top:62%;left:50%}#laser-glint.on{opacity:.9}
