@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@500;600;650;700;750;800&display=swap";.letter-board{--letter-board-gap: 12px;position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(var(--letter-board-size),minmax(0,1fr));grid-template-rows:repeat(var(--letter-board-size),minmax(0,1fr));gap:var(--letter-board-gap);width:400px;max-width:100%;aspect-ratio:1;margin-inline:auto;padding:0;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.letter-board-tile{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;padding:0;overflow:visible;border:1px solid #aaa;border-radius:11px;background:#e1e1e1;box-shadow:0 2px #00000010;color:#202320;cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent;transition:background-color .13s,border-color .13s,box-shadow .13s}.letter-board-letter{position:relative;z-index:2;font-family:inherit;font-size:var(--letter-board-font);font-weight:750;line-height:1;pointer-events:none}.letter-board-tile:not(:disabled):active{transform:none}.letter-board-tile:focus-visible{outline:3px solid var(--forest, #28573e);outline-offset:4px}.letter-board-tile.letter-board-exhausted{background:#eee;border-color:#d4d4d4;box-shadow:none;color:#9a9e98}.letter-board-tile.letter-board-selected{background:#b5d37b;border-color:#809e4d;color:#243215;box-shadow:0 2px #6682312b}.letter-board-tile.letter-board-last{border-color:#5d7d31;box-shadow:inset 0 0 0 1px #5d7d31,0 2px #6682312b}.letter-board-connections{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.letter-board-connections polyline{fill:none;stroke:#8ba94e;stroke-width:13;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.letter-board-starts,.letter-board-uses{position:absolute;z-index:2;bottom:6px;color:#525b4b;font-size:11px;font-weight:600;line-height:1;pointer-events:none}.letter-board-starts{left:7px}.letter-board-uses{right:7px}.letter-board-selected .letter-board-starts,.letter-board-selected .letter-board-uses{color:#415628}.letter-board-exhausted:not(.letter-board-selected) .letter-board-starts,.letter-board-exhausted:not(.letter-board-selected) .letter-board-uses{color:#969d90}.letter-board-tile:disabled{cursor:default;opacity:1}.tile-discovery{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:#acd86b;box-shadow:inset 0 0 0 2px #507c24,0 0 16px #93c95480;pointer-events:none;animation:word-spark 1.8s ease-out both}.tile-discovery-bonus{background:#f1d58c;box-shadow:inset 0 0 0 2px #aa7b1b,0 0 16px #f1d58c80}.letter-board-connections .discovery-path{stroke:#649d29;animation:word-spark 1.8s ease-out both}@keyframes word-spark{0%{opacity:.7}15%,to{opacity:1}}.letter-board-tile.letter-board-discovered .letter-board-letter,:root[data-theme=dark] .letter-board-tile.letter-board-discovered .letter-board-starts,:root[data-theme=dark] .letter-board-tile.letter-board-discovered .letter-board-uses{color:#243215}.letter-board-size-6 .letter-board-tile,.letter-board-size-7 .letter-board-tile,.letter-board-size-8 .letter-board-tile,.letter-board-size-9 .letter-board-tile{border-radius:6px}.letter-board-size-6,.letter-board-size-7,.letter-board-size-8,.letter-board-size-9{--count-font: 8px}.letter-board-counts.letter-board-size-6 .letter-board-letter,.letter-board-counts.letter-board-size-7 .letter-board-letter,.letter-board-counts.letter-board-size-8 .letter-board-letter,.letter-board-counts.letter-board-size-9 .letter-board-letter{transform:translateY(-3px)}.letter-board-size-6 .letter-board-starts,.letter-board-size-6 .letter-board-uses,.letter-board-size-7 .letter-board-starts,.letter-board-size-7 .letter-board-uses,.letter-board-size-8 .letter-board-starts,.letter-board-size-8 .letter-board-uses,.letter-board-size-9 .letter-board-starts,.letter-board-size-9 .letter-board-uses{bottom:2px;font-size:var(--count-font);letter-spacing:-.6px}.letter-board-size-6 .letter-board-starts,.letter-board-size-7 .letter-board-starts,.letter-board-size-8 .letter-board-starts,.letter-board-size-9 .letter-board-starts{left:2px}.letter-board-size-6 .letter-board-uses,.letter-board-size-7 .letter-board-uses,.letter-board-size-8 .letter-board-uses,.letter-board-size-9 .letter-board-uses{right:2px}@media(hover:hover){.letter-board-tile:hover:not(:disabled):not(.letter-board-selected){border-color:#738569;background:#d7ddd1}}:root[data-theme=dark] .letter-board-tile{background:#434843;border-color:#697167;color:#f0f2eb;box-shadow:0 2px #00000035}:root[data-theme=dark] .letter-board-tile.letter-board-exhausted{background:#30372f;border-color:#464f43;color:#87917f}:root[data-theme=dark] .letter-board-tile.letter-board-selected{background:#b5d37b;border-color:#a7c769;color:#243215}:root[data-theme=dark] .letter-board-tile.letter-board-last{box-shadow:inset 0 0 0 1px #465f24,0 2px #00000035}:root[data-theme=dark] .letter-board-tile:not(.letter-board-selected) .letter-board-starts,:root[data-theme=dark] .letter-board-tile:not(.letter-board-selected) .letter-board-uses{color:#a8b29e}@media(hover:hover){:root[data-theme=dark] .letter-board-tile:hover:not(:disabled):not(.letter-board-selected){background:#4b5744;border-color:#90a47f}}@media(max-width:600px){.letter-board{--letter-board-gap: 10px}.letter-board-tile{border-radius:9px}.letter-board-starts,.letter-board-uses{bottom:5px;font-size:10px}.letter-board-starts{left:6px}.letter-board-uses{right:6px}}@media(max-width:370px){.letter-board{--letter-board-gap: 8px}.letter-board-size-5 .letter-board-letter{font-size:26px}.letter-board-size-5 .letter-board-starts,.letter-board-size-5 .letter-board-uses{bottom:4px;font-size:9px}}@media(prefers-reduced-motion:reduce){.letter-board-tile{transition:none}}.letter-board-starts,.letter-board-uses{font-size:14px;font-weight:750;font-variant-numeric:tabular-nums}.letter-board-size-6,.letter-board-size-7{--count-font: 12px}.letter-board-size-8,.letter-board-size-9{--count-font: 11px}.letter-board-counts.letter-board-size-6 .letter-board-letter,.letter-board-counts.letter-board-size-7 .letter-board-letter,.letter-board-counts.letter-board-size-8 .letter-board-letter,.letter-board-counts.letter-board-size-9 .letter-board-letter{transform:translateY(-5px)}@media(max-width:600px){.letter-board-starts,.letter-board-uses{font-size:13px}.letter-board-size-6,.letter-board-size-7{--count-font: 11px}.letter-board-size-8,.letter-board-size-9{--count-font: 10px}}@media(max-width:370px){.letter-board-size-5 .letter-board-starts,.letter-board-size-5 .letter-board-uses{font-size:12px}}:root[data-theme=dark] .letter-board-tile.letter-board-discovered .letter-board-starts,:root[data-theme=dark] .letter-board-tile.letter-board-discovered .letter-board-uses{color:#243215}.board-stage{display:grid;place-items:center;width:100%;max-width:400px;aspect-ratio:1;margin:0 auto}.letter-board{grid-template-rows:repeat(var(--letter-board-rows),minmax(0,1fr));width:calc(100% * var(--letter-board-size) / var(--letter-board-longest));aspect-ratio:var(--letter-board-size) / var(--letter-board-rows)}.board-rotating{animation:board-turn var(--board-turn-duration) cubic-bezier(.4,0,.2,1) both;pointer-events:none}.board-rotating .letter-board-letter,.board-rotating .letter-board-starts,.board-rotating .letter-board-uses{animation:letter-turn var(--board-turn-duration) cubic-bezier(.4,0,.2,1) both}@keyframes board-turn{0%{transform:rotate(-90deg)}to{transform:rotate(0)}}@keyframes letter-turn{0%{rotate:90deg}to{rotate:0deg}}.letter-board-tile.letter-board-spotlight{outline:3px solid #d7a34a;outline-offset:2px;box-shadow:0 0 20px #eac459b0}.letter-board-empty{min-width:0;min-height:0;pointer-events:none}.letter-board .letter-board-starts,.letter-board .letter-board-uses{font-size:var(--count-font);font-weight:800}.letter-board.letter-board-counts .letter-board-letter{position:absolute;top:max(1px,calc((100% - var(--count-font) - var(--letter-board-font) - 4px) / 2));transform:none}.letter-board .letter-board-starts{transform:scaleX(var(--count-scale, 1));transform-origin:left center}.letter-board .letter-board-uses{transform:scaleX(var(--count-scale, 1));transform-origin:right center}.letter-board-size-8 .letter-board-starts,.letter-board-size-9 .letter-board-starts{left:1px;bottom:1px}.letter-board-size-8 .letter-board-uses,.letter-board-size-9 .letter-board-uses{right:1px;bottom:1px}.letter-board{width:calc((100% - (var(--letter-board-longest) - 1) * var(--letter-board-gap)) * var(--letter-board-size) / var(--letter-board-longest) + (var(--letter-board-size) - 1) * var(--letter-board-gap));height:calc((100% - (var(--letter-board-longest) - 1) * var(--letter-board-gap)) * var(--letter-board-rows) / var(--letter-board-longest) + (var(--letter-board-rows) - 1) * var(--letter-board-gap));aspect-ratio:auto}.celebration,.celebration *{box-sizing:border-box}.celebration{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:40;width:248px;color:var(--ink, #203d31);pointer-events:none;animation:celebration-arrive .6s cubic-bezier(.22,1,.36,1) both}.celebration-speech{position:relative;z-index:2;width:224px;margin:0 auto 3px;padding:16px 34px 16px 20px;border:1px solid var(--border, #dce3d8);border-radius:20px;background:var(--surface, #fff);box-shadow:0 8px 32px #203d3114;pointer-events:auto;animation:celebration-speak .4s .35s cubic-bezier(.22,1,.36,1) both}.celebration-speech:after{position:absolute;bottom:-7px;left:96px;width:12px;height:12px;content:"";border-right:1px solid var(--border, #dce3d8);border-bottom:1px solid var(--border, #dce3d8);background:var(--surface, #fff);transform:rotate(45deg)}.celebration-speech strong{display:block;color:var(--ink, #203d31);font-size:22px;font-weight:800;letter-spacing:-.7px;line-height:1.25}.celebration-speech p{margin:5px 0 0;color:var(--muted, #6d7d70);font-size:12px;line-height:1.4}.celebration-dismiss{position:absolute;top:0;right:0;display:grid;width:44px;height:44px;padding:6px;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--muted, #6d7d70);cursor:pointer}.celebration-dismiss:hover{background:var(--accent, #dcedbb);color:var(--ink, #203d31)}.celebration-dismiss:focus-visible{outline:2px solid var(--forest, #24533c);outline-offset:2px}.celebration-dismiss svg{width:20px;height:20px}.celebration-stage{position:relative;width:220px;height:204px;margin:0 auto}.celebration-halo{position:absolute;top:24px;right:23px;bottom:0;left:23px;border-radius:50%;background:radial-gradient(ellipse,#e2edbded,#e2edbd85 47%,#e2edbd00 72%)}.celebration-shadow{position:absolute;bottom:9px;left:61px;width:90px;height:12px;border-radius:50%;background:#28433220;filter:blur(2px);animation:celebration-shadow-hop .9s .5s ease-in-out 3}.celebration-jumper{position:relative;transform-origin:50% 95%;animation:celebration-hop .9s .5s ease-in-out 3}.celebration-raccoon{display:block;width:220px;height:200px;overflow:visible;filter:drop-shadow(0 3px 1px #203d3108)}.celebration-confetti{position:absolute;top:0;right:0;bottom:0;left:0}.celebration-piece{position:absolute;width:6px;height:11px;border-radius:2px;background:#839d59;animation:celebration-confetti 2.1s .55s ease-out both}.celebration-piece-1{left:15px;top:44px;--drift: -14px;--spin: 95deg}.celebration-piece-2{left:41px;top:12px;--drift: -19px;--spin: -130deg;background:#d9ac71}.celebration-piece-3{left:8px;top:111px;--drift: -10px;--spin: -90deg;border-radius:50%;height:6px}.celebration-piece-4{right:8px;top:30px;--drift: 15px;--spin: 150deg;background:#d9ac71}.celebration-piece-5{right:37px;top:2px;--drift: 12px;--spin: -80deg;border-radius:50%;height:6px}.celebration-piece-6{right:1px;top:96px;--drift: 20px;--spin: 120deg;background:#aec57c}.celebration-piece-7{left:63px;top:-2px;--drift: -21px;--spin: 145deg;width:4px;height:8px;background:#aec57c}.celebration-piece-8{right:62px;top:-5px;--drift: 22px;--spin: -150deg;width:4px;height:8px;background:#d9ac71}@keyframes celebration-arrive{0%{opacity:0;transform:translateY(80px)}to{opacity:1;transform:translateY(0)}}@keyframes celebration-speak{0%{opacity:0;transform:translateY(8px) scale(.93)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes celebration-hop{0%,70%,to{transform:translateY(0) scale(1)}12%{transform:translateY(3px) scale(1.04,.96)}35%{transform:translateY(-22px) rotate(-3deg) scale(.98,1.02)}52%{transform:translateY(-12px) rotate(2deg)}65%{transform:translateY(2px) scale(1.04,.96)}}@keyframes celebration-shadow-hop{0%,70%,to{opacity:1;transform:scaleX(1)}35%{opacity:.45;transform:scaleX(.7)}}@keyframes celebration-confetti{0%{opacity:0;transform:translateY(18px) rotate(0)}15%{opacity:1}65%{opacity:1}to{opacity:0;transform:translate(var(--drift),-38px) rotate(var(--spin))}}@media(max-width:600px){.celebration{right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));width:208px}.celebration-speech{width:204px;padding:13px 32px 13px 17px}.celebration-speech strong{font-size:20px}.celebration-stage{width:190px;height:174px}.celebration-raccoon{width:190px;height:173px}.celebration-shadow{left:50px;width:80px;bottom:6px}}@media(prefers-reduced-motion:reduce){.celebration,.celebration-speech,.celebration-jumper,.celebration-shadow{animation:none}.celebration-confetti{display:none}}.raccoon-viewport{z-index:40;display:flex;align-items:flex-end;justify-content:flex-end;padding:0 max(14px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom))}.raccoon-visit{position:relative;width:490px;max-width:100%;display:flex;flex-direction:row-reverse;align-items:center;gap:16px;pointer-events:none;animation:companion-rise .42s cubic-bezier(.2,1,.3,1) both}.raccoon-portrait{flex:0 0 140px;width:140px;height:127px;filter:drop-shadow(0 8px 9px #0002)}.raccoon-portrait .celebration-raccoon{width:100%;height:100%}.raccoon-comment{position:relative;flex:1;min-width:0;padding:17px 36px 18px 20px;background:var(--surface);color:var(--ink);border:2px solid var(--ink);border-radius:22px;box-shadow:4px 5px #00000012;overflow-wrap:anywhere}.raccoon-comment:after{content:"";position:absolute;top:calc(50% - 10px);right:-11px;width:19px;height:19px;background:var(--surface);border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(-45deg)}.raccoon-eyebrow{display:block;margin-bottom:7px;font-size:10px;color:var(--muted)}.raccoon-comment strong{display:block;font-size:18px;line-height:1.25;font-weight:700}.raccoon-comment p{margin-top:7px;font-size:13px;color:var(--muted);line-height:1.55}.raccoon-dismiss{position:absolute;top:2px;right:2px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--muted);pointer-events:auto}.raccoon-dismiss:hover{background:var(--soft)}@keyframes companion-rise{0%{opacity:0;transform:translateY(90px) rotate(5deg)}to{opacity:1;transform:none}}@media(max-width:760px){.raccoon-visit{width:430px;gap:14px}.raccoon-portrait{flex-basis:90px;width:90px;height:90px}.raccoon-comment{padding:13px 33px 14px 14px}.raccoon-comment strong{font-size:16px}.raccoon-comment p{font-size:12px}}@media(max-width:370px){.raccoon-viewport{padding-inline:10px}.raccoon-portrait{flex-basis:74px;width:74px;height:78px}.raccoon-comment{padding-left:12px}.raccoon-comment strong{font-size:15px}}@media(prefers-reduced-motion:reduce){.raccoon-visit{animation:none}}.heist-viewport{z-index:70}.heist-backdrop{width:100%;height:100%;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));background:#141810bd;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);place-items:center;pointer-events:auto}.heist-card{position:relative;width:min(430px,100%);min-width:0;max-height:100%;overflow-y:auto;overflow-x:hidden;padding:27px 24px 20px;border:3px solid #efc360;border-radius:22px;background:#fff7e8;color:#322719;text-align:center;box-shadow:0 18px 90px #0008;animation:heist-arrival .5s cubic-bezier(.2,1,.3,1) both}.heist-eyebrow{font-size:10px;font-weight:750;letter-spacing:1.6px;text-transform:uppercase}.heist-card h2{margin:12px 0 0;font:900 clamp(23px,7vw,33px)/1.05 Manrope,sans-serif;letter-spacing:-1.4px}.heist-card h2 em{color:#b6292d;font-style:normal}.heist-stage{position:relative;height:218px;margin:0 -24px 8px;overflow:hidden}.heist-burst{position:absolute;top:4px;right:0;bottom:4px;left:0;background:repeating-conic-gradient(from 0deg,#eeca7233 0deg 15deg,transparent 15deg 30deg);-webkit-mask-image:radial-gradient(ellipse,#000 15%,transparent 70%);mask-image:radial-gradient(ellipse,#000 15%,transparent 70%)}.heist-bandit{position:absolute;bottom:12px;left:calc(50% - 110px);width:220px;height:185px;animation:raccoon-getaway 6s ease-in-out both}.heist-bandit .celebration-raccoon{width:205px;height:186px}.heist-sack{position:absolute;right:-11px;bottom:0;width:84px;height:87px;padding-top:23px;border-radius:40% 40% 45% 45%;background:#a27742;border:3px solid #73522c;transform:rotate(-13deg);color:#ffeac0;font:900 15px/1.2 Manrope,sans-serif}.heist-sack:before{content:"";position:absolute;left:19px;right:19px;top:-10px;height:16px;border-radius:6px;background:#a27742;border-bottom:4px solid #523e23}.heist-sack span{display:block;font-size:23px}.heist-loot-word{position:absolute;z-index:2;top:22px;left:50%;max-width:75%;overflow-wrap:anywhere;padding:8px 13px;background:#d4edaa;border:2px solid #739544;border-radius:8px;box-shadow:0 5px #73954444;font-size:20px;font-weight:900;letter-spacing:2px;animation:word-snatch 6s ease-in-out both}.heist-stamp{position:absolute;top:33px;right:22px;padding:5px 8px;border:3px solid #b6292d;color:#b6292d;font-size:22px;font-weight:900;transform:rotate(11deg);animation:theft-stamp 6s both}.heist-dust{position:absolute;bottom:43px;left:15px;right:15px;color:#917958;font-size:12px;font-weight:750;letter-spacing:1px;animation:getaway-dust 6s both}.heist-quote{font-size:17px;line-height:1.4;font-weight:650}#heist-explanation{margin:12px 0 18px;font-size:13px;line-height:1.65;color:#67553e}.heist-card button{display:block;width:100%;min-height:48px;padding:12px;border-radius:9px;background:#b6292d;color:#fff;font-size:14px;font-weight:750}.heist-card button:hover{background:#972027}.heist-small{margin-top:12px;font-size:10px;line-height:1.4;color:#806f57}.heist-timer{position:absolute;bottom:0;left:0;width:100%;height:4px;background:#b6292d;transform-origin:left;animation:heist-timeout 10s linear forwards}@keyframes heist-arrival{0%{opacity:0;transform:scale(.7) rotate(-7deg)}70%{transform:scale(1.025) rotate(1deg)}to{opacity:1;transform:none}}@keyframes raccoon-getaway{0%{transform:translate(-340px) rotate(-14deg)}20%,38%{transform:none}45%{transform:translateY(-13px) rotate(7deg)}50%,58%{transform:rotate(-5deg)}67%{transform:translate(65px) translateY(-10px) rotate(12deg)}85%,to{transform:translate(440px) rotate(18deg)}}@keyframes word-snatch{0%,23%{opacity:1;transform:translate(-50%) rotate(-5deg)}43%{opacity:1;transform:translate(65px,104px) scale(.62) rotate(15deg)}53%,to{opacity:0;transform:translate(65px,120px) scale(.15) rotate(30deg)}}@keyframes theft-stamp{0%,44%{opacity:0;transform:scale(2.5) rotate(11deg)}50%,to{opacity:1;transform:scale(1) rotate(11deg)}}@keyframes getaway-dust{0%,78%{opacity:0}92%,to{opacity:1}}@keyframes heist-timeout{to{transform:scaleX(0)}}@media(max-width:370px),(max-height:650px){.heist-card{padding:18px 16px 16px}.heist-stage{height:188px}.heist-quote{font-size:15px}#heist-explanation{margin:9px 0 12px;font-size:12px}}@media(prefers-reduced-motion:reduce){.heist-card,.heist-bandit,.heist-loot-word,.heist-stamp,.heist-dust,.heist-timer{animation:none}.heist-loot-word{transform:translate(-50%)}.heist-stamp{top:80px;right:8px;font-size:17px}.heist-dust{display:none}}.settings-content{padding-top:8px}.settings-section{padding:20px 0;border-bottom:1px solid var(--border)}.settings-section h3,.setting-label{font-size:14px;font-weight:650}.settings-section p,.advanced-settings>p{font-size:12px;line-height:1.65;color:var(--muted);margin-top:7px}.setting-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;align-items:center}.setting-label output{font-size:12px;color:var(--forest);font-variant-numeric:tabular-nums}input[type=range]{accent-color:var(--forest);height:32px;width:100%;cursor:pointer}.range-ends{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.companion-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.companion-choice{display:flex;align-items:center;flex-direction:column;padding:6px 3px 12px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}.companion-choice svg{width:100%;height:78px}.companion-choice strong{font-size:13px}.companion-choice small{color:var(--muted);font-size:10px;margin-top:4px}.companion-choice.chosen,.theme-choice.chosen{outline:2px solid var(--forest);outline-offset:1px;background:var(--accent)}.personality-note{min-height:40px}.setting-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px 0;cursor:pointer;min-height:44px}.setting-toggle span{display:flex;flex-direction:column;gap:6px}.setting-toggle strong{font-size:13px;font-weight:600}.setting-toggle small{font-size:11px;line-height:1.6;color:var(--muted)}.setting-toggle input{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:42px;height:25px;border-radius:20px;background:var(--border);border:1px solid var(--muted);position:relative;cursor:pointer}.setting-toggle input:after{content:"";width:17px;height:17px;background:var(--surface);border-radius:50%;position:absolute;left:3px;top:3px;transition:transform .2s;box-shadow:0 1px 3px #0004}.setting-toggle input:checked{background:var(--forest);border-color:var(--forest)}.setting-toggle input:checked:after{transform:translate(17px)}.settings-section select{width:100%;min-height:44px;padding:10px 12px;font:inherit;font-size:13px;background:var(--soft);color:var(--ink);border:1px solid var(--border);border-radius:8px}.theme-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.theme-choice{display:grid;grid-template-columns:24px 1fr;text-align:left;padding:14px 12px;gap:6px 8px;border:1px solid var(--border);border-radius:10px}.theme-choice>span{grid-row:span 2;font-size:24px}.theme-choice strong{font-size:13px}.theme-choice small{font-size:10px;line-height:1.5;color:var(--muted)}.theme-preview-woodland{border-style:dashed;border-radius:3px 12px}.theme-preview-cosmic{background-image:radial-gradient(circle at 90% 18%,#a894e83b 1px,transparent 2px);background-size:12px 19px}.theme-preview-storybook{border:3px double var(--border);font-family:Georgia,serif}.advanced-settings{padding:20px 0 10px}.advanced-settings summary{cursor:pointer;min-height:44px;font-size:14px;font-weight:650}.advanced-settings summary span{font-weight:400;font-size:11px;margin-left:12px;color:var(--muted)}.settings-saved{margin:10px 0;color:var(--muted);font-size:11px;text-align:center}.grid-size-control{flex:1;max-width:540px;min-width:0}.grid-size-heading{display:flex;align-items:center;gap:14px}.grid-size-heading strong{font-size:18px;font-variant-numeric:tabular-nums}.grid-size-heading>span:last-child{color:var(--muted);font-size:10px;margin-left:auto}.grid-selects{display:flex;gap:24px;padding:7px 0}.grid-selects label{display:flex;gap:10px;align-items:center;min-width:0;flex:1;font-size:11px}.grid-selects input{min-width:50px}.grid-selects output{min-width:10px;font-weight:650;font-variant-numeric:tabular-nums}.grid-size-control>p{font-size:10px;color:var(--muted);line-height:1.6}.streak-strip{display:flex;align-items:center;justify-content:center;gap:20px;font-size:11px;color:var(--muted);margin:12px 0 -8px}.streak-strip span{display:flex;align-items:center;gap:5px}.streak-strip .streak-active{color:var(--forest);font-weight:750}.bonus-hunt-toggle{display:flex;justify-content:center;gap:7px;align-items:center;min-height:44px;font-size:11px;color:var(--muted)}.bonus-hunt-toggle input{accent-color:var(--forest)}.special-event{display:flex;align-items:flex-start;gap:5px;background:var(--accent);border:1px solid var(--border);border-radius:10px;padding:12px 6px 12px 14px}.special-event strong{font-size:13px}.special-event p,.clear-skies-status{font-size:11px;color:var(--muted);line-height:1.6;margin-top:5px}.special-event .icon-button{flex-shrink:0}.clear-skies-status{text-align:center}.event-scramble,.event-heist{background:var(--red-soft)}@media(max-width:760px){.grid-size-control{flex-basis:100%;max-width:none}.grid-selects{gap:18px}.grid-size-heading{gap:9px}.grid-size-control .control-label{display:block}.header-inner .brand{font-size:23px}.brand-symbol{font-size:30px}.header-right{gap:0}.header-right .icon-button,.header-left .icon-button{min-width:37px}.header-inner{padding-inline:8px}}@media(max-width:370px){.header-inner .brand{font-size:20px}.header-inner .brand-symbol{font-size:27px}.header-right .icon-button{min-width:32px}.grid-selects{gap:10px}.grid-selects label,.companion-choices{gap:5px}.companion-choice svg{height:63px}}.event-setting{border-bottom:1px solid var(--border);padding-bottom:18px;margin-bottom:18px}.event-setting .setting-toggle{margin-bottom:12px}.event-setting .setting-label{font-size:11px;margin-bottom:0}input[type=range]:disabled{opacity:.4;cursor:default}.grid-size-control{max-width:760px}.grid-selects{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:24px;align-items:start}.grid-selects label{display:grid;grid-template-columns:1fr;gap:4px 8px}.grid-selects label>span{grid-column:1 / -1}.grid-selects input{min-width:0;height:38px}.grid-selects output{align-self:center}.grid-selects select{grid-column:1 / -1;min-width:0;width:100%;min-height:44px;padding:7px 10px;border:1px solid var(--border);border-radius:7px;background:var(--soft);color:var(--ink);font:inherit;font-size:12px}select:focus-visible{outline:3px solid var(--forest);outline-offset:3px}@media(max-width:760px){.grid-selects{gap:14px}.grid-selects label{gap:3px 5px;font-size:10px}.grid-selects select{padding:7px 5px;font-size:11px}}@media(max-width:370px){.grid-selects{gap:9px}}:root[data-scene=woodland]{--surface:#fbf7e9;--ink:#293f31;--muted:#67725d;--border:#d3d9bb;--soft:#f0eedc;--red:#8a4e36;--red-soft:#f4e6d8;--forest:#3f6338;--accent:#e1e8c9;--green:#6f8d4c}:root[data-scene=woodland] body{background-image:repeating-linear-gradient(0deg,transparent,transparent 31px,#73894f0a 32px)}:root[data-scene=woodland] .site-header{background:#3d583c;border-bottom:4px solid #b19460}:root[data-scene=woodland] .brand,:root[data-scene=woodland] .word-group-heading h3,:root[data-scene=woodland] .dialog-heading h2{font-family:Georgia,serif;letter-spacing:-.7px}:root[data-scene=woodland] .play-toolbar{border-bottom:2px dashed var(--border)}:root[data-scene=woodland] .word-list-panel{border-left:2px solid #b1946055;padding-left:18px}:root[data-scene=woodland] .board-stage{position:relative;border-radius:22px 9px 24px;background:repeating-linear-gradient(25deg,#d4be9433 0,#d4be9433 2px,transparent 2px,transparent 9px);outline:1px dashed #b1946088;outline-offset:7px}:root[data-scene=woodland] .letter-board-tile{background:repeating-linear-gradient(6deg,#a7794210 0,#a7794210 2px,transparent 2px,transparent 13px),#e8d7b4;border:1px solid #a98d5f;border-radius:6px 10px 5px 8px;box-shadow:0 3px #9d83534d;color:#3d4830}:root[data-scene=woodland] .letter-board-exhausted{background:#edeadd;border-color:#d8d8c3;color:#909680;box-shadow:none}:root[data-scene=woodland] .dialog{border:1px solid #b19460;border-radius:6px 20px}:root[data-scene=woodland] .raccoon-comment{border-color:#5f724c;border-radius:17px 5px 19px 8px}:root[data-scene=cosmic]{color-scheme:dark;--surface:#171d35;--ink:#edf2ff;--muted:#acb8d3;--border:#3b4569;--soft:#212a49;--red:#d6acfa;--red-soft:#342548;--forest:#94e5d7;--accent:#243f49;--green:#a29af5}:root[data-scene=cosmic] body{background-color:#11162a;background-image:radial-gradient(circle at 21% 37%,#c4d3f488 1px,transparent 1.5px),radial-gradient(circle at 70% 10%,#c4d3f44d 1px,transparent 2px),radial-gradient(ellipse at 75% 15%,#47376a44,transparent 65%);background-size:123px 147px,197px 211px,100% 100%;background-attachment:fixed}:root[data-scene=cosmic] .site-header{background:#20243e;border-bottom:1px solid #7275b5;box-shadow:0 4px 32px #a59cee15}:root[data-scene=cosmic] .brand{letter-spacing:-.5px}:root[data-scene=cosmic] .word-list-heading h2,:root[data-scene=cosmic] .grid-size-heading,:root[data-scene=cosmic] .progress-labels,:root[data-scene=cosmic] .raccoon-eyebrow{font-family:ui-monospace,monospace}:root[data-scene=cosmic] .board-stage{background:linear-gradient(#5f7bad0c 1px,transparent 1px),linear-gradient(90deg,#5f7bad0c 1px,transparent 1px);background-size:20px 20px;outline:1px solid #7b88b755;outline-offset:8px;border-radius:3px}:root[data-scene=cosmic] .letter-board-tile{background:linear-gradient(145deg,#323e64,#222c4c);color:#e1eafb;border:1px solid #6a81b9;border-radius:3px;box-shadow:inset 0 0 10px #8b94d914,0 2px 8px #070d2499}:root[data-scene=cosmic] .letter-board-exhausted{background:#1c243c;border-color:#343e5b;color:#75809e;box-shadow:none}:root[data-scene=cosmic] .letter-board-starts,:root[data-scene=cosmic] .letter-board-uses{color:#bdc9ef}:root[data-scene=cosmic] .letter-board-connections polyline{stroke:#87dece}:root[data-scene=cosmic] .new-puzzle-button,:root[data-scene=cosmic] .primary-button{border-radius:3px;color:#171d35}:root[data-scene=cosmic] .dialog{border:1px solid #7b85b5;border-radius:5px;box-shadow:0 15px 90px #0008,0 0 30px #7870c922}:root[data-scene=cosmic] .raccoon-comment{border-color:#949dd0;border-radius:10px 22px 3px;box-shadow:0 0 24px #8985df22}:root[data-scene=cosmic] .feedback-bonus{background:#3c334b;color:#f0ccfd}:root[data-scene=storybook]{--surface:#fff7e5;--ink:#453647;--muted:#7a6671;--border:#d9c4b3;--soft:#f5e9d2;--red:#83516f;--red-soft:#f6e3e5;--forest:#695085;--accent:#e9ddf2;--green:#9772a8}:root[data-scene=storybook] body{background-image:radial-gradient(ellipse at center,transparent 60%,#b5976c25);background-attachment:fixed}:root[data-scene=storybook] .site-header{background:#654364;border-bottom:4px double #e2c689}:root[data-scene=storybook] .brand,:root[data-scene=storybook] h2,:root[data-scene=storybook] h3,:root[data-scene=storybook] .raccoon-comment strong{font-family:Georgia,serif}:root[data-scene=storybook] .play-toolbar{border-bottom:3px double var(--border)}:root[data-scene=storybook] .word-list-panel{border-left:4px double var(--border);padding-left:20px}:root[data-scene=storybook] .board-stage{outline:3px double #bca47b;outline-offset:9px;border-radius:14px;background:radial-gradient(ellipse,#c6aad014,transparent)}:root[data-scene=storybook] .letter-board-tile{background:linear-gradient(125deg,#fff8e9,#ebdaba);border:1px solid #a58a6f;box-shadow:inset 0 0 0 3px #fff5dc,0 3px #8a6d5233;border-radius:14px 5px;color:#54415b}:root[data-scene=storybook] .letter-board-letter{font-family:Georgia,serif}:root[data-scene=storybook] .letter-board-exhausted{background:#f1e8d5;border-color:#d9cdb7;color:#9c9186;box-shadow:none}:root[data-scene=storybook] .dialog{border:4px double #bca47b;border-radius:20px 5px}:root[data-scene=storybook] .raccoon-comment{border:3px double #83516f;border-radius:22px 8px 25px}:root[data-scene=woodland][data-theme=dark]{--surface:#242e24;--ink:#ece9d5;--muted:#b5bba0;--border:#4a5841;--soft:#303c2d;--red:#dfad8e;--red-soft:#423c2c;--forest:#c3d49a;--accent:#3b4c2d;--green:#a3b985}:root[data-scene=storybook][data-theme=dark]{--surface:#302632;--ink:#f5e9d8;--muted:#c6b4bf;--border:#605061;--soft:#3e3242;--red:#dfabce;--red-soft:#493442;--forest:#d6b1f1;--accent:#4b385b;--green:#bea0d2}:root[data-scene]:not([data-scene=default]) .letter-board-tile.letter-board-selected{background:var(--accent);color:var(--ink);border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest)}:root[data-scene]:not([data-scene=default]) .letter-board-tile.letter-board-selected .letter-board-starts,:root[data-scene]:not([data-scene=default]) .letter-board-tile.letter-board-selected .letter-board-uses{color:var(--ink)}:root[data-scene]:not([data-scene=default]) .letter-board-tile.letter-board-discovered .letter-board-letter{color:#243215}@media(hover:hover){:root[data-scene]:not([data-scene=default]) .letter-board-tile:hover:not(:disabled):not(.letter-board-selected){background:var(--accent);color:var(--ink);border-color:var(--forest)}}@media(max-width:760px){:root[data-scene=woodland] .word-list-panel.words-open,:root[data-scene=storybook] .word-list-panel.words-open{padding:20px 24px 35px;border-left:0}}:root{font-family:DM Sans,Arial,sans-serif;color:var(--ink);background:var(--surface);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--surface:#fff;--ink:#252525;--muted:#737373;--border:#e5e5e5;--soft:#f7f7f7;--red:#b6292d;--red-soft:#fcf0ef;--forest:#355326;--accent:#dceac8;--green:#779e4d;--shadow:0 8px 30px #0000000d}:root[data-theme=dark]{color-scheme:dark;--surface:#202122;--ink:#ededeb;--muted:#a7a9a5;--border:#414342;--soft:#2c2e2e;--red:#e4898b;--red-soft:#3b2729;--forest:#bcdb98;--accent:#3c4b30;--green:#b5cd91}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:0;background:transparent;color:inherit;cursor:pointer}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.45;cursor:default}button:not(:disabled),a{transition:background .15s,color .15s,border-color .15s}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #8ead69;outline-offset:3px}h1,h2,h3,p{margin:0}button svg{flex-shrink:0}.skip-link{position:fixed;left:16px;top:-80px;padding:12px;background:var(--surface);color:var(--ink);z-index:100}.skip-link:focus{top:10px}.site-header{height:60px;background:#b6292d;color:#fff;box-shadow:0 2px 5px #0002}.header-inner{max-width:1050px;margin:auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:relative}.header-left,.header-right{display:flex;align-items:center;gap:7px;flex:1}.header-right{justify-content:flex-end}.brand{font-family:Manrope,sans-serif;font-weight:650;font-size:29px;letter-spacing:-1.6px;display:flex;align-items:center;line-height:1}.brand-symbol{display:inline-block;font-weight:800;font-size:36px;line-height:.9;margin-right:1px;transform:skew(-6deg)}.icon-button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px}.icon-button:hover{background:var(--soft)}.site-header .icon-button:hover{background:#ffffff20}.unlimited-badge{font-size:11px;letter-spacing:.3px;display:flex;align-items:center;gap:5px;opacity:.85}.page-shell{max-width:1050px;margin:auto;padding:0 30px}.play-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 26px;border-bottom:1px solid var(--border)}.difficulty-control{display:flex;align-items:center;gap:14px}.control-label{font-size:12px;color:var(--muted)}.difficulty-options{display:flex;background:var(--soft);border:1px solid var(--border);border-radius:8px;padding:3px;gap:3px}.difficulty-options button{padding:8px 12px;min-height:36px;font-size:12px;border-radius:5px;display:flex;align-items:center;gap:7px}.difficulty-options button>span{font-size:10px;color:var(--muted)}.difficulty-options button.selected{background:var(--surface);box-shadow:0 1px 4px #00000016;font-weight:650;color:var(--red)}.difficulty-options button:hover:not(:disabled){background:var(--surface)}.new-puzzle-button{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:var(--surface);border-radius:7px;padding:10px 15px;min-height:42px;font-size:12px;font-weight:600}.new-puzzle-button:hover{filter:brightness(1.12)}.game-layout{display:grid;grid-template-columns:minmax(260px,1fr) 440px;gap:72px;align-items:start;padding:32px 0 35px}.word-list-panel{padding-top:7px}.word-list-heading{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:2px solid var(--red)}.word-list-heading h2{display:flex;align-items:center;gap:9px;font-weight:650;font-size:18px;letter-spacing:-.3px}.word-list-heading svg{color:var(--red)}.puzzle-id{font-size:10px;font-family:monospace;color:var(--muted)}.word-list-intro{font-size:13px;line-height:1.8;margin:18px 0 17px}.word-list-intro>span{color:var(--muted)}.word-list-options{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;border-bottom:1px solid var(--border);padding-bottom:17px}.word-list-options label{display:flex;align-items:center;gap:6px;color:var(--muted);cursor:pointer}.word-list-options input{accent-color:var(--red);width:14px;height:14px;margin:0}.word-list-options label>span{font-size:8px;padding:2px 4px;border:1px solid var(--border);border-radius:4px;display:flex}.word-list-options>button{display:flex;align-items:center;gap:4px;color:var(--red);padding:5px 0;font-size:10px}.word-list-options>button:hover{text-decoration:underline}.word-groups{display:flex;flex-direction:column;gap:23px;margin:22px 0 28px}.word-group-heading{display:flex;align-items:center;justify-content:space-between}.word-group-heading h3{font-size:17px;letter-spacing:-.3px;font-weight:700}.word-group-heading>span{display:flex;gap:4px;align-items:center;font-size:11px;color:var(--ink)}.word-group-heading>span>span{color:var(--muted)}.word-group-heading svg{color:var(--forest);margin-left:3px}.words-left{font-size:11px;color:var(--muted);font-style:italic;margin-top:10px}.found-words{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.found-words>button,.found-words>span{font-size:12px;background:var(--soft);border-radius:4px;padding:4px 7px;color:var(--forest)}.found-words>button:hover{background:var(--accent)}.missing-words{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.missing-words span{font-size:13px;letter-spacing:1.5px;color:var(--muted);padding:2px 3px}.bonus-words{border-top:1px solid var(--border);padding-top:18px}.bonus-words summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;font-size:14px;list-style:none}.bonus-words summary::-webkit-details-marker{display:none}.bonus-words summary>span{display:flex;align-items:center;gap:8px}.bonus-words summary>span:last-child{font-size:12px;color:var(--muted)}.bonus-words summary svg{color:var(--muted)}.bonus-words>p{font-size:11px;color:var(--muted);line-height:1.7;margin-top:12px}.bonus-empty{display:block;margin-top:10px;font-size:10px;color:var(--muted);font-style:italic}.list-footnote{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);margin-top:23px}.save-dot{width:5px;height:5px;border-radius:50%;background:var(--green);display:inline-block}.puzzle-panel{width:100%;max-width:440px;scroll-margin-top:20px}.word-count{display:flex;align-items:baseline;justify-content:center;gap:9px;width:100%;padding:0;font-size:32px;letter-spacing:-.8px;line-height:1.4}.word-count strong{font-weight:750}.word-count>span{font-weight:450}.word-count small{font-size:14px;color:var(--muted);letter-spacing:0;align-self:center;margin-left:2px}.progress-area{padding:23px 16px 0}.progress-track{position:relative;height:5px;background:var(--border);border-radius:3px;margin-right:8px}.progress-track>span:first-child{position:absolute;left:0;top:0;height:5px;background:var(--red);border-radius:3px;transition:width .3s}.progress-star{position:absolute;top:50%;transform:translate(-50%,-50%);color:#b1b1b1;display:flex;padding:0 2px;background:var(--surface)}.progress-star.unlocked{color:var(--red)}.progress-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:16px}.word-feedback{display:flex;align-items:center;justify-content:center;gap:6px;min-height:51px;font-size:12px;text-align:center;padding:13px 8px 5px;color:var(--muted);line-height:1.5}.feedback-found{color:var(--forest);font-weight:600}.feedback-invalid{color:var(--red)}.feedback-bonus{color:#916921}.feedback-duplicate{color:var(--muted)}.feedback-hint{color:var(--forest)}.board-tools{display:flex;align-items:center;justify-content:space-between;padding:0 3px 5px;margin:0 12px}.board-tools>span{font-size:10px;letter-spacing:.2px;color:var(--muted)}.board-tools>span>span{font-size:15px;margin-left:5px;color:var(--ink)}.board-tools .icon-button{min-height:38px;min-width:38px;margin-right:-10px}.word-entry{margin:18px 20px 0;padding:11px 0 13px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:63px}.current-word{font-family:Manrope,sans-serif;font-size:21px;font-weight:750;letter-spacing:1.8px;overflow-wrap:anywhere;min-width:0}.current-word>span{font-family:DM Sans,sans-serif;font-size:12px;letter-spacing:0;font-weight:400;color:var(--muted)}.word-actions{display:flex;gap:7px;align-items:center;flex-shrink:0}.secondary-button,.submit-button{display:flex;align-items:center;justify-content:center;gap:6px;border-radius:6px;padding:8px 10px;min-height:39px;font-size:11px}.secondary-button{border:1px solid var(--border);color:var(--muted)}.secondary-button>span{display:none}.submit-button{background:var(--forest);color:var(--surface);font-weight:550}.submit-button:hover:not(:disabled){filter:brightness(1.13)}.secondary-button:hover:not(:disabled){background:var(--soft)}.type-form{display:flex;align-items:center;gap:8px;margin:13px 20px 0;font-size:10px}.type-form label{color:var(--muted);white-space:nowrap}.type-form input{width:100%;min-width:0;border:0;background:var(--soft);border-radius:5px;padding:9px;color:var(--ink);font-size:11px;min-height:36px}.type-form input::placeholder{color:var(--muted)}.type-form>button{padding:5px;min-width:32px;min-height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:5px}.play-tip{font-size:10px;color:var(--muted);text-align:center;margin:20px 0}.puzzle-footer{display:flex;justify-content:center;gap:28px;margin-top:17px}.puzzle-footer>button{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;min-height:40px}.puzzle-footer>button:hover{color:var(--red)}.puzzle-footer>.mobile-word-button{display:none}.hint-banner{display:flex;align-items:center;gap:8px;border-radius:7px;background:var(--accent);padding:10px;margin:13px 20px 0;color:var(--forest);font-size:13px}.hint-banner>span{letter-spacing:1px;font-weight:650;flex:1}.hint-banner>button:not(.icon-button){font-size:10px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.hint-banner .icon-button{min-height:30px;min-width:30px}.win-banner{display:flex;align-items:center;gap:11px;padding:15px;background:var(--accent);border-radius:8px;margin:22px 10px 0;color:var(--forest)}.win-banner>svg{flex-shrink:0}.win-banner strong{font-size:12px;font-weight:650}.win-banner p{font-size:10px;line-height:1.6;margin-top:4px}.win-banner>button{display:flex;align-items:center;justify-content:center;min-width:36px;min-height:44px;margin-left:auto}.site-footer{border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px 0 30px;font-size:10px;color:var(--muted)}.site-footer>span:first-child{display:flex;align-items:center;gap:7px}.site-footer a{text-decoration:underline;text-underline-offset:3px}.footer-separator{margin:0 9px}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0008;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog{background:var(--surface);padding:27px;border-radius:15px;max-width:520px;width:100%;max-height:calc(100dvh - 48px);overflow-y:auto;box-shadow:0 20px 80px #0004}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.dialog-heading h2{font-size:25px;letter-spacing:-.5px;font-weight:650}.dialog-heading .icon-button{flex-shrink:0;margin:-5px}.dialog-intro{font-size:13px;line-height:1.7;color:var(--muted);margin-top:12px}.help-example{display:flex;gap:9px;justify-content:center;padding:24px 0 10px}.help-example>span{height:49px;width:49px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#273d1a;background:#c9dcae;border:1px solid #8ea975;border-radius:7px}.help-steps{padding:0 0 0 19px;margin:22px 0;display:flex;flex-direction:column;gap:16px;font-size:12px;line-height:1.8;color:var(--muted)}.help-steps strong{color:var(--ink)}.help-subtitle{font-size:15px;margin-top:24px}.perk-list{padding:15px 0;display:flex;flex-direction:column;gap:12px}.perk-list p{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.7;color:var(--muted)}.perk-list svg{color:var(--red);flex-shrink:0;margin-top:2px}.help-small{font-size:11px;color:var(--muted);line-height:1.8;padding:13px;background:var(--soft);border-radius:7px;margin-bottom:20px}.primary-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:44px;border-radius:7px;background:var(--red);color:var(--surface);font-size:13px;font-weight:550;padding:12px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:27px 0 20px}.stats-grid>div{display:flex;flex-direction:column;align-items:center;gap:10px;background:var(--soft);padding:24px 5px;border-radius:8px}.stats-grid strong{font-size:30px;font-weight:600}.stats-grid span{font-size:10px;color:var(--muted)}.stats-note{text-align:center;padding:16px 0 28px}.stats-note svg{color:var(--green);margin-bottom:13px}.stats-note h3{font-size:17px;font-weight:550}.stats-note p{font-size:12px;color:var(--muted);margin-top:9px;line-height:1.7}.mobile-close{display:none}.spinning{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:950px){.page-shell{padding:0 25px}.game-layout{grid-template-columns:minmax(230px,1fr) 400px;gap:40px}.word-list-options{flex-wrap:wrap}.board-tools{margin:0}.word-entry,.type-form,.hint-banner{margin-left:0;margin-right:0}.puzzle-panel{max-width:400px}}@media(max-width:760px){.page-shell{padding:0 17px}.site-header{height:57px}.header-inner{padding:0 13px}.brand{font-size:25px}.brand-symbol{font-size:31px}.unlimited-badge{display:none}.play-toolbar{padding:18px 0;gap:12px}.control-label{display:none}.difficulty-options button{font-size:11px;padding:7px 10px;min-height:38px}.difficulty-options button>span{display:none}.new-puzzle-button{font-size:11px;padding:10px 12px}.game-layout{display:flex;justify-content:center;padding-top:24px;gap:0}.puzzle-panel{max-width:440px;width:100%}.word-list-panel{display:none}.word-list-panel.words-open{display:block;position:fixed;z-index:45;top:0;right:0;bottom:0;left:0;background:var(--surface);padding:20px 24px 35px;overflow:auto}.word-list-heading{padding-bottom:12px;position:sticky;top:-20px;background:var(--surface);padding-top:8px;z-index:2}.word-list-heading .puzzle-id{margin-left:auto;margin-right:12px}.mobile-close{display:inline-flex}.word-list-heading h2{font-size:20px}.word-list-intro{font-size:14px}.word-list-options{font-size:12px;padding-bottom:17px}.word-list-options>button{font-size:12px;min-height:40px}.word-list-options input{width:17px;height:17px}.word-groups{gap:27px}.word-group-heading h3{font-size:19px}.words-left{font-size:13px}.found-words>button,.found-words>span{font-size:14px;padding:7px 10px;min-height:34px}.word-count{font-size:30px}.word-count small{font-size:13px}.progress-area{padding-top:22px}.word-feedback{font-size:12px;min-height:49px;padding-top:11px}.board-tools{margin:0 5px}.board-tools>span{font-size:10px}.word-entry{margin:15px 5px 0}.type-form{margin:14px 5px 0;gap:7px}.type-form input{font-size:16px;padding:9px 10px;min-height:43px}.type-form input::placeholder{font-size:11px}.type-form label{font-size:10px}.type-form>button{min-height:43px;min-width:36px}.word-actions>button{min-height:44px}.play-tip{margin-top:19px;font-size:10px}.puzzle-footer{gap:23px;flex-wrap:wrap;margin-top:12px}.puzzle-footer>button{font-size:11px;min-height:44px}.puzzle-footer>.mobile-word-button{display:flex}.current-word{font-size:21px}.current-word>span{font-size:11px}.site-footer{flex-direction:column;align-items:center;padding:22px 0;gap:13px;font-size:10px}.hint-banner{margin:13px 5px 0}.hint-banner>button:not(.icon-button){min-height:36px}.hint-banner .icon-button{min-height:40px;min-width:32px}.win-banner{margin-left:0;margin-right:0}.dialog-backdrop{padding:16px}.dialog{padding:23px;max-height:calc(100dvh - 32px)}.dialog-heading h2{font-size:22px}.stats-grid span{font-size:9px}.word-list-panel.words-open~.puzzle-panel{pointer-events:none}}@media(max-width:370px){.header-inner{padding:0 7px}.header-left,.header-right{gap:0}.brand{font-size:23px}.brand-symbol{font-size:29px}.icon-button{min-width:40px}.page-shell{padding:0 12px}.difficulty-options button{padding:6px 8px;font-size:10px}.new-puzzle-button{padding:9px 10px;font-size:10px}.play-toolbar{gap:8px}.word-count{font-size:27px}.puzzle-footer{gap:15px}.puzzle-footer>button{font-size:10px}.current-word{font-size:18px}.current-word>span{font-size:10px}.type-form label{font-size:9px}.type-form input{padding-left:7px}.type-form input::placeholder{font-size:10px}.site-footer{font-size:9px}.dialog{padding:19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.play-toolbar{align-items:flex-end}.difficulty-control{min-width:0;align-items:flex-start;flex-direction:column;gap:8px}.control-label{display:block;font-size:10px}.difficulty-options{width:100%}.difficulty-options button{min-width:65px;flex-direction:column;gap:4px;padding:8px 10px;font-size:14px;font-weight:650}.difficulty-options button>span{display:block;font-size:9px;font-weight:400;white-space:nowrap}.difficulty-options button .size-complete{color:var(--forest)}.new-puzzle-button{flex-shrink:0;margin-bottom:5px}.word-feedback{min-height:54px;padding:9px 10px;margin:10px 0 4px;border-radius:9px}.feedback-found,.feedback-bonus{font-size:14px;font-weight:750;background:var(--accent);color:var(--forest);box-shadow:inset 0 0 0 1px #779e4d55;animation:found-pop .35s ease-out}.feedback-bonus{background:#f8edcf;color:#785515;box-shadow:inset 0 0 0 1px #bd923355}:root[data-theme=dark] .feedback-bonus{background:#483c20;color:#f5d98b}.word-feedback svg{flex-shrink:0}@keyframes found-pop{0%{transform:scale(.96)}65%{transform:scale(1.025)}to{transform:scale(1)}}@media(max-width:950px){.difficulty-options button{min-width:58px;padding:8px}}@media(max-width:760px){.play-toolbar{flex-wrap:wrap;padding:14px 0;gap:10px}.difficulty-control{width:100%}.difficulty-options{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:3px}.difficulty-options button{min-width:0;min-height:49px;padding:7px 1px;font-size:13px}.difficulty-options button>span{font-size:8px}.new-puzzle-button{margin:0 0 0 auto;min-height:36px;padding:8px 12px}.game-layout{padding-top:18px}.word-feedback{font-size:12px}.feedback-found,.feedback-bonus{font-size:13px}}@media(max-width:370px){.difficulty-options button{font-size:12px}.difficulty-options button>span{font-size:7px}}.theft-receipt{display:flex;flex-direction:column;gap:5px;margin:18px 5px 0;padding:13px 15px;border:1px dashed var(--red);border-radius:8px;background:var(--red-soft);color:var(--red);font-size:12px;line-height:1.5}.theft-receipt span{color:var(--muted);font-size:11px}.theft-settled{border-color:var(--forest);background:var(--accent);color:var(--forest)}.found-words>.stolen-word{display:inline-flex;align-items:center;gap:7px;color:var(--muted);border:1px dashed var(--border)}.stolen-word s{text-decoration-thickness:2px}.stolen-word small{font-size:9px;color:var(--red);text-decoration:none}.reveal-instructions{margin-top:12px;font-size:11px;line-height:1.6;color:var(--muted)}.missing-words>button,.missing-words>span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:40px;padding:5px 8px;font-size:14px;letter-spacing:1.5px;border-radius:5px}.missing-words>button{border:1px dashed var(--border);background:var(--soft);color:var(--muted)}.missing-words>button:hover:not(:disabled){background:var(--accent);color:var(--forest)}.missing-words>.revealed-word{border-style:solid;border-color:var(--forest);color:var(--forest);letter-spacing:.5px}.hint-banner small{font-size:10px;line-height:1.4}
