:root{font-family:ui-rounded,'Segoe UI',system-ui,sans-serif;color:#24483b;background:#d9dfce;font-synthesis:none;--ink:#24483b;--cream:#fffbed;--gold:#e1b650;--tile:65px;--wheel:310px}*{box-sizing:border-box}body{margin:0;min-height:100svh;background:linear-gradient(90deg,#e6ecd9c9,#f1efdcb3 38%,#f1efdcb3 65%,#dce7c6b8),url('assets/garden-stage-5.png') center 57%/cover fixed}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #94702c;outline-offset:5px}.preview-game{max-width:1400px;min-height:100svh;margin:auto;padding:30px 5vw 18px;display:flex;flex-direction:column;position:relative;isolation:isolate}.game-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;gap:8px;align-items:center;font-size:24px;font-weight:750;letter-spacing:-1px;text-decoration:none}.brand svg{width:26px;height:30px}.header-tools{display:flex;gap:15px;align-items:center}.coins{display:flex;gap:9px;align-items:center;background:#fffaf0e0;border:1px solid #ffffffe0;border-radius:30px;padding:10px 20px;box-shadow:0 3px 12px #203e2420}.coins>span{color:#b6892d;font-size:23px}.coins b{font-size:18px;font-weight:650;min-width:28px}.icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #fff8;background:#fff8;border-radius:50%;color:var(--ink)}.icon-button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}.level-heading{text-align:center;margin:22px 0 10px}.level-heading p{font-size:10px;letter-spacing:3px;font-weight:750;margin:0 0 6px;color:#46624c}.level-heading h1{font-size:30px;margin:0;letter-spacing:-1px;font-weight:650}.play-space{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;width:min(100%,950px);margin:auto;flex:1;padding:25px 0}.board-area{display:flex;flex-direction:column;align-items:center}.crossword{display:grid;grid-template-columns:repeat(6,var(--tile));grid-template-rows:repeat(5,var(--tile));gap:5px;justify-content:center}.cross-cell{display:flex;align-items:center;justify-content:center;border-radius:11px;background:#fffbedf2;border:1px solid #ffffffba;box-shadow:0 3px 0 #b8b59b8c,0 6px 13px #24432615;color:#24483b;font-size:34px;font-weight:750;position:relative}.cross-cell.filled{background:#32674f;border-color:#518667;color:#fffbed;box-shadow:0 3px 0 #1c493a70}.cross-cell.hinted{background:#fae3a0;border-color:#e0bd62;color:#59451f}.cross-cell.just-found{animation:tile-pop .45s both}.cross-cell.blank{background:none;box-shadow:none;border:none}.board-progress{font-size:12px;font-weight:650;color:#395740;margin:25px 0 12px}.bonus-button{border:1px solid #73875f44;background:#fff9;border-radius:24px;color:#3c6248;display:flex;align-items:center;gap:9px;font-size:12px;padding:9px 15px}.bonus-button>span:first-child{font-size:20px;color:#9b7628}.bonus-button>span:last-child{background:#e5ebd7;border-radius:50%;min-width:21px;height:21px;display:grid;place-items:center;font-size:11px;font-weight:700}.wheel-area{display:flex;flex-direction:column;align-items:center}.selection-area{display:flex;align-items:center;justify-content:center;gap:5px;height:52px;margin-bottom:8px}.selection-area>button:first-child{border:0;background:#32674f;color:#fffbed;min-height:35px;min-width:94px;border-radius:24px;padding:6px 20px;font-size:21px;font-weight:750;letter-spacing:3px;box-shadow:0 3px 10px #25483220}.selection-area>button:first-child:disabled{font-size:12px;letter-spacing:.2px;background:none;color:#45624c;box-shadow:none;font-weight:500}.clear{border:0;background:#fff9;color:#3a5c47;border-radius:50%;width:27px;height:27px;padding:0;font-size:20px}.wheel{width:var(--wheel);height:var(--wheel);border-radius:50%;background:#fffbeded;box-shadow:0 12px 40px #1c492719,inset 0 0 0 1px #fff8;position:relative;touch-action:none;user-select:none}.letter{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent;width:26%;height:26%;border-radius:50%;font-size:51px;line-height:1;font-weight:750;color:#284b3b;z-index:2;display:grid;place-items:center;padding:0}.letter.selected{background:#32674f;color:#fffbed;box-shadow:0 3px 8px #21463220}.trail{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.trail polyline{stroke:#32674f;stroke-width:5;fill:none;stroke-linecap:round;stroke-linejoin:round}.shuffle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:none;border:0;color:#75917c99;padding:12px;width:60px;height:60px;z-index:3}.shuffle svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.wheel-tools{display:flex;justify-content:center;margin-top:24px}.hint-button{display:flex;align-items:center;gap:9px;border:1px solid #fff8;background:#fff9;border-radius:25px;color:#31523d;padding:8px 18px;font-size:13px;font-weight:650;box-shadow:0 3px 10px #203e240c}.hint-button>svg{width:23px;height:23px;stroke:#8e742e;stroke-width:1.6;fill:none;stroke-linecap:round}.hint-button small{display:inline-block;font-weight:600;font-size:11px;margin-left:6px;color:#806b33}.hint-button:disabled{opacity:.4}footer{text-align:center;margin-top:15px}footer #status{font-size:12px;min-height:18px;margin:0 0 13px;font-weight:500;color:#304c39}.preview-note{font-size:9px;text-decoration:none;color:#4c634aaa}.praise{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);pointer-events:none;font-size:clamp(27px,4vw,45px);font-weight:800;letter-spacing:-1px;color:#fff6d6;text-shadow:0 3px 15px #24473555;z-index:5;opacity:0;background:#285b44f2;border:1px solid #e4cf89;border-radius:60px;padding:12px 36px;white-space:nowrap;box-shadow:0 10px 30px #163e2733}.praise.show{animation:praise 1.25s both}#particles{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:6}.particle{position:absolute;left:50%;top:43%;width:8px;height:8px;background:#e4be67;border-radius:2px;animation:scatter 950ms both}dialog{border:1px solid #e1d4ad;background:#fffbed;color:#24483b;border-radius:24px;box-shadow:0 25px 100px #173b3b44;padding:40px 32px 30px;width:390px;max-width:calc(100vw - 32px);max-height:calc(100svh - 32px);overflow:auto;text-align:center}dialog::backdrop{background:#183d315e;backdrop-filter:blur(8px)}.close-dialog{position:absolute;top:10px;right:12px;border:0;background:none;color:#65795e;font-size:25px;padding:0 5px}.modal-kicker{font-size:10px;letter-spacing:2px;color:#7a8c69;font-weight:700}.modal-icon{font-size:49px;color:#b58d3b;display:block;margin-bottom:8px}dialog h2{font-size:29px;letter-spacing:-1px;margin:9px 0 14px}dialog p{font-size:13px;line-height:1.7;color:#5a6d53}.primary,.secondary{display:block;width:100%;padding:13px 12px;border-radius:30px;border:0;font-weight:650;font-size:14px;margin-top:12px}.primary{background:#32674f;color:#fffbed;box-shadow:0 3px 0 #204d39}.secondary{background:#e8ecdc;color:#46614c}.primary:disabled{opacity:.4}.reward{font-size:28px;font-weight:750;color:#9b782a;margin:22px 0}.reward small{font-size:12px;display:block;color:#667d5a;margin-top:4px;font-weight:500}.chapter-meter{text-align:left;background:#f1f0e0;border-radius:14px;padding:15px;margin:20px 0}.chapter-meter>div{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#4a6247}.chapter-meter progress{width:100%;accent-color:#527b4e;height:8px;margin-top:12px}.bonus-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:20px 0}.bonus-list span{padding:9px 12px;border:1px solid #c6d3b7;border-radius:8px;background:#e8eedf;font-weight:650;font-size:13px}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #d8dfc9;gap:12px;text-align:left;font-size:14px}.setting-row>button{border:0;border-radius:25px;padding:8px 16px;background:#dce6d0;color:#3c5a40;font-size:12px;font-weight:700}.setting-row button[aria-pressed="true"]{background:#32674f;color:#fff8}.settings-note{font-size:11px!important}.shake{animation:shake .25s}@keyframes tile-pop{0%{transform:scale(.85)}55%{transform:scale(1.1)}100%{transform:scale(1)}}@keyframes praise{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}15%,70%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-65%) scale(.98)}}@keyframes scatter{0%{opacity:0;transform:translate(0,0) rotate(0)}15%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(180deg)}}@keyframes shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media(min-width:1500px){:root{--tile:74px;--wheel:350px}.play-space{width:1050px;gap:100px}.letter{font-size:57px}}
@media(max-width:760px){:root{--tile:clamp(34px,8vw,48px);--wheel:clamp(215px,57vw,280px)}.preview-game{padding:20px 22px 15px}.brand{font-size:20px}.brand svg{width:22px}.header-tools{gap:10px}.coins{padding:7px 13px;gap:6px}.coins b{font-size:15px}.coins>span{font-size:19px}.icon-button{width:36px;height:36px}.level-heading{margin:17px 0 10px}.level-heading h1{font-size:25px}.level-heading p{font-size:8px;letter-spacing:2px}.play-space{grid-template-columns:1fr;gap:4px;padding:12px 0 0;width:100%;flex:1}.crossword{gap:4px}.cross-cell{border-radius:7px;font-size:26px}.board-progress{margin:15px 0 8px;font-size:10px}.bonus-button{padding:5px 11px;font-size:10px;gap:7px}.bonus-button>span:first-child{font-size:16px}.bonus-button>span:last-child{min-width:18px;height:18px;font-size:10px}.selection-area{height:34px;margin:2px 0 7px}.selection-area>button:first-child{font-size:18px;min-height:30px;padding:4px 15px}.selection-area>button:first-child:disabled{font-size:10px}.letter{font-size:calc(var(--wheel)*.16)}.shuffle{width:50px;height:50px}.shuffle svg{width:24px;height:24px}.wheel-tools{margin-top:15px}.hint-button{padding:7px 15px;font-size:12px}footer{margin-top:18px}footer #status{font-size:10px;margin-bottom:8px}.preview-note{font-size:8px}.praise{top:43%;padding:10px 25px;font-size:28px}body{background-position:center,55% center}.board-area{align-self:end}.wheel-area{align-self:start}}
@media(max-width:760px) and (max-height:740px){:root{--tile:34px;--wheel:205px}.preview-game{min-height:690px;padding-top:15px}.level-heading{margin:10px 0 2px}.play-space{padding-top:5px;gap:2px}.board-progress{margin-top:12px}.wheel-tools{margin-top:10px}footer{margin-top:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition:none!important}.praise.show{opacity:1}.particle{display:none}}

@media(min-width:761px) and (max-height:800px){:root{--tile:59px;--wheel:290px}.preview-game{padding-top:24px;padding-bottom:14px}.level-heading{margin:16px 0 5px}.play-space{padding:15px 0}.board-progress{margin-top:20px}footer{margin-top:10px}}
