:root{--bg:#fafafa;--surface:#fff;--ink:#18181b;--muted:#71717a;--line:#e4e4e7;--accent:#4f46e5;--accent-ink:#fff;--radius:10px;--font:Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:var(--font);--h1-weight:650;--h2-style:uppercase;--tile-bg:var(--surface);--tile-ink:var(--ink);--tile-border:1px solid var(--line);--tile-radius:999px;--tile-pad:.2rem .75rem;--tile-font:var(--font);--tile-size:.92rem;--search-border:1px solid var(--line);--search-radius:12px;--search-pad:.4rem;--search-shadow:0 1px 2px #0000000a;--button-radius:8px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font);margin:0;font-size:15px;line-height:1.6}a{color:inherit}.site-header,.site-footer,.page{max-width:680px;margin:0 auto;padding:1.25rem 1.5rem}.site-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.brand{font-family:var(--font-display);color:var(--ink);font-size:1.05rem;font-weight:600;text-decoration:none}.site-header nav a{color:var(--muted);font-size:.9rem;text-decoration:none}.site-header nav a:hover{color:var(--accent)}.site-header select{font:inherit;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:.25rem .5rem;font-size:.85rem}.site-footer{color:var(--muted);flex-wrap:wrap;gap:.25rem 1.25rem;margin-top:2rem;font-size:.85rem;display:flex}.page{padding-top:2rem}h1{font-family:var(--font-display);font-size:2rem;font-weight:var(--h1-weight);letter-spacing:-.02em;margin:0 0 .4rem;line-height:1.2}p{max-width:65ch}.page>p{color:var(--muted);margin:0 0 1.5rem}input,button{font:inherit;color:var(--ink)}input{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:0;padding:.55rem .8rem}input::placeholder{color:var(--muted)}input:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{cursor:pointer;border:0}button.primary{background:var(--accent);color:var(--accent-ink);border-radius:var(--button-radius);padding:0 1.25rem;font-weight:600}button.primary:hover{filter:brightness(1.08)}.search{background:var(--surface);border:var(--search-border);border-radius:var(--search-radius);padding:var(--search-pad);box-shadow:var(--search-shadow);gap:.5rem;display:flex}.search input{font-size:1.1rem;font-family:var(--font-display);letter-spacing:.04em;background:0 0;border:0;flex:1}.search input:focus-visible{outline:none}.search:focus-within{border-color:var(--accent)}details{margin-top:.75rem}summary{color:var(--muted);cursor:pointer;width:max-content;font-size:.85rem}details p{grid-template-columns:repeat(3,1fr);gap:.5rem;max-width:none;margin:.6rem 0 0;display:grid}#results h2{text-transform:var(--h2-style);letter-spacing:.08em;color:var(--muted);margin:2rem 0 .6rem;font-size:.75rem;font-weight:600}.tile{padding:var(--tile-pad);background:var(--tile-bg);color:var(--tile-ink);border:var(--tile-border);border-radius:var(--tile-radius);font-family:var(--tile-font);font-size:var(--tile-size);margin:0 .4rem .45rem 0;text-decoration:none;display:inline-block}a.tile:hover{border-color:var(--accent);color:var(--accent)}@media (width<=520px){details p{grid-template-columns:1fr}}[data-theme=minimal]{--bg:#fafafa;--surface:#fff;--ink:#18181b;--muted:#71717a;--line:#e4e4e7;--accent:#4f46e5;--accent-ink:#fff}[data-theme=dark]{--bg:#0f1115;--surface:#171a21;--ink:#e6e8ee;--muted:#8b93a3;--line:#262b36;--accent:#7c9cff;--accent-ink:#0b1020;--h1-weight:600;--h2-style:none;--tile-radius:6px;--tile-pad:.25rem .7rem;--tile-font:ui-monospace, SFMono-Regular, Menlo, monospace;--search-radius:12px;--search-pad:.4rem;--search-border:1px solid var(--line);--search-shadow:none;--button-radius:8px}[data-theme=dark] a.tile:hover{background:var(--accent);color:var(--accent-ink)}[data-theme=paper]{--bg:#f6f3ec;--surface:#fffdf8;--ink:#2b2a26;--muted:#7a756a;--line:#e5e0d3;--accent:#4d7c5b;--accent-ink:#fff;--font-display:Georgia, "Times New Roman", serif;--h1-weight:500;--h2-style:none;--tile-bg:transparent;--tile-border:0;--tile-radius:0;--tile-pad:.1rem 0;--tile-font:Georgia, "Times New Roman", serif;--tile-size:1.1rem;--search-border:1px solid var(--line);--search-radius:12px;--search-pad:.4rem;--search-shadow:none;--button-radius:8px}[data-theme=paper] h1{font-size:2.4rem}[data-theme=paper] .search input{line-height:1.2}[data-theme=paper] #results h2{font-family:var(--font-display);letter-spacing:0;font-size:1rem;font-style:italic;font-weight:400}[data-theme=paper] .tile{border-bottom:1px solid var(--line);margin-right:.9rem}[data-theme=paper] a.tile:hover{border-bottom-color:var(--accent)}.help-btn{border:1px solid var(--line);background:var(--surface);width:1.9rem;height:1.9rem;color:var(--muted);font:inherit;cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;font-size:.95rem;font-weight:700;line-height:1;display:inline-flex}.help-btn:hover{color:var(--accent);border-color:var(--accent)}.help-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.help-dialog{text-align:left;border:1px solid var(--line);background:var(--surface);width:min(92vw,28rem);max-height:85vh;color:var(--ink);border-radius:14px;padding:0;overflow:auto;box-shadow:0 12px 40px #0000004d}.help-dialog::backdrop{background:#00000073}.help-dialog[open]{animation:.25s ease-out help-pop}.help-inner{padding:1.25rem 1.5rem 1.5rem}.help-dialog h2{text-transform:none;letter-spacing:0;margin:0 2.5rem .75rem 0;font-size:1.25rem;font-style:normal}.help-body{font-size:.95rem;line-height:1.55}.help-body p{max-width:none;color:var(--ink);margin:0 0 .75rem}.help-body ul,.help-body ol{gap:.3rem;margin:0 0 .75rem;padding-left:1.25rem;display:grid}.help-body>:last-child{margin-bottom:0}.help-close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;font-size:1.6rem;line-height:1;position:absolute;top:.6rem;right:.6rem}.help-close:hover{color:var(--ink);background:var(--bg)}.help-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes help-pop{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}html[data-paused=true] :not(.help-dialog):not(.help-dialog *),html[data-paused=true] :not(.help-dialog):not(.help-dialog *):before,html[data-paused=true] :not(.help-dialog):not(.help-dialog *):after{animation-play-state:paused!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.game-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;display:flex}.game-bar select,.game-select{font:inherit;border:1px solid var(--line);background:var(--surface);min-height:2.25rem;color:var(--ink);cursor:pointer;border-radius:8px;padding:.4rem .6rem;font-size:.9rem}.game-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.game-btn{font:inherit;border:1px solid var(--line);background:var(--surface);min-height:2.25rem;color:var(--ink);cursor:pointer;border-radius:8px;padding:.4rem .9rem;font-size:.9rem}.game-btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}.game-btn:hover:not(:disabled){filter:brightness(.97)}.game-btn.primary:hover:not(:disabled){filter:brightness(1.08)}.game-btn:disabled{opacity:.45;cursor:not-allowed}.game-btn:focus-visible,.game-select:focus-visible,.game-bar select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.game-stats{text-align:center;color:var(--muted);max-width:none;margin:0 0 .75rem;font-size:.9rem}.game-stats strong{color:var(--ink);font-variant-numeric:tabular-nums}.page>.game-hint,.game-hint{text-align:center;color:var(--muted);max-width:46ch;margin:.5rem auto;font-size:.85rem}.game-dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);text-align:center;border-radius:12px;max-width:min(92vw,24rem);padding:1.5rem 2rem}.game-dialog::backdrop{background:#0006}.game-dialog[open]{animation:.4s cubic-bezier(.34,1.56,.64,1) game-pop}.game-dialog h2{text-transform:none;margin:0 0 .5rem;font-size:1.4rem}.game-dialog p{color:var(--muted);margin:0 auto 1rem}.game-dialog .game-actions{margin-top:.5rem}@keyframes game-pop{0%{opacity:0;transform:scale(.85)translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.site-header,.page{max-width:640px}.site-header nav{align-items:center;gap:1rem;display:flex}
