:root{color-scheme:dark;--bg: #14122a;--ink: #fff1fa;--pink: #ff4f9a;--pink-soft: #f6b6d6;--orange: #ff8a3c;--gold: #ffc14a;--purple: #6a2a9a;--cyan: #7fe6ff;--cash: #7dff9a;--armour: #4a9bff;--shade: #120a1e;--panel: #1a1430f2;--sunset: linear-gradient(120deg, #ffb05a 0%, #ff6a6a 30%, #ff4f9a 55%, #b46bff 85%);--display: "Lilita One", "Arial Black", Impact, sans-serif;--script: "Yellowtail", "Brush Script MT", cursive;font-family:Rajdhani,Segoe UI,system-ui,sans-serif;font-weight:600}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(ellipse at 50% -10%,#ff4f9a33,transparent 55%),radial-gradient(ellipse at 50% 120%,#6a2a9a55,transparent 60%),var(--bg);color:var(--ink)}body{min-height:100vh;display:grid;place-items:center;overflow:hidden}button,input{font-family:inherit}#stage{position:relative;container-type:inline-size;border-radius:6px;box-shadow:0 0 0 3px var(--shade),0 0 0 6px var(--pink),0 0 60px #ff4f9a55}canvas{display:block;width:320px;height:180px;image-rendering:pixelated;image-rendering:crisp-edges;background:var(--bg);transition:filter .4s}body.wasted #game{filter:grayscale(1) contrast(1.15) brightness(.8)}#hud,#banner,#toast,#speech,#bossbar,#wasted{pointer-events:none}#hud{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr auto 1fr;align-content:start;padding:2.2cqi 2.6cqi;font-family:var(--display);font-size:2.3cqi;line-height:1.3;letter-spacing:.04em;text-shadow:-2px -2px 0 var(--shade),2px -2px 0 var(--shade),-2px 2px 0 var(--shade),2px 2px 0 var(--shade)}#hud-left{justify-self:start}#hud-mid{justify-self:center;color:var(--pink-soft);font-size:1.8cqi}#hud-right{justify-self:end;text-align:right}#hearts{display:flex;gap:.4cqi;padding:.5cqi;background:#120a1ecc;border-radius:2px;margin-bottom:.8cqi}#hearts i{width:3.4cqi;height:1.1cqi;background:#24305a}#hearts i.on{background:var(--armour);box-shadow:0 0 6px #4a9bff88}#lives{color:var(--ink);font-size:1.9cqi}#combo{color:var(--cyan);margin-top:.6cqi;font-size:1.9cqi}#stars{display:flex;gap:.3cqi;justify-content:flex-end;margin-bottom:.4cqi}#stars i{width:2.6cqi;height:2.6cqi;background:#ffffff2e;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}#stars i.on{background:#fff;filter:drop-shadow(0 0 3px #fff)}#stars.flash i.on{animation:star-blink .5s steps(1) infinite}@keyframes star-blink{50%{background:#3b8cff}}#score{color:var(--cash);font-size:3.4cqi;line-height:1.15}#coins{color:var(--ink);font-size:1.7cqi}#time{color:var(--pink-soft);font-size:1.7cqi}#wasted{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--display);font-size:9cqi;color:#e8344a;letter-spacing:.04em;text-shadow:0 0 0 transparent,4px 4px 0 var(--shade);-webkit-text-stroke:2px var(--shade);background:linear-gradient(transparent 38%,#000a 38%,#000a 62%,transparent 62%);animation:slam .5s cubic-bezier(.2,1.6,.4,1) both}#bossbar{position:absolute;left:50%;bottom:5%;transform:translate(-50%);width:48%;text-align:center;font-family:var(--display);font-size:2cqi;letter-spacing:.06em;color:var(--ink);text-shadow:2px 2px 0 var(--shade)}#bossbar.enraged{color:#ff6a7a}.track{margin-top:.8cqi;height:1.3cqi;background:var(--shade);border:2px solid var(--shade);outline:1px solid #ffffff44}#bossfill{height:100%;width:100%;background:linear-gradient(90deg,#e8344a,var(--pink))}#banner{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;justify-items:center;text-align:center;padding:8cqi}#banner-kicker{font-family:var(--display);color:var(--ink);font-size:2.1cqi;letter-spacing:.3em;margin-bottom:.6cqi;text-shadow:2px 2px 0 var(--shade)}#banner-title{font-family:var(--script);font-size:8.5cqi;line-height:1.1;padding:0 2cqi 1cqi;background:var(--sunset);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(3px 3px 0 var(--shade));animation:slam .6s cubic-bezier(.2,1.4,.4,1) both}#banner-sub{font-family:var(--display);color:var(--cyan);font-size:1.8cqi;letter-spacing:.12em;margin-top:.4cqi;text-shadow:2px 2px 0 var(--shade)}#toast{position:absolute;left:2.6cqi;top:11cqi;max-width:46%;background:#000000c8;color:var(--ink);border-radius:3px;padding:1.3cqi 1.6cqi;font-size:1.9cqi;line-height:1.35;letter-spacing:.03em;z-index:3}#speech{position:absolute;transform:translate(-50%,-130%);background:var(--ink);color:var(--shade);border:3px solid var(--shade);border-radius:4px;padding:.8cqi 1.2cqi;font-family:var(--display);font-size:1.8cqi;letter-spacing:.04em;max-width:42%;text-align:center;line-height:1.3;z-index:3}#mute{position:fixed;top:14px;right:14px;z-index:8;background:#120a1ecc;color:var(--pink-soft);border:2px solid var(--pink-soft);border-radius:999px;padding:8px 14px;cursor:pointer;font-size:13px;box-shadow:none}#touch{display:none;position:fixed;left:0;right:0;bottom:0;z-index:6;justify-content:space-between;padding:12px 16px 18px;pointer-events:none}body.show-touch #touch{display:flex}#touch button{pointer-events:auto;touch-action:none;width:78px;height:78px;border:3px solid var(--shade);border-radius:50%;background:#ff4f9acc;color:var(--shade);font-family:var(--display);font-size:18px;box-shadow:0 4px #7a1a4a}#touch .pad{display:flex;gap:10px}#touch button:active{transform:translateY(4px);box-shadow:none}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-items:center;padding:18px;overflow:auto;background:#0a06188c}#overlay.hidden{display:none}.panel{width:min(540px,100%);max-height:calc(100vh - 36px);overflow:auto;background:var(--panel);border:2px solid #ffffff1f;border-radius:10px;box-shadow:0 20px 60px #0009,0 0 0 1px #000;padding:24px 22px 18px}.hidden{display:none!important}.eyebrow{margin:0 0 10px;color:var(--pink-soft);font-size:13px;letter-spacing:.22em}h1,h2,h3{margin:0 0 12px;line-height:1.2;font-weight:400}h2{font-family:var(--display);font-size:30px;color:var(--ink);letter-spacing:.02em}h3{font-size:14px;color:var(--pink);letter-spacing:.14em;font-weight:700}.lede,.fine,li{line-height:1.45}.lede{font-size:17px;margin:0 0 14px;white-space:pre-line}.fine{font-size:14px;color:#cdbfe0}.fine.warn{color:var(--gold)}#wallet-status:empty{display:none}.logo{position:relative;display:inline-grid;justify-items:center;font-family:var(--display);line-height:.82;padding:6px 30px;-webkit-user-select:none;user-select:none}.logo .vc{position:absolute;inset:-6% -4% auto;font-size:150px;line-height:1;letter-spacing:-.06em;text-align:center;background:var(--sunset);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 18px #ff4f9a66);z-index:0}.logo .word{position:relative;z-index:1;font-size:46px;color:#fff;text-transform:lowercase;-webkit-text-stroke:2px var(--shade);paint-order:stroke fill;text-shadow:3px 4px 0 var(--shade)}.logo.small .vc{font-size:92px}.logo.small .word{font-size:28px}.tagline{font-family:var(--script);font-size:34px;margin:2px 0 12px;background:var(--sunset);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(2px 2px 0 var(--shade))}#panel-menu{width:min(620px,100%);padding:0 0 18px;text-align:center;overflow-x:hidden}#panel-menu>:not(.collage):not(.logo){margin-left:24px;margin-right:24px}#panel-menu .logo{margin-top:-86px}.collage{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;grid-template-rows:92px 92px;gap:6px;padding:6px;background:#0b0918;border-radius:10px 10px 0 0}.collage canvas{width:100%;height:100%;object-fit:cover;border-radius:3px;box-shadow:inset 0 0 0 2px #000}.collage canvas:nth-child(1){grid-row:span 2}.collage canvas:nth-child(4){grid-area:1 / 3 / 3 / 4}.heroes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.hero{display:grid;justify-items:center;gap:4px;padding:10px 8px 8px;background:linear-gradient(180deg,#2a1a48,#1a1030);border:2px solid #ffffff1a;border-radius:8px;box-shadow:none}.hero canvas{width:72px;height:72px;background:radial-gradient(circle at 50% 70%,#ff4f9a55,transparent 70%)}.hero b{font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:.08em}.hero[aria-checked=true]{border-color:var(--pink);background:linear-gradient(180deg,#5a1e6e,#2a1450);box-shadow:0 0 0 2px #ff4f9a55,0 0 24px #ff4f9a55}.hero:active{transform:none}#panel-menu .quiet{margin-bottom:4px}#panel-menu .quiet button{background:transparent;border-color:transparent;box-shadow:none;color:#cdbfe0;font-size:13px;padding:8px 4px;letter-spacing:.1em}#panel-menu .quiet button:hover{color:var(--ink)}#panel-menu .quiet button:active{transform:none}#panel-menu #menu-best:empty{display:none}#panel-menu #menu-best{margin:0 24px 14px;color:var(--cash);font-family:var(--display);font-size:18px}#wallet-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 6px 6px 16px;border:2px solid #7dff9a55;border-radius:999px;font-size:14px;letter-spacing:.08em}#wallet-chip span{display:flex;align-items:center;gap:8px;color:var(--cash)}#wallet-chip i{width:8px;height:8px;border-radius:50%;background:var(--cash);box-shadow:0 0 6px var(--cash)}#wallet-chip button{padding:6px 12px;font-size:12px;background:transparent}.panel.popup{width:min(440px,100%);text-align:center;border-color:#ff4f9a66;box-shadow:0 20px 60px #0009,0 0 40px #ff4f9a33;animation:rise .25s ease-out both}.panel.popup .lede{font-size:16px;color:#e4d8f2}.panel.popup input{width:100%;text-align:center;font-size:20px}#panel-wallet .wallet-grid{margin-bottom:14px}#panel-wallet .wallet-grid button{font-family:var(--display);font-weight:400;font-size:17px;letter-spacing:.04em;padding:13px 8px;border-radius:10px}#wallet-status{min-height:0;margin:0 0 12px}button.link{display:block;width:100%;background:transparent;border:0;box-shadow:none;color:var(--pink-soft);font-size:15px;text-decoration:underline;text-underline-offset:4px;padding:8px}button.link small{display:block;margin-top:4px;color:#a898c0;font-size:12px;font-weight:600;letter-spacing:.02em;text-decoration:none}button.link.small{font-size:12px;color:#a898c0;text-decoration:none}button.link:active{transform:none}label.name{display:grid;gap:8px;font-size:13px;color:var(--pink-soft);margin-bottom:12px}input{background:#0b0918;color:var(--ink);border:2px solid #ffffff22;border-radius:999px;padding:12px 16px;font-size:18px;letter-spacing:.08em;outline:none}input:focus{border-color:var(--pink)}button{background:#2a1e48;color:var(--ink);border:2px solid #ffffff1a;border-radius:999px;padding:12px 14px;cursor:pointer;font-size:15px;font-weight:700;letter-spacing:.08em}button:hover{filter:brightness(1.15)}button:active{transform:translateY(2px)}button.go{width:100%;background:var(--pink-soft);color:#2a0a1e;border-color:transparent;font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:.06em;margin-bottom:10px;box-shadow:0 0 24px #f6b6d655}#panel-clear>.result-body>button:not(.go),#clear-menu{width:100%}.row-btns{display:flex;gap:8px;margin-bottom:10px}.row-btns button{flex:1}.wallet-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.wallet-grid button{font-size:13px;padding:10px 6px}.wallet-grid button.installed{box-shadow:inset 0 0 0 2px var(--cash)}ul{margin:0 0 14px;padding-left:18px;font-size:16px}li{margin:0 0 8px}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.rowline,.trophy,.empty{font-size:15px;line-height:1.4;margin:0 0 8px}.rowline{display:flex;justify-content:space-between;gap:8px}.rowline span:last-child{color:var(--cash)}.trophy{border:2px solid #ffffff1a;border-radius:8px;padding:8px 12px}.trophy.on{border-color:var(--pink);color:var(--pink-soft)}.trophy b{display:block;margin-bottom:2px;font-family:var(--display);font-weight:400;font-size:18px;letter-spacing:.04em}#overlay:has(.result:not(.hidden)){background:#06040e9e}.panel.result{width:min(560px,100%);background:transparent;border:0;box-shadow:none;text-align:center;overflow:visible}.mission-pass{padding:14px 0 12px;margin:0 -40px 18px;background:linear-gradient(90deg,transparent,#000c 18%,#000c 82%,transparent)}.mission-pass .big{margin:0;font-family:var(--display);font-size:clamp(44px,9vw,76px);line-height:1;color:var(--gold);letter-spacing:.02em;-webkit-text-stroke:2px var(--shade);paint-order:stroke fill;text-shadow:4px 4px 0 var(--shade);animation:slam .7s cubic-bezier(.2,1.5,.4,1) both}.mission-pass .respect{margin:6px 0 0;font-family:var(--display);font-size:22px;letter-spacing:.2em;color:var(--ink);animation:rise .5s .55s ease-out both}.mission-pass.busted .big{color:#e8344a}.result-body{background:var(--panel);border:2px solid #ffffff1f;border-radius:10px;padding:18px 20px 12px;animation:rise .5s .8s ease-out both}.result-body .lede{font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:.03em}@keyframes slam{0%{transform:scale(2.4);opacity:0;filter:blur(6px)}60%{opacity:1;filter:blur(0)}to{transform:scale(1);opacity:1}}@keyframes rise{0%{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}#loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#000;display:grid;place-items:center}#loading-art{width:100vw;height:100vh;object-fit:cover;animation:drift 6s ease-out both}@keyframes drift{0%{transform:scale(1.12)}to{transform:scale(1)}}.loading-logo{position:absolute;left:4vw;bottom:6vh}#loading-tip{position:absolute;left:50%;bottom:6vh;transform:translate(-50%);max-width:40vw;margin:0;padding:10px 14px;background:#000b;border-radius:4px;font-size:16px;text-align:center}.loading-spin{position:absolute;right:4vw;bottom:6vh;display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:20px;letter-spacing:.12em;text-shadow:2px 2px 0 #000}.loading-spin i{width:22px;height:22px;border:3px solid #ffffff33;border-top-color:var(--pink);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:720px){.split{grid-template-columns:1fr}.logo .vc{font-size:110px}.logo .word{font-size:34px}.collage{grid-template-rows:70px 70px}#panel-menu .logo{margin-top:-64px}#loading-tip{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-delay:0s!important}}
