:root{--void: #08050f;--void-2: #120a22;--panel: rgba(9, 5, 18, .82);--amber: #ffb24a;--amber-hot: #ffd89a;--amber-dim: #9c6a35;--amber-line: rgba(255, 178, 74, .32);--red: #ff4433;--cyan: #63e6e8;--magenta: #f06bd8;--bone: #f1e6cf;--muted: #a9978c;--mono: ui-monospace, "SFMono-Regular", "Cascadia Mono", "Menlo", "Courier New", monospace;--display: "Arial Black", "Helvetica Neue", Impact, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:var(--void);color:var(--bone);font-family:var(--mono);-webkit-font-smoothing:antialiased;overscroll-behavior:none}body{position:fixed;inset:0;touch-action:none;user-select:none;-webkit-user-select:none}#app{position:absolute;inset:0;overflow:hidden;background:radial-gradient(120% 80% at 50% 30%,#17102b,#08050f 60%,#05030a)}#game{position:absolute;inset:0;width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:crisp-edges;cursor:crosshair}#app.is-touch #game{cursor:default}#crt{position:absolute;inset:0;pointer-events:none;z-index:2;background:repeating-linear-gradient(to bottom,#0000 0 2px,#00000029 3px,#0000 4px);mix-blend-mode:multiply;opacity:.55}.is-hidden{display:none!important}#hud{position:absolute;inset:0;z-index:5;pointer-events:none;font-size:12px;letter-spacing:.12em;color:var(--amber);text-shadow:0 0 6px rgba(255,150,40,.35)}.hud-label{font-size:clamp(8px,1.15vmin + 4px,11px);letter-spacing:.28em;color:var(--amber-dim);text-shadow:none}.hud-top{position:absolute;top:0;left:0;right:0;display:flex;align-items:flex-start;gap:20px;padding:max(16px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left))}.hp-block{min-width:min(240px,34vw)}.hp-row{display:flex;align-items:center;gap:10px;margin-top:2px}.hud-big{font-size:clamp(24px,4.4vmin,40px);font-weight:700;line-height:.95;font-variant-numeric:tabular-nums;letter-spacing:.02em}.hp-track{flex:1;min-width:84px;height:8px;border:1px solid var(--amber-line);background:#0000008c;padding:1px}#hp-fill{width:100%;height:100%;background:linear-gradient(90deg,#ff7a2f,var(--amber-hot));transition:width .12s linear,background .2s linear}#hp-fill.low{background:linear-gradient(90deg,#ff2a20,#ff6a3a)}.mult-block{min-width:74px;opacity:.45;transition:opacity .15s linear}.mult-block.hot{opacity:1}.mult-num{font-size:clamp(20px,3.6vmin,34px);font-weight:700;line-height:1;color:var(--amber-hot)}.mult-block.hot .mult-num{color:var(--red);text-shadow:0 0 12px rgba(255,60,40,.7)}.boss-wrap{position:absolute;left:50%;transform:translate(-50%);top:max(16px,env(safe-area-inset-top));width:min(52vw,460px);text-align:center}.boss-track{height:7px;border:1px solid rgba(255,190,90,.5);margin-top:4px;background:#0009;padding:1px}#boss-fill{height:100%;width:100%;background:linear-gradient(90deg,#ff9a2e,#ffe6a0);transition:width .1s linear}.crosshair{position:absolute;left:50%;top:50%;width:34px;height:34px;transform:translate(-50%,-50%);opacity:.9}.crosshair i{position:absolute;background:var(--amber-hot);box-shadow:0 0 5px #ffaa3cb3}.crosshair i:nth-child(1),.crosshair i:nth-child(2){width:2px;height:8px;left:16px}.crosshair i:nth-child(1){top:0}.crosshair i:nth-child(2){bottom:0}.crosshair i:nth-child(3),.crosshair i:nth-child(4){height:2px;width:8px;top:16px}.crosshair i:nth-child(3){left:0}.crosshair i:nth-child(4){right:0}.crosshair b{position:absolute;left:16px;top:16px;width:2px;height:2px;background:var(--amber-hot)}.crosshair.hit{opacity:1}#hitmarker{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(1.4);font-size:30px;color:#fff3d6;opacity:0;text-shadow:0 0 10px rgba(255,110,30,.9)}.banner{position:absolute;left:50%;top:27%;transform:translate(-50%,8px);text-align:center;opacity:0;transition:opacity .22s ease,transform .32s ease;width:min(88vw,780px)}.banner.show{opacity:1;transform:translate(-50%)}.banner-title{font-family:var(--display);font-style:italic;font-weight:900;letter-spacing:.03em;font-size:clamp(30px,7.2vmin,74px);line-height:.92;color:var(--bone);text-shadow:3px 3px 0 #ff6a1f,6px 6px 0 rgba(58,8,42,.95)}.banner-sub{margin-top:8px;font-size:clamp(9px,1.5vmin + 4px,13px);letter-spacing:.34em;color:var(--amber)}.banner.danger .banner-title{color:#ffd9c8;text-shadow:3px 3px 0 #c11f1f,6px 6px 0 rgba(38,4,30,.95)}.hud-bottom{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:clamp(12px,3vw,42px);padding:9px max(18px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:linear-gradient(to top,rgba(7,4,14,.9),rgba(7,4,14,.55) 62%,transparent);border-bottom:2px solid rgba(255,178,74,.18)}.stat{display:flex;flex-direction:column;gap:2px;min-width:0}.stat.grow{justify-self:center;text-align:center}.hud-score{font-size:clamp(17px,3vmin,27px);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.16em;color:var(--bone)}.ammo{align-items:flex-end;text-align:right}.reserve{color:var(--muted);letter-spacing:.1em}.slash{color:#ffb24a59;margin:0 2px}.shells{display:flex;gap:3px;margin-top:3px;height:20px;align-items:stretch}.shells span{width:6px;background:#ffb24a24;border:1px solid rgba(255,178,74,.26)}.shells span.on{background:linear-gradient(to top,#c96a18,var(--amber-hot));border-color:var(--amber-hot);box-shadow:0 0 6px #ffa03280}.reload-bar{width:100%;height:3px;margin-top:4px;background:#ffb24a29;opacity:0;transition:opacity .12s linear}.reload-bar.on{opacity:1}#reload-fill{width:0%;height:100%;background:var(--amber)}.dash-pip{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:92px;font-size:9px;letter-spacing:.26em;color:var(--amber-dim);transition:color .12s linear,opacity .12s linear}.dash-pip.ready{color:var(--cyan);text-shadow:0 0 8px rgba(80,230,240,.5)}.dash-pip.cooling{opacity:.4}.is-touch .dash-pip{display:none}.tbtn.cooling{opacity:.35}#damage-vignette{position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse at center,transparent 38%,rgba(255,32,22,.55) 100%);transition:opacity .42s ease-out}#lowhp-vignette{position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(160,8,12,.5) 100%)}#lowhp-vignette.on{animation:lowhp 1.1s ease-in-out infinite}@keyframes lowhp{0%,to{opacity:.15}45%{opacity:.7}}#dmg-arc{position:absolute;left:50%;top:50%;width:220px;height:220px;transform:translate(-50%,-50%) rotate(0);opacity:0;border-radius:50%;background:conic-gradient(from -14deg,rgba(255,50,30,.85),transparent 28deg 332deg,rgba(255,50,30,.85));mask:radial-gradient(circle,transparent 60%,#000 63%,#000 72%,transparent 75%);-webkit-mask:radial-gradient(circle,transparent 60%,#000 63%,#000 72%,transparent 75%);transition:opacity .38s ease-out}.screen{position:absolute;inset:0;z-index:10;overflow:hidden}.screen.is-hidden{display:none}.title-screen{background:linear-gradient(100deg,#05030cf5,#05030cdb 34%,#05030c5c 62%,#05030cad)}.title-shade{position:absolute;inset:0;background:radial-gradient(80% 60% at 76% 44%,rgba(255,120,30,.12),transparent 62%),linear-gradient(to top,rgba(4,2,9,.92),transparent 42%);pointer-events:none}.title-inner{position:relative;height:100%;width:min(1180px,100%);margin:0 auto;padding:max(28px,env(safe-area-inset-top)) clamp(20px,5vw,64px) max(20px,env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0}.eyebrow{font-size:clamp(9px,1.35vmin + 4px,12px);letter-spacing:.34em;color:var(--amber);text-transform:uppercase;text-shadow:0 0 10px rgba(255,140,40,.35)}.wordmark{margin:clamp(6px,1.4vh,14px) 0 0 -6px;font-family:var(--display);font-style:italic;font-weight:900;font-size:clamp(58px,13.5vw,168px);line-height:.78;letter-spacing:-.045em;color:var(--bone);transform:skew(-3deg);text-shadow:4px 4px 0 #ff5f1a,8px 8px 0 #8d2216,12px 12px 0 rgba(30,4,34,.9)}.wordmark span{color:var(--amber);text-shadow:4px 4px 0 #b92a12,8px 8px 0 rgba(30,4,34,.9)}.tagline{margin-top:clamp(14px,2.4vh,26px);font-size:clamp(10px,1.6vmin + 5px,15px);letter-spacing:.32em;color:var(--muted)}.btn{-webkit-appearance:none;appearance:none;border:1px solid var(--amber-line);background:#0a0612b8;color:var(--amber);font-family:var(--mono);font-size:clamp(12px,1.4vmin + 7px,16px);font-weight:700;letter-spacing:.26em;text-transform:uppercase;padding:14px 26px;cursor:pointer;clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);transition:background .12s linear,color .12s linear,transform .12s linear,box-shadow .12s linear;text-shadow:0 0 8px rgba(255,150,50,.35)}.btn:hover,.btn:focus-visible{background:#ffb24a29;color:var(--amber-hot);outline:none;box-shadow:inset 0 0 0 1px #ffb24a66}.btn:active{transform:translateY(1px)}.btn.primary{margin-top:clamp(20px,3.4vh,34px);background:var(--amber);color:#1a0a04;border-color:var(--amber-hot);text-shadow:none;box-shadow:0 0 22px #ff962838;min-width:250px;text-align:center}.btn.primary:hover,.btn.primary:focus-visible{background:var(--amber-hot);color:#120600}.btn.ghost{border-color:#ffb24a29;color:var(--muted);font-size:11px;padding:11px 18px}.start-hint{margin-top:10px;font-size:9px;letter-spacing:.3em;color:#ffb24a6b}.title-cols{display:flex;gap:clamp(24px,5vw,64px);margin-top:clamp(22px,4vh,44px);padding-top:clamp(14px,2vh,22px);border-top:1px solid rgba(255,178,74,.2);width:min(640px,100%)}.title-col{flex:1;min-width:0}.title-col h3{font-size:10px;letter-spacing:.3em;color:var(--amber-dim);margin-bottom:10px;font-weight:400}.title-col dl{display:grid;grid-template-columns:auto 1fr;gap:5px 14px;font-size:clamp(9px,1.1vmin + 4px,11px);letter-spacing:.14em}.title-col dt{color:var(--bone);opacity:.85;white-space:nowrap}.title-col dd{color:var(--muted)}.prey-list{list-style:none;display:grid;gap:7px;font-size:clamp(9px,1.1vmin + 4px,11px);letter-spacing:.12em;color:var(--muted)}.prey-list li{display:flex;align-items:center;gap:9px}.glyph{width:11px;height:11px;display:inline-block;flex:none;background:var(--red);clip-path:polygon(50% 0,100% 96%,0 96%)}.glyph.octa{background:var(--cyan);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.glyph.icosa{background:var(--magenta);clip-path:polygon(50% 0,95% 32%,82% 90%,18% 90%,5% 32%)}.glyph.dodeca{background:var(--amber);clip-path:polygon(50% 0,100% 36%,82% 100%,18% 100%,0 36%)}.best{margin-top:clamp(16px,2.4vh,26px);font-size:10px;letter-spacing:.28em;color:var(--amber-dim)}.best span{color:var(--bone);font-weight:700;letter-spacing:.16em}.overlay-screen{display:grid;place-items:center;padding:20px;background:radial-gradient(60% 60% at 50% 40%,#1e0a348c,#040209e6 75%);-webkit-backdrop-filter:saturate(.4) brightness(.7);backdrop-filter:saturate(.4) brightness(.7)}.panel{width:min(440px,100%);padding:clamp(22px,4vw,34px);border:1px solid rgba(255,178,74,.3);background:linear-gradient(rgba(255,178,74,.05) 1px,transparent 1px) 0 0 / 100% 4px,#080410f0;display:flex;flex-direction:column;align-items:stretch;gap:10px;box-shadow:0 0 0 1px #000000b3,0 24px 70px #0009;position:relative}.panel:before,.panel:after{content:"";position:absolute;width:14px;height:14px;border:2px solid var(--amber)}.panel:before{left:-2px;top:-2px;border-right:none;border-bottom:none}.panel:after{right:-2px;bottom:-2px;border-left:none;border-top:none}.panel-title{font-family:var(--display);font-style:italic;font-size:clamp(38px,8vw,62px);line-height:.9;letter-spacing:-.02em;color:var(--bone);text-shadow:3px 3px 0 #ff5f1a,6px 6px 0 rgba(30,4,34,.9);margin-bottom:12px}.panel-title.dead{text-shadow:3px 3px 0 #b82a1a,6px 6px 0 rgba(30,4,34,.9)}.panel-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 0 16px;border-top:1px solid rgba(255,178,74,.2);border-bottom:1px solid rgba(255,178,74,.2);margin-bottom:10px}.panel-stats div{display:flex;flex-direction:column;gap:3px;min-width:0}.panel-stats span{font-size:9px;letter-spacing:.24em;color:var(--amber-dim)}.panel-stats strong{font-size:clamp(17px,3.4vw,24px);letter-spacing:.04em;color:var(--bone);font-variant-numeric:tabular-nums}.panel .btn{margin-top:2px}.panel .btn.primary{margin-top:8px}.panel-foot{margin-top:10px;font-size:9px;letter-spacing:.16em;color:#a9978cb3;text-align:center}.over-panel .eyebrow{line-height:1.6;letter-spacing:.24em}.over-best{font-size:10px;letter-spacing:.24em;color:var(--amber-dim);text-align:center;padding-bottom:4px}.touch{position:absolute;inset:0;z-index:8;pointer-events:none}.stick{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:max(26px,env(safe-area-inset-bottom));width:118px;height:118px;border-radius:50%;border:1px solid rgba(255,178,74,.24);background:radial-gradient(circle,#ffb24a12,#08050e40);pointer-events:auto;touch-action:none}.stick-ring{position:absolute;inset:18px;border-radius:50%;border:1px dashed rgba(255,178,74,.18)}.stick-knob{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:1px solid rgba(255,200,120,.55);background:#ffb24a2e;box-shadow:0 0 16px #ff962833;pointer-events:none}.tbtn{position:absolute;pointer-events:auto;touch-action:none;border-radius:50%;border:1px solid rgba(255,178,74,.42);background:#140a1899;color:var(--amber);font-family:var(--mono);font-size:11px;letter-spacing:.14em;font-weight:700;text-shadow:0 0 8px rgba(255,150,40,.4)}.tbtn:active,.tbtn.on{background:#ffb24a47;color:var(--amber-hot)}.tbtn.fire{right:max(18px,env(safe-area-inset-right));bottom:max(32px,env(safe-area-inset-bottom));width:96px;height:96px;font-size:13px;border-color:#ff783c99}.tbtn.small{width:56px;height:56px;font-size:9px}.tbtn.rld{right:calc(max(18px,env(safe-area-inset-right)) + 108px);bottom:calc(max(32px,env(safe-area-inset-bottom)) + 10px)}.tbtn.pause{top:max(72px,calc(env(safe-area-inset-top) + 62px));right:max(18px,env(safe-area-inset-right));width:44px;height:44px;font-size:12px;letter-spacing:.02em;color:var(--amber-hot)}.tbtn.dsh{right:calc(max(18px,env(safe-area-inset-right)) + 18px);bottom:calc(max(32px,env(safe-area-inset-bottom)) + 110px)}.rotate-hint{position:absolute;left:50%;bottom:60%;transform:translate(-50%);z-index:9;font-size:9px;letter-spacing:.22em;color:#ffb24a8c;padding:8px 12px;border:1px solid rgba(255,178,74,.18);background:#06030c99;pointer-events:none}@media (max-width: 760px){.hud-top{gap:12px;padding-top:max(12px,env(safe-area-inset-top));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.hp-block{min-width:0;flex:1}.boss-wrap{top:52px;width:66vw}.hud-bottom{gap:10px;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.hud-score{font-size:15px;letter-spacing:.08em}.shells{height:15px}.shells span{width:5px}.dash-pip{bottom:84px;left:50%;transform:translate(-50%)}.title-inner{justify-content:center;padding-top:max(26px,env(safe-area-inset-top));overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.title-inner::-webkit-scrollbar{display:none}.title-screen{background:linear-gradient(180deg,#05030ceb,#05030cb8 40%,#05030ce6)}.wordmark{font-size:clamp(40px,13.4vw,92px);margin-left:-3px;text-shadow:3px 3px 0 #ff5f1a,6px 6px 0 #8d2216,8px 8px 0 rgba(30,4,34,.9)}.tagline{letter-spacing:.2em;max-width:92%}.btn.primary{min-width:0;width:100%;padding:15px 18px;margin-top:20px}.title-cols{flex-direction:column;gap:16px;margin-top:20px;padding-top:14px}.title-col dd,.title-col dt,.prey-list{font-size:10px}.best{margin-bottom:8px}.title-shade{background:radial-gradient(70% 40% at 70% 30%,rgba(255,120,30,.12),transparent 65%),linear-gradient(to bottom,#04020926,#040209f2 60%)}}@media (max-height: 620px) and (min-width: 761px){.title-inner{justify-content:center;overflow-y:auto;padding-top:20px;padding-bottom:16px}.wordmark{font-size:clamp(52px,12vh,100px)}.title-cols{margin-top:16px;padding-top:12px}.best{margin-top:12px}}@media (prefers-reduced-motion: reduce){.banner,#damage-vignette,#dmg-arc,.btn{transition:none}#lowhp-vignette.on{animation:none;opacity:.5}}
