@font-face{font-family:"Press Start 2P";font-display:swap;src:url(./press-start-2p-_wFEWmAB.woff2)format("woff2")}*{box-sizing:border-box;margin:0;padding:0}html,body{background:#111;width:100%;height:100%;overflow:hidden}body{color:#fff;-webkit-user-select:none;user-select:none;font-family:"Press Start 2P",monospace}#game{width:100%;height:100%;position:fixed;inset:0}#game.retro{image-rendering:pixelated}#hud{pointer-events:none;position:fixed;inset:0}#vignette{opacity:0;background:radial-gradient(ellipse at center, transparent var(--clear,45%), #c80000d9 100%);position:absolute;inset:0}.hitarc{opacity:0;pointer-events:none;background:radial-gradient(50% 100% at 50% 0,#ff1e1ef2,#ff1e1e59 45%,#0000 72%);width:44vmin;height:16vmin;margin:-8vmin 0 0 -22vmin;position:absolute;top:50%;left:50%}.spawnarrow{opacity:0;pointer-events:none;clip-path:polygon(50% 0,100% 100%,50% 72%,0 100%);background:#ff2a1a;width:22px;height:16px;margin:-8px 0 0 -11px;position:absolute;top:50%;left:50%}#flash{opacity:0;background:#fff;position:absolute;inset:0}#hurtflash{opacity:0;pointer-events:none;background:radial-gradient(#0000 38%,#e60000b3 100%);position:absolute;inset:0}#hurtflash.on{animation:.32s ease-out flash}#flash.flash-on{animation:.35s ease-out flash}#ghost{opacity:0;pointer-events:none;background:radial-gradient(#a0e6ff00 35%,#78d2ff73 100%);transition:opacity .12s;position:absolute;inset:0}body.ghosting #ghost{opacity:1}body.ghosting #game{filter:saturate(.35)brightness(1.12)}@keyframes flash{0%{opacity:.75}to{opacity:0}}#killcam{z-index:6;pointer-events:none;visibility:hidden;position:fixed;inset:0;overflow:hidden}#killcam.on{visibility:visible;animation:.9s step-end forwards kc-show}@keyframes kc-show{to{visibility:hidden}}.kc-bar{background:#000;height:max(9vh,64px);position:absolute;left:0;right:0}.kc-bar.top{top:0;transform:translateY(-100%)}.kc-bar.bottom{bottom:0;transform:translateY(100%)}#killcam.on .kc-bar{animation:.9s cubic-bezier(.2,.9,.3,1) forwards kc-bar}@keyframes kc-bar{0%{transform:translateY(var(--from,-100%))}14%,72%{transform:none}to{transform:translateY(var(--from,-100%))}}.kc-bar.bottom{--from:100%}.kc-slash{width:170vmax;height:4px;transform:rotate(var(--cut,0deg)) scaleX(0);opacity:0;background:linear-gradient(90deg,#0000,#fff 35% 65%,#0000);margin:-2px 0 0 -85vmax;position:absolute;top:50%;left:50%;box-shadow:0 0 14px #ff3b3b,0 0 40px #ff3b3b}#killcam.on .kc-slash{animation:.55s ease-out forwards kc-slash}@keyframes kc-slash{0%{transform:rotate(var(--cut,0deg)) scaleX(0);opacity:1}12%{transform:rotate(var(--cut,0deg)) scaleX(1) scaleY(1.6);opacity:1}to{transform:rotate(var(--cut,0deg)) scaleX(1) scaleY(.2);opacity:0}}#game.killcam{animation:.9s ease-in forwards kc-grade}@keyframes kc-grade{0%{filter:saturate(.35)contrast(1.5)brightness(1.1)}45%{filter:saturate(.6)contrast(1.3)brightness(1.04)}to{filter:none}}#zflash,#ripperglow{opacity:0;pointer-events:none;background:radial-gradient(#0000 38%,#1e82ff80 66%,#003cfff2 100%);position:absolute;inset:0;box-shadow:inset 0 0 90px 24px #2896ffe6}#zflash.on{animation:1.1s ease-out zflash}@keyframes zflash{0%{opacity:1}35%{opacity:.85}to{opacity:0}}#ripperglow{transition:opacity .5s ease-out}#ripperglow.on{opacity:.7;animation:.9s ease-in-out infinite alternate ripperglow}@keyframes ripperglow{0%{opacity:.55}to{opacity:.85}}#popup{white-space:nowrap;color:#fff;text-shadow:4px 4px #0097e6,-2px -2px #000;opacity:0;font-size:clamp(18px,4vw,42px);position:absolute;top:calc(50% - 95px);left:50%;transform:translate(-50%,-50%)scale(0)}#hud.blade-on #chain{visibility:hidden}#popup.popup-on{animation:.7s cubic-bezier(.2,1.6,.4,1) forwards popup}@keyframes popup{0%{opacity:1;transform:translate(-50%,-50%)scale(2.4)rotate(-8deg)}25%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-3deg)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-80%)scale(1)rotate(-3deg)}}#hits{color:#fff;opacity:0;text-shadow:3px 3px #000;white-space:nowrap;transform-origin:0;font-size:14px;position:absolute;top:calc(50% - 10px);left:calc(50% + 46px)}#hits.finish{color:#ffd23f;text-shadow:3px 3px #c0392b,-2px -2px #000;font-size:20px}#hits.hits-on{animation:.9s ease-out forwards hits}@keyframes hits{0%{opacity:1;transform:scale(1.8)rotate(-6deg)}15%{opacity:1;transform:scale(1)rotate(-3deg)}70%{opacity:1}to{opacity:0;transform:translateY(-14px)rotate(-3deg)}}#crosshair{width:4px;height:4px;transform:scale(calc(1 + .4 * var(--charge,0)));opacity:calc(1 - .45 * var(--whiff,0));background:#fff;margin:-2px 0 0 -2px;transition:opacity .1s;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #0009}#crosshair.reach{background:#ff9a9a}#crosshair.lunge{transform:scale(calc(1.5 + .4 * var(--charge,0)));background:#ff3b3b;box-shadow:0 0 0 2px #000,0 0 8px #ff3b3b}#crosshair.stabhit{background:#ff3b3b;box-shadow:0 0 0 2px #000,0 0 8px #ff3b3b}#crosshair.charged{background:#ffd23f;box-shadow:0 0 0 2px #000,0 0 6px #ffd23f}#crosshair.charged.stabhit{background:#ff3b3b;box-shadow:0 0 0 2px #000,0 0 8px #ffd23f}#crosshair.parrynow:after{content:"";border:3px solid #fff;border-radius:50%;width:56px;height:56px;margin:-28px 0 0 -28px;animation:.22s linear forwards parry-ring;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #0000008c,0 0 10px #fff}@keyframes parry-ring{0%{opacity:.7;transform:scale(1.4)}to{opacity:1;transform:scale(.55)}}#crosshair.reeling{opacity:.3}#crosshair.hit{animation:.18s ease-out hit-dot}@keyframes hit-dot{0%{background:#ff3b3b;box-shadow:0 0 0 3px #000,0 0 10px #ff3b3b}}#vitals{--bar-h:clamp(14px, 2.4vh, 20px);--bar-border:clamp(2px, .25vw, 3px);left:calc(16px + env(safe-area-inset-left));pointer-events:none;gap:clamp(4px,1vh,8px);display:grid;position:absolute;top:clamp(10px,2.2vh,16px)}.vital{align-items:center;gap:clamp(6px,.8vw,10px);display:flex}.vital-label{text-shadow:2px 2px #000;width:clamp(26px,3.4vw,44px);font-size:clamp(8px,1vw,12px)}.vital-track{width:clamp(90px,16vw,240px);height:var(--bar-h);border:var(--bar-border) solid #000;background:#300;position:relative;overflow:hidden;box-shadow:3px 3px #000}.vital-chip,.vital-fill{width:100%;position:absolute;top:0;bottom:0;left:0}.vital-chip{background:#fff}.vital-fill{background:#2ecc40}#hp[data-state=hurt] .vital-fill{background:#ffb700}#hp[data-state=low] .vital-fill{background:#ff3b30;animation:.6s ease-in-out infinite alternate vital-low}@keyframes vital-low{to{opacity:.55}}.vital-text{line-height:1;font-size:calc(var(--bar-h) - 2 * var(--bar-border) - 3px);color:#fff;text-shadow:1px 1px #000,-1px -1px #000;white-space:nowrap;align-items:center;padding-left:5px;display:flex;position:absolute;inset:0}#chainbar .vital-track{background:#2a2205}#chainbar .vital-fill{background:#ffd23f}#chainbar .vital-chip{display:none}#chainbar.ripper .vital-track{background:#300}#chainbar.ripper .vital-fill{background:#ff3b30;animation:.25s ease-in-out infinite alternate vital-low;box-shadow:0 0 10px #ff3b30}#speedlines{pointer-events:none;will-change:transform, opacity;background:repeating-conic-gradient(#0000 0deg 3deg,#ffffffe6 3.15deg 3.5deg,#0000 3.65deg 7.3deg),repeating-conic-gradient(from 1.7deg,#0000 0deg 4.5deg,#0a192d80 4.6deg 4.85deg,#0000 4.95deg 11.9deg),repeating-conic-gradient(from 4.1deg,#0000 0deg 2.2deg,#c8f0ffb3 2.3deg 2.5deg,#0000 2.6deg 5.1deg);animation:.3s steps(3,end) infinite speedlines;position:absolute;inset:-20%;-webkit-mask-image:radial-gradient(closest-side,#0000 40%,#000 85%);mask-image:radial-gradient(closest-side,#0000 40%,#000 85%)}@keyframes speedlines{to{transform:rotate(5deg)}}#streakbar .vital-track{background:#062a33}#streakbar .vital-fill{background:#3fd8ff;box-shadow:0 0 8px #3fd8ff}#streakbar .vital-chip{display:none}#streakbar.pop .vital-track{transform-origin:0;animation:.35s ease-out streak-pop}@keyframes streak-pop{0%{filter:brightness(2.2);transform:scale(1.18)}}body.touch #vitals{left:calc(12px + env(safe-area-inset-left));gap:6px;top:12px}#bossbar{text-align:center;pointer-events:none;gap:6px;width:min(560px,70vw);display:grid;position:absolute;top:88px;left:50%;transform:translate(-50%)}#bossbar .bb-name{color:#ffd23f;text-shadow:3px 3px #c0392b,-2px -2px #000;font-size:14px}#bossbar .bb-track{background:#300;border:3px solid #000;height:16px;position:relative;box-shadow:3px 3px #000}#bossbar .bb-track div{position:absolute;top:0;bottom:0;left:0}#bossbar .bb-posture{background:#2a2205}#bossbar .bb-posture div{background:#ffd23f;transition:width .12s}#bossbar.enraged .bb-posture{background:#3a0a05}#bossbar.broken .bb-posture div{background:#fff;animation:.15s infinite alternate vital-low}body.touch #bossbar{width:min(560px,58vw);top:74px}#chain{pointer-events:none;text-align:center;flex-direction:column;align-items:center;gap:5px;width:90vw;display:flex;position:absolute;top:calc(50% + 46px);left:50%;transform:translate(-50%)}#chain .chain-total,#chain .chain-bar{opacity:0;transition:opacity .15s}#chain.live .chain-total,#chain.live .chain-bar{opacity:1}.chain-total{color:#ffd23f;text-shadow:3px 3px #c0392b,-1px -1px #000;font-variant-numeric:tabular-nums;font-size:18px}.chain-total.pop{animation:.18s ease-out chain-pop}@keyframes chain-pop{0%{transform:scale(1.3)}to{transform:scale(1)}}.chain-mult{color:#ff9f43;font-size:12px}#chain.hot .chain-mult{color:#ff5e3a}.chain-bar{background:#0009;width:90px;height:4px}.chain-bar div{background:#ffd23f;width:0;height:100%}.chain-banked{opacity:0;justify-items:center;gap:4px;display:grid;position:absolute;top:18px;left:0;right:0}.chain-banked-amount{color:#ffd23f;text-shadow:3px 3px #c0392b,-1px -1px #000;font-size:18px}.chain-word{color:#fff;text-shadow:3px 3px #c0392b,-2px -2px #000}.chain-banked.on{animation:.9s ease-in forwards bank-fly}.chain-banked.tier1.on{animation:1.1s ease-in forwards bank-big}.chain-banked.tier1 .chain-word{font-size:18px}.chain-banked.tier2.on,.chain-banked.tier3.on{animation:1.5s ease-in forwards bank-huge}.chain-banked.tier2 .chain-word{color:#ffd23f;font-size:30px}.chain-banked.tier2 .chain-banked-amount{font-size:24px}.chain-banked.tier3 .chain-word{color:#ff5e3a;font-size:44px}.chain-banked.tier3 .chain-banked-amount{font-size:30px}.chain-banked.broken .chain-banked-amount{color:#ff6b62;text-shadow:2px 2px #000}.chain-banked.broken.on{animation:.7s ease-in forwards bank-break}@keyframes bank-fly{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translate(var(--fly-x,0), var(--fly-y,-46vh)) scale(.6)}}@keyframes bank-big{0%{opacity:1;transform:scale(1.5)}30%{opacity:1;transform:scale(1)}to{opacity:0;transform:translate(var(--fly-x,0), var(--fly-y,-46vh)) scale(.6)}}@keyframes bank-huge{0%{opacity:1;transform:scale(2.2)rotate(-4deg)}15%{transform:scale(1)rotate(0)}55%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:translate(var(--fly-x,0), var(--fly-y,-46vh)) scale(.6)}}@keyframes bank-break{0%{opacity:1;transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-5px)}to{opacity:0;transform:translateY(60px)}}#chaos.bank{animation:.4s ease-out chaos-bank}@keyframes chaos-bank{0%{color:#fff;transform:scale(1.35)}to{transform:scale(1)}}#score{white-space:nowrap;pointer-events:none;text-shadow:3px 3px #000;align-items:baseline;gap:12px;display:flex;position:absolute;top:40px;left:50%;transform:translate(-50%)}#chaos{color:#ffd23f;font-variant-numeric:tabular-nums;font-size:18px}#rank{color:#fff;font-size:12px}#rank:empty{display:none}#rank.up{animation:.5s ease-out rank-up}@keyframes rank-up{0%{color:#7bed9f;transform:scale(1.6)}to{transform:scale(1)}}body.touch #score{top:34px}body.touch #chaos{font-size:14px}body.touch #rank{font-size:10px}#stats{text-align:right;text-shadow:3px 3px #000;font-size:14px;line-height:1.8;position:absolute;top:16px;right:16px}#feed{text-shadow:2px 2px #000;font-size:10px;line-height:1.9;position:absolute;top:108px;left:16px}#feed div{animation:3s forwards fade}@keyframes fade{0%,70%{opacity:1}to{opacity:0}}.overlay{text-align:center;background:#0a0a14c7;flex-direction:column;justify-content:safe center;align-items:center;gap:28px;padding:16px 0;display:flex;position:fixed;inset:0;overflow-y:auto}.overlay h1{color:#ffd23f;text-shadow:6px 6px #c0392b;font-size:44px;line-height:1.3}.overlay h1.logo{text-shadow:none;line-height:0}#menu,#gameover{--logo-w:min(600px, 84vw, 86vh);--menu-w:calc(var(--logo-w) * .9172);--menu-shift:calc(var(--logo-w) * -.0069)}.logo img{width:var(--logo-w);filter:drop-shadow(0 6px #00000059);height:auto;display:block}@media (height<=640px){.overlay{gap:12px}.overlay h1{font-size:26px}.btn{padding:10px 16px;font-size:12px}#go-stats{font-size:10px;line-height:1.9}#go-name{padding:8px;font-size:11px}}@media (height<=460px){.overlay{gap:8px}.overlay h1{text-shadow:4px 4px #c0392b;font-size:20px}}body:has(#menu:not(.hidden),#cards:not(.hidden),#gameover:not(.hidden)) #hud{visibility:hidden}.overlay.hidden{display:none}*{scrollbar-width:thin;scrollbar-color:#ffd23f #00000080}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ffd23f}::-webkit-scrollbar-track{background:#00000080}#death{background:#78000073}#death h1{color:#fff;text-shadow:6px 6px #000}#respawn-timer{font-size:14px}#menu-row{gap:calc(var(--logo-w) * .03);width:var(--menu-w);left:var(--menu-shift);grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(min-content,1fr);display:grid;position:relative}#controls{display:contents}#credit{color:#b2bec3;letter-spacing:1px;font-size:10px;line-height:2.2}#credit a{color:inherit}#credit a:hover{color:#ffd23f}#settings{gap:calc(var(--logo-w) * .02);font-size:clamp(7px, calc(var(--logo-w) * .015), 9px);flex-direction:column;display:flex}.setting{padding:6px clamp(5px, calc(var(--logo-w) * .016), 10px);cursor:default;background:#00000080;border:3px solid #ffd23f;flex-wrap:wrap;flex:1;align-content:center;align-items:center;gap:6px;display:flex;box-shadow:4px 4px #c0392b}.setting span{text-align:left;flex-basis:100%}.setting input{accent-color:#ffd23f;cursor:pointer;flex:1;width:0;min-width:0;margin:0}.setting output{text-align:right;color:#ffd23f}.ctl{background:#00000080;border:3px solid #ffd23f;flex-direction:column;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:12px 4px 11px;display:flex;box-shadow:4px 4px #c0392b}#menu-row .ctl-icon{zoom:.7}#menu-row .ctl-label{font-size:clamp(8px, calc(var(--logo-w) * .019), 14px);text-shadow:2px 2px #000;text-align:center;line-height:1.5}.ctl-icon{justify-content:center;align-items:center;gap:8px;height:92px;display:flex}.ctl-or{color:#9aa4ad;font-size:9px}.ctl-icon.stack{flex-direction:column;gap:4px}.ctl-icon.stack .ctl-wasd .ctl-key{width:25px;height:25px;font-size:11px;box-shadow:0 2px #636e72}.ctl-altrow{align-items:center;gap:6px;display:flex}.ctl-icon.stack .ctl-key.ctl-alt{min-width:0;height:23px;padding:0 6px;font-size:10px;box-shadow:0 2px #636e72}.ctl-key.ctl-alt{border-width:3px;width:auto;min-width:40px;height:40px;padding:0 8px;font-size:13px;box-shadow:0 3px #636e72}.ctl-label{color:#ffd23f;text-shadow:3px 3px #000;font-size:20px}.ctl-key{color:#111;background:#f5f6fa;border:4px solid #111;border-radius:6px;justify-content:center;align-items:center;width:58px;height:58px;font-size:26px;display:inline-flex;box-shadow:0 5px #636e72}#move-hint{pointer-events:none;background:#0a0a14b8;border:4px solid #000;align-items:center;gap:12px;padding:12px 18px;animation:.3s ease-out move-hint-in;display:flex;position:absolute;bottom:18%;left:50%;transform:translate(-50%);box-shadow:5px 5px #000}#move-hint .ctl-label{font-size:14px}@keyframes move-hint-in{0%{opacity:0;transform:translate(-50%,12px)}}.ctl-wasd{grid-template-columns:repeat(3,auto);justify-items:center;gap:4px;display:grid}.ctl-wasd .ctl-key{border-width:3px;width:40px;height:40px;font-size:16px;box-shadow:0 3px #636e72}.ctl-wasd .ctl-key:first-child{grid-area:1/2}.ctl-wasd .ctl-key:nth-child(2){grid-area:2/1}.ctl-wasd .ctl-key:nth-child(3){grid-area:2/2}.ctl-wasd .ctl-key:nth-child(4){grid-area:2/3}.ctl-mouse{width:64px;height:90px;display:block}.ctl-chip{color:#fff;background:#282832d9;border:4px solid #fffc;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;font-size:11px;display:inline-flex}.ctl-chip.stick:after{content:"";background:#ffffffd9;border-radius:50%;width:34px;height:34px}@media (height<=640px){.ctl{gap:6px;padding:8px 4px}.ctl-icon{height:58px}.ctl-key{width:42px;height:42px;font-size:18px}.ctl-wasd .ctl-key{width:28px;height:28px;font-size:11px}.ctl-mouse{width:40px;height:56px}.ctl-chip{width:56px;height:56px;font-size:8px}.ctl-key.ctl-alt{min-width:28px;height:28px;padding:0 5px;font-size:9px}.ctl-icon{gap:5px}.ctl-chip.stick:after{width:22px;height:22px}.ctl-icon.stack .ctl-altrow{display:none}.ctl-icon.stack .ctl-wasd .ctl-key{width:28px;height:28px}}@media (height<=420px){.ctl-icon{height:44px}.ctl-key{width:34px;height:34px;font-size:14px}.ctl-wasd .ctl-key,.ctl-icon.stack .ctl-wasd .ctl-key{border-width:2px;width:22px;height:22px;font-size:9px}.ctl-mouse{width:30px;height:42px}.ctl-chip{width:44px;height:44px;font-size:7px}}#modes{gap:calc(var(--logo-w) * .03);visibility:hidden;width:var(--menu-w);left:var(--menu-shift);flex-direction:column;display:flex;position:relative}#modes .btn{flex-wrap:wrap;place-content:center;align-items:center;padding:0;display:flex}#mode-survival{height:calc(var(--logo-w) * .17);font-size:clamp(16px, calc(var(--logo-w) * .07), 42px)}#mode-sandbox{height:calc(var(--logo-w) * .085);font-size:clamp(11px, calc(var(--logo-w) * .038), 22px)}#mode-sandbox .lock,#best:empty{display:none}#modes .note{white-space:nowrap;font-size:clamp(7px, calc(var(--logo-w) * .017), 10px);margin-left:calc(var(--logo-w) * .03);opacity:.75}#mode-sandbox.locked .note{display:none}#mode-sandbox.locked{opacity:.55;cursor:not-allowed;gap:calc(var(--logo-w) * .03)}#mode-sandbox.locked:hover{transform:none;box-shadow:5px 5px #636e72}#mode-sandbox.locked .lock{font-size:clamp(7px, calc(var(--logo-w) * .017), 10px);color:#c0392b;display:block}#loading{color:#aaa;font-size:11px}.btn{cursor:pointer;color:#111;background:#ffd23f;border:4px solid #000;padding:16px 22px;font-family:inherit;font-size:15px;box-shadow:5px 5px #c0392b}.btn.alt{background:#dfe6e9;box-shadow:5px 5px #636e72}.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px #c0392b}.btn.alt:hover{box-shadow:7px 7px #636e72}.hidden{display:none!important}#paused{font-size:16px}#music-toggle{top:12px;left:calc(12px + env(safe-area-inset-left));z-index:1;padding:6px 8px;font-size:10px;position:fixed}#sandbox-tools{top:12px;right:calc(12px + env(safe-area-inset-right));z-index:1;padding:8px 10px;font-size:10px;display:none;position:fixed}body.sandbox-mode #sandbox-tools{display:block}body:has(#sandbox-panel:not(.hidden)) :is(#sandbox-tools,#music-toggle){visibility:hidden}#sandbox-panel{z-index:5;background:#0a0a14eb;justify-content:flex-start;gap:16px;padding:20px 16px 28px}#sandbox-panel h2{color:#ffd23f;text-shadow:4px 4px #c0392b;font-size:clamp(18px,3vw,28px)}.sb-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;width:min(1100px,100%);display:grid}.sb-section{background:#16161f;border:4px solid #000;align-content:start;gap:10px;min-width:0;padding:14px;display:grid;box-shadow:5px 5px #000}.sb-section h3{color:#ffd23f;font-size:13px}.sb-section h4{color:#aaa;margin-top:4px;font-size:9px}.sb-row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 3.5em;align-items:center;gap:8px;font-size:9px;line-height:1.5;display:grid}.sb-row select{grid-column:span 2}.sb-check{cursor:pointer;grid-template-columns:auto 1fr}.sb-off{opacity:.35;pointer-events:none}.sb-row select,.sb-row input[type=range]{accent-color:#ffd23f;width:100%;min-width:0;font-family:inherit;font-size:9px}.sb-row select{color:#111;background:#dfe6e9;border:3px solid #000;padding:4px}.sb-check input{accent-color:#ffd23f;width:16px;height:16px}.sb-value{text-align:right;color:#ffd23f}.sb-note{color:#888;font-size:8px;line-height:1.5}.sb-buttons{flex-wrap:wrap;gap:10px;display:flex}.sb-btn{padding:9px 12px;font-size:10px}.sb-upgrades{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;display:grid}.sb-upgrade{cursor:pointer;text-align:left;color:#111;background:#dfe6e9;border:3px solid #000;justify-content:space-between;gap:6px;padding:7px 6px;font-family:inherit;font-size:8px;display:flex}.sb-upgrade.uncommon{background:#74b9ff}.sb-upgrade.legendary{background:#ffd23f}.sb-upgrade.cursed{background:#d49bff}.sb-upgrade>span{flex:1}.sb-icon{width:16px;height:16px;image-rendering:pixelated;flex:none}.sb-upgrade:hover{filter:brightness(1.1)}.sb-n{color:#c0392b}#sb-done{font-size:13px}.touch-label,body.touch .keys{display:none}body.touch .touch-label{display:inline}#menu,#gameover{--gutter:calc(50vw - var(--menu-w) / 2)}@media (width>=817px){#menu:has(.board:not(.hidden)){--logo-w:min(600px, 84vw, 86vh, max(324px, (100vw - 520px) / .9172))}}#menu .board{--board-w:min(420px, var(--gutter) - 24px);top:50%;right:calc((var(--gutter) - var(--board-w)) / 2);width:var(--board-w);min-width:0;padding:calc(var(--board-w) * .045);background:#00000080;position:fixed;transform:translateY(-50%)}#menu .board h2{font-size:max(8px, var(--board-w) * .045);margin-bottom:calc(var(--board-w) * .035)}#menu .board table{font-size:max(8px, var(--board-w) * .031);border-spacing:calc(var(--board-w) * .03) calc(var(--board-w) * .022);width:100%}#menu .board td:nth-child(2){width:100%;max-width:0}.side-ad{width:calc(var(--gutter) - 8px);height:min(600px,80vh);position:fixed;top:50%;left:0;transform:translateY(-50%)}@media (width<=816px),(height<=420px){#menu .board{display:none}}@media (width<=1200px),(height<=600px){.side-ad{display:none}}#go-continue svg{vertical-align:-.2em;fill:currentColor;width:1.2em;height:1.2em;margin-right:.6em}#go-continue svg path{fill:#ffd23f}#go-continue,#go-again{min-width:min(25em,100vw - 32px)}#gameover{--menu-w:min(760px, 92vw)}.board{background:#00000059;border:3px solid #ffd23f;min-width:300px;padding:12px 14px}.board h2{color:#ffd23f;margin-bottom:10px;font-size:12px}.board table{border-spacing:10px 5px;margin:0 auto;font-size:10px}.board td:first-child{color:#9aa4ad;text-align:right}.board td:nth-child(2){text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.board td:nth-child(3){color:#ffd23f;text-align:right}.board td:nth-child(4){color:#9aa4ad}.board tr.me td{color:#7bed6a}.board .pic{vertical-align:middle;border-radius:3px;width:1.5em;height:1.5em;margin-right:.6em}#go-privacy a{color:inherit}#go-submit{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}#go-name{color:#fff;text-transform:uppercase;background:#1e272e;border:4px solid #ffd23f;outline:none;width:240px;padding:12px;font-family:inherit;font-size:14px}#go-status{min-height:1em}#go-status.error{color:#ff6b62}#go-status.placed{color:#7bed6a;font-size:14px}@media (height<=640px){.board{padding:6px 10px}.board table{border-spacing:8px 2px;font-size:9px}}.small{color:#aaa;font-size:10px}#combo{color:#ff7b00;opacity:.35;justify-content:flex-end;align-items:center;gap:8px;display:flex}#combo.on{opacity:1}#combo-bar{background:#000;border:2px solid #000;width:70px;height:8px}#combo-fill{background:#ff7b00;width:0;height:100%}#wave{text-shadow:3px 3px #000;white-space:nowrap;font-size:14px;position:absolute;top:16px;left:50%;transform:translate(-50%)}#banner{text-align:center;opacity:0;white-space:nowrap;position:absolute;top:calc(50% - 215px);left:50%;transform:translate(-50%)}#banner.on{animation:2.6s ease-out forwards banner}#banner-title{color:#ffd23f;text-shadow:5px 5px #c0392b,-2px -2px #000;font-size:40px}#banner-sub{text-shadow:3px 3px #000;margin-top:14px;font-size:13px}@keyframes banner{0%{opacity:0;transform:translate(-50%)scale(1.8)}10%{opacity:1;transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0}}#card-row{flex-wrap:wrap;justify-content:center;gap:22px;padding:0 16px;display:flex}.card{cursor:pointer;color:#fff;text-align:center;background:#1e272e;border:4px solid #ffd23f;flex-direction:column;justify-content:center;gap:18px;width:220px;min-height:190px;padding:18px 14px;font-family:inherit;display:flex;box-shadow:6px 6px #c0392b}.card:hover{transform:translateY(-6px)}.card .key{color:#ffd23f;font-size:11px}.card-icon{width:64px;height:64px;image-rendering:pixelated;align-self:center}.card .name{color:#ffd23f;font-size:14px;line-height:1.5}.card .text{font-size:11px;line-height:1.8}.card .detail{color:#9aa4ad;font-size:9px;line-height:1.7}.card .owned{color:#9aa4ad;font-size:9px}.card .rarity{font-size:9px}.card.common{border-color:#f5f6fa;box-shadow:6px 6px #57606f}.card.common .rarity,.card.common .name{color:#f5f6fa}.card.uncommon{border-color:#4cd137;box-shadow:6px 6px #1e6b14}.card.uncommon .rarity,.card.uncommon .name{color:#7bed6a}.card.legendary{border-color:#ff3f34;box-shadow:6px 6px #7a0e08}.card.legendary .rarity,.card.legendary .name{color:#ff6b62}.card.cursed{background:#1a1024;border-color:#b84dff;box-shadow:6px 6px #3d0a5c}.card.cursed .rarity,.card.cursed .name{color:#d49bff}#inventory{pointer-events:none;flex-wrap:wrap;justify-content:center;gap:6px;max-width:60vw;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.inv{text-shadow:1px 1px #000;background:#0000008c;border:2px solid;align-items:center;gap:5px;padding:4px 6px;font-size:8px;display:flex}.inv-icon{width:16px;height:16px;image-rendering:pixelated}.inv.common{color:#f5f6fa;border-color:#f5f6fa}.inv.uncommon{color:#7bed6a;border-color:#4cd137}.inv.legendary{color:#ff6b62;border-color:#ff3f34}.inv.cursed{color:#d49bff;border-color:#b84dff}body.touch #inventory{display:none}#go-stats{font-size:13px;line-height:2.2}#go-stats .new{color:#ffd23f}#go-buttons{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.blink{animation:1s steps(2,end) infinite blink}@keyframes blink{50%{opacity:0}}.danger{width:24px;height:48px;image-rendering:pixelated;filter:drop-shadow(0 0 6px #ff3c00cc);display:none;position:absolute;top:0;left:0}body.touch,body.touch *{-webkit-user-select:none;-webkit-touch-callout:none}#touch{touch-action:none;z-index:5;position:fixed;inset:0}#stick{pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}#stick.rest{opacity:.4;transform:translate(calc(104px + env(safe-area-inset-left)), calc(100dvh - 128px))}#stick:before{content:"";background:#0000002e;border:3px solid #ffffff73;border-radius:50%;width:124px;height:124px;position:absolute;top:-62px;left:-62px}#stick-knob{background:#ffffff8c;border:3px solid #00000080;border-radius:50%;width:54px;height:54px;position:absolute;top:0;left:0}.tbtn{color:#fff;touch-action:none;text-shadow:1px 1px #000;background:#14141e73;border:3px solid #ffffff8c;border-radius:50%;width:64px;height:64px;font-family:inherit;font-size:9px;position:absolute}.tbtn.down{background:#ffd23f99;border-color:#ffd23f}.tbtn.big{width:108px;height:108px;font-size:12px}#t-ring{pointer-events:none;width:0;height:0;display:none;position:absolute;top:0;left:0}#t-ring.on{display:block}#t-ring:before{content:"";background:conic-gradient(#fffffff2 calc(var(--charge,0) * 360deg), #ffffff2e 0);border-radius:50%;width:84px;height:84px;position:absolute;top:-42px;left:-42px;-webkit-mask:radial-gradient(circle,#0000 33px,#000 34px);mask:radial-gradient(circle,#0000 33px,#000 34px)}#t-ring.ready:before{filter:drop-shadow(0 0 6px #ffd23f);background:#ffd23f}#t-slash{pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}#t-slash:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#fff 35% 65%,#0000);border-radius:3px;width:140px;height:6px;position:absolute;top:-3px;left:-70px}#t-slash.on:before{animation:.28s ease-out t-slash}@keyframes t-slash{0%{opacity:1;transform:scaleX(.2)}40%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1.2)}}.t-hint{bottom:calc(18px + env(safe-area-inset-bottom));text-align:center;color:#fffc;text-shadow:1px 1px #000;pointer-events:none;margin:0;font-size:9px;line-height:1.7;transition:opacity .8s;position:absolute}#t-hint-move{left:calc(104px + env(safe-area-inset-left));transform:translate(-50%)}#t-hint-look{right:25%;transform:translate(50%)}#touch.learned .t-hint{opacity:0}#t-pause{right:calc(14px + env(safe-area-inset-right));border-radius:10px;width:44px;height:44px;font-size:12px;top:12px}#t-weapon{right:calc(66px + env(safe-area-inset-right));border-radius:10px;width:52px;height:44px;font-size:8px;top:12px}body:not(.sword) .sword-only,body.sword .fists-only,body.katana-only #t-weapon{display:none}#blade{pointer-events:none;background:radial-gradient(#286ec814 30%,#0a1e508c 100%);position:absolute;inset:0;overflow:hidden}#blade.hidden{display:none}#blade .blade-line,#blade .blade-flash{width:220vmax;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#blade .blade-line{background:linear-gradient(90deg,#0000,#a0e6ffb3 40%,#fffffff2 50%,#a0e6ffb3 60%,#0000);box-shadow:0 0 8px #78d2ffe6}#blade .blade-flash{opacity:0;background:#fff;height:6px;box-shadow:0 0 18px #bfefff}#blade .blade-flash.on{animation:.18s ease-out blade-flash}@keyframes blade-flash{0%{opacity:1}to{opacity:0}}#blade .blade-core{width:84px;height:84px;transform:translate(var(--x,50vw), var(--y,50vh));margin:-42px 0 0 -42px;display:none;position:absolute;top:0;left:0}#blade .blade-core.on{animation:.24s steps(2,jump-none) infinite core-flash;display:block}#blade .blade-core:before{content:"";border:7px solid #ff1414;border-radius:50%;position:absolute;inset:10px;box-shadow:0 0 0 2px #000,0 0 16px #ff1414,inset 0 0 12px #ff1414}#blade .blade-core:after{content:"";background:#ff1414;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #000,0 0 12px #fff}#blade .blade-core i{background:#ff1414;position:absolute;box-shadow:0 0 0 2px #000,0 0 10px #ff1414}#blade .blade-core i.t,#blade .blade-core i.b{width:7px;height:26px;margin-left:-3.5px;left:50%}#blade .blade-core i.l,#blade .blade-core i.r{width:26px;height:7px;margin-top:-3.5px;top:50%}#blade .blade-core i.t{top:-20px}#blade .blade-core i.b{bottom:-20px}#blade .blade-core i.l{left:-20px}#blade .blade-core i.r{right:-20px}@keyframes core-flash{0%{opacity:1;transform:translate(var(--x,50vw), var(--y,50vh)) scale(1.15);filter:brightness(1.6)}to{opacity:.55;transform:translate(var(--x,50vw), var(--y,50vh)) scale(.9);filter:none}}#blade .blade-label{text-align:center;color:#dff6ff;letter-spacing:4px;text-shadow:0 0 10px #4fc3ff,3px 3px #0b2a4a;width:100%;font-size:22px;position:absolute;top:18%}#blade .blade-bar{background:#00000080;border:2px solid #9fe3ff;width:220px;height:6px;position:absolute;top:calc(18% + 34px);left:50%;transform:translate(-50%)}#blade .blade-timer{background:#dff6ff;width:100%;height:100%}body.touch #feed{font-size:8px;top:84px}body.touch #stats{top:62px;right:calc(14px + env(safe-area-inset-right));font-size:11px}body.touch #wave{font-size:11px}body.touch #banner-title{font-size:28px}body.touch #popup{font-size:clamp(16px,3.6vw,30px)}#bossbar:not(.hidden)~#banner{top:190px}#bossbar:not(.hidden)~#popup{top:calc(50% + 130px)}#bossbar:not(.hidden)~#feed{display:none}@media (height<=600px){#banner{top:calc(50% - 124px)}#banner-title,body.touch #banner-title{font-size:20px}#banner-sub{margin-top:6px;font-size:9px}#popup,body.touch #popup{font-size:clamp(14px,3vw,24px);top:calc(50% - 68px)}#bossbar .bb-name{font-size:10px}#bossbar:not(.hidden)~#banner{top:140px}#bossbar:not(.hidden)~#popup{top:calc(50% + 100px)}}@media (height<=450px){#banner-sub{display:none}}body.touch .card{width:180px;min-height:150px}body.touch .card-icon{width:40px;height:40px}@media (orientation:portrait){body.touch .vital-track{width:clamp(110px,36vw,180px)}body.touch #wave{font-size:10px;top:66px}body.touch #score{flex-direction:column;align-items:center;gap:6px;top:86px}body.touch #chaos{font-size:13px}body.touch #stats{align-items:center;gap:14px;font-size:10px;line-height:1;display:flex;top:124px;left:50%;right:auto;transform:translate(-50%)}body.touch #combo-bar{width:44px}body.touch #feed{top:auto;bottom:calc(210px + env(safe-area-inset-bottom));left:calc(12px + env(safe-area-inset-left));font-size:8px}body.touch #bossbar{width:84vw;top:150px}body.touch #bossbar:not(.hidden)~#banner{top:250px}body.touch #banner{white-space:normal;width:92vw;top:max(146px,50% - 215px)}body.touch #popup{top:calc(50% - 70px)}body.touch #bossbar:not(.hidden)~#popup{top:calc(50% + 104px)}body.touch #banner-sub{white-space:normal;line-height:1.6}.chain-banked.tier2 .chain-word{font-size:22px}.chain-banked.tier3 .chain-word{font-size:30px}}@media (orientation:portrait) and (height<=700px){body.touch #banner-sub{display:none}}@media (orientation:portrait){body.touch .overlay h1{font-size:30px}body.touch #card-row{flex-direction:column;align-items:center;gap:14px}body.touch .card{gap:10px;width:min(88vw,380px);min-height:0;padding:12px}}@media (orientation:landscape) and (height<=500px){body.touch .card{gap:8px;min-height:0;padding:10px}body.touch .card .text{font-size:9px;line-height:1.6}body.touch .card-icon{width:32px;height:32px}#gameover:not(.hidden){grid-template-columns:minmax(0,1fr) auto;align-content:center;justify-items:center;gap:10px 24px;padding:12px 24px;display:grid}#gameover>*{grid-column:1}#gameover>#go-board{grid-area:1/2/span 6;align-self:center}#go-stats{font-size:9px}#gameover h1 br{display:none}#go-submit{flex-wrap:nowrap;gap:8px}#go-name{width:150px;padding:8px;font-size:10px}#go-send{white-space:nowrap;padding:8px 12px;font-size:10px}}@media (orientation:landscape) and (height<=420px){#menu,#gameover{--logo-w:min(340px, 44vw, 1.2 * (100vh - 60px))}#menu:not(.hidden):not(.ready){grid-auto-flow:dense;grid-template-columns:auto auto;place-content:center;gap:8px 4vw;display:grid}#menu>*{grid-column:1}#menu>#menu-row{grid-area:1/2;align-self:center;left:0}#menu>#credit{grid-area:2/2;align-self:start}#card-row{flex-wrap:nowrap;gap:12px}.card,body.touch .card{flex:0 200px;gap:6px;width:auto;min-width:0;min-height:0;padding:8px}.card .name{font-size:11px}.card .text,body.touch .card .text{font-size:9px;line-height:1.5}.card .detail{font-size:8px;line-height:1.5}.card-icon,body.touch .card-icon{width:28px;height:28px}#cards .small{display:none}#cards{gap:6px;padding-block:8px}#gameover:not(.hidden){gap:6px 24px;padding-block:8px}#go-stats{line-height:1.7}#gameover .btn{padding:8px 12px;font-size:10px}}@media (orientation:portrait){body.touch .card{text-align:left;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:4px 12px;display:grid}body.touch .card>*{grid-column:2}body.touch .card .card-icon{grid-area:1/1/span 4}body.touch .card{padding:8px 12px}body.touch .card .text{line-height:1.5}body.touch #cards h1{font-size:24px}body.touch #cards .small{display:none}body.touch .card .key,body.touch .card .owned{grid-row:1}body.touch .card .owned{justify-self:end}body.touch #card-row{gap:10px}}@media (height<=600px){#card-row{flex-wrap:nowrap;max-width:100%}.card{flex:0 220px;gap:10px;min-width:0;min-height:0;padding:12px}}#bench{z-index:10}#bench pre{text-align:left;white-space:pre-wrap;word-break:break-all;-webkit-user-select:text;user-select:text;background:#00000080;width:min(92vw,640px);max-height:50vh;padding:10px 14px;font:11px/1.5 ui-monospace,monospace;overflow:auto}.bench-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}#aim-hint{color:#fff;text-shadow:3px 3px #000;pointer-events:none;white-space:nowrap;font-size:14px;display:none;position:absolute;top:calc(50% + 36px);left:50%;transform:translate(-50%)}body.needs-mouse #aim-hint{display:block}
