@property --bg1{syntax:"<color>";inherits:true;initial-value:#8a4a4a}@property --bg2{syntax:"<color>";inherits:true;initial-value:#140a0e}:root{--accent:#ff8878;--fg:#fff;--line:#ffffff80;--head:Orbitron, "Segoe UI", system-ui, sans-serif;color:var(--fg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,system-ui,sans-serif}html,body{height:100%;margin:0;overflow:hidden}body{background:radial-gradient(130% 100% at 50% 0%, var(--bg1), var(--bg2) 75%) fixed;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:--bg1 1.2s,--bg2 1.2s}#c{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}button{font:600 14px/1 var(--head);letter-spacing:.14em;color:var(--fg);border:1px solid var(--line);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff0d;padding:14px 18px;transition:background .2s,border-color .2s,transform .1s}button:hover{background:#ffffff24;border-color:#fff}button:active{transform:scale(.97)}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.primary{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 22%, transparent)}button small{letter-spacing:.02em;opacity:.72;margin-top:6px;font:400 11px/1.4 Inter,system-ui,sans-serif;display:block}button small:empty{display:none}.overlay{box-sizing:border-box;text-align:center;background:#08040a73;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.overlay[hidden],#hud[hidden]{display:none}#menu{background:linear-gradient(#0000000d,#00000073)}h2{font:900 28px var(--head);letter-spacing:.2em;margin:0}.menu-buttons{flex-direction:column;gap:10px;width:min(340px,100%);display:flex}.row{gap:10px;display:flex}.row button{flex:1;padding-inline:8px;font-size:12px}#overText{font:500 12px/1.8 var(--head);letter-spacing:.12em;opacity:.8;max-width:520px;margin:0;font-size:14px}.logo{font:900 min(99px, (100vw - 32px) / 3.43)/1 var(--head);letter-spacing:.06em;color:#fff;text-shadow:0 4px 30px #00000073;margin:0 -.06em 0 0}.tag{font:500 12px var(--head);letter-spacing:.35em;text-transform:uppercase;opacity:.75;margin:-6px 0 8px}label{font:600 13px var(--head);letter-spacing:.12em;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;display:flex}label input[type=range]{max-width:190px;accent-color:var(--accent);flex:1}label.check{justify-content:flex-start}label.check input{width:18px;height:18px;accent-color:var(--accent)}.how{text-align:left;max-width:520px;margin:0;padding-left:20px;font-size:14px;line-height:1.6}.how li{margin-bottom:8px}.how b{color:var(--accent);font-weight:600}#hud{pointer-events:none;position:fixed;inset:0}#hud button{pointer-events:auto}.bar{top:max(14px, env(safe-area-inset-top));align-items:center;gap:14px;display:flex;position:absolute;left:16px;right:16px}.meta{text-align:center;flex:1;max-width:420px;margin:0 auto}#stageLbl{font:700 13px var(--head);letter-spacing:.24em;text-shadow:0 1px 8px #0006}#movesLbl{font:500 11px var(--head);letter-spacing:.16em;opacity:.75;margin-top:6px}#movesLbl.over-par{color:var(--accent);opacity:1}#beat{justify-content:center;gap:6px;margin-top:8px;display:flex}#beat[hidden]{display:none}#beat i{border:1px solid #fff9;border-radius:50%;width:7px;height:7px;transition:background .15s,transform .15s}#beat i:nth-child(3n){border-color:#f35}#beat i.on{background:#fff;transform:scale(1.35)}.stats{font:600 13px var(--head);letter-spacing:.06em;white-space:nowrap;justify-content:flex-end;align-items:center;gap:12px;min-width:52px;display:flex}#livesLbl{color:#ff5a70;letter-spacing:.15em}#starLbl{color:#ffd166}#keysLbl i{border:1.5px solid var(--k);width:10px;height:10px;margin:0 3px;display:inline-block;transform:rotate(45deg)}#keysLbl i.got{background:var(--k);box-shadow:0 0 10px var(--k)}.controls{bottom:max(18px, env(safe-area-inset-bottom));justify-content:space-between;align-items:center;display:flex;position:absolute;left:16px;right:16px}.icon{letter-spacing:0;border-radius:50%;flex:none;width:54px;height:54px;padding:0;font-size:22px}.mid{gap:10px;display:flex}.mid button{border-radius:27px;padding:14px 20px}.pulse{animation:.6s 3 pulse}@keyframes pulse{50%{background:var(--accent);color:#111;transform:scale(1.12)}}#toast{font:700 15px var(--head);letter-spacing:.24em;white-space:nowrap;opacity:0;pointer-events:none;text-shadow:0 2px 14px #0000008c;position:fixed;top:24%;left:50%;transform:translate(-50%)}#toast.on{animation:1.9s both toast}@keyframes toast{0%{opacity:0;transform:translate(-50%,10px)}12%,75%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}#flash{pointer-events:none;opacity:0;background:radial-gradient(#0000 35%,#ff1e3299);position:fixed;inset:0}#flash.on{animation:.55s ease-out flash}@keyframes flash{0%{opacity:1}to{opacity:0}}#tip{left:50%;bottom:calc(max(18px, env(safe-area-inset-bottom)) + 76px);box-sizing:border-box;text-align:center;white-space:pre-line;border:1px solid color-mix(in srgb, var(--accent) 60%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#0a060e8c;width:min(460px,100% - 32px);margin:0;padding:12px 16px;font-size:14px;line-height:1.5;position:absolute;transform:translate(-50%)}#tip.on{animation:7s both tip}#tip.stay{opacity:1}@keyframes tip{0%{opacity:0;transform:translate(-50%,10px)}6%,88%{opacity:1;transform:translate(-50%)}to{opacity:0}}#card{text-align:center;opacity:0;pointer-events:none;position:fixed;top:38%;left:50%;transform:translate(-50%,-50%)}#card.on{animation:1.6s both card}#cardStars{letter-spacing:.1em;color:#ffd166;text-shadow:0 0 24px #ffd16680;font-size:46px}#cardText{font:600 12px var(--head);letter-spacing:.2em;margin-top:6px}@keyframes card{0%{opacity:0;transform:translate(-50%,-40%)scale(.8)}15%,80%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0}}#movesLbl{white-space:nowrap}@media (width<=560px){.bar{flex-wrap:wrap;gap:10px}.meta{margin-right:54px}.stats{order:3;justify-content:center;gap:14px;width:100%;font-size:12px}}@media (prefers-reduced-motion:reduce){.pulse{animation:none}}
