:root{color-scheme:dark;--bg: #120c26;--card: rgba(255, 255, 255, .06);--text: #f4f1ff;--muted: #a9a3c2;--accent: #a95bf7;--accent-2: #4a8dff}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif}.app,.prose{max-width:480px;margin:0 auto;padding:24px 16px 48px}.brand{font-size:32px;font-weight:800;margin:0;letter-spacing:-.5px}.tagline,.muted{color:var(--muted);margin:4px 0 0}.daily-header{margin-top:24px}.daily-header h2{margin:0;font-size:22px}.stats{display:flex;gap:16px;margin:12px 0;font-variant-numeric:tabular-nums;color:var(--muted)}.stat.streak{color:#ffb347}.board-host{margin:8px 0 12px}.board{width:100%;max-width:420px;display:block;margin:0 auto;touch-action:none;user-select:none;-webkit-user-select:none}.cell{fill:#ffffff12;transition:fill .12s}.cell.visited{fill:#a95bf729}.board.complete .cell{fill:#4a8dff24}.wall{stroke:#fff;stroke-width:10;stroke-linecap:round}.checkpoint{fill:#1a1330;stroke:#ffffffe6;stroke-width:4;pointer-events:none}.checkpoint-number{fill:#fff;font-size:34px;font-weight:800;text-anchor:middle;dominant-baseline:central;pointer-events:none}.path{pointer-events:none}.controls{display:flex;flex-direction:column;gap:12px;align-items:center}.button{border:0;border-radius:14px;padding:14px 24px;font-size:16px;font-weight:700;color:#fff;background:linear-gradient(90deg,var(--accent),var(--accent-2));cursor:pointer}.button.secondary{background:var(--card);color:var(--text)}.card{background:var(--card);border-radius:16px;padding:20px;margin-top:12px;text-align:center}.card h2{margin:0 0 4px}.card .time{font-size:48px;font-weight:900;margin:4px 0;font-variant-numeric:tabular-nums}.card .note{white-space:pre-wrap}.card .button{margin-top:12px}.howto{margin-top:32px;color:var(--muted);font-size:15px}.howto h2{color:var(--text);font-size:18px}.foot{margin-top:32px;color:var(--muted);font-size:14px;text-align:center}.foot a{color:var(--text)}.store{display:inline-block;margin-bottom:8px;padding:12px 20px;border-radius:12px;background:#fff;color:#120c26!important;font-weight:700;text-decoration:none}.error{color:#ff8a8a}.prose h1{font-size:28px}.prose a{color:var(--accent-2)}.prose li{margin:6px 0}
