:root{--brand-green:#25573f;--brand-red:#b23324;--brand-yellow:#f2c94c;--brand-manila:#f6eed9;--sheet-bg:#fffdf4;--sheet-ink:#2c231f;--sheet-ink-soft:#5d5140;--sheet-rule:#bfd3e2;--sheet-margin:#e29a93;--sheet-hl:#f9e27d;--bg:#f6eed9;--bg-2:#efe3c6;--card:#fffdf4;--ink:#2c231f;--ink-soft:#5d5140;--line:#d9ccab;--line-strong:#bca983;--accent:#b23324;--on-accent:#fff9ee;--accent-soft:#b2332414;--accent-glow:#b233242e;--green:#25573f;--green-ink:#1c4432;--yellow:#f2c94c;--shadow:0 10px 30px #3c2a1429;--font-display:"Bevan", Georgia, serif;--font-body:"Lora", Georgia, serif;--font-ui:"Lora", Georgia, serif;--font-mono:"Courier Prime", "Courier New", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1.0625rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.9375rem;--text-2xl:2.4375rem;--text-3xl:3.4375rem;--leading-tight:1.12;--leading-body:1.65;--radius:6px;--pad:clamp(1.25rem, 4vw, 3rem);--container:1180px;--container-narrow:680px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14201a;--bg-2:#0f1813;--card:#1d2b23;--ink:#efe6ce;--ink-soft:#c3b89c;--line:#34473c;--accent:#f08a72;--on-accent:#1c120d;--accent-soft:#f08a721f;--accent-glow:#f08a7247;--green:#8cc3a6;--green-ink:#a9d6bf;--yellow:#e9c25c;--shadow:0 12px 34px #00000073}}:root[data-theme=dark]{--bg:#14201a;--bg-2:#0f1813;--card:#1d2b23;--ink:#efe6ce;--ink-soft:#c3b89c;--line:#34473c;--accent:#f08a72;--on-accent:#1c120d;--accent-soft:#f08a721f;--accent-glow:#f08a7247;--green:#8cc3a6;--green-ink:#a9d6bf;--yellow:#e9c25c;--shadow:0 12px 34px #00000073}:root{--f0-bg:#25573f47;--f0-ink:#16341f;--f1-bg:#1e547a42;--f1-ink:#123449;--f2-bg:#b2332438;--f2-ink:#6e1c12;--f3-bg:#a67b244d;--f3-ink:#4a3406;--f4-bg:#6a3d8a3d;--f4-ink:#3b2050;--f5-bg:#176e6a42;--f5-ink:#0c3e3c;--f6-bg:#b24a1842;--f6-ink:#5c2408;--f7-bg:#8c285a3d;--f7-ink:#4b1230}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--f0-bg:#8cc3a638;--f0-ink:#a9d6bf;--f1-bg:#7ab0d638;--f1-ink:#a8cde6;--f2-bg:#e8735c38;--f2-ink:#f0a08d;--f3-bg:#e9c25c38;--f3-ink:#ebce84;--f4-bg:#ba96d638;--f4-ink:#cbb2e0;--f5-bg:#6ec7c238;--f5-ink:#96d8d4;--f6-bg:#e8965c38;--f6-ink:#efb68c;--f7-bg:#e082b238;--f7-ink:#eda9cc}}:root[data-theme=dark]{--f0-bg:#8cc3a638;--f0-ink:#a9d6bf;--f1-bg:#7ab0d638;--f1-ink:#a8cde6;--f2-bg:#e8735c38;--f2-ink:#f0a08d;--f3-bg:#e9c25c38;--f3-ink:#ebce84;--f4-bg:#ba96d638;--f4-ink:#cbb2e0;--f5-bg:#6ec7c238;--f5-ink:#96d8d4;--f6-bg:#e8965c38;--f6-ink:#efb68c;--f7-bg:#e082b238;--f7-ink:#eda9cc}.game-body{grid-template-columns:1fr 260px;align-items:start;gap:1.5rem;margin-bottom:3rem;display:grid}.game-sidebar{flex-direction:column;gap:1rem;display:flex}.grid-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);contain:layout style;justify-content:center;align-items:center;min-height:320px;padding:1.2rem;display:flex;position:relative}.grid-inner{z-index:1;position:relative}.cell{width:var(--cs,40px);height:var(--cs,40px);font-family:var(--font-mono);font-weight:600;font-size:clamp(.78rem, calc(var(--cs,40px) * .35), 1.8rem);text-transform:uppercase;background:var(--bg-2);cursor:pointer;color:var(--ink);-webkit-user-select:none;user-select:none;border-radius:5px;justify-content:center;align-items:center;transition:all .15s;display:flex;position:relative}.cell:hover{background:var(--accent-soft);z-index:2;transform:scale(1.08)}.cell:focus-visible{outline:2px solid var(--accent);outline-offset:-1px;z-index:2}.cell.selecting{background:var(--sheet-hl);color:#4a3406;box-shadow:0 0 10px var(--accent-glow);z-index:3;transform:scale(1.1)}.cell.found{cursor:default;font-weight:700}.cell.found-0{background:var(--f0-bg);color:var(--f0-ink)}.cell.found-1{background:var(--f1-bg);color:var(--f1-ink)}.cell.found-2{background:var(--f2-bg);color:var(--f2-ink)}.cell.found-3{background:var(--f3-bg);color:var(--f3-ink)}.cell.found-4{background:var(--f4-bg);color:var(--f4-ink)}.cell.found-5{background:var(--f5-bg);color:var(--f5-ink)}.cell.found-6{background:var(--f6-bg);color:var(--f6-ink)}.cell.found-7{background:var(--f7-bg);color:var(--f7-ink)}.cell.tap-anchor{background:var(--accent-soft);color:var(--accent);box-shadow:0 0 12px var(--accent-glow);z-index:3;animation:1.5s ease-in-out infinite tapPulse;transform:scale(1.12)}.cell.wrong{background:var(--accent-soft);color:var(--accent);animation:.35s shake}.cell.hint{box-shadow:0 0 14px var(--accent-glow);background:var(--sheet-hl);color:#4a3406;z-index:2;animation:1.8s ease-out hintPulse}@keyframes gridFadeIn{0%{opacity:0}to{opacity:1}}@keyframes gridFlash{0%{box-shadow:0 0 0 0 var(--accent-soft)}40%{box-shadow:0 0 8px 1px var(--accent-glow)}to{box-shadow:0 0 0 0 var(--accent-soft)}}.cell-enter{opacity:0}.cell-enter.cell-anim{opacity:1;animation:gridFadeIn .3s ease var(--d,0s) backwards, gridFlash .4s ease calc(var(--d,0s) + .15s) backwards}.cell-enter.cell-anim.wrong{animation:.35s shake}.cell-enter.cell-anim.found{animation:none}@keyframes tapPulse{0%,to{box-shadow:0 0 8px var(--accent-soft)}50%{box-shadow:0 0 16px var(--accent-glow)}}@keyframes hintPulse{0%{transform:scale(1.15)}30%{transform:scale(1.05)}to{opacity:.6;transform:scale(1)}}@keyframes foundPop{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}.word-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.word-panel-count{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.7rem}.word-list{grid-template-columns:1fr 1fr;gap:.35rem .8rem;margin:0;padding:0;list-style:none;display:grid}.word-list li{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink);transition:opacity .2s}.word-list li.done{opacity:.4;text-decoration:line-through}.game-win{border-radius:var(--radius);background:var(--f0-bg);border:1px solid var(--green);color:var(--f0-ink);font-family:var(--font-ui);font-weight:700;font-size:var(--text-sm);padding:.8rem 1rem}@media (width<=860px){.game-body{grid-template-columns:1fr}.word-list{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion:reduce){.cell-enter{opacity:1}.cell.tap-anchor{box-shadow:0 0 0 2px var(--accent);animation:none}.cell,.cell.wrong,.cell.hint{transition:none;animation:none!important}}
