:root{--ink: #eef6ff;--muted: #9fb2cc;--panel: rgba(8, 12, 26, .84);--line: rgba(120, 220, 255, .35);--acc: #6ff6ff;--hot: #ff4f8b;--gold: #ffe46a;--bg: #04060c;--font: "M PLUS Rounded 1c", system-ui, sans-serif;--disp: "Orbitron", "M PLUS Rounded 1c", sans-serif}body.light{--ink: #142036;--muted: #4c5c78;--panel: rgba(255, 255, 255, .88);--line: rgba(0, 120, 160, .35);--acc: #00909a;--hot: #d81b5a;--gold: #b07800;--bg: #e9edf6}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--font);user-select:none;-webkit-user-select:none;overscroll-behavior:none;touch-action:none}#view{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;cursor:crosshair}button{font-family:var(--font);font-weight:800;font-size:15px;color:var(--ink);background:var(--panel);border:1.5px solid var(--line);border-radius:12px;padding:10px 16px;cursor:pointer;touch-action:manipulation}button:hover{border-color:var(--acc)}button.primary{background:linear-gradient(180deg,#8ffcff,#2ab8d8);color:#021820;border-color:#e0ffff}.screen{position:fixed;inset:0;display:none;z-index:2}.screen.show{display:flex}#title,#howto,#result{flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px;overflow-y:auto}#title{background:radial-gradient(ellipse at 50% 40%,#04060c59,#04060ccc 80%)}body.light #title{background:radial-gradient(ellipse at 50% 40%,#e9edf659,#e9edf6d9 80%)}#howto{background:#04060ce0}body.light #howto{background:#e9edf6eb}#result{background:#04060c99}body.light #result{background:#e9edf699}.logo h1{margin:0;font-family:var(--disp);font-weight:900;font-size:clamp(52px,13vw,120px);letter-spacing:.12em;color:#fff;text-shadow:0 0 18px #6ff6ff,-6px 0 0 rgba(255,79,139,.55),-12px 0 0 rgba(160,110,255,.35),-18px 0 0 rgba(110,160,255,.2)}body.light .logo h1{color:#0b2a40;text-shadow:-6px 0 0 rgba(216,27,90,.4),-12px 0 0 rgba(120,80,220,.25),-18px 0 0 rgba(0,120,200,.15)}.logo p{margin:4px 0 0;text-align:center;font-weight:800;color:var(--acc);letter-spacing:.4em}.lead{max-width:520px;text-align:center;line-height:1.8;margin:0;color:var(--ink);text-shadow:0 1px 6px var(--bg)}.lead b{color:var(--hot)}.modes{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.mode{display:flex;flex-direction:column;gap:3px;align-items:center;min-width:150px;padding:12px 18px}.mode b{font-size:18px}.mode span{font-size:12px;opacity:.85}.mode em{font-style:normal;font-size:12px;color:var(--gold);min-height:1em}.mode.primary em{color:#6a4a00}.btns{display:flex;flex-direction:column;gap:10px}.btns.row{flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center}h2{margin:0;font-family:var(--disp);font-size:30px;letter-spacing:.08em}.panel{background:var(--panel);border:1.5px solid var(--line);border-radius:16px;padding:16px 20px;max-width:640px}.panel ul{margin:0;padding-left:18px;line-height:1.8;font-size:14px}.panel b{color:var(--acc)}.panel.center{text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center;min-width:min(360px,100%)}#resTitle{font-size:40px;color:var(--acc);text-shadow:0 0 14px rgba(111,246,255,.6)}#resText{margin:0;line-height:1.8;white-space:pre-line}.best{margin:0;color:var(--gold);font-weight:800;min-height:1em}.chk{display:flex;gap:6px;align-items:center;font-size:14px;font-weight:700}input[type=checkbox]{width:18px;height:18px;accent-color:var(--acc)}#play{pointer-events:none}#play>*{pointer-events:auto}#play #banner{pointer-events:none}.hud{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;gap:14px;padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 6px max(12px,env(safe-area-inset-left));font-family:var(--disp);font-weight:700;font-size:17px;flex-wrap:wrap}.hud button{padding:4px 12px;font-size:14px}#hRound{color:var(--acc)}#hTime{min-width:3.2em}#hOrb{color:var(--gold)}#hLives{color:var(--hot)}#hScore{margin-left:auto}.hp{display:inline-flex;gap:3px}.hp i{width:14px;height:10px;border-radius:3px;background:var(--hot);box-shadow:0 0 6px var(--hot)}.hp i.off{background:transparent;box-shadow:none;border:1.5px solid var(--line)}#hTime.low{color:var(--hot)}#banner{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;opacity:0;transition:opacity .2s}#banner.show{opacity:1}#bnTitle{font-family:var(--disp);font-weight:900;font-size:clamp(32px,8vw,64px);letter-spacing:.1em;color:#fff;text-shadow:0 0 16px var(--acc),0 0 2px #000}body.light #bnTitle{color:#0b2a40;text-shadow:0 0 10px rgba(255,255,255,.9)}#bnSub{font-weight:800;font-size:15px;background:var(--panel);padding:6px 14px;border-radius:20px;border:1px solid var(--line);white-space:pre-line}#pauseBox{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);display:none;flex-direction:column;gap:10px;align-items:center}#pauseBox.show{display:flex}.dash{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:max(150px,calc(env(safe-area-inset-bottom) + 150px));width:70px;height:70px;border-radius:50%;display:none;font-family:var(--disp);font-size:13px;background:#080c1a80;border-color:#ff4f8bb3;touch-action:none}.dash.on{background:#ff4f8b66}body.touch .dash{display:block}body.touch #view{cursor:default}@media(orientation:landscape)and (max-height:500px){.hud{font-size:14px;gap:10px;padding-top:4px}.dash{bottom:max(110px,calc(env(safe-area-inset-bottom) + 110px));width:60px;height:60px}}@media(max-width:520px){.hud{font-size:14px;gap:8px}.mode{min-width:0;flex:1 1 100%}}
