:root:root{color-scheme:light}@media(prefers-color-scheme:dark){:root:root{color-scheme:dark;--night-bg: #18251f;--night-panel: #23342c;--night-raised: #2e4338;--night-hover: #3b5546;--night-line: #607967;--night-ink: #f0efdf;--night-muted: #bdcaba;--night-accent: #e5c885;--ink: var(--night-ink);--paper: var(--night-panel);--sage: #acd1b5;--green: #acd1b5;--blue: #a7d3ee;color:var(--night-ink);background:var(--night-bg);accent-color:#a9c99f}html body{color:var(--night-ink);background:var(--night-bg)}html body :is(.site-header,body>header,footer,.how,.how-to,.little-lesson,#player-form){border-color:var(--night-line)}html body :is(footer,.eyebrow,.subtitle,.header-note,.edition,.category,.description,.section-description,.collection-note,.welcome-note,.handwritten,.ready-copy p,.ready-copy small,.feature-tags,.feature-copy small,.feature-copy>p:not(.eyebrow),.coming,.welcome>p:last-of-type,.more-ideas p,.intro>p:last-child,.puzzle-intro>div>p:last-child,.companion>p,.companion-panel>p,.how,.how-to p,.how p,.little-lesson,.board-heading h2 span,.board-title small,.board-header h2 span,.scores small,.score-strip span,.puzzle-meta span,.tray-tip,.tray-label,.board-footer>span,.under-game p,.under-game>span,.game-tag,.off-count,.player-stat small,.progress-count small,.board-label,.board-foot,.storage-status,#storage-status,#move-message,.start-controls,.start-card p:not(.eyebrow),.start-card small,.modal-card p:not(.eyebrow),.game-bottom,#save-status,.text-button,dialog p,dialog li,dialog label,.game-audio-intro,.game-audio-status,.game-audio-credit,.clock-readout>span,.clock-readout>small,.records-table caption,.records-table thead th,#records-storage){color:var(--night-muted)}html body :is(.welcome h1 em,.intro h1 em,.how h3,.how strong,summary,.board-label b,.clock-readout>strong,.game-audio-heading h2){color:var(--night-ink)}html body :is(.featured,.game-card,.ready-game,.more-ideas,.puzzle-shell,.blocks-shell,.sudoku-shell,.gammon-shell,.game-shell,.tray-column,.journal-card,.chapter-card,.start-card,.modal-card,.time-panel,.player-stat,.route-options,.game-topbar,.game-bottom,.touch-controls,.puzzle-toolbar,.scores>div,.example,.skip-link){background:var(--night-panel);border-color:var(--night-line);color:var(--night-ink)}html body :is(.solitaire-shell,.jigsaw-shell,.numbers-shell):is(.expanded-view,:fullscreen),html body :is(.gammon-shell,.game-shell,.blocks-shell,.sudoku-shell):is(.expanded-view,:fullscreen){background:var(--night-bg)}html body dialog:not(.block-drag-layer),html body .game-audio-dialog.game-audio-dialog{background:var(--night-panel);color:var(--night-ink);border-color:var(--night-line)}html body dialog:not(.block-drag-layer)::backdrop{background:#08130eb8}html body :is(.toolbar,.puzzle-toolbar,.board-actions,.board-footer,.board-controls,.tools,.piece-tools,.under-game,.touch-controls,.game-actions,.tray-heading,.tray-pages,.how,.companion,.companion-panel,.dialog-actions,.chess-tabs,.opening-actions,.puzzle-actions,.review-nav,.review-actions,.game-audio-dialog,.game-topbar,.actions,.bar-alert) button,html body #outcome button,html body :is(.secondary,.player-choice,.player-card,.player-button,.text-button,.launcher-return,.route-choice,.game-audio-toggle.game-audio-toggle),html body dialog:not(.block-drag-layer) button{background:var(--night-raised);color:var(--night-ink);border-color:var(--night-line)}html body :is(button,a):focus-visible,html body :is(input,select,summary):focus-visible{outline-color:var(--night-accent)}html body :is(input:not([type=range]),select),html body .game-audio-dialog select{background:var(--night-bg);border-color:var(--night-line);color:var(--night-ink)}html body input::placeholder{color:var(--night-muted);opacity:.85}html body button.primary,html body dialog button.primary,html body .play-link,html body :is(.toolbar,.puzzle-toolbar,.board-actions,.tools,.game-audio-dialog) button:is([aria-pressed=true],.current),html body .chess-tabs button[aria-selected=true]{background:#426c54;color:#fffbed;border-color:#8aaa8c}html body :is(.toolbar,.puzzle-toolbar,.board-actions,.tray-pages,.chess-tabs,.opening-actions,.puzzle-actions,.review-nav,.review-actions) button:hover:not(:disabled),html body dialog:not(.block-drag-layer) button:hover:not(:disabled){background:var(--night-hover)}html body :is(#name-error,#player-error){color:#ffb69b}html body :is(#stuck,.bar-alert,.entry-blocked,#journal-conclusion){background:#423c27;border-color:#aa935d;color:#f0dba3}html body .bar-alert.blocked{background:#4f3529;color:#ffd3b6;border-color:#b08b70}html body :is(#outcome,.blocks-shell #outcome){background:#23342cf5;border-color:var(--night-line);color:var(--night-ink)}html body #outcome p,html body #outcome #outcome-time{color:var(--night-muted)}html body .progress-track{background:#3c5143}html body .progress-track span{background:#aac792}html body .player-stat.active{background:#375240;border-color:#acc28c}html body .game-audio-dialog .game-audio-heading h2{color:var(--night-ink)}html body .start-card #save-status{color:var(--night-muted)}html body .variant,html body .piece-tools>span{color:var(--night-muted)}html body .variant select,html body .board-actions #autocomplete-btn{background:var(--night-raised);color:var(--night-ink);border-color:var(--night-line)}html body .board-actions #autocomplete-btn[aria-pressed=true]{background:#426c54}html body :is(.portrait img,.companion img,.companion>img,.title-group img,.board-title img,.puzzle-title img,.companion-panel .companion-portrait img){mix-blend-mode:normal;background:#f7f3e9;border-radius:14px}html body .companion-portrait{background:none}html body .feature-art{background-image:url(/assets/park-watercolor-v1.webp)}html body .feature-art:after{background:linear-gradient(transparent,#192a24df)}html body .art-caption{color:#fff8df}html body :is(.available,.coming){border-color:var(--night-line)}html body .sudoku-shell .cell{background:#22372e;color:#a7d3ee;border-color:#526c5c}html body .sudoku-shell .cell.given{color:#f2f0df}html body .sudoku-shell .cell.related{background:#2e473a}html body .sudoku-shell .cell.same{background:#3b5553}html body .sudoku-shell .cell.selected{background:#416578;box-shadow:inset 0 0 0 2px #aedbf5}html body .sudoku-shell .cell:is(.wrong,.conflict){color:#ffb197}html body .sudoku-shell .cell:nth-child(3n):not(:last-child){border-right-color:#9aad92}html body .sudoku-shell .board-row:nth-child(3n):not(:last-child){border-bottom-color:#9aad92}html body #records-btn{background:var(--night-raised);color:var(--night-ink);border-color:var(--night-line)}html body #notes-btn[aria-pressed=true]{background:#355568;color:#e3f5ff;border-color:#a7d3ee}html body .sudoku-shell .pencil-grid{color:#c0dbe3}html body #number-pad button{background:#334e3f;color:var(--night-ink);border-color:var(--night-line)}html body #number-pad small{color:var(--night-muted)}html body #number-pad.noting button{background:#304953;color:#d5efff}html body #number-pad button.digit-complete{background:#263b31;color:#b8c8b8}html body .numbers-shell .board-frame,html body .jigsaw-shell .board-frame{background:#3a4638;border-color:#81876b;box-shadow:inset 0 0 0 5px #4b5642,0 8px 20px #0003}html body #board-scroll{background:#1c2d24;border-color:#718269;scrollbar-color:#839d81 #263b2d}html body .numbers-shell .number-cell{background:#273d30;color:#f1ecda;border-color:#566e59}html body .numbers-shell .number-cell:nth-child(n){background:#273d30}html body .numbers-shell .number-cell.empty{background:#203226;color:transparent}html body .numbers-shell .number-cell.empty:after{color:#71866e}html body .numbers-shell .number-cell:hover:not(:disabled){background:#3a5743}html body .numbers-shell .number-cell.selected{background:#476850;color:#fff8df;box-shadow:inset 0 0 0 3px #ead191}html body .numbers-shell .number-cell.hint{background:#3a616b;color:#e5fcff;box-shadow:inset 0 0 0 3px #a9d5d7}html body .numbers-shell .number-cell.matched{background:#4d6c3e}html body .jigsaw-shell #board{background:radial-gradient(#7c906680 .7px,transparent .7px) 0 0/5px 5px,#25352a}html body .jigsaw-shell .piece-button{background:#314439;border-color:#78866b}html body .jigsaw-shell .piece-button.selected{background:#446550;outline-color:#cae3b9}html body .gallery label{color:var(--night-ink);border-color:var(--night-line)}html body .gallery label:has(input:checked){background:#3b5642;border-color:#b7d49f}html body .jigsaw-shell #loading{background:#25352aeb}html body .blocks-shell #board{background:#455442;border-color:#748268}html body .blocks-shell .cell[data-color="0"]{background:#283e31}html body .blocks-shell .piece{background:#2e4437;border-color:#6f846c}html body .blocks-shell .piece small{color:var(--night-muted)}html body .blocks-shell .piece[aria-pressed=true]{background:#415d47;outline-color:#bbd5a9}html body .puzzle-shell #board{background:#495e45;border-color:#788f68}html body .puzzle-shell .tile[data-level="0"]{background:#2e442f}html body .gammon-shell .dice-launch{background:linear-gradient(110deg,#2a4033,#3b4735);border-color:#849b73}html body .dice-launch small{color:var(--night-muted)}html body .gammon-shell #bear-off{background:#2e4434;border-color:#80916d;color:var(--night-ink)}html body .gammon-shell #bear-off small{color:var(--night-muted)}html body .gammon-shell #bear-off.target{background:#4b6140;border-color:#b6ce96}html body #hud{background:#23342cf0;color:var(--night-ink);border-color:#829478}html body :is(#chapter-label,#objective){color:var(--night-ink)}html body #toast{background:#2c4032;color:#f5f0dc;border-color:#ab9568}html body #toast:after{background:#2c4032;border-color:#ab9568}html body #bubble-title{color:#ebce95}html body :is(#journal-dialog,#map-dialog,#players-dialog,#restart-dialog){background:var(--night-panel);color:var(--night-ink);border-color:var(--night-line)}html body :is(#journal-intro,.journal-progress,#journal-count,.journal-card p,.journal-next p,.journal-next>span,.journal-footnote,#journal-conclusion p,#players-intro,.player-card small,.player-card-action,.player-local-note,#map-player,.map-route,.chapter-copy small,.chapter-description,.chapter-status,.chapter-copy b,.map-footnote){color:var(--night-muted)}html body .journal-card.undiscovered{background:#2d3e2f}html body .chapter-card:not(:disabled):hover{background:var(--night-hover)}}:root{font-family:Georgia,Times New Roman,serif;color:#294a44;background:#faf7ef;--ink:#294a44;--panel:#fffdf7;--line:#d5dfd3;--muted:#69786c;--accent:#316858;--tile:#fffcf2;--tile-ink:#294a44;--tile-bottom:#ded7c3}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:inherit;padding:10px 15px}button:hover:not(:disabled){border-color:#648d72;background:#e9f0e5}button:disabled{opacity:.46;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #bc7c24;outline-offset:4px}a{color:inherit}button.primary{color:#fff;background:#316858;border-color:#316858}button.primary:hover:not(:disabled){background:#244f42}.site-header{max-width:1300px;margin:auto;padding:25px 30px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:18px}.site-header>a:last-child{font:14px system-ui;text-decoration:none}.brand{font-size:27px;text-decoration:none;font-weight:700}.brand span{font-weight:400;color:#84947c}.words-shell{max-width:1260px;margin:0 auto;padding:35px 30px 20px}.game-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.eyebrow{font:10px/1.6 system-ui;letter-spacing:2px;color:var(--muted);margin:0 0 8px}.game-heading h1{font-size:clamp(29px,3.7vw,43px);letter-spacing:-1.5px;margin:0;font-weight:400}.toolbar{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.toolbar button{font:13px system-ui}.words-desk{display:grid;grid-template-columns:minmax(340px,1fr) minmax(300px,.92fr);gap:50px;align-items:start}.play-panel{max-width:560px;width:100%;margin:auto}.level-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.level-heading h2{font-size:29px;font-weight:400;margin:0}.count-pill{font:14px system-ui;background:#e9eddd;border-radius:30px;padding:10px 16px;white-space:nowrap;color:#385442}#level-subtitle{color:var(--muted);font-size:15px;margin:8px 0 18px}#targets{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:0 0 23px}#targets li{border:1px solid var(--line);border-radius:8px;font:600 14px system-ui;letter-spacing:3px;padding:9px 12px;min-height:38px}#targets li.found{background:#e5efdf;border-color:#abc49e;color:#355c3c;letter-spacing:1px}#targets li.hinted{border-color:#be8738;background:#fff0c9;color:#72541f}.letter-stage{position:relative;background:#e8ece1;border:1px solid #d4ddce;border-radius:24px;padding:17px;box-shadow:0 7px #d8dfd1}#board{position:relative;display:grid;grid-template-columns:repeat(var(--size),1fr);gap:10px;touch-action:none;user-select:none;-webkit-user-select:none}#board button{font:bold clamp(23px,3vw,34px) Georgia;aspect-ratio:1;padding:0;min-height:0;border:1px solid #e7e0d0;border-radius:13px;background:var(--tile);color:var(--tile-ink);box-shadow:0 4px 0 var(--tile-bottom);position:relative;z-index:2;transition:transform .12s,background .12s}#board button.selected{background:#376f5c;color:#fff;border-color:#376f5c;box-shadow:0 4px #224b3f;transform:translateY(-2px)}#board button.hint{outline:3px solid #d79735;outline-offset:-4px}#board button small{position:absolute;bottom:3px;right:5px;font:10px system-ui}#trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;overflow:visible}#trail polyline{fill:none;stroke:#efd290;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;opacity:.65}.word-preview{display:flex;align-items:center;gap:8px;margin:23px 0 0;padding:12px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.word-preview output{flex:1;font:600 16px system-ui;letter-spacing:1px;min-width:0;overflow-wrap:anywhere}.word-preview button{font:12px system-ui;padding:8px 11px}#message{min-height:42px;font:14px/1.5 system-ui;color:var(--muted);margin:14px 2px 12px}.board-actions{display:flex;gap:8px;flex-wrap:wrap}.board-actions button{font:13px system-ui}.bonus-box{font:13px/1.6 system-ui;margin-top:19px;color:var(--muted)}summary{cursor:pointer;padding:8px 0}.memory-panel{padding-top:4px}.memory-caption{display:flex;justify-content:space-between;align-items:center;margin:0 7px 14px}.memory-caption .eyebrow{margin:0}#reveal-count{font:12px system-ui;color:var(--muted)}.memory-art{position:relative;aspect-ratio:1;border-radius:70px 70px 25px 25px;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#fbe4ae,#bdceaa);box-shadow:0 15px 40px #50694e12;border:1px solid #dfdfc9}.memory-art img{width:100%;height:100%;object-fit:cover}#veil{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr)}#veil span{display:grid;place-items:center;background:#e4e8d6;border:1px solid #d8decb;color:#829379;font-size:23px;transition:opacity .6s,transform .6s}#veil span:nth-child(3n){background:#eae9d9}#veil span.revealed{opacity:0;transform:scale(.85)}.memory-note{text-align:center;padding:23px 4px 10px}.memory-note>span{font-size:27px;color:#bc9a4e}.memory-note h2{font-size:25px;font-weight:400;line-height:1.35;margin:8px 0 13px}.memory-note p,.how-mini p{font:14px/1.7 system-ui;color:var(--muted)}.how-mini{border-top:1px solid var(--line);padding:17px 15px 0;margin:5px 10px;font-size:15px}.how-mini p{margin-bottom:0}#outcome{margin-top:20px;padding:25px;border-radius:18px;background:#e8efdf;text-align:center;color:#2a4b3c}#outcome h2{font-weight:400;font-size:31px;margin:5px}#outcome p{line-height:1.6}.storage-status{font:12px/1.6 system-ui;color:var(--muted);margin-top:28px}footer{text-align:center;padding:25px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}dialog{max-width:min(620px,calc(100vw - 28px));max-height:85dvh;border:1px solid var(--line);border-radius:22px;padding:28px;background:var(--panel);color:inherit}dialog::backdrop{background:#203d3877}dialog h2{font-weight:400;font-size:29px}dialog p,dialog li{font:15px/1.7 system-ui}dialog li{margin:8px 0}dialog button{margin:4px}#level-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:16px 0}#level-list button{text-align:left;font:12px/1.4 system-ui;margin:0;padding:12px}#level-list button strong{display:block;font-size:20px;margin-bottom:5px}#player-list{display:flex;flex-wrap:wrap}#player-form{margin:20px 0;padding-top:18px;border-top:1px solid var(--line)}#player-form input{display:block;margin:9px 0;border:1px solid var(--line);border-radius:8px;padding:10px;max-width:100%;background:var(--panel);color:inherit}.skip-link{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;left:12px;top:12px;width:auto;height:auto;clip-path:none;z-index:10;padding:10px;background:var(--panel)}.words-shell:is(.expanded-view,:fullscreen){background:#faf7ef;max-width:none;width:100%;overflow:auto}.words-shell.expanded-view{position:fixed;inset:0;z-index:90}.game-expanded{overflow:hidden}[hidden]{display:none!important}@media(max-width:850px){.game-heading{align-items:flex-start;flex-direction:column;gap:16px}.toolbar{justify-content:flex-start}.words-desk{gap:28px;grid-template-columns:minmax(300px,1fr) minmax(230px,.8fr)}.words-shell{padding:25px 22px}.memory-note h2{font-size:22px}.letter-stage{padding:12px}#board{gap:8px}.word-preview{flex-wrap:wrap}.word-preview output{flex-basis:55%}}@media(max-width:650px){.site-header{padding:17px 18px}.words-shell{padding:22px 18px}.game-heading{margin-bottom:25px}.game-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.words-desk{display:flex;flex-direction:column;gap:24px}.play-panel{max-width:470px}.memory-panel{width:100%;max-width:470px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.memory-caption{grid-column:1/-1;margin-bottom:0}.memory-art{border-radius:35px 35px 15px 15px}.memory-note{padding:0}.memory-note h2{font-size:18px}.memory-note p{font-size:12px}.memory-note>span{font-size:20px}.how-mini{display:none}#board button{font-size:29px}.toolbar button{font-size:12px;padding:9px 10px}#targets{gap:7px}#targets li{font-size:12px;padding:8px}#level-list{grid-template-columns:repeat(2,1fr)}.word-preview{flex-wrap:nowrap}.word-preview output{flex-basis:auto;font-size:14px}.word-preview button{font-size:11px;padding:8px}.level-heading h2{font-size:26px}}@media(prefers-color-scheme:dark){:root{--panel:#23342c;--line:#607967;--muted:#bdcaba;--tile:#ede8d6;--tile-bottom:#b8b59f}.letter-stage{background:#2e4439;border-color:#526c57;box-shadow:0 7px #17291f}.words-shell:is(.expanded-view,:fullscreen){background:#18251f}.memory-art{border-color:#607967}#veil span{background:#3c5243;border-color:#4c6451;color:#b3c3a1}#veil span:nth-child(3n){background:#435444}.count-pill{background:#385242;color:#e1ebd9}button:hover:not(:disabled){background:#3b5546}#targets li.found{background:#324f3a;color:#d3e6c9}.memory-note>span{color:#e4c376}#targets li.hinted{background:#665527;color:#fff0c9}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.dictionary-credit{font:12px/1.5 system-ui;color:var(--muted)}.extra-rewards{margin:14px 0;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--panel);display:flex;flex-wrap:wrap;gap:10px;align-items:center}.extra-rewards p{margin:0;font:12px/1.5 system-ui;color:var(--muted);flex-basis:100%}.extra-rewards #reward-status{font-weight:600;color:inherit}.extra-rewards progress{flex:1;min-width:90px;width:100px;accent-color:#5e9163;height:16px}.extra-rewards button{font:13px system-ui}
