:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:#eef0eb;--panel:#fbfaf7;--ink:#1d2b24;--ink-soft:#56675c;--rule:#b9c1b8;--cell:#fff;--block:#cdd3ca;--active:#f4c95d;--active-soft:#fbeac0;--ok-bg:#c9e8d2;--ok-ink:#0f5132;--hint:#b86e00;--error:#b23a2e;--focus:#2f6f4e;--accent:#2f6f4e;--accent-ink:#fff;--radius:10px;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#131b17;--panel:#1c2721;--ink:#e8ede7;--ink-soft:#9fb0a4;--rule:#56695d;--cell:#2f3d35;--block:#0b100d;--active:#b08a2e;--active-soft:#4a4027;--ok-bg:#1e5637;--ok-ink:#c3efd3;--hint:#f0b35a;--error:#e0776a;--focus:#7fc79e;--accent:#7fc79e;--accent-ink:#0b100d}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);min-height:100vh;color:var(--ink);font:16px / 1.45 var(--font);margin:0}a{color:var(--accent)}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.top{justify-content:space-between;align-items:center;gap:12px;max-width:1100px;margin:0 auto;padding:10px 16px;display:flex}.brand{letter-spacing:-.02em;color:var(--ink);font-size:1.15rem;font-weight:800;text-decoration:none}.langs{gap:4px;display:flex}.langs a{color:var(--ink-soft);border-radius:999px;padding:4px 10px;font-size:.9rem;text-decoration:none}.langs a[aria-current=page]{background:var(--panel);color:var(--ink);font-weight:600}noscript p{max-width:32rem;margin:2rem auto;padding:0 16px}.consent{background:var(--panel);border-bottom:1px solid var(--rule);margin:0;padding:10px 16px;font-size:.9rem}.consent p{max-width:40rem;margin:0 auto 8px}.consent-buttons{flex-wrap:wrap;gap:8px;max-width:40rem;margin:0 auto;display:flex}.consent-buttons button{font:inherit;border-radius:var(--radius);border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;padding:8px 14px;font-weight:600}.consent-buttons button.primary{background:var(--accent);color:var(--accent-ink)}.legal{border-top:1px solid var(--rule);margin:24px 0 0;padding:12px 0 8px;font-size:.85rem}.legal nav{flex-wrap:wrap;gap:4px 16px;display:flex}.legal a{color:var(--ink-soft)}.subscribe{border-top:1px solid var(--rule);margin:16px 0 0;padding:14px 0 0}.subscribe h3{margin:0 0 4px;font-size:1rem}.subscribe-lede,.subscribe-consent{color:var(--ink-soft);margin:0 0 10px;font-size:.9rem}.subscribe-consent{margin:8px 0 0;font-size:.8rem}.subscribe-row{flex-wrap:wrap;gap:8px;display:flex}.subscribe-row input{min-width:0;font:inherit;border:1px solid var(--rule);background:var(--cell);color:var(--ink);border-radius:8px;flex:12rem;padding:10px 12px;font-size:1rem}.subscribe-row button{font:inherit;background:var(--accent);color:var(--accent-ink);cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:700}.subscribe-row button:disabled{opacity:.6}.subscribe-status{margin:8px 0 0;font-weight:600}.subscribe-status[data-state=invalid],.subscribe-status[data-state=error]{color:var(--error)}.subscribe .hp{opacity:0;width:1px;height:1px;position:absolute;left:-10000px}.game{max-width:1100px;margin:0 auto;padding-bottom:16px}.title{padding:0 16px}.title h1{margin:0;font-size:1.35rem;line-height:1.2}.title .date{color:var(--ink-soft);margin:2px 0 0}.banner{border-radius:var(--radius);background:var(--active-soft);margin:10px 16px 0;padding:10px 12px}.status{font-variant-numeric:tabular-nums;color:var(--ink-soft);align-items:center;gap:16px;padding:8px 16px;display:flex}.status .timer{color:var(--ink);font-weight:700}.menu{margin-left:auto;position:relative}.menu summary{cursor:pointer;border-radius:999px;padding:0 10px;font-size:1.3rem;line-height:1.4;list-style:none}.menu summary::-webkit-details-marker{display:none}.menu-body{z-index:5;background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);min-width:12rem;padding:6px;position:absolute;right:0}.menu-body button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;width:100%;padding:8px 10px}.board{gap:16px;padding:0 16px;display:grid}@media (min-width:900px){.board{grid-template-columns:minmax(0,560px) minmax(280px,1fr);align-items:start;gap:32px}}.play{gap:12px;display:grid}fieldset{border:0;min-inline-size:0;margin:0;padding:0}.grid{--size:min(100vw - 32px, 560px);--cell-size:calc(var(--size) / var(--cols));grid-template-columns:repeat(var(--cols), 1fr);width:var(--size);border-top:1px solid var(--rule);border-left:1px solid var(--rule);-webkit-user-select:none;user-select:none;touch-action:manipulation;display:grid}.block{background:var(--block);aspect-ratio:1;box-shadow:inset -1px -1px 0 var(--rule)}.cell{aspect-ratio:1;background:var(--cell);box-shadow:inset -1px -1px 0 var(--rule);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:0;padding:0;position:relative}.cell .ch{font-weight:700;font-size:calc(var(--cell-size) * .56);text-transform:uppercase;line-height:1}.cell .num{font-size:max(8px, calc(var(--cell-size) * .28));color:var(--ink-soft);line-height:1;position:absolute;top:1px;left:2px}.cell.hl{background:var(--active-soft)}.cell.cur{background:var(--active);color:#1d2b24}.cell.ok,.cell.rv{background:var(--ok-bg);color:var(--ok-ink)}.cell.hl.ok,.cell.hl.rv{background:color-mix(in srgb, var(--ok-bg) 70%, var(--active-soft))}.cell.rv:after{content:"";border-style:solid;border-width:0 7px 7px 0;border-color:transparent var(--hint) transparent transparent;position:absolute;top:0;right:0}.cell:focus-visible{outline-offset:-3px;z-index:1}.cell.bad{color:var(--error);animation:.32s shake}@keyframes shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.cell.bad{animation:none}}.cluebar{background:var(--panel);border-radius:var(--radius);padding:8px}.clue-row{align-items:center;gap:4px;display:flex}.clue{flex-wrap:wrap;flex:1;align-items:center;gap:0 6px;min-height:2.9em;margin:0;display:flex}.clue .ref{white-space:nowrap;font-weight:700}.nav{cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;width:40px;height:44px;font-size:1.6rem}.clue-actions{border-top:1px solid var(--rule);justify-content:center;align-items:center;min-height:40px;margin-top:6px;padding-top:6px;display:flex}.hint,.primary,.channel{border:1px solid var(--rule);cursor:pointer;color:var(--ink);background:0 0;border-radius:999px;padding:7px 14px;font-size:.95rem;text-decoration:none}.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:700}.source{font-size:.92rem;text-decoration:none}.source-label{font-weight:700}.source-pub{color:var(--ink-soft)}.clues h2{margin:0 0 6px;font-size:1rem}.clue-group+.clue-group{margin-top:16px}.clues ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.clues li{border-radius:8px;padding:2px 4px}.clues li.cur{background:var(--active-soft)}.clues li button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:4px;display:block}.clues li .num{min-width:1.6em;font-weight:700;display:inline-block}.clues li.solved button{color:var(--ink-soft);text-decoration:line-through;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule)}.clues li .source{padding:0 4px 6px 2em;display:block}.dock{z-index:4;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));background:var(--paper);border-top:1px solid var(--rule);gap:6px;margin-top:12px;display:grid;position:sticky;bottom:0}.dock .cluebar{padding:4px 6px}.dock .clue{min-height:2.6em;font-size:.95rem;line-height:1.3}.dock .clue-actions{min-height:32px;margin-top:4px;padding-top:4px}.dock .hint{padding:4px 12px}.keyboard{gap:6px;display:grid}.krow{justify-content:center;gap:4px;display:flex}.key{background:var(--panel);max-width:44px;height:46px;box-shadow:0 1px 0 var(--rule);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;border-radius:6px;flex:1 1 0;padding:0;font-size:1.05rem;font-weight:700}.key.wide{flex-grow:1.6;max-width:64px}.key:active{background:var(--active)}.win{background:var(--panel);border-radius:var(--radius);padding:16px}.win h2{margin:0 0 8px;font-size:1.4rem}.win h2:focus{outline:none}.stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 12px;display:grid}.stats div{text-align:center}.stats dt{color:var(--ink-soft);font-size:.85rem}.stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.2rem;font-weight:800}.solved-share{text-align:center;color:var(--ink-soft);margin:0 0 12px}.share h3{margin:0 0 8px;font-size:1rem}.share-buttons{flex-wrap:wrap;gap:8px;display:flex}.next{color:var(--ink-soft);font-variant-numeric:tabular-nums;margin:12px 0 0}.note{color:var(--ink-soft);margin:10px 0 0;font-size:.9rem}@media (pointer:coarse){html{scroll-padding-bottom:290px}}@media (pointer:coarse) and (max-height:800px){.top{padding:6px 16px}.title{align-items:baseline;gap:10px;display:flex}.title h1{font-size:1.1rem}.title .date{margin:0}.status{padding:4px 16px}.key{height:40px}}@media (max-width:340px){.krow{gap:2px}}.modal-backdrop{z-index:20;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--panel);width:100%;max-width:26rem;color:var(--ink);border-radius:var(--radius);padding:18px 18px 14px;box-shadow:0 8px 30px #0000004d}.modal h2{margin:0 0 8px;font-size:1.1rem}.modal p{margin:0 0 14px}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.modal-actions .cancel,.modal-actions .go{font:inherit;border-radius:var(--radius);border:1px solid var(--accent);cursor:pointer;padding:8px 16px;font-weight:600;text-decoration:none}.modal-actions .cancel{color:var(--accent);background:0 0}.modal-actions .go{background:var(--accent);color:var(--accent-ink)}
