:root{--bg-top: #16463c;--bg-bot: #0c2620;--felt: #1d6b54;--ink: #eaf3ee;--accent: #f2c14e;--btn: #1f6b57;--btn-hover: #2a8a6f}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:radial-gradient(120% 100% at 50% 0%,var(--bg-top),var(--bg-bot));position:fixed;inset:0;width:100%;overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none}#app{display:flex;flex-direction:column;height:100%;height:100dvh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;gap:12px}.brand h1{font-size:20px;letter-spacing:.5px;font-weight:700}.brand .tagline{font-size:11px;opacity:.6;letter-spacing:.3px}.stats{display:flex;gap:16px}.stat{text-align:center}.stat span{font-size:20px;font-weight:700;color:var(--accent)}.stat label{display:block;font-size:10px;text-transform:uppercase;opacity:.55;letter-spacing:.5px}.board-wrap{position:relative;flex:1;min-height:0}#board{display:block;width:100%;height:100%;touch-action:none}.toolbar{display:flex;gap:8px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));justify-content:center}.btn{flex:1;max-width:120px;padding:12px 8px;border:none;border-radius:12px;background:var(--btn);color:var(--ink);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,transform .05s}.btn:hover{background:var(--btn-hover)}.btn:active{transform:scale(.96)}.btn[aria-pressed=false]{opacity:.45}.btn.primary{background:var(--accent);color:#2a2110}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#061813b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:opacity .2s}.overlay.hidden{opacity:0;pointer-events:none}.overlay-card{background:#11362c;border:1px solid #2c6b58;border-radius:18px;padding:28px 32px;text-align:center;max-width:320px;box-shadow:0 20px 60px #0006}.overlay-card h2{font-size:26px;margin-bottom:8px;color:var(--accent)}.overlay-card p{font-size:14px;opacity:.8;margin-bottom:20px}
