:root{--sky1: #7fd0ff;--sky2: #e8f7ff;--ink: #2b2550;--accent: #ff5d8f;--yellow: #ffe14f;--card: rgba(255, 255, 255, .92);font-family:ui-rounded,SF Pro Rounded,Nunito,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;background:linear-gradient(180deg,var(--sky1),var(--sky2))}#c{position:fixed;inset:0;width:100%;height:100%;display:block;outline:none;touch-action:none}[hidden]{display:none!important}button{font:inherit;cursor:pointer;border:0}.screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 30%,#ffffff59,#2b255059);text-align:center;z-index:20}.logo{margin:0;font-size:clamp(48px,13vw,96px);font-weight:900;letter-spacing:2px;color:var(--yellow);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink);transform:rotate(-3deg)}.tag{margin:0;font-weight:800;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.25)}h2{margin:0;font-size:28px;font-weight:900;color:#fff;text-shadow:0 3px 0 var(--ink)}.huge{font-size:64px;font-weight:900;color:var(--yellow);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}#qsecs,#rtext{color:#fff;font-weight:800;text-shadow:0 2px 0 rgba(0,0,0,.3);margin:0;max-width:520px}.card{background:var(--card);border-radius:22px;padding:18px;width:min(380px,100%);display:flex;flex-direction:column;gap:14px;box-shadow:0 8px #2b255059}.card label{display:flex;flex-direction:column;gap:6px;font-weight:800;text-align:left}.card input{font:inherit;font-size:20px;font-weight:800;padding:10px 14px;border-radius:14px;border:3px solid var(--ink);outline:none;color:var(--ink);background:#fff;user-select:text;-webkit-user-select:text}#colors{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}#colors button{aspect-ratio:1;border-radius:50%;border:3px solid transparent;box-shadow:inset 0 -4px #0000002e}#colors button.sel{border-color:var(--ink);transform:scale(1.12)}.big{font-size:26px;font-weight:900;padding:14px 28px;border-radius:18px;color:#fff;background:var(--accent);box-shadow:0 6px #b8325d;letter-spacing:1px;-webkit-text-stroke:1px rgba(0,0,0,.15)}.big:active{transform:translateY(4px);box-shadow:0 2px #b8325d}.ghost{font-weight:800;padding:10px 20px;border-radius:14px;background:#ffffffd9;color:var(--ink)}.row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.keys{color:#fff;font-size:13px;font-weight:700;opacity:.9;text-shadow:0 1px 0 rgba(0,0,0,.3);margin:0}.err{color:#c0264f;margin:0;font-weight:800}#hud{position:fixed;left:0;right:0;top:0;display:flex;align-items:flex-start;justify-content:space-between;padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));pointer-events:none;z-index:10}#hud>*{pointer-events:auto}.round-btn{width:42px;height:42px;border-radius:50%;background:#ffffffd9;color:var(--ink);font-weight:900;font-size:18px}#status{text-align:center;background:#2b2550bf;color:#fff;border-radius:16px;padding:6px 16px;font-weight:900}#roundName{font-size:13px;opacity:.85;letter-spacing:1px;text-transform:uppercase}#progress{font-size:20px}#timer{min-width:42px;height:42px;display:grid;place-items:center;border-radius:21px;padding:0 12px;background:#2b2550bf;color:#fff;font-weight:900;font-size:18px}#banner{position:fixed;left:50%;top:32%;transform:translate(-50%,-50%);z-index:15;pointer-events:none;font-size:clamp(36px,10vw,84px);font-weight:900;color:var(--yellow);white-space:nowrap;text-align:center;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:0 6px 0 var(--ink)}#banner small{display:block;font-size:.32em;-webkit-text-stroke:1.5px var(--ink);color:#fff;text-shadow:0 3px 0 var(--ink)}#banner.pop{animation:pop .45s cubic-bezier(.2,1.6,.4,1)}@keyframes pop{0%{transform:translate(-50%,-50%) scale(.3)}to{transform:translate(-50%,-50%) scale(1)}}#tags{position:fixed;inset:0;pointer-events:none;z-index:5}.nt{position:absolute;transform:translate(-50%,-100%);font-size:12px;font-weight:900;color:#fff;white-space:nowrap;padding:1px 7px;border-radius:8px;background:#2b25508c;will-change:transform}.nt.me{background:var(--accent)}#touch{position:fixed;inset:0;pointer-events:none;z-index:8}#stick{position:absolute;left:0;top:0;width:120px;height:120px;border-radius:50%;background:#ffffff2e;border:3px solid rgba(255,255,255,.5);opacity:0;transition:opacity .15s}#stick.on{opacity:1}#knob{position:absolute;left:35px;top:35px;width:50px;height:50px;border-radius:50%;background:#ffffffd9}.act{position:absolute;pointer-events:auto;border-radius:50%;font-weight:900;color:#fff;touch-action:none;background:#ff5d8fd9;box-shadow:0 5px #781e4699;-webkit-user-select:none}.act.on{transform:translateY(3px) scale(.95);box-shadow:0 2px #781e4699}#jump{width:92px;height:92px;right:max(22px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));font-size:18px}#dive{width:66px;height:66px;right:calc(max(22px,env(safe-area-inset-right)) + 104px);bottom:max(24px,env(safe-area-inset-bottom));font-size:15px;background:#4fb3ffd9;box-shadow:0 5px #14468299}#dbg{position:fixed;left:8px;bottom:8px;font:11px/1.3 ui-monospace,monospace;color:#fff;background:#00000073;padding:4px 6px;border-radius:6px;z-index:30;pointer-events:none;white-space:pre}.lbl{font-weight:800;text-align:left;display:flex;gap:6px;align-items:baseline}.lbl span{font-weight:700;opacity:.6;font-size:13px}#themes{display:flex;flex-wrap:wrap;gap:6px}#themes button{flex:1 1 auto;padding:8px 10px;border-radius:12px;font-weight:800;font-size:14px;color:#fff;background:linear-gradient(135deg,var(--a),var(--b));border:3px solid transparent;text-shadow:0 1px 2px rgba(0,0,0,.45)}#themes button.sel{border-color:var(--ink);transform:scale(1.05)}.ghost.small{padding:8px 14px;font-size:14px;background:#2b255014}.hud-left{display:flex;gap:8px}.screen{background:radial-gradient(circle at 50% 30%,#ffffff1f,#2b25504d)}@media (min-width: 900px) and (min-height: 560px){#menu{align-items:flex-start;padding-left:max(48px,6vw);background:linear-gradient(90deg,#2b255059,#2b255000 55%)}#menu .logo{font-size:72px}#menu .tag,#menu .keys{text-align:left}}
