:root{--bg:#111827;--panel:#1f2937;--panel-2:#374151;--line:#4b5563;--text:#e8ecf7;--muted:#7c88ad;--danger:#ff4d6d;--gold:#ffd76a;--blue:#3fa9ff}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;color:var(--text);overscroll-behavior:none;-webkit-user-select:none;user-select:none;scrollbar-width:none;-ms-overflow-style:none;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}html{background:var(--bg)}body:before{content:"";z-index:-1;background-color:#0000;background-image:linear-gradient(#000000e6,#000000e6),url(/icon-512.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:fixed;inset:0}.screen{flex-direction:column;flex:1;justify-content:center;display:flex}header{padding:4px 2px 8px}h1{text-align:center;margin:0;font-size:35px;font-weight:700;display:none}.sub{color:var(--muted);margin:2px 0 0;font-size:11.5px;line-height:1.4}.sub.small{text-align:center;font-size:11px}footer{flex-direction:column;align-items:center;gap:6px;margin-top:25px;margin-bottom:10px;display:flex}.footer-links{gap:8px;display:flex}.external-link a{color:#fff}.footer-version{color:var(--muted);letter-spacing:.3px;white-space:nowrap;font-size:11px}.logo{width:min(800px,100vw);height:auto;display:block;position:relative;left:50%;transform:translate(-50%);max-width:none!important}.home-actions{flex-direction:column;gap:10px;padding-top:16px;display:flex}.home-actions-secondary{gap:8px;width:100%;display:flex}.controls{gap:8px;margin-top:12px;display:flex}.screen-title{text-align:center;margin:10px 0 2px;font-size:25px;font-weight:800}.score-controls{padding-top:16px;display:flex}.settings{flex-direction:column;gap:10px;margin-top:14px;display:flex}.setting-row{background:var(--panel);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;padding:14px 16px;font-size:15px;font-weight:700;display:flex}.toggle{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:999px;justify-content:flex-start;width:48px;height:28px;padding:3px;transition:background .15s;display:flex}.toggle.on{background:var(--blue);border-color:var(--blue);justify-content:flex-end}.toggle-knob{background:#fff;border-radius:50%;width:20px;height:20px}.card{margin-top:15px}.name-input{background:var(--panel-2);border:1px solid var(--line);width:100%;color:var(--text);border-radius:10px;padding:12px 14px;font-family:inherit;font-size:15px;font-weight:600}.name-input::placeholder{color:var(--muted);font-weight:500}.btn{background:var(--panel-2);color:var(--text);text-align:center;cursor:pointer;border:1px solid #3d4a75;border-radius:12px;flex:1;padding:13px;font-family:inherit;font-size:13.5px;font-weight:700;text-decoration:none;display:block}.btn.primary{background:var(--blue);border:none}.ad-banner{justify-content:center;align-items:center;width:100%;min-height:90px;margin:12px 0;display:flex;overflow:hidden}.ad-banner .adsbygoogle{width:100%;display:block}.ad-banner-placeholder{border:1px dashed var(--line);color:var(--muted);letter-spacing:.5px;text-transform:uppercase;background:#ffffff05;border-radius:12px;font-size:11px}.hud{flex-wrap:wrap;justify-content:center;gap:7px;margin:8px 0 10px;display:flex}.chip{background:var(--panel);border:1px solid var(--line);border-radius:20px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:700;display:flex}.chip small{color:var(--muted);font-weight:600}.stage-wrap{aspect-ratio:1;background:var(--panel);border:1px solid var(--line);border-radius:18px;width:100%;position:relative;overflow:hidden;box-shadow:0 20px 40px -20px #000a}canvas{touch-action:none;width:100%;height:100%;display:block}.game-over{z-index:50;text-align:center;background:#080b13ee;flex-direction:column;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.game-over-content{width:100%;max-width:360px}.game-over h2{color:var(--danger);margin:0 0 6px;font-size:26px}.game-over p{color:var(--muted);margin:2px 0;font-size:14px}.game-over .big{color:var(--text);margin:12px 0 2px;font-size:38px;font-weight:800}.game-over .record{color:var(--gold);letter-spacing:.3px;margin:8px 0 0;font-size:14px;font-weight:800}.game-over-actions{gap:8px;width:100%;margin-top:22px;display:flex}.game-over-actions button{cursor:pointer;border:none;border-radius:12px;flex:1;padding:14px 10px;font-family:inherit;font-size:14px;font-weight:800}.btn-restart{background:var(--blue);color:var(--text)}.btn-leaderboard{background:var(--panel-2);border:1px solid var(--line);color:var(--text)}.score-list{flex-direction:column;gap:8px;margin-top:14px;display:flex}.score-row{background:var(--panel);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;padding:11px 14px;font-weight:700;display:flex}.score-row .rank{color:var(--muted);flex-shrink:0;width:26px;font-size:13px}.score-row .pname{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;overflow:hidden}.score-row .pscore{color:var(--gold);font-size:15px}.score-row.me{border-color:var(--blue);box-shadow:0 0 0 1px #3fa9ff55,0 0 18px -6px #3fa9ff88}.score-row.gold{background:linear-gradient(135deg,#6d5200,#b8901f);border-color:#ffd76a;box-shadow:0 6px 18px -8px #ffd76a99}.score-row.silver{background:linear-gradient(135deg,#4b535e,#8b95a1);border-color:#cfd6de;box-shadow:0 6px 18px -8px #cfd6de88}.score-row.bronze{background:linear-gradient(135deg,#5a3418,#a5673a);border-color:#d68a4e;box-shadow:0 6px 18px -8px #d68a4e88}.score-row.gold .rank,.score-row.silver .rank,.score-row.bronze .rank,.score-row.gold .pscore,.score-row.silver .pscore,.score-row.bronze .pscore{color:#fff}.score-status{color:var(--muted);text-align:center;margin-top:24px;font-size:13px}.score-status.small{margin-top:16px;font-size:10px}.app{flex-direction:column;max-width:560px;min-height:100dvh;margin:0 auto;padding:14px 14px 0 20px;display:flex}.legal-screen{justify-content:flex-start}.legal{width:100%;max-width:640px;color:var(--text);margin:14px auto 0;font-size:14px;line-height:1.6}.legal h3{margin:22px 0 6px;font-size:16px;font-weight:800}.legal p{color:#c7cede;margin:8px 0}.legal ul{color:#c7cede;margin:8px 0;padding-left:20px}.legal li{margin:4px 0}.legal a{color:var(--blue)}.legal strong{color:var(--text)}
