@font-face{font-family:Special Elite;src:url(../fonts/SpecialElite.subset.woff2)format("woff2");font-display:swap}@font-face{font-family:Figtree;src:url(../fonts/Figtree-VF.subset.woff2)format("woff2");font-weight:300 900;font-display:swap}@font-face{font-family:Noto Sans SC;src:url(../fonts/NotoSansSC-VF.subset.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--ink:#d9d3c4;--dim:#8a857a;--faint:#4d4a44;--blood:#9e1b16;--blood-hi:#d8321f;--amber:#ffb35a;--bg:#000;--type:"Special Elite", "Courier New", "Noto Sans SC", monospace;--sans:"Figtree", "Noto Sans SC", system-ui, sans-serif;--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--safe-t:env(safe-area-inset-top,0px)}:lang(zh-CN){--type:"Noto Sans SC", "Special Elite", sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#000;margin:0;overflow:hidden}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}#ui.is-scare{animation:.5s steps(8,end) jolt}@keyframes jolt{0%,to{transform:none}25%{transform:translate(-8px,5px)}50%{transform:translate(7px,-6px)}75%{transform:translate(-4px,-3px)}}.screen{pointer-events:none;display:none;position:absolute;inset:0}.screen.is-open{display:flex}.screen:not(.screen-hud).is-open{pointer-events:auto;animation:.6s both fade-in}@keyframes fade-in{0%{opacity:0}}.logo{white-space:nowrap;letter-spacing:.06em;color:#cfc8b6;text-shadow:0 0 24px #000000e6,0 0 2px #fff0d24d;margin:0;font-family:Special Elite,Courier New,monospace;font-size:clamp(30px,7.1vw,112px);font-weight:400;line-height:1}.logo-out{color:var(--blood);text-shadow:0 0 18px #9e1b168c;animation:7s step-end infinite logo-flicker}@keyframes logo-flicker{0%,38%,41%,43%,86%,to{opacity:1}39%,42%,87%,88%{opacity:.08}}.screen-boot{background:#000;flex-direction:column;justify-content:center;align-items:center;gap:28px}.boot-bar{background:#1a1917;width:min(320px,60vw);height:2px;overflow:hidden}.boot-bar i{background:var(--blood);transform-origin:0;height:100%;transition:transform .3s;display:block;transform:scaleX(0)}.boot-bg{opacity:0;z-index:-1;background:url(../ui/loading-bg.webp) 50%/cover no-repeat;animation:1.6s ease-out 50ms forwards boot-bg-in,26s linear forwards boot-push;position:absolute;inset:-3%}.boot-bg:after{content:"";background:radial-gradient(at 45% 55%,#00000026 0%,#0000008c 55%,#000000f0 100%),linear-gradient(#00000059,#0000 30% 60%,#000000d9);position:absolute;inset:0}@keyframes boot-bg-in{to{opacity:.9}}@keyframes boot-push{0%{transform:scale(1)}to{transform:scale(1.07)translate(-.6%,.4%)}}.screen-boot{isolation:isolate;overflow:hidden}.screen-boot .logo{text-shadow:0 4px 30px #000000e6}.boot-cyl{filter:drop-shadow(0 6px 18px #000000e6)brightness(.9);width:92px;height:92px}.cyl-turn{width:100%;height:100%;transition:transform .22s cubic-bezier(.2,1.7,.4,1);position:relative}.cyl-turn img{width:100%;height:100%;display:block}.boot-cyl .bc{opacity:0;background:radial-gradient(circle at 42% 38%,#ffe7a8 0 14%,#b67a2a 15% 26%,#d59a3c 27% 60%,#6d4312 100%);border-radius:50%;width:19%;height:19%;margin:-9.5% 0 0 -9.5%;transition:opacity .12s,transform .18s cubic-bezier(.3,1.6,.5,1);position:absolute;transform:scale(1.6);box-shadow:inset 0 0 0 1px #281604cc}.boot-cyl .bc.is-live{opacity:1;transform:scale(1)}.boot-stage{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#e9d6aa6b;font-variant-numeric:tabular-nums;margin:-16px 0 0;font-size:11px}.stream-chip{left:calc(14px + var(--safe-l,0px));bottom:calc(10px + var(--safe-b,0px));font-family:var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#e9d6aa47;opacity:0;pointer-events:none;z-index:5;font-variant-numeric:tabular-nums;font-size:10px;transition:opacity .6s;position:fixed}.stream-chip.is-on{opacity:1}.stream-chip.is-held{color:#be3c3266}.boot-text{font-family:var(--type);color:var(--dim);letter-spacing:.1em;margin:0;font-size:14px}.screen-warning,.screen-help,.screen-settings,.screen-pause{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#000000c7;justify-content:center;align-items:center}.screen-warning{background:#000}.panel{background:linear-gradient(#141311f0,#080807f5);border:1px solid #2b2925;flex-direction:column;gap:16px;width:min(640px,100vw - 32px);max-height:calc(100vh - 32px);padding:36px 40px;display:flex;overflow:auto;box-shadow:0 30px 80px #000c,inset 0 0 60px #0009}.panel.narrow{width:min(460px,100vw - 32px)}.panel h2,.results h2{font-family:var(--type);letter-spacing:.06em;color:var(--ink);margin:0;font-size:30px;font-weight:400}.panel h3{font-family:var(--type);color:var(--dim);letter-spacing:.12em;text-transform:uppercase;margin:10px 0 0;font-size:14px;font-weight:400}.panel p{margin:0;font-size:16px;line-height:1.6}.dim{color:var(--dim)}.btn{pointer-events:auto;appearance:none;color:var(--dim);font-family:var(--type);letter-spacing:.08em;text-align:left;cursor:pointer;background:0 0;border:0;padding:10px 4px;font-size:20px;transition:color .15s,transform .15s;position:relative}.btn:before{content:"";background:var(--blood-hi);transform-origin:0;width:10px;height:2px;transition:transform .15s;position:absolute;top:50%;left:-22px;transform:scaleX(0)}.btn:hover,.btn:focus-visible{color:var(--ink);outline:none;transform:translate(6px)}.btn:hover:before,.btn:focus-visible:before{transform:scaleX(1)}.btn.primary{color:var(--ink)}.btn.danger:hover,.btn.danger:focus-visible{color:var(--blood-hi)}.menu{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.screen-title{background:radial-gradient(at 70%,#0000 30%,#0000008c 80%),linear-gradient(90deg,#000000d9 0%,#00000059 45%,#0000 70%);flex-direction:column;justify-content:center;gap:44px;padding:0 max(8vw,32px)}.title-block{flex-direction:column;gap:14px;display:flex}.tagline{font-family:var(--type);color:var(--dim);letter-spacing:.06em;margin:0;font-size:clamp(15px,1.6vw,20px)}.screen-title .btn{font-size:clamp(20px,2vw,26px)}.title-stats{min-height:1em;color:var(--faint);font-family:var(--type);letter-spacing:.08em;margin:0;font-size:14px}.title-footer{bottom:calc(26px + var(--safe-b));color:var(--faint);font-family:var(--type);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:12px;animation:4s ease-in-out infinite breathe;position:absolute;left:max(8vw,32px)}@keyframes breathe{50%{opacity:.35}}.rules{color:var(--ink);flex-direction:column;gap:10px;margin:0;padding-left:22px;line-height:1.55;display:flex}.rules li::marker{color:var(--blood-hi);font-family:var(--type)}.help-controls{gap:6px;display:grid}.ctrl-row{color:var(--dim);border-bottom:1px solid #1f1e1b;justify-content:space-between;gap:16px;padding:6px 0;display:flex}.ctrl-keys{color:var(--ink);align-items:center;gap:4px;display:flex}kbd{min-width:26px;height:26px;font-family:var(--sans);color:var(--ink);background:#161513;border:1px solid #5c574d;border-bottom-width:3px;border-radius:4px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:700;display:inline-flex}kbd.round{border-radius:13px}.chip{border:1px solid #5c574d;border-radius:20px;padding:2px 10px;font-weight:600}.settings{flex-direction:column;gap:4px;display:flex}.settings .row{min-height:42px;color:var(--dim);grid-template-columns:1fr auto auto;align-items:center;gap:14px;display:grid}.settings .row>:nth-child(2):last-child{grid-column:2/4;justify-self:end}.settings output{text-align:right;font-variant-numeric:tabular-nums;width:40px;color:var(--ink);font-size:14px}.settings .hint{color:var(--faint);margin:-2px 0 6px;font-size:13px}input[type=range]{appearance:none;background:#3a3833;outline:none;width:min(220px,40vw);height:2px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--ink);cursor:pointer;border-radius:50%;width:14px;height:14px}input[type=range]::-moz-range-thumb{background:var(--ink);border:0;border-radius:50%;width:14px;height:14px}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #d8321f80}.toggle,.seg button{appearance:none;color:var(--dim);font-family:var(--sans);cursor:pointer;background:0 0;border:1px solid #3a3833;min-width:64px;padding:7px 14px;font-size:14px}.toggle.is-on,.seg button.is-on{color:#0b0a09;background:var(--ink);border-color:var(--ink)}.toggle:focus-visible,.seg button:focus-visible{outline:2px solid var(--blood-hi);outline-offset:2px}.seg{display:flex}.seg button+button{border-left:0}.screen-hud{flex-direction:column}.hud-fx{pointer-events:none;z-index:3;width:100%;height:100%;position:fixed;inset:0}.hud-tag{top:calc(16px + var(--safe-t));left:calc(18px + var(--safe-l));aspect-ratio:520/393;transform-origin:10% 10%;opacity:.78;filter:brightness(.62)sepia(.2)drop-shadow(0 4px 10px #000c);background:url(../ui/paper-tag.webp) 50%/contain no-repeat;width:clamp(150px,14vw,210px);transition:opacity .6s,filter .6s;position:absolute;transform:rotate(-3deg)}.hud-tag.is-new{animation:2.8s both tag-new}@keyframes tag-new{0%{opacity:0;filter:brightness(1.2)drop-shadow(0 0 24px #ffb45acc);transform:rotate(-14deg)translate(-40px,-30px)scale(1.15)}18%{opacity:1;filter:brightness()drop-shadow(0 0 16px #ffb45a80);transform:rotate(-2deg)translate(0)scale(1.03)}26%{transform:rotate(-4deg)scale(1)}to{opacity:.78;filter:brightness(.62)sepia(.2)drop-shadow(0 4px 10px #000c);transform:rotate(-3deg)}}.tag-text{flex-direction:column;justify-content:center;gap:2px;display:flex;position:absolute;inset:20% 16% 16% 17%}.hud-objective{font-family:var(--type);letter-spacing:.02em;color:#2b241c;margin:0;font-size:clamp(11px,1vw,14px);line-height:1.25}.hud-count{font-family:var(--type);color:#3a1410;align-self:flex-end;margin-top:2px;font-size:clamp(14px,1.2vw,18px);font-weight:400}body.is-hidden .hud-tag{opacity:.25}.hud-eye{--s:0;--x:0;top:calc(14px + var(--safe-t));opacity:calc(.12 + var(--s) * .88);align-items:center;gap:12px;transition:opacity .4s;display:flex;position:absolute;left:50%;transform:translate(-50%)}.hud-eye img{width:64px;height:auto;transform:scaleY(calc(.35 + var(--s) * .65));filter:sepia(1) saturate(calc(1 + var(--s) * 7)) hue-rotate(-40deg) brightness(calc(.8 + var(--s) * .6)) drop-shadow(0 0 calc(var(--s) * 14px) #dc1e14e6);transition:transform .35s}.eye-line{width:44px;height:1px;opacity:calc(.3 + var(--s) * .7);background:linear-gradient(90deg,#0000,#c83c32cc,#0000)}.hud-eye.is-hunting img{animation:.9s ease-in-out infinite eye-pulse}@keyframes eye-pulse{50%{transform:scaleY(1.08)scaleX(1.05)}}.hud-dot{background:#ffffff47;border-radius:50%;width:3px;height:3px;margin:-1.5px;position:absolute;top:50%;left:50%}body.is-hidden .hud-dot{opacity:0}.hud-prompt{opacity:0;pointer-events:none;flex-direction:column;align-items:center;gap:6px;transition:opacity .2s,transform .2s;display:flex;position:absolute;top:62%;left:50%;transform:translate(-50%,8px)}.hud-prompt.is-on{opacity:1;animation:.35s cubic-bezier(.2,1.6,.4,1) both prompt-in;transform:translate(-50%)}@keyframes prompt-in{0%{opacity:0;transform:translate(-50%,10px)scale(.8)}to{opacity:1;transform:translate(-50%)scale(1)}}.prompt-row{align-items:center;gap:10px;display:flex}.keycap{width:38px;height:39px;font-family:var(--sans);color:#e9e3d4;text-shadow:0 0 6px #000000e6;filter:drop-shadow(0 0 8px #ffdcaa40);background:url(../ui/keycap.webp) 50%/contain no-repeat;place-items:center;font-size:16px;font-weight:700;display:grid}.prompt-icon{opacity:.9;filter:drop-shadow(0 0 8px #ffe6be4d);width:auto;height:34px;animation:1.8s ease-in-out infinite hand-beckon}@keyframes hand-beckon{50%{transform:translateY(-2px)rotate(-4deg)}}.prompt-label{font-family:var(--type);letter-spacing:.05em;color:#e9e3d4d9;text-shadow:0 0 8px #000,0 0 16px #000;white-space:nowrap;font-size:15px}.hud-breath{--b:1;left:50%;bottom:calc(22% + var(--safe-b));opacity:0;width:92px;height:92px;margin-left:-46px;transition:opacity .4s,transform .4s;position:absolute;transform:scale(.85)}.hud-breath.is-on{opacity:.8;transform:scale(1)}.hud-breath svg{position:absolute;inset:0;transform:rotate(-90deg)}.hud-breath circle{fill:none;stroke-width:3px}.ring-bg{stroke:#d9d3c41f}.ring{stroke:#e9e3d4d9;stroke-linecap:round;stroke-dasharray:var(--ring);stroke-dashoffset:calc(var(--ring) * (1 - var(--b)));filter:drop-shadow(0 0 4px #ffffff59);transition:stroke .3s}.hud-breath img{opacity:.75;width:44px;animation:3.4s ease-in-out infinite lungs;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes lungs{50%{transform:translate(-50%,-50%)scale(1.07)}}.hud-breath.is-holding img{animation:.18s steps(2,end) infinite lungs-hold}@keyframes lungs-hold{50%{transform:translate(-50%,-50%)translate(.6px,-.4px)}}.hud-breath.is-low .ring{stroke:#d8352a;filter:drop-shadow(0 0 6px #dc281ee6);animation:.4s ease-in-out infinite ring-low}@keyframes ring-low{50%{opacity:.5}}.hud-breath.is-breathless .ring{stroke:#b4463cb3}.hud-exposure{opacity:0;pointer-events:none;background:radial-gradient(#0000 45%,#7800008c 80%,#3c0000e6 100%);transition:opacity .15s linear;position:absolute;inset:0}.hud-message{left:50%;bottom:calc(9% + var(--safe-b));text-align:center;width:min(760px,86vw);font-family:var(--type);letter-spacing:.04em;color:#d9d2c0;text-shadow:0 0 10px #000,0 0 20px #000,0 0 4px #000;opacity:0;margin:0;font-size:clamp(16px,1.6vw,20px);font-style:italic;line-height:1.4;transition:opacity 1.2s;position:absolute;transform:translate(-50%)}.hud-message.is-on{opacity:1;transition:opacity .35s;animation:.8s both whisper-in}@keyframes whisper-in{0%{filter:blur(3px);letter-spacing:.12em}to{filter:blur();letter-spacing:.04em}}.hud-bottom{left:calc(22px + var(--safe-l));bottom:calc(20px + var(--safe-b));align-items:flex-end;gap:22px;display:flex;position:absolute}.hud-fuses{align-items:flex-end;gap:8px;display:flex}.hud-fuses i{width:17px;height:80px;position:relative}.hud-fuses img{object-fit:contain;width:100%;height:100%;transition:opacity .5s;position:absolute;inset:0}.hud-fuses .f-empty{opacity:.45}.hud-fuses .f-lit{opacity:0;filter:drop-shadow(0 0 8px #ffa03cd9)}.hud-fuses i.is-full .f-lit{opacity:1;animation:2.6s ease-in-out infinite fuse-glow}.hud-fuses i.is-full .f-empty{opacity:0}.hud-fuses i.is-new{animation:.7s cubic-bezier(.2,1.8,.4,1) both fuse-pop}@keyframes fuse-pop{0%{filter:brightness(3);transform:scale(1.7)rotate(-8deg)}to{filter:brightness();transform:scale(1)}}@keyframes fuse-glow{50%{filter:drop-shadow(0 0 14px #ffaa46)brightness(1.15)}}.hud-torch{opacity:.8;align-items:center;gap:8px;transition:opacity .3s;display:flex}.torch-icon{opacity:.7;width:38px}.hud-bat{aspect-ratio:240/98;width:86px;position:relative}.hud-bat>img{width:100%;height:100%;position:absolute;inset:0}.hud-battery{gap:3%;display:flex;position:absolute;inset:22% 17% 22% 11%}.hud-battery i{background:#281e1499;border-radius:1px;flex:1;transition:background .3s,box-shadow .3s}.hud-battery i.is-lit{background:linear-gradient(#ffd08a,#e8942e);box-shadow:0 0 6px #ffaa46b3}.hud-bat.is-charged{animation:.9s both charged}@keyframes charged{0%{filter:brightness(3)drop-shadow(0 0 14px #8dff9e);transform:scale(1.18)}to{filter:none;transform:none}}.hud-torch.is-low .hud-battery i.is-lit{background:linear-gradient(#ff6a50,#b8201a);animation:1.1s steps(2,end) infinite low;box-shadow:0 0 8px #dc281ee6}@keyframes low{50%{opacity:.3}}.hud-torch.is-off{opacity:.3}.hud-stamina{opacity:0;background:#d9d3c41f;width:150px;height:2px;transition:opacity .6s;position:absolute;bottom:-10px;left:0}.hud-stamina.is-on{opacity:1}.hud-stamina i{transform-origin:0;height:100%;transform:scaleX(var(--v,1));background:#d9d3c4b3;display:block}.hud-stamina.is-winded i{background:var(--blood-hi)}body.is-hidden .hud-bottom{opacity:.55}.touch-breath{right:calc(116px + var(--safe-r));bottom:calc(132px + var(--safe-b));width:60px;height:60px;font-size:11px}.touch-smack{right:calc(200px + var(--safe-r));bottom:calc(60px + var(--safe-b));width:56px;height:56px;font-size:11px}.touch{display:none}body.has-touch[data-screen=hud] .touch{display:block}body.has-touch .hud-dot{opacity:.6}.touch-stick{opacity:.35;border:1px solid #d9d3c42e;border-radius:50%;width:112px;height:112px;margin:-56px;position:absolute;top:72%;left:22%}.touch-stick.is-active{opacity:.8}.touch-stick i{background:#d9d3c440;border-radius:50%;width:44px;height:44px;margin:-22px;position:absolute;top:50%;left:50%}.touch-btn{pointer-events:auto;color:#d9d3c4cc;width:72px;height:72px;font-family:var(--sans);letter-spacing:.04em;touch-action:none;background:#0a0a0959;border:1px solid #d9d3c44d;border-radius:50%;font-size:13px;font-weight:600;position:absolute}.touch-btn.is-down{background:#d9d3c440}.touch-torch{right:calc(28px + var(--safe-r));bottom:calc(120px + var(--safe-b))}.touch-use{right:calc(116px + var(--safe-r));bottom:calc(44px + var(--safe-b))}.touch-run{right:calc(28px + var(--safe-r));bottom:calc(30px + var(--safe-b));width:64px;height:64px}.touch-pause{top:calc(18px + var(--safe-t));right:calc(18px + var(--safe-r));width:52px;height:52px;font-size:11px}body.has-touch .hud-bottom{bottom:calc(24px + var(--safe-b))}.screen-results{background:#000;justify-content:center;align-items:center}.results{text-align:center;flex-direction:column;align-items:center;gap:18px;width:min(560px,100vw - 32px);display:flex}.results h2{text-transform:uppercase;letter-spacing:.08em;font-size:clamp(40px,7vw,76px)}.screen-results[data-outcome=caught] h2{color:var(--blood);text-shadow:0 0 30px #9e1b1699;animation:.12s steps(2,end) 6 title-shake}@keyframes title-shake{50%{transform:translate(3px,-2px)}}.results-sub{font-family:var(--type);color:var(--dim);margin:0;font-size:17px;line-height:1.5}.results-best{color:var(--amber);font-family:var(--type);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:14px;display:none}.results-best.is-on{display:block}.results-stats{background:#1f1e1b;border:1px solid #1f1e1b;grid-template-columns:1fr 1fr;gap:1px;width:100%;margin:12px 0;display:grid}.stat{background:#050505;flex-direction:column;gap:4px;padding:14px;display:flex}.stat span{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.stat b{font-family:var(--type);color:var(--ink);font-size:26px;font-weight:400}.row-menu{flex-direction:row;gap:36px}.fatal{color:var(--blood-hi);text-align:center;pointer-events:auto;justify-content:center;align-items:center;padding:20px;font-family:monospace;display:flex;position:fixed;inset:0}@media (max-width:640px){.panel{padding:26px 22px}.screen-title{gap:30px}.settings .row{grid-template-columns:1fr auto}.settings output{display:none}}@media (prefers-reduced-motion:reduce){.logo-out,.title-footer{animation:none}}.stat:last-child:nth-child(odd){grid-column:1/-1}.hud-message{white-space:pre-line}.hud-fuses i.is-hidden{display:none}.hud-floor{text-align:center;width:min(900px,90vw);font-family:var(--type);letter-spacing:.32em;color:#d9d3c4;text-shadow:0 0 18px #000,0 0 4px #000;opacity:0;pointer-events:none;margin:0;font-size:clamp(22px,3.2vw,40px);position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.hud-floor.is-on{animation:5.5s forwards floor-card}@keyframes floor-card{0%{opacity:0;letter-spacing:.5em;filter:blur(3px)}18%{opacity:.95;letter-spacing:.32em;filter:blur()}70%{opacity:.85}to{opacity:0;letter-spacing:.28em}}@media (prefers-reduced-motion:reduce){.hud-floor.is-on{animation-duration:4s}}.logo{color:#e9e2d0;text-shadow:-3px 0 #00beff59,3px 0 #ff1e2866,0 0 26px #000000e6,0 0 3px #fff0d280;animation:5.5s step-end infinite logo-split}@keyframes logo-split{0%,60%,63%,to{transform:none}61%{transform:translate(3px)skew(-4deg)}62%{transform:translate(-2px)}}.logo-out{color:#e0231b;text-shadow:0 0 14px #ff2819d9,0 0 42px #c8140a99,3px 0 #ff5a3c73,-3px 0 #0af3}.screen-title .btn{text-transform:uppercase;letter-spacing:.16em;padding:12px 6px 14px}.screen-title .btn:before{display:none}.screen-title .btn:after{content:"";transform-origin:0;opacity:0;background:linear-gradient(90deg,#ff5a1400 0%,#ff5a14 12%,#ffd08a 40%,#ff7a2a 70%,#ff3c0a00 100%);border-radius:2px;height:3px;transition:transform .35s cubic-bezier(.2,.9,.3,1),opacity .2s;position:absolute;bottom:4px;left:-14px;right:-40px;transform:scaleX(0);box-shadow:0 0 12px #ff6e1ee6,0 0 30px #ff3c0a80}.screen-title .btn:hover:after,.screen-title .btn:focus-visible:after{opacity:1;animation:1.4s ease-in-out infinite ember-line;transform:scaleX(1)}@keyframes ember-line{50%{filter:brightness(1.35)}}.screen-title .btn:hover,.screen-title .btn:focus-visible{color:#f4ecd8;text-shadow:0 0 12px #ff963c73}.title-footer{left:auto;right:max(4vw,24px);bottom:calc(34px + var(--safe-b));text-transform:none;letter-spacing:.08em;color:#d9d3c48c;border-bottom:1px solid #d9d3c459;padding-bottom:2px;font-size:15px;font-style:italic;transform:rotate(-6deg)}body.is-hidden .hud-prompt{top:auto;left:auto;right:calc(7% + var(--safe-r));bottom:calc(24% + var(--safe-b))}body.is-hidden .hud-prompt.is-on{animation:none;transform:none}.hud-noise{--n:0;width:calc(14px + var(--n) * 46px);height:calc(14px + var(--n) * 46px);border:1px solid rgba(217, 211, 196, calc(var(--n) * .45));box-shadow:0 0 calc(var(--n) * 10px) rgba(217, 211, 196, calc(var(--n) * .18));pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}body.is-hidden .hud-noise{border-color:rgba(220, 60, 50, calc(var(--n) * .8))}.screen-title:after{content:"";pointer-events:none;background:radial-gradient(circle 220px at var(--mx,70%) var(--my,55%), #ffe2b41a, #ffd29609 45%, transparent 70%);mix-blend-mode:screen;position:absolute;inset:0}.hud-gun{right:calc(26px + var(--safe-r));bottom:calc(46px + var(--safe-b));filter:drop-shadow(0 2px 6px #000c);align-items:center;gap:10px;transition:opacity .4s;display:flex;position:absolute}.gun-svg{width:86px;height:86px;transition:transform .28s cubic-bezier(.3,1.4,.5,1);overflow:visible}.gun-cyl{transform-origin:50px 50px;transform-box:view-box;transition:transform .13s cubic-bezier(.2,1.6,.4,1)}.cyl-body{fill:url(#gs);stroke:#0b0b0a;stroke-width:1.5px}.cyl-rim{fill:none;stroke:#ffffff14;stroke-width:1px}.cyl-pin{fill:#1a1a19;stroke:#5b5b58;stroke-width:1px}.cyl-mark{fill:#e9d6aabf}.ch .hole{fill:#05050559;stroke:none}.cyl-art{filter:brightness(.95)contrast(1.05)}.ch .brass,.ch .primer,.ch .dent{opacity:0;transition:opacity .15s}.ch .brass{fill:url(#gb);stroke:#3d2507;stroke-width:.6px}.ch .primer{fill:#b98b44;stroke:#5a3a10;stroke-width:.6px}.ch .dent{fill:#2a1a06}.ch.is-live .brass,.ch.is-live .primer,.ch.is-spent .brass,.ch.is-spent .primer,.ch.is-spent .dent{opacity:1}.ch.is-spent .brass{opacity:.38;filter:saturate(.3)brightness(.55)}.ch.is-new .brass{animation:.45s ease-out ch-seat}@keyframes ch-seat{0%{filter:brightness(3)drop-shadow(0 0 6px #ffd27a)}to{filter:none}}.gun-reserve{font-family:var(--type,"Special Elite", monospace);color:#e9dec6e6;letter-spacing:.02em;text-shadow:0 0 8px #000000e6;min-width:3.2em;font-size:26px;font-weight:400}.gun-reserve.is-out{color:#b52a22}.gun-tally{pointer-events:none;width:196px;height:32px;position:absolute;top:calc(100% + 4px);left:2px;overflow:visible}.gun-tally .tm-cut,.gun-tally .tm-mark{fill:none;stroke-linecap:round}.gun-tally .tm-cut{stroke:#000000bf;stroke-width:3.4px;transform:translate(.9px,1.1px)}.gun-tally .tm-mark{stroke:#e2d6bcd6;stroke-width:1.9px}.gun-tally .tm.is-new .tm-mark,.gun-tally .tm.is-new .tm-cut{stroke-dasharray:40;animation:.3s cubic-bezier(.2,.7,.3,1) both tally-scratch}.gun-tally .tm.is-new .tm-mark{animation:.3s cubic-bezier(.2,.7,.3,1) both tally-scratch,1.1s ease-out both tally-flash}@keyframes tally-scratch{0%{stroke-dashoffset:40px}to{stroke-dashoffset:0}}@keyframes tally-flash{0%{stroke:#ff6a45;filter:drop-shadow(0 0 4px #ff4628e6)}to{stroke:#e2d6bcd6;filter:none}}.gun-tally .tm-more{font-family:var(--type,"Special Elite", monospace);fill:#e2d6bccc;font-size:15px}.hud-gun.is-tallied .gun-tally{animation:.32s ease-out tally-jolt}@keyframes tally-jolt{0%{transform:translate(0)}25%{transform:translate(-1.5px,1px)rotate(-1.2deg)}60%{transform:translate(1px)rotate(.6deg)}to{transform:none}}@media (prefers-reduced-motion:reduce){.gun-tally .tm.is-new .tm-mark,.gun-tally .tm.is-new .tm-cut,.hud-gun.is-tallied .gun-tally{animation:none}}.hud-gun.is-fed .gun-reserve{animation:.35s ease-out reserve-tick}@keyframes reserve-tick{0%{color:#ffd27a;transform:scale(1.35)}to{transform:none}}.hud-gun.is-reloading .gun-svg{transform:translate(-10px,-8px)rotate(-18deg)scale(1.08)}.hud-gun.is-shot .gun-svg{animation:.18s ease-out cyl-kick}@keyframes cyl-kick{0%{filter:brightness(1.8);transform:translateY(-5px)scale(1.06)}to{transform:none}}.hud-gun.is-dry .gun-svg{animation:.38s linear cyl-dry}@keyframes cyl-dry{0%,to{filter:none;transform:none}20%{filter:drop-shadow(0 0 8px #d11)sepia()hue-rotate(-40deg)saturate(4);transform:translate(-5px)}45%{transform:translate(5px)}70%{transform:translate(-3px)}}.hud-gun.is-empty .cyl-mark{fill:#c0261d}body.is-hidden .hud-gun{opacity:.45}body.has-touch .hud-gun{top:calc(80px + var(--safe-t));bottom:auto;right:calc(16px + var(--safe-r));transform-origin:100% 0;transform:scale(.8)}.hud-health{align-items:flex-end;gap:4px;padding-bottom:6px;display:flex}.hud-health i{background:#280606bf;border-radius:2px;width:22px;height:9px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #7814128c}.hud-health i:after{content:"";transform-origin:0;transform:scaleX(var(--f,1));background:linear-gradient(#d0342a,#7a0d0a 70%,#4a0605);transition:transform .25s;position:absolute;inset:0;box-shadow:0 0 6px #c81e1499}.hud-health.is-low i:after{animation:.9s ease-in-out infinite hp-pulse}@keyframes hp-pulse{50%{filter:brightness(1.8)}}.hud-health.is-hit{animation:.4s ease-out hp-hit}@keyframes hp-hit{0%{filter:brightness(2);transform:translateY(-3px)scale(1.12)}to{transform:none}}.hud-aim{opacity:0;background:#ffecc8d9;border-radius:50%;width:4px;height:4px;margin:-2px;transition:opacity .15s;position:absolute;top:50%;left:50%;box-shadow:0 0 4px #ffc878cc}body.is-aiming .hud-aim{opacity:1}body.is-aiming .hud-dot{opacity:0}.hud-hit{opacity:0;width:0;height:0;position:absolute;top:50%;left:50%}.hud-hit i{background:#f3ebdc;width:2px;height:9px;margin:-4.5px -1px;position:absolute;box-shadow:0 0 3px #000000e6}.hud-hit i:first-child{transform:rotate(45deg)translateY(-13px)}.hud-hit i:nth-child(2){transform:rotate(135deg)translateY(-13px)}.hud-hit i:nth-child(3){transform:rotate(225deg)translateY(-13px)}.hud-hit i:nth-child(4){transform:rotate(315deg)translateY(-13px)}.hud-hit.is-hit,.hud-hit.is-helmet,.hud-hit.is-immune{animation:.22s ease-out hit-tick}.hud-hit.is-helmet i{background:#ffd8a0}.hud-hit.is-immune i{background:#969696b3}.hud-hit.is-kill,.hud-hit.is-head{animation:.55s ease-out hit-kill}.hud-hit.is-kill i,.hud-hit.is-head i{background:#d8201a;width:3px;height:13px;margin:-6.5px -1.5px}.hud-hit.is-head{animation-duration:.75s}.hud-hit.is-sever{animation:.45s ease-out hit-kill}.hud-hit.is-sever i{background:#e6dccb}.hud-hit.is-sever:after{content:"";background:linear-gradient(90deg,#0000,#d8201a 30%,#f3ebdc 50%,#d8201a 70%,#0000);width:46px;height:2px;margin:-1px 0 0 -23px;position:absolute;transform:rotate(-32deg)}.hud-hit.is-finisher{animation:.8s ease-out hit-kill}.hud-hit.is-finisher i{background:#ffb35c;width:3px;height:17px;margin:-8.5px -1.5px}.hud-finish{pointer-events:none;opacity:0;background:radial-gradient(#0000 45%,#960c088c 100%);position:absolute;inset:0}.hud-finish.is-on{animation:.5s ease-out finish-flash}@keyframes finish-flash{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.hud-finish.is-on{animation-duration:.25s}}@keyframes hit-tick{0%{opacity:1;transform:scale(.7)}to{opacity:0;transform:scale(1.15)}}@keyframes hit-kill{0%{opacity:1;transform:scale(1.6)}25%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1)}}.hud-hurt{pointer-events:none;position:absolute;inset:0}.hud-hurt i{width:90vmin;height:90vmin;transform:rotate(var(--a));margin:-45vmin;animation:1.5s ease-out forwards hurt-dir;position:absolute;top:50%;left:50%}.hud-hurt i:before{content:"";filter:blur(2px);background:radial-gradient(at 50% 0,#960806d9,#5a000073 45%,#0000 72%);height:34%;position:absolute;top:-4%;left:20%;right:20%}@keyframes hurt-dir{0%{opacity:1}to{opacity:0}}.touch-fire{right:calc(24px + var(--safe-r));bottom:calc(206px + var(--safe-b));border-color:#e6965a73;width:84px;height:84px}.touch-aim{right:calc(200px + var(--safe-r));bottom:calc(136px + var(--safe-b));width:56px;height:56px;font-size:11px}.touch-reload{right:calc(122px + var(--safe-r));bottom:calc(210px + var(--safe-b));width:56px;height:56px;font-size:11px}.prompt-label.is-finish{color:#e24a3a;letter-spacing:.14em;text-transform:uppercase}
