:root{--bg: #0a1620;--bg2: #0e1d2a;--panel: #13283a;--panel2: #1a3346;--ink: #e7eff5;--ink-dim: #8fa6b8;--teal: #5ad1ff;--teal-soft: #9ce6ff;--amber: #e3b25a;--good: #5fd6a0;--bad: #ff8a7a;--line: rgba(120,170,210,.16);--radius: 14px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(1100px 700px at 50% -10%,#163049 0%,var(--bg) 62%);color:var(--ink);font-family:Avenir Next,Segoe UI,system-ui,sans-serif;-webkit-user-select:none;user-select:none}#app{max-width:560px;margin:0 auto;padding:14px;min-height:100vh}.screen{animation:fade .25s ease}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.btn{display:flex;flex-direction:column;align-items:center;gap:2px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:12px 20px;font:inherit;cursor:pointer;transition:.12s}.btn:hover{border-color:var(--teal);background:var(--panel2)}.btn.primary{background:linear-gradient(180deg,#16384f,#10283a);border-color:var(--teal);color:var(--teal-soft);font-weight:700}.bt{font-size:1.05rem}.bs{font-size:.76rem;color:var(--ink-dim)}.home{text-align:center}.logo{font-size:3rem;font-weight:800;margin:30px 0 6px;color:var(--teal-soft)}.logo span{color:var(--amber)}.tagline{color:var(--ink-dim);line-height:1.55;max-width:30em;margin:0 auto 22px}.tagline em{color:var(--teal);font-style:normal;font-weight:600}.menu{display:flex;gap:12px;justify-content:center;max-width:420px;margin:0 auto 8px}.menu .btn{flex:1}.how{text-align:left;background:#ffffff05;border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px;max-width:460px;margin:22px auto 0}.how h3{margin:0 0 8px;color:var(--teal-soft)}.how ul{margin:0;padding-left:18px;color:var(--ink-dim);line-height:1.65}.how strong{color:var(--ink)}.mute-btn{position:fixed;bottom:12px;right:12px;background:var(--panel);border:1px solid var(--line);border-radius:999px;width:40px;height:40px;font-size:1.1rem;cursor:pointer;color:var(--ink)}.topbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}.mini{background:none;border:1px solid var(--line);color:var(--ink);border-radius:9px;width:38px;height:38px;font-size:1.05rem;cursor:pointer}.title{flex:1;display:flex;flex-direction:column;font-weight:700}.title .lname{font-size:.72rem;color:var(--ink-dim);font-weight:400}.stat{display:flex;flex-direction:column;align-items:center}.stat .k{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim)}.stat .v{font-size:1.15rem;font-weight:800;color:var(--teal-soft)}.rw-hud{display:inline-flex;align-items:center}.board-wrap{background:#0a1620;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}canvas.board{display:block;width:100%;touch-action:none}.dpad{display:grid;grid-template-columns:repeat(3,52px);grid-template-rows:repeat(3,52px);gap:6px;justify-content:center;margin:14px auto 0}.dbtn{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:11px;font-size:1.1rem;cursor:pointer}.dbtn:active{background:var(--panel2);border-color:var(--teal)}.dbtn.up{grid-area:1/2}.dbtn.left{grid-area:2/1}.dbtn.right{grid-area:2/3}.dbtn.down{grid-area:3/2}.hint{text-align:center;color:var(--ink-dim);font-size:.82rem;margin:10px 0 0}.over{text-align:center;padding-top:50px}.over h2{font-size:2.2rem;margin:0 0 8px}.over h2.win{color:var(--good)}.over h2.lose{color:var(--bad)}.vsub{color:var(--ink-dim);margin:0 0 8px}.over-actions{display:flex;flex-direction:column;gap:10px;max-width:320px;margin:22px auto 0}.over-actions .btn{flex-direction:row}@media(max-width:420px){.logo{font-size:2.4rem}.menu{flex-direction:column}}
