:root{--pink:#ff2bd6;--cyan:#19f3ff;--yellow:#ffe94a;--purple:#9b5cff;--bg:#05010f}*{box-sizing:border-box;margin:0}html,body{height:100%}body{color:#e9f9ff;background:linear-gradient(#19f3ff12 1px, transparent 1px) 0 0 / 48px 48px, linear-gradient(90deg, #ff2bd612 1px, transparent 1px) 0 0 / 48px 48px, radial-gradient(ellipse at 50% 100%, #2a0a4a, var(--bg) 70%);-webkit-user-select:none;user-select:none;touch-action:none;overscroll-behavior:none;place-items:center;font-family:Orbitron,Bahnschrift,Eurostile,Trebuchet MS,system-ui,sans-serif;display:grid;overflow:hidden}#stage{background:var(--bg);width:min(100vw,56.25vh);height:min(100vh,177.78vw);position:relative;overflow:hidden;box-shadow:0 0 0 2px #19f3ff66,0 0 70px #ff2bd659;container-type:size}@supports (height:100dvh){#stage{width:min(100vw,56.25dvh);height:min(100dvh,177.78vw)}}#c{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}#tools{z-index:3;gap:1.6cqw;display:flex;position:absolute;top:2cqw;right:2.5cqw}.ib{cursor:pointer;border:.4cqw solid var(--cyan);width:8.5cqw;height:8.5cqw;color:var(--cyan);background:#05010fb3;border-radius:2cqw;place-items:center;display:grid}.ib svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:60%;height:60%}.ib:hover,.ib:focus-visible{box-shadow:0 0 2cqw var(--cyan);outline:none}.ib .cut{display:none}.ib.off{color:#6d7a8a;border-color:#6d7a8a}.ib.off .cut{display:block}.ib.off .wave,[data-state=menu] #btn-pause{display:none}.overlay{z-index:2;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05010fcc;flex-direction:column;justify-content:center;align-items:center;gap:2.4cqw;padding:6cqw;display:flex;position:absolute;inset:0}.hidden{display:none!important}.brand{letter-spacing:1.2cqw;color:var(--cyan);text-shadow:0 0 2cqw var(--cyan);font-size:4cqw}h1{color:#fff;letter-spacing:.5cqw;text-shadow:0 0 2cqw var(--cyan), .6cqw 0 var(--pink), -.6cqw 0 var(--cyan);font-size:15cqw;font-style:italic;font-weight:900;line-height:.95;animation:4s infinite flick}h1 span{color:var(--pink);text-shadow:0 0 3cqw var(--pink), .6cqw 0 var(--cyan);display:block}h2{color:var(--cyan);text-shadow:0 0 3cqw var(--cyan);font-size:11cqw;font-style:italic;font-weight:900}h2.red{color:var(--pink);text-shadow:0 0 3cqw var(--pink)}@keyframes flick{0%,92%,96%,to{opacity:1}93%,95%{opacity:.55}}.btn{text-transform:uppercase;letter-spacing:.4cqw;cursor:pointer;color:var(--cyan);border:.5cqw solid var(--cyan);background:0 0;border-radius:2cqw;padding:2.4cqw 6cqw;font:700 4.2cqw/1 inherit;transition:transform .1s,box-shadow .15s}.btn:hover,.btn:focus-visible{box-shadow:0 0 2.5cqw var(--cyan);outline:none;transform:translateY(-.3cqw)}.btn[aria-pressed=true]{background:var(--cyan);color:var(--bg);box-shadow:0 0 2.5cqw var(--cyan)}.btn.big{color:#fff;border-color:var(--pink);box-shadow:0 0 3cqw var(--pink);background:linear-gradient(#ff2bd68c,#9b5cff66);padding:3cqw 12cqw;font-size:7cqw;animation:1.6s ease-in-out infinite pulse}.btn.big:hover,.btn.big:focus-visible{box-shadow:0 0 5cqw var(--pink)}@keyframes pulse{50%{box-shadow:0 0 5cqw var(--pink)}}.modes{gap:2cqw;margin-top:2cqw;display:flex}.help{gap:1.6cqw;font-family:system-ui,sans-serif;font-size:3.6cqw;font-weight:600;line-height:1.3;list-style:none;display:grid}kbd{min-width:6cqw;color:var(--cyan);border:.3cqw solid var(--cyan);background:#19f3ff14;border-radius:1.2cqw;margin:0 .5cqw;padding:.6cqw 1.4cqw;font:700 3.2cqw inherit;display:inline-block}[data-mode=keyboard] .help-touch,[data-mode=touch] .help-keyboard{display:none}.legend{flex-wrap:wrap;justify-content:center;gap:2cqw;font-size:3.2cqw;font-weight:700;display:flex}.legend span{border:.3cqw solid;border-radius:3cqw;padding:.6cqw 2cqw}.legend .c{color:var(--cyan)}.legend .y{color:var(--yellow)}.legend .p{color:var(--purple)}.legend.small{opacity:.8;font:600 3.2cqw system-ui,sans-serif}.hi{color:var(--yellow);font-size:4cqw}.hi b{text-shadow:0 0 2cqw var(--yellow)}.record{color:var(--yellow);text-shadow:0 0 2cqw var(--yellow);font-size:5cqw;font-weight:900;animation:.8s ease-in-out infinite alternate pulse2}@keyframes pulse2{to{transform:scale(1.12)}}.stats{gap:1.4cqw;width:80%;margin:1cqw 0 2cqw;display:grid}.stats div{border-bottom:.3cqw solid #19f3ff4d;justify-content:space-between;padding:1cqw 2cqw;font-size:4.4cqw;display:flex}.stats dt{color:var(--cyan);font-weight:600}.stats dd{font-weight:900}.stats div:first-child dd{color:var(--pink)}@media (prefers-reduced-motion:reduce){h1,.btn.big,.record{animation:none}}
