:root{--bg:#141414;--panel:#1e1e1e;--text:#fdf6ec;--muted:#fdf6ec9e;--line:#fdf6ec1f;--gold:#c9971f;--gold-ink:#141414;--found:#c9971f52;--preview:#fdf6ec29;--radius-sm:6px;--pill:999px;--font:"Jost", system-ui, -apple-system, "Segoe UI", sans-serif}:root[data-theme=light]{--bg:#fdf6ec;--panel:#fff;--text:#141414;--muted:#1414149e;--line:#14141424;--gold:#a87c10;--gold-ink:#fff;--found:#c9971f4d;--preview:#1414141a}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-style:normal}body{min-height:100vh}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.app{max-width:560px;margin:0 auto;padding:14px 16px 48px}.top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-bottom:14px;display:flex}.brand{letter-spacing:-.2px;color:var(--gold);font-size:20px;font-weight:700}.brand span{color:var(--muted);margin-left:4px;font-size:13px;font-weight:500}.top-right{align-items:center;gap:6px;display:flex}.pill{font:500 12.5px var(--font);color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--pill);padding:5px 11px}.btn{cursor:pointer}.btn:hover{border-color:var(--gold)}.titlebar{padding:22px 0 14px}h1{margin:0 0 4px;font-size:30px;font-weight:700;line-height:1.1}.titlebar p{color:var(--muted);margin:0 0 12px;font-size:15px}select{font:500 14px var(--font);color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--pill);padding:7px 14px}.grid{--cell:min(calc((100vw - 32px) / var(--n)), 44px);grid-template-columns:repeat(var(--n), var(--cell));grid-auto-rows:var(--cell);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);touch-action:none;-webkit-user-select:none;user-select:none;width:max-content;max-width:100%;margin:8px auto 0;padding:6px;display:grid}.cell{font-weight:600;font-size:calc(var(--cell) * .46);border-radius:var(--radius-sm);cursor:pointer;place-items:center;display:grid}.cell.preview{background:var(--preview)}.cell.found{background:var(--found);color:var(--gold)}.words{flex-wrap:wrap;gap:8px;margin:20px 0 6px;padding:0;list-style:none;display:flex}.words li{border:1px solid var(--line);border-radius:var(--pill);color:var(--text);padding:5px 12px;font-size:13.5px;font-weight:500}.words li.done{color:var(--muted);background:var(--found);border-color:#0000;text-decoration:line-through}.count{color:var(--muted);margin:8px 0 0;font-size:13.5px}.overlay{background:#0009;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.card{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:14px;width:100%;max-width:420px;padding:26px 22px}.card h2{margin:0 0 12px;font-size:24px}blockquote{color:var(--text);margin:0 0 20px;font-size:17px;line-height:1.5}.primary{font:600 15px var(--font);background:var(--gold);color:var(--gold-ink);border-radius:var(--pill);cursor:pointer;border:0;padding:12px 26px}.note{color:var(--muted);margin:0 0 6px;font-size:14px}.row{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.ghost{font:500 13.5px var(--font);color:var(--text);border:1px solid var(--line);border-radius:var(--pill);cursor:pointer;background:0 0;padding:8px 16px;text-decoration:none}.ghost:hover{border-color:var(--gold)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.cell{transition:background .12s}}
