:root{--paper:#f7f1e8;--ink:#5b4c49;--muted:#887773;--rose:#bf7f81;--pink:#ead6d0;--sage:#93a68d;--line:#e2d6cb;--serif:Georgia,'Times New Roman',serif;--sans:'Trebuchet MS','Avenir Next',sans-serif;--hex-width:18.1818%;--hex-height:13.333%;color-scheme:light;font-family:var(--sans);color:var(--ink);font-size:15px;font-feature-settings:'kern' 1,'liga' 1;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;background:var(--paper);background-image:radial-gradient(#bca89128 .6px,transparent .6px);background-size:7px 7px;line-height:1.45;min-width:300px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #94759e;outline-offset:4px}button{border:0}button svg{flex-shrink:0}a{color:inherit;text-underline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}button{touch-action:manipulation}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
.topbar{max-width:1192px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:25px 38px 22px;border-bottom:1px solid var(--line);gap:15px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-family:var(--serif);font-size:27px;line-height:1.1}.brand i{font-size:24px;color:#b58785}.brand small{display:block;font:9px var(--sans);letter-spacing:.17em;margin-top:8px;color:var(--muted)}.brand-cat{font-family:var(--sans);position:relative;background:#e5c6b8;border:2px solid #a87f6e;border-radius:42% 42% 45% 45%;width:39px;height:34px;font-size:0;margin-top:7px}.brand-cat:before,.brand-cat:after{content:'';position:absolute;top:-8px;width:15px;height:17px;background:#e5c6b8;border-top:2px solid #a87f6e;z-index:-1}.brand-cat:before{left:-2px;transform:rotate(-20deg);border-left:2px solid #a87f6e}.brand-cat:after{right:-2px;transform:rotate(20deg);border-right:2px solid #a87f6e}.brand-cat{background-image:radial-gradient(circle at 28% 48%,#70564b 2px,transparent 2.5px),radial-gradient(circle at 73% 48%,#70564b 2px,transparent 2.5px),radial-gradient(ellipse at 50% 71%,#b9837e 3px,transparent 3.5px)}nav{display:flex;align-items:center;gap:17px}.nav-link{display:flex;align-items:center;gap:9px;background:transparent;font-size:13px}.count-badge{font-size:11px;padding:3px 7px;background:#e7dcd2;border-radius:6px;font-variant-numeric:tabular-nums}.icon-button{display:flex;align-items:center;justify-content:center;background:transparent;border-radius:50%;width:36px;height:36px;flex-shrink:0}.icon-button:hover{background:#e9dfd5}#sound-button[aria-pressed=false]{opacity:.45}.main-wrap{max-width:1100px;margin:auto;padding:35px 38px 20px}.welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.eyebrow{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.13em;color:var(--muted)}.tiny-flower{font-size:17px;color:#9fa58e;margin-right:6px;vertical-align:middle}h1{font-size:clamp(30px,4vw,40px);letter-spacing:-.025em;line-height:1.25;margin:7px 0 8px}.welcome p:not(.eyebrow){font-size:13px;color:var(--muted)}.welcome-note{font-family:var(--serif);font-style:italic;font-size:18px;color:#ad8b87;display:flex;align-items:center;gap:12px;transform:rotate(-5deg);padding-right:16px}.welcome-note .icon{width:18px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:27px;align-items:start}.game-card{background:#fffaf2;border:1px solid #ddcfc1;border-radius:16px;padding:20px 23px 16px;box-shadow:0 5px 0 #e9ded1,0 12px 35px #a4876510;overflow:hidden}.game-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:19px}.mode-switch{display:flex;background:#eee6dc;padding:3px;border-radius:8px}.mode-switch button{background:transparent;border-radius:6px;font-size:12px;padding:6px 14px;color:var(--muted)}.mode-switch button.active{background:#fffaf2;color:var(--ink);box-shadow:0 1px 4px #8a716322}.mode-note{font-size:11px;color:var(--muted)}.scorebar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 2px}.label{display:block;font:9px var(--sans);letter-spacing:.11em;color:var(--muted);font-weight:600}.scorebar strong{display:block;font-family:var(--serif);font-weight:400;font-size:29px;line-height:1.2;margin-top:3px;font-variant-numeric:tabular-nums}.scorebar .level-stat{text-align:center}.scorebar .level-stat strong{font-size:15px;margin-top:8px}.best-stat{text-align:right}.best-stat strong{font-size:20px;color:#a0887d}.level-progress{height:3px;background:#ebe0d1;border-radius:6px;overflow:hidden;margin:15px 0 20px}.level-progress span{display:block;height:100%;background:#aab397;width:0;transition:width .3s}.board-wrap{position:relative;background:#efe3d3;border:1px solid #e3d2bf;border-radius:11px;padding:12px 13px 14px;box-shadow:inset 0 2px 8px #8c6f5310}.board{position:relative;width:100%;aspect-ratio:5.5/6.495;user-select:none;touch-action:none;isolation:isolate}.tile{position:absolute;width:var(--hex-width);height:var(--hex-height);padding:0;background:#c7ac8f;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);border:0;transform:scale(.955);transition:transform .16s;color:#6b5548;outline:none;touch-action:none;display:flex;align-items:center;justify-content:center}.tile:before{content:'';position:absolute;inset:1.5px;clip-path:inherit;background:#fff3da;z-index:-1}.tile:after{content:'';position:absolute;inset:3px;clip-path:inherit;background:linear-gradient(150deg,#fff9e900,transparent 48%,#ba965115);z-index:-1}.tile .letter{font-family:var(--serif);font-weight:600;font-size:clamp(21px,2.7vw,32px);line-height:1;position:relative;z-index:2;padding-bottom:3px}.tile .letter.qu{font-size:22px}.tile .tile-value{position:absolute;right:29%;bottom:13%;font-size:8px;opacity:.6}.tile .tile-mark{position:absolute;top:10%;left:45%;font-size:8px;line-height:1;opacity:.75}.tile:hover,.tile:focus-visible{transform:scale(1)}.tile:focus-visible{background:#84628e}.tile:focus-visible:before{background:#f0e4f1}.tile.selected{background:#977471;transform:scale(.99);z-index:3;color:#654442}.tile.selected:before{background:#edc6bb}.tile.hinted{background:#a385af}.tile.hinted:before{background:#e1d0e6}.tile.green{background:#829a71}.tile.green:before{background:#d4e2b9}.tile.gold{background:#ba954e}.tile.gold:before{background:#f2d99a}.tile.sapphire{background:#8099b4}.tile.sapphire:before{background:#c4daea}.tile.diamond{background:#a195b3}.tile.diamond:before{background:#e0d9ef}.tile.fire{background:#b05e50;color:#8d3c30}.tile.fire:before{background:#edb39a}.tile.fire .tile-mark{font-size:12px;top:6%;left:42%;color:#ad4632}.tile.fire.danger:before{background:#ee907d}.tile.fire.danger .letter{animation:ember 1.4s ease-in-out infinite}.tile.selected:before{background:#edc6bb}.connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;overflow:visible}.connections polyline{fill:none;stroke:#9c6663;stroke-width:3;stroke-linejoin:round;stroke-linecap:round;opacity:.48}.word-tray{display:flex;gap:10px;align-items:center;padding:17px 1px 5px;min-height:96px}.word-tray>div{flex:1;min-width:0}.word-tray strong{display:block;font:23px var(--serif);margin:2px 0 3px;overflow-wrap:anywhere;letter-spacing:.02em}.word-tray.empty strong{font-size:21px;color:#ad978d;letter-spacing:0}.word-tray #word-detail{display:block;font-size:11px;color:var(--muted);min-height:16px}.clear-button{width:26px;height:32px;background:none;display:flex;align-items:center;justify-content:center}.clear-button .icon{width:16px}.primary{background:#ae797c;color:#fff8f3;padding:11px 17px;border:1px solid #a16d71;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:13px;font-size:13px;box-shadow:0 3px 0 #926468;transition:transform .15s,background .15s}.primary:hover:not(:disabled){background:#a16d71;transform:translateY(-1px)}.primary:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 #926468}.primary:disabled{background:#d4b6b0;border-color:#cbb0a9;box-shadow:0 3px 0 #bba19a;opacity:.65}.feedback{font-size:11px;min-height:33px;padding:5px 1px 10px;color:#9a7972}.feedback.success{color:#738565}.feedback.error{color:#b56e62}.board-controls{display:flex;align-items:center;gap:10px;border-top:1px solid #eaded1;padding-top:14px}.secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 11px;background:#f2eade;border:1px solid #e1d3c4;border-radius:7px;font-size:11px}.secondary .icon{width:15px;height:15px}.secondary:hover{background:#e9dece}.text-button{background:none;font-size:11px;color:var(--muted);padding:9px 0;margin-left:auto;text-decoration:underline;text-underline-offset:3px}.tile-key{display:flex;gap:14px;align-items:center;justify-content:center;margin-top:14px;font-size:9px;color:#9b8a7d}.tile-key>span{display:flex;align-items:center;gap:4px}.key-dot{width:9px;height:9px;display:inline-block;border-radius:3px;background:#d4e2b9;border:1px solid #829a71}.key-dot.gold{background:#f2d99a;border-color:#ba954e}.key-dot.sapphire{background:#c4daea;border-color:#8099b4}.key-dot.diamond{background:#e0d9ef;border-color:#a195b3}.key-dot.fire{background:#edb39a;border-color:#b05e50}.fire-key{margin-left:4px}.bookshop-sidebar{display:flex;flex-direction:column;gap:18px}.cat-card{background:#ede0d9;border:1px solid #e0cdc3;border-radius:14px;text-align:center;padding:18px 18px 16px;overflow:hidden;background-image:radial-gradient(ellipse at 50% 40%,#fff2dd99,transparent 68%)}.cat-card-top{display:flex;align-items:center;justify-content:space-between;text-align:left}.cat-card-top .eyebrow{font-size:9px;color:#9b7e75}.paw{color:#be9789;font-size:18px}.cat-card img{width:100%;height:auto;display:block;margin:0 0 3px}.cat-card h2{font-size:24px;letter-spacing:-.015em}.cat-card p{font-family:var(--serif);font-style:italic;font-size:13px;color:#9a7e74;margin:7px 0 15px;min-height:19px}.cat-status{display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;color:#967d72;border-top:1px solid #ddc8bc;padding-top:12px}.cat-status span{width:6px;height:6px;background:#9ea68b;border-radius:50%}.collection-card{padding:19px 21px 15px;border:1px solid #d6d7c4;background:#f0f0e4;border-radius:13px}.section-title{display:flex;align-items:center;gap:8px}.section-title h2{font-size:18px}.section-title .icon{color:#909d7e;width:18px}.collection-stats{display:flex;align-items:center;justify-content:space-between;margin:17px 0 12px}.collection-stats>strong{font-family:var(--serif);font-weight:400;font-size:42px;line-height:1;color:#788568;font-variant-numeric:tabular-nums}.collection-stats>strong span{font-size:24px}.collection-stats p{font-size:11px;line-height:1.6;text-align:right;color:#8e947e}.collection-stats p b{font-weight:400;color:#6e795f}.collection-progress{height:6px;background:#dfe2d0;border-radius:6px;overflow:hidden}.collection-progress span{display:block;height:100%;width:0;background:#98aa81;transition:width .5s}.mini-shelf{display:flex;align-items:flex-end;gap:4px;border-bottom:3px solid #bec5aa;height:42px;padding:0 10px;margin:15px 0 10px}.mini-book{display:block;width:13px;height:27px;background:#dadbcd;border:1px solid #c8cbbc;border-radius:2px 2px 0 0;position:relative;transition:background .3s}.mini-book:nth-child(3n){height:32px;width:16px}.mini-book:nth-child(4n){height:23px}.mini-book:after{content:'';position:absolute;bottom:5px;left:2px;right:2px;height:2px;background:#f2f1e7}.mini-book.filled{background:#a7b69b;border-color:#899b7b}.mini-book.filled:nth-child(3n){background:#d2b3ab;border-color:#b89d95}.mini-book.filled:nth-child(4n){background:#c5b9cd;border-color:#ab9fb3}.collection-message{font-family:var(--serif);font-size:11px;font-style:italic;color:#8e947e;text-align:center;margin-bottom:12px}.collection-link{display:flex;width:100%;align-items:center;justify-content:space-between;background:none;border-top:1px solid #d9ddc9;padding:12px 0 0;font-size:11px;color:#778566}.collection-link .icon{width:16px}.recent-card{padding:0 5px}.recent-card .section-title{justify-content:space-between;margin:0 0 11px}.recent-card h2{font-size:17px}.recent-card .section-title>span{font-size:9px;color:#a18d81}.recent-words{display:flex;gap:6px;flex-wrap:wrap}.recent-words>span{background:#eee3d8;border:1px solid #e2d4c7;padding:5px 9px;font-size:11px;border-radius:5px}.recent-words p{font-family:var(--serif);font-style:italic;font-size:12px;color:#a18d81}footer{display:flex;justify-content:space-between;align-items:center;margin-top:31px;padding-bottom:4px;font-size:10px;color:#a38f81;gap:15px}footer>span:first-child{display:flex;align-items:center;gap:7px}footer .icon{width:12px;height:12px}
dialog{width:calc(100% - 32px);max-width:520px;max-height:88dvh;overflow:auto;background:#fffaf2;border:1px solid #d8c7b9;border-radius:16px;color:var(--ink);padding:27px;box-shadow:0 18px 80px #47372c30}dialog::backdrop{background:#574c4455;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.dialog-heading h2{font-size:29px;margin-top:6px}.dialog-heading .icon-button{background:#f0e4d8}.dictionary-dialog{max-width:700px}.dictionary-summary{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:16px;font-size:13px}.dictionary-summary strong{font-weight:400;color:#778566}.dictionary-summary span{color:var(--muted)}.dictionary-tools{display:flex;gap:10px;margin:18px 0 14px}.search-label{flex:1;min-width:0}.dictionary-tools input,.dictionary-tools select{width:100%;padding:10px 12px;background:#f6eee3;border:1px solid #dfcfc1;border-radius:7px;color:var(--ink);font-size:13px}.dictionary-tools select{width:150px}.alphabet{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:14px}.alphabet button{background:transparent;font-size:10px;min-width:21px;padding:5px 4px;border-radius:4px;letter-spacing:.05em}.alphabet button.active{background:#d8c3bc}.dictionary-tip{font-size:11px;color:var(--muted);max-width:65ch;margin-bottom:18px;line-height:1.5}.dictionary-words{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;min-height:80px}.dict-word{padding:9px 10px;background:#f3ece2;border:1px solid #e4d8ca;border-radius:6px;text-align:left;font-size:12px;display:flex;justify-content:space-between;gap:5px;align-items:center;overflow-wrap:anywhere}.dict-word.found{background:#e5ead9;border-color:#c9d3b9;color:#738565}.dict-word.missing{color:#a38e82}.dict-word .word-mark{font-size:10px;flex-shrink:0;color:#af9085}.dict-word.found .word-mark{color:#738565}.dict-word:hover{border-color:#b9988b}.dictionary-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:18px;font-size:11px;color:var(--muted)}.setting-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}.setting-row b{font-size:14px;font-weight:400}.setting-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.setting-row input{width:18px;height:18px;accent-color:#ac797c}.backup-section{border-top:1px solid var(--line);padding-top:22px;margin-top:6px}.backup-section h3{font-size:20px;margin-bottom:9px}.backup-section p{font-size:12px;color:var(--muted);line-height:1.6;max-width:65ch}.backup-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.credits{font-size:10px;color:#a18b7e;border-top:1px solid var(--line);margin-top:22px;padding-top:15px}.guide{padding-left:20px;margin:0 0 20px}.guide li{padding-left:5px;margin-bottom:15px;font-size:13px;color:var(--muted);line-height:1.55}.guide li b{color:var(--ink);font-weight:600}.keyboard-help{font-size:11px;color:var(--muted);background:#f0e6da;padding:12px;border-radius:7px;margin-bottom:20px;line-height:1.6}.round-overlay{position:absolute;inset:0;z-index:6;background:#f7f0e6ed;backdrop-filter:blur(3px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;border-radius:10px;gap:18px}.round-overlay h2{font-size:28px}.round-overlay p{font-size:13px;color:var(--muted)}.confetti{position:fixed;pointer-events:none;z-index:20;width:7px;height:11px;border-radius:2px;animation:confetti 1.1s ease-out forwards}.tile.fresh{animation:tile-in .35s backwards}.celebrate .cat-card img{animation:cat-bounce .55s ease-in-out}.no-motion *{animation:none!important;transition:none!important}
@keyframes tile-in{from{opacity:0;transform:translateY(-12px) scale(.85)}to{opacity:1;transform:translateY(0) scale(.955)}}@keyframes cat-bounce{0%,100%{transform:translateY(0)}40%{transform:translateY(-5px) rotate(-2deg)}70%{transform:translateY(-2px) rotate(1deg)}}@keyframes confetti{from{opacity:1;transform:translate(0,0) rotate(0)}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--spin))}}@keyframes ember{50%{opacity:.6}}
@media(min-width:1200px){.main-wrap{max-width:1040px}.game-layout{grid-template-columns:minmax(0,1fr) 310px}.tile .letter{font-size:31px}}
@media(max-width:900px){.topbar{padding:22px 25px}.main-wrap{padding:28px 25px 20px}.game-layout{grid-template-columns:minmax(0,1fr) 265px;gap:20px}.game-card{padding:18px 15px 15px}.mode-note{font-size:9px}.cat-card{padding:14px}.collection-card{padding:16px}.tile .letter{font-size:25px}.tile .letter.qu{font-size:18px}.tile .tile-value{font-size:7px}.board-wrap{padding:8px}.board-controls{gap:7px}.secondary{font-size:10px;padding:8px}.tile-key{gap:9px}.welcome-note{display:none}.word-tray strong{font-size:20px}.word-tray.empty strong{font-size:17px}.primary{padding:10px 12px}.scorebar .level-stat strong{font-size:12px}.section-title h2{font-size:17px}.recent-card .section-title>span{font-size:8px}}
@media(max-width:700px){.topbar{padding:18px 20px}.brand{font-size:24px;gap:10px}.brand small{font-size:8px;letter-spacing:.11em}.brand-cat{width:32px;height:29px}.brand-cat:before,.brand-cat:after{width:13px}.nav-link span:not(.count-badge){display:none}nav{gap:6px}.nav-link{padding:6px;gap:5px}.icon-button{width:32px;height:32px}.main-wrap{max-width:560px;padding:24px 16px 18px}.welcome{margin:0 6px 23px}.welcome p:not(.eyebrow){font-size:12px}.welcome .eyebrow{font-size:9px}h1{font-size:33px}.game-layout{display:flex;flex-direction:column;gap:24px}.game-card{width:100%;padding:18px 16px 15px}.board-wrap{padding:10px}.tile .letter{font-size:clamp(23px,6vw,32px)}.tile .letter.qu{font-size:22px}.tile .tile-value{font-size:8px}.game-top{margin-bottom:17px}.mode-note{font-size:11px}.scorebar .level-stat strong{font-size:14px}.word-tray{padding-top:18px}.word-tray strong{font-size:25px}.word-tray.empty strong{font-size:20px}.primary{padding:11px 17px}.board-controls{gap:10px}.secondary{font-size:11px;padding:9px 12px}.bookshop-sidebar{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:14px}.cat-card img{margin-top:8px}.cat-card h2{font-size:21px}.cat-card p{font-size:11px;min-height:32px}.cat-card .eyebrow{font-size:8px}.cat-status{font-size:8px}.cat-status span{width:5px;height:5px}.cat-card-top .paw{display:none}.collection-card{padding:16px 13px}.collection-card .section-title{gap:5px}.collection-card h2{font-size:15px}.collection-card .icon{width:15px}.collection-stats{margin:17px 0 12px}.collection-stats>strong{font-size:33px}.collection-stats>strong span{font-size:20px}.collection-stats p{font-size:9px}.mini-shelf{gap:3px;padding:0 3px}.mini-book{width:9px;flex:1}.mini-book:nth-child(3n){width:11px}.collection-message{font-size:10px;min-height:27px}.collection-link{font-size:10px}.recent-card{grid-column:1/-1;padding:0 5px}.recent-card .section-title>span{font-size:10px}footer{font-size:9px;align-items:flex-start}.tile-key{gap:15px;margin-top:16px}.dictionary-words{grid-template-columns:repeat(3,minmax(0,1fr))}.dictionary-dialog{padding:22px}.dictionary-tools select{width:125px;font-size:12px}.dictionary-tools input{font-size:12px}.dict-word{font-size:11px;padding:9px 7px}.round-overlay h2{font-size:25px}}
@media(max-width:370px){.main-wrap{padding:20px 10px}.topbar{padding:18px 13px}.game-card{padding:15px 12px}.mode-note{font-size:9px}.word-tray.empty strong{font-size:17px}.primary{padding:10px 12px}.tile-key{gap:10px}.bookshop-sidebar{gap:10px}.collection-card h2{font-size:13px}.cat-card h2{font-size:18px}.collection-stats p{font-size:8px}.secondary{padding:8px}.dictionary-words{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.bonus-word{display:flex;justify-content:space-between;gap:10px;margin:12px 0 0;font-size:10px;color:#aa8a62}.bonus-word b{font-weight:600;letter-spacing:.08em}.bonus-word span:last-child{color:#96947f}
.install-button{font-size:11px;border:1px solid #c9b5a8;background:#eadbd0;padding:7px 11px;border-radius:6px;white-space:nowrap}.install-button:hover{background:#ddc6b8}.install-icon{display:block;margin:0 auto 18px;border-radius:18px;box-shadow:0 4px 0 #dfccbb}.install-intro{font:18px/1.4 var(--serif);text-align:center;margin:0 auto 22px;max-width:30ch}.install-guide h3{font-size:20px;margin:20px 0 8px}.install-guide p{font-size:13px;line-height:1.6;color:var(--muted)}.install-guide b{font-weight:600;color:var(--ink)}.install-status{font-size:12px;margin-top:22px;padding:12px;background:#e8eadb;border-radius:7px;color:#788568}.install-save-note{font-size:11px;line-height:1.55;color:var(--muted);margin-top:15px}#install-native{text-align:center;margin-bottom:20px}.footer-status{display:flex;flex-direction:column;align-items:flex-end;gap:4px}#offline-status{color:#819071}.topbar{padding-top:calc(20px + env(safe-area-inset-top))}.main-wrap{padding-bottom:calc(20px + env(safe-area-inset-bottom))}
@media(min-width:701px){.main-wrap{max-width:946px;padding-top:24px}.welcome{margin-bottom:20px}.game-layout{grid-template-columns:minmax(0,1fr) 282px;gap:23px}.game-card{padding:15px 17px 12px}.game-top{margin-bottom:12px}.level-progress{margin:10px 0 13px}.word-tray{min-height:76px;padding-top:12px}.feedback{min-height:29px;padding-bottom:8px}.board-controls{padding-top:10px}.tile-key{margin-top:11px}.bookshop-sidebar{gap:16px}.cat-card{padding:15px}.cat-card img{max-height:180px}.welcome h1{font-size:34px}.welcome p:not(.eyebrow){font-size:12px}.collection-card{padding:18px}.board-wrap{padding:8px}.tile .letter{font-size:27px}}
@media(max-width:700px){.topbar{padding:calc(13px + env(safe-area-inset-top)) 16px 13px}.brand{font-size:22px}.brand small{font-size:7px;margin-top:5px}.brand-cat{width:28px;height:26px;gap:8px}.brand-cat:before,.brand-cat:after{width:11px;height:13px;top:-6px}nav{gap:3px}.nav-link{gap:3px;padding:4px}.nav-link .icon{width:18px}.count-badge{font-size:10px;padding:2px 5px}.icon-button{width:29px;height:29px}.icon-button .icon{width:18px}.install-button{font-size:10px;padding:6px 8px}.main-wrap{padding-top:16px}.welcome{margin-bottom:15px}.welcome h1{font-size:28px;margin:4px 0}.welcome p:not(.eyebrow){display:none}.welcome .eyebrow{font-size:8px}.tiny-flower{font-size:13px}.game-card{padding:13px 12px 12px}.game-top{margin-bottom:10px}.mode-switch button{font-size:11px;padding:5px 13px}.mode-note{font-size:9px}.scorebar strong{font-size:24px}.scorebar .best-stat strong{font-size:18px}.scorebar .level-stat strong{font-size:12px}.label{font-size:8px}.level-progress{margin:9px 0 12px}.board-wrap{padding:7px}.bonus-word{font-size:9px;margin-top:9px}.word-tray{min-height:74px;padding-top:11px;padding-bottom:3px}.word-tray strong{font-size:23px;margin-bottom:2px}.word-tray.empty strong{font-size:19px}.word-tray #word-detail{font-size:10px}.word-tray .primary{font-size:12px;padding:10px 14px}.feedback{min-height:27px;font-size:10px;padding:3px 1px 8px}.board-controls{padding-top:10px;gap:9px}.board-controls .secondary{padding:8px 10px;font-size:10px}.board-controls .text-button{font-size:10px}.tile-key{font-size:8px;margin-top:10px;gap:13px}.tile .letter{font-size:clamp(22px,6vw,29px)}.tile .letter.qu{font-size:20px}.tile .tile-value{font-size:7px}.bookshop-sidebar{margin-top:0}.cat-card h2{font-size:19px}.cat-card{padding:12px}.collection-card{padding:13px}.collection-card h2{font-size:14px}.cat-status{font-size:8px;gap:4px}.footer-status{max-width:175px;text-align:right}footer{margin-top:22px}}
@media(max-width:360px){#sound-button{display:none}.brand{font-size:20px}.brand small{font-size:6px}.game-card{padding:12px 9px}.board-wrap{padding:5px}.tile .letter{font-size:21px}.word-tray.empty strong{font-size:17px}.mode-note{font-size:8px}.tile-key{gap:10px}.collection-card{padding:12px 10px}.collection-card h2{font-size:12px}.collection-card .section-title>.icon{display:none}}
@media(max-width:700px) and (orientation:landscape){.topbar{padding-top:8px;padding-bottom:8px}.welcome{display:none}.main-wrap{padding-top:12px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px}.bookshop-sidebar{display:flex}.cat-card img{max-height:130px}.game-card{padding:10px}.tile .letter{font-size:24px}}
/* App shell: pages share the viewport; the board follows its available rectangle. */
html,body{height:100%;overflow:hidden;overscroll-behavior:none}
body{height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.topbar{width:100%;max-width:980px;padding:calc(11px + env(safe-area-inset-top)) 23px 12px;min-height:62px}
.brand{font-size:23px}.brand small{font-size:7px;margin-top:5px}.brand-cat{width:31px;height:29px}
.main-wrap{width:100%;max-width:980px;min-height:0;margin:auto;padding:14px 23px 9px;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px}
.view{min-height:0;width:100%;height:100%;overflow:hidden;grid-row:1;grid-column:1;position:relative}
.main-wrap footer{grid-row:2;grid-column:1;padding:0;margin:0;font-size:9px;min-height:16px}
.footer-status{flex-direction:row;gap:12px}.footer-status #save-status{display:none}
.page-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0;width:100%;max-width:640px;margin:0 auto;padding:7px 18px calc(7px + env(safe-area-inset-bottom));min-height:64px;background:#f7f1e8;border-top:1px solid var(--line);z-index:10}
.page-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:none;font-size:10px;color:#a28d7f;padding:5px;border-radius:9px;min-height:45px}.page-nav button.active{background:#ebdcd1;color:#9d6d6d}.page-nav .icon{width:19px;height:19px}.nav-glyph{font-size:24px;line-height:19px}.play-page{display:grid;place-items:center}.game-layout{display:block;width:100%;height:100%;max-width:580px;min-height:0}
.game-card{height:100%;min-height:0;display:grid;grid-template-rows:auto auto 3px minmax(0,1fr) auto auto auto auto auto;gap:0;padding:13px 19px 12px}
.game-top{margin:0 0 8px}.scorebar{margin-bottom:10px}.scorebar strong{font-size:25px}.scorebar .level-stat strong{font-size:14px}.level-progress{margin:0}.board-slot{min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;padding:8px 0 4px}.board-wrap{flex-shrink:0;padding:4px;border-radius:9px}.board{height:100%;width:100%;aspect-ratio:auto}.tile .letter{font-size:clamp(17px,3.4dvh,30px)}.tile .letter.qu{font-size:clamp(14px,2.8dvh,23px)}.tile .tile-value{font-size:7px;bottom:9%}.tile .tile-mark{font-size:7px;top:5%}
.bonus-word{margin:4px 0 0;font-size:10px;min-height:15px}.word-tray{min-height:71px;padding:8px 0 4px}.word-tray strong{font-size:23px}.word-tray.empty strong{font-size:20px}.word-tray #word-detail{font-size:10px}.feedback{min-height:24px;max-height:30px;overflow:hidden;font-size:10px;padding:1px 0 7px;line-height:1.3}.board-controls{padding-top:9px;gap:10px}.board-controls .secondary{padding:8px 11px}.tile-key{margin-top:9px;font-size:8px;gap:15px}
.dictionary-page{display:grid;grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto;max-width:780px;justify-self:center;background:#fffaf2;padding:22px;border:1px solid #ddcfc1;border-radius:15px;box-shadow:0 4px 0 #e9ded1}.dialog-heading{margin-bottom:16px}.dialog-heading h2{font-size:30px;margin-top:4px}.page-decoration{font-size:34px;color:#c29e8d}.dictionary-summary{padding-bottom:12px;font-size:12px}.dictionary-tools{margin:12px 0 10px}.dictionary-tools input,.dictionary-tools select{padding:9px 11px}.alphabet{margin:0 0 10px;display:grid;grid-template-columns:repeat(14,1fr);gap:3px}.alphabet button{min-width:0;font-size:10px;padding:5px 2px}.dictionary-tip{font-size:10px;margin-bottom:12px}.dictionary-words{min-height:0;overflow:hidden;grid-auto-rows:36px;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:8px}.dict-word{padding:6px 9px;font-size:12px}.dictionary-bottom{margin-top:12px;gap:10px;font-size:10px;min-height:33px}.dictionary-bottom .secondary{font-size:10px;padding:8px 10px}.dictionary-bottom>span{text-align:center}
.bookshop-page{max-width:780px;justify-self:center;display:flex;flex-direction:column;justify-content:center;gap:24px}.page-heading h1{font-size:34px;margin:4px 0 5px}.page-heading>p:last-child{font-size:12px;color:var(--muted)}.bookshop-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0}.cat-card{padding:16px}.cat-card img{max-height:210px}.recent-card{grid-column:1/-1;padding:0}.bookshop-note{text-align:center;font:14px/1.6 var(--serif);color:#9b7e71}.bookshop-note span{font:11px var(--sans)}
.settings-page{max-width:550px;justify-self:center;background:#fffaf2;padding:24px;border:1px solid #ddcfc1;border-radius:15px;box-shadow:0 4px 0 #e9ded1;display:flex;flex-direction:column}.setting-row{padding:17px 0}.backup-section{padding-top:20px}.credits{margin-top:auto}.settings-page #backup-status{font-size:11px}.guide-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin:15px 0}.guide{min-height:250px}.keyboard-help{font-size:10px}.install-platform{display:flex;justify-content:center;gap:8px}.install-platform .active{background:#d8c3bc;border-color:#b9988b}
@media(max-width:700px){.topbar{padding:calc(9px + env(safe-area-inset-top)) 15px 10px;min-height:58px}.brand{font-size:21px;gap:9px}.brand small{font-size:6px}.brand-cat{width:28px;height:26px}.topbar nav{gap:3px}.topbar #dictionary-button{display:none}.topbar #sound-button{display:none}.main-wrap{padding:8px 10px 6px;gap:5px}.main-wrap footer{font-size:8px;min-height:12px}.footer-status{max-width:none}.page-nav{padding:5px 15px calc(5px + env(safe-area-inset-bottom));min-height:61px}.page-nav button{font-size:9px;gap:3px;min-height:44px}.game-card{padding:10px 12px 9px;border-radius:13px}.game-top{margin-bottom:7px}.mode-switch button{font-size:11px;padding:4px 13px}.mode-note{font-size:9px}.scorebar{margin-bottom:8px}.scorebar strong{font-size:23px}.scorebar .level-stat strong{font-size:12px}.scorebar .best-stat strong{font-size:17px}.board-slot{padding-top:6px}.tile .letter{font-size:clamp(16px,3.3dvh,28px)}.tile .letter.qu{font-size:clamp(13px,2.7dvh,21px)}.word-tray{min-height:64px;padding-top:7px}.word-tray strong{font-size:21px}.word-tray.empty strong{font-size:19px}.word-tray .primary{font-size:12px;padding:9px 14px}.feedback{min-height:24px;max-height:28px;font-size:9px}.board-controls{padding-top:8px;gap:8px}.board-controls .secondary{padding:7px 9px;font-size:10px}.board-controls .text-button{font-size:9px}.tile-key{margin-top:8px;gap:13px;font-size:8px}.bonus-word{font-size:8px}.dictionary-page{padding:15px 13px;border-radius:13px}.dictionary-page .dialog-heading{margin-bottom:12px}.dialog-heading h2{font-size:27px}.eyebrow{font-size:8px}.dictionary-summary{font-size:11px;padding-bottom:10px}.dictionary-tools{margin:11px 0 10px;gap:8px}.dictionary-tools input,.dictionary-tools select{font-size:12px;padding:9px}.dictionary-tools select{width:123px}.dictionary-tip{font-size:9px;line-height:1.4;margin-bottom:11px}.alphabet{gap:2px;margin-bottom:9px}.alphabet button{font-size:9px;padding:4px 1px}.dictionary-words{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:36px;gap:8px}.dict-word{font-size:11px;padding:6px 7px}.dictionary-bottom{font-size:8px;gap:5px;margin-top:9px}.dictionary-bottom .secondary{padding:7px 8px;font-size:9px}.bookshop-page{justify-content:center;gap:20px;padding:8px}.page-heading h1{font-size:29px}.page-heading>p:last-child{font-size:11px}.bookshop-sidebar{gap:12px}.cat-card{padding:11px}.cat-card img{max-height:155px}.collection-card{padding:13px}.cat-card h2{font-size:19px}.cat-card p{font-size:11px}.collection-card h2{font-size:14px}.recent-card h2{font-size:16px}.bookshop-note{font-size:13px}.settings-page{padding:18px 16px}.settings-page .dialog-heading{margin-bottom:17px}.setting-row{padding:17px 0}.backup-section{padding-top:20px}.settings-page .credits{font-size:9px;padding-top:12px}.settings-page .backup-section p{font-size:11px;line-height:1.55}dialog{padding:20px;max-height:calc(100dvh - 32px);overflow:hidden}.install-icon{width:65px;height:65px;margin-bottom:12px}.install-intro{font-size:16px;margin-bottom:15px}.install-guide h3{font-size:18px;margin:15px 0 7px}.install-guide p{font-size:12px;line-height:1.5}.install-status{font-size:11px;margin-top:17px;padding:10px}.install-save-note{font-size:10px;margin-top:11px}.guide{min-height:225px}.guide li{font-size:12px}.keyboard-help{font-size:9px;padding:10px}.guide-pager{margin:12px 0}}
@media(max-height:690px){.topbar{min-height:49px;padding-top:calc(6px + env(safe-area-inset-top));padding-bottom:7px}.brand small{display:none}.main-wrap{padding-top:5px;padding-bottom:4px}.game-card{padding:8px 11px}.game-top{margin-bottom:5px}.scorebar{margin-bottom:6px}.scorebar strong{font-size:20px}.scorebar .level-stat strong{font-size:11px;margin-top:5px}.scorebar .best-stat strong{font-size:16px}.mode-switch button{padding:3px 12px}.tile-key{display:none}.word-tray{min-height:54px;padding-top:4px}.word-tray strong{font-size:19px}.word-tray.empty strong{font-size:17px}.word-tray #word-detail{font-size:9px}.word-tray .label{font-size:7px}.word-tray .primary{padding:8px 12px}.board-controls{padding-top:6px}.feedback{min-height:23px;max-height:25px;font-size:8px}.board-controls .secondary{padding:6px 8px}.page-nav{min-height:53px;padding-top:3px;padding-bottom:calc(3px + env(safe-area-inset-bottom))}.page-nav button{min-height:40px;font-size:8px;gap:2px}.page-nav .icon{width:17px;height:17px}.page-nav .nav-glyph{font-size:20px}.dictionary-page{padding:11px}.dictionary-page .dialog-heading{margin-bottom:9px}.dictionary-page .eyebrow{display:none}.dictionary-page .dialog-heading h2{font-size:25px;margin:0}.dictionary-tip{display:none}.dictionary-summary{padding-bottom:7px}.dictionary-tools{margin:9px 0 7px}.alphabet button{padding:3px 1px}.dictionary-bottom{margin-top:7px}.bookshop-page{gap:13px}.bookshop-page .page-heading h1{font-size:26px}.bookshop-page .page-heading>p:last-child{display:none}.cat-card img{max-height:120px}.collection-stats{margin:12px 0 9px}.collection-stats>strong{font-size:29px}.mini-shelf{margin:10px 0 8px;height:32px}.cat-card p{margin:5px 0 9px;min-height:26px}.cat-status{padding-top:8px}.bookshop-note{display:none}.settings-page{padding:14px}.settings-page .dialog-heading{margin-bottom:10px}.setting-row{padding:12px 0}.backup-section{padding-top:13px}.backup-section h3{font-size:18px}.backup-actions{margin:11px 0}.settings-page .credits{font-size:8px}.guide{min-height:190px}.guide li{font-size:11px;margin-bottom:11px}.keyboard-help{display:none}.dialog-heading{margin-bottom:14px}.install-icon{width:48px;height:48px;margin-bottom:9px}.install-intro{font-size:14px;margin-bottom:11px}.install-guide h3{margin-top:12px;font-size:17px}.install-guide p{font-size:11px}.install-status{font-size:10px;margin-top:12px}.install-save-note{font-size:9px;margin-top:9px}}
@media(orientation:landscape) and (max-height:580px){.topbar{display:none}.main-wrap{padding:7px 12px 4px;max-width:900px}.page-nav{position:absolute;right:8px;top:10px;bottom:10px;width:60px;max-width:none;display:flex;flex-direction:column;justify-content:center;gap:8px;border:0;background:none;padding:0}.page-nav button{width:58px;min-height:52px}.main-wrap{padding-right:80px}.game-layout{max-width:none}.game-card{grid-template-columns:minmax(0,1fr) 210px;grid-template-rows:auto auto auto auto minmax(0,1fr) auto;gap:4px 20px;padding:12px}.board-slot{grid-column:1;grid-row:1/7;padding:0}.game-top{grid-column:2;grid-row:1}.scorebar{grid-column:2;grid-row:2}.level-progress{grid-column:2;grid-row:3}.bonus-word{grid-column:2;grid-row:4;flex-direction:column;gap:2px}.word-tray{grid-column:2;grid-row:5;align-self:center;flex-wrap:wrap}.word-tray .primary{width:100%;margin-top:7px}.feedback{display:none}.board-controls{grid-column:2;grid-row:6;flex-wrap:wrap;gap:6px}.board-controls .text-button{padding:4px;margin:auto}.tile-key{display:none}.tile .letter{font-size:clamp(16px,6dvh,27px)}.dictionary-page{padding:11px 16px}.dictionary-page .dialog-heading{display:none}.dictionary-tip,.alphabet{display:none}.dictionary-tools{margin:8px 0}.dictionary-words{grid-template-columns:repeat(5,minmax(0,1fr))}.settings-page{padding:12px 16px;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;max-width:none}.settings-page .dialog-heading{grid-column:1;grid-row:1;margin:0}.settings-page .setting-row{grid-column:1;padding:8px 0}.settings-page .backup-section{grid-column:2;grid-row:1/4;margin:0;padding:0;border:0}.settings-page .credits{grid-column:1/-1;padding-top:4px}.bookshop-page{justify-content:start;gap:8px}.bookshop-page>.page-heading{display:none}.bookshop-sidebar{grid-template-columns:1fr 1fr}.cat-card img{max-height:95px}.recent-card{display:none}.cat-card h2{font-size:18px}.cat-card p{min-height:0}.bookshop-note{display:none}}
.coin-balance{display:flex;align-items:center;gap:5px;border:1px solid #dac49b;background:#f1e4c5;border-radius:7px;padding:6px 9px;font-size:12px;color:#9d7e43;font-variant-numeric:tabular-nums;white-space:nowrap}.coin-icon{width:16px;height:16px;background:#dcb66e;color:#fff3cf;border:1px solid #bd9850;border-radius:50%;font-size:11px;display:grid;place-items:center}.bookshop-page{justify-content:start;gap:13px}.bookshop-page .page-heading h1{font-size:29px;margin:2px 0 4px}.bookshop-page .bookshop-sidebar{flex-shrink:0;gap:14px}.bookshop-page .cat-card{display:grid;grid-template-columns:120px 1fr;grid-template-rows:auto auto auto;align-items:center;text-align:left;padding:13px;gap:0 10px}.bookshop-page .cat-card-top{display:none}.bookshop-page .cat-card img{grid-column:1;grid-row:1/4;width:120px;height:auto;margin:0}.bookshop-page .cat-card h2{font-size:21px;align-self:end}.bookshop-page .cat-card p{font-size:12px;min-height:0;margin:4px 0 8px}.bookshop-page .cat-status{font-size:8px;justify-content:start;align-self:start;padding-top:7px}.bookshop-page .collection-card{padding:12px 16px}.bookshop-page .collection-card h2{font-size:15px}.bookshop-page .collection-stats{margin:9px 0 8px}.bookshop-page .collection-stats>strong{font-size:31px}.bookshop-page .collection-stats>strong span{font-size:18px}.bookshop-page .collection-stats p{font-size:9px}.bookshop-page .mini-shelf{display:none}.bookshop-page .collection-message{margin:8px 0;font-size:10px}.bookshop-page .collection-link{padding-top:8px;font-size:10px}.bookshop-page .recent-card,.bookshop-note{display:none}.shop-area{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;min-height:0;flex:1}.shop-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.shop-heading h2{font-size:21px}.shop-heading>span{font-size:10px;color:var(--muted)}.shop-books{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:148px;gap:10px;align-content:start;min-height:0;overflow:hidden}.shop-book{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px;background:#fff8ef;border:1px solid #dfcec0;border-radius:9px;overflow:hidden}.book-cover{border-radius:2px 5px 5px 2px;background:#e3c3ba;border:1px solid #b78d82;border-left:6px solid #b78d82;box-shadow:3px 3px 0 #e4d7c5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:8px 5px;gap:7px;color:#88695e;height:124px}.book-cover h3{font-size:16px;line-height:1.12;font-weight:400}.book-ornament{font-size:21px}.book-edition{font-size:7px;letter-spacing:.07em}.shop-book.sage .book-cover{background:#cad4bd;border-color:#96a486;color:#71825f}.shop-book.lavender .book-cover{background:#d6c9df;border-color:#af99bd;color:#867095}.shop-book.honey .book-cover{background:#ead2a2;border-color:#c3a46b;color:#9d804b}.shop-book.blue .book-cover{background:#c7d8df;border-color:#97b0bd;color:#718b96}.shop-book.peach .book-cover{background:#e8c7ac;border-color:#bb997d;color:#9d7a60}.book-info{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:12px;min-width:0}.book-info p{font-size:10px;color:#a18978;line-height:1.5}.buy-book{background:#bd8b83;border:1px solid #a67b71;border-radius:6px;color:#fff7ed;padding:9px 5px;font-size:10px;line-height:1.35}.buy-book:disabled{background:#eee1d5;border-color:#dfcdbd;color:#a08b79;opacity:1}.shop-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted)}.shop-bottom .secondary{font-size:10px;padding:7px 10px}.shop-feedback{font-size:10px;min-height:16px;color:#927567;text-align:center}
@media(max-width:700px){.coin-balance{font-size:11px;padding:5px 7px;gap:4px}.topbar{padding-left:12px;padding-right:12px}.brand{font-size:20px;gap:8px}.brand-cat{width:25px;height:24px}.topbar nav{gap:4px}.install-button{padding:5px 7px;font-size:9px}.topbar #settings-button{display:none}.bookshop-page{padding:3px;gap:12px}.bookshop-page .page-heading h1{font-size:27px}.bookshop-page .page-heading>p:last-child{font-size:10px}.bookshop-page .bookshop-sidebar{gap:10px}.bookshop-page .cat-card{display:flex;flex-direction:column;padding:9px;text-align:center;gap:0}.bookshop-page .cat-card img{width:100%;max-height:75px;object-fit:contain}.bookshop-page .cat-card h2{font-size:16px;align-self:center}.bookshop-page .cat-card p{font-size:10px;margin:4px 0 0;min-height:25px;line-height:1.3}.bookshop-page .cat-status{display:none}.bookshop-page .collection-card{padding:10px}.bookshop-page .collection-card h2{font-size:13px}.bookshop-page .collection-card .section-title>.icon{display:none}.bookshop-page .collection-stats{margin:8px 0 7px}.bookshop-page .collection-stats>strong{font-size:27px}.bookshop-page .collection-stats p{font-size:8px}.bookshop-page .collection-message{font-size:9px;min-height:0;margin:6px 0}.bookshop-page .collection-link{font-size:9px;padding-top:6px}.shop-heading h2{font-size:18px}.shop-heading>span{font-size:9px}.shop-books{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:148px;gap:10px}.shop-book{padding:8px;gap:8px;grid-template-columns:1fr .85fr}.book-cover{height:130px;padding:8px 4px;border-left-width:4px;gap:7px}.book-cover h3{font-size:14px}.book-ornament{font-size:18px}.book-info{gap:10px}.book-info p{font-size:9px}.buy-book{font-size:9px;padding:8px 4px}.shop-feedback{font-size:9px;min-height:24px;line-height:1.3}.shop-area{gap:8px}.shop-bottom .secondary{font-size:9px;padding:7px 9px}}
@media(max-height:690px){.bookshop-page{gap:9px}.bookshop-page .page-heading h1{font-size:24px}.bookshop-page .page-heading .eyebrow{display:none}.bookshop-page .cat-card img{max-height:62px}.bookshop-page .collection-card{padding:9px}.bookshop-page .cat-card p{font-size:9px;margin-top:2px}.bookshop-page .collection-message{font-size:8px}.bookshop-page .collection-link{padding-top:4px}.shop-heading h2{font-size:17px}.shop-feedback{min-height:20px;font-size:8px}.shop-area{gap:7px}}
@media(orientation:landscape) and (max-height:580px){.bookshop-page{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px}.bookshop-page .bookshop-sidebar{display:flex;flex-direction:column;gap:10px;grid-column:1;grid-row:1}.bookshop-page .cat-card{display:none}.bookshop-page .shop-area{grid-column:2;grid-row:1;gap:6px}.shop-books{grid-template-columns:repeat(2,minmax(0,1fr))}.bookshop-page .collection-card{padding:15px}.bookshop-page .collection-stats{margin:16px 0 10px}.shop-feedback{display:none}.bookshop-page .page-heading{display:none}}
.alphabet{grid-template-columns:repeat(9,minmax(0,1fr));gap:4px}.alphabet button{padding:6px 3px;font-size:10px;letter-spacing:0}.dict-word.missing{font-size:8px;letter-spacing:2px;color:#bca795}.dict-word.missing .word-mark{font-size:9px;letter-spacing:0;border-left:1px solid #e1d1c0;padding-left:5px}.dictionary-tools .search-label{min-width:0}.dictionary-tools input{font-size:12px}
@media(max-width:700px){.alphabet{grid-template-columns:repeat(5,minmax(0,1fr))}.alphabet button{font-size:9px;padding:5px 2px}.dictionary-tools input{font-size:10px}.dict-word.missing{font-size:6px;letter-spacing:1px}.dict-word.missing .word-mark{font-size:8px}.dictionary-words{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(orientation:landscape) and (max-height:580px){.alphabet{display:none}}
.dictionary-page>.dialog-heading{grid-row:1}.dictionary-summary{grid-row:2}.dictionary-tools{grid-row:3}.alphabet{grid-row:4}.dictionary-tip{grid-row:5}.dictionary-words{grid-row:6}.dictionary-bottom{grid-row:7}
@media(max-height:480px) and (orientation:portrait){.dictionary-page>.dialog-heading,.dictionary-page>.alphabet{display:none}.settings-page .setting-row small{display:none}.settings-page .credits{display:none}}
@media(min-width:701px) and (min-height:581px){
  .topbar{width:calc(100% - 46px);max-width:780px;height:70px;min-height:70px;padding:13px 20px}
  .main-wrap{max-width:826px;padding:12px 23px 8px}
  .view,.dictionary-page,.bookshop-page,.settings-page{max-width:780px}
  .game-layout{max-width:none}
  .page-nav{width:calc(100% - 46px);max-width:780px;height:70px;min-height:70px;padding:8px 18px}
  .page-nav button{min-height:52px}
}
.shop-books{grid-template-rows:repeat(var(--shop-rows,1),minmax(0,1fr));grid-auto-rows:auto;align-content:stretch}
.shop-book{height:100%;min-height:0;container-type:size;align-items:stretch}
.book-cover{height:100%;min-height:0;padding:clamp(7px,5cqh,15px) 6px;gap:clamp(7px,5cqh,14px)}
.book-cover h3{font-size:clamp(14px,9cqh,23px)}
.book-ornament{font-size:clamp(18px,13cqh,32px)}
.book-edition{font-size:clamp(7px,4cqh,10px)}
.book-info p{font-size:clamp(9px,5cqh,12px)}
.buy-book{font-size:clamp(9px,5cqh,12px);padding:clamp(8px,5cqh,13px) 5px}
@media(min-width:701px) and (min-height:581px){
  .game-card{grid-template-columns:minmax(0,1fr) 215px;grid-template-rows:auto auto 3px auto minmax(0,1fr) auto auto auto;gap:12px 22px;padding:18px}
  .board-slot{grid-column:1;grid-row:1/9;padding:0}
  .game-top{grid-column:2;grid-row:1;flex-direction:column;align-items:stretch;gap:10px;margin:0}
  .mode-switch{justify-content:stretch}.mode-switch button{flex:1;padding:7px 10px;font-size:12px}
  .mode-note{text-align:center;font-size:10px}
  .scorebar{grid-column:2;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:15px 8px;margin:4px 0 0}
  .scorebar>div:first-child{grid-column:1/-1;text-align:center}
  .scorebar>div:first-child strong{font-size:36px}
  .scorebar .level-stat{text-align:left}.scorebar .level-stat strong{font-size:13px;margin-top:6px}.scorebar .best-stat strong{font-size:21px;margin-top:3px}
  .level-progress{grid-column:2;grid-row:3}
  .bonus-word{grid-column:2;grid-row:4;flex-direction:column;gap:8px;font-size:10px;margin:2px 0}
  .word-tray{grid-column:2;grid-row:5;align-self:center;flex-wrap:wrap;gap:8px;min-height:0;padding:8px 0}
  .word-tray>div{flex-basis:calc(100% - 40px)}
  .word-tray strong{font-size:27px}.word-tray.empty strong{font-size:25px;line-height:1.15;margin:7px 0}
  .word-tray #word-detail{font-size:11px;line-height:1.5;margin-top:5px}
  .word-tray .collect{width:100%;margin-top:8px;padding:13px;font-size:14px}
  .feedback{grid-column:2;grid-row:6;min-height:38px;max-height:60px;font-size:10px;line-height:1.45;padding:0}
  .board-controls{grid-column:2;grid-row:7;flex-wrap:wrap;gap:8px;padding-top:12px}
  .board-controls .secondary{flex:1;font-size:10px;padding:9px 7px;gap:5px;white-space:nowrap}
  .board-controls .text-button{flex-basis:100%;text-align:center;margin:0;padding:4px 0}
  .tile-key{grid-column:2;grid-row:8;flex-wrap:wrap;gap:9px 13px;margin:0;font-size:8px}
  .tile .letter{font-size:clamp(25px,4dvh,36px)}.tile .letter.qu{font-size:clamp(20px,3.2dvh,28px)}.tile .tile-value{font-size:8px}
}
/* Miso’s reading-room palette and identity. */
:root{--paper:#f1e4db;--ink:#62504a;--muted:#a18477;--rose:#b88682;--pink:#e8d1c5;--sage:#99a98b;--line:#ddc7b9}
body{background-color:var(--paper);background-image:radial-gradient(#bda39025 .6px,transparent .6px)}
.brand{gap:9px}.brand-art{display:block;width:58px;height:40px;object-fit:contain}.brand small{letter-spacing:.12em;font-size:6.5px;color:#a38172}
.topbar,.page-nav{background:#f1e4db}.page-nav button.active{background:#e3c9bb;color:#946b60}
.game-card,.dictionary-page,.settings-page{background:#faf1e8;border-color:#dec5b4;box-shadow:0 4px 0 #dfc8b8}
.cat-card{background:#ecdacf;background-image:radial-gradient(ellipse at 50% 40%,#fff1df66,transparent 70%);border-color:#dec5b8}
.collection-card{background:#ebece0;border-color:#d2d6c1}.shop-book{background:#fbf2e9;border-color:#dec7b7}
.mode-switch{background:#e9d9cc}.mode-switch button.active{background:#fff6ed}
.secondary{background:#eddfd1;border-color:#d9c0ac}.secondary:hover{background:#e5d1c0}
.primary{background:#b5867f;border-color:#a37670;box-shadow:0 3px 0 #966961}.primary:hover:not(:disabled){background:#a87973}
.dict-word{background:#f1e5d8;border-color:#e2cdbc}.dictionary-tools input,.dictionary-tools select{background:#f6eade;border-color:#ddc4b1}.alphabet button.active{background:#dfc4b4}
.bookshop-page .cat-card p{font-size:13px;color:#a28172}.cat-status span{background:#9fa98d}
.install-button{background:#e7cfbf;border-color:#cda994}.install-intro,.bookshop-note{color:#95786b}
@media(max-width:700px){.brand{font-size:18px;gap:5px}.brand-art{width:40px;height:33px}.brand small{font-size:5px;letter-spacing:.07em}.bookshop-page .cat-card p{font-size:10px}}
@media(max-width:360px){.brand{font-size:17px}.brand-art{width:35px;height:30px}.brand small{font-size:4.5px}.coin-balance{padding:5px 6px}.install-button{padding:5px 6px}}
.wallet-card{padding:14px 17px;background:#ecdacf;border:1px solid #dec5b8;border-radius:13px;display:flex;flex-direction:column;justify-content:center}
.wallet-card h2{font-size:17px}.wallet-card .coin-icon{width:18px;height:18px;font-size:12px}
.wallet-amount{display:flex;align-items:baseline;gap:9px;margin:8px 0 4px}.wallet-amount strong{font:38px/1.1 var(--serif);color:#a88258;font-variant-numeric:tabular-nums}.wallet-amount>span{font-size:10px;color:#a08778}
.wallet-card>p{font:italic 12px/1.5 var(--serif);color:#a08172}.wallet-note{display:flex;align-items:center;gap:6px;border-top:1px solid #d8bfb0;padding-top:9px;margin-top:12px;font-size:9px;color:#9c8071}.wallet-note>span{height:6px;width:6px;border-radius:50%;background:#a0aa8e;flex-shrink:0}
.bookshop-page #cat-message{font-family:var(--serif);font-style:italic;color:#a18578}.celebrate .brand-art{animation:cat-bounce .55s ease-in-out}
@media(max-width:700px){.wallet-card{padding:11px 12px}.wallet-card h2{font-size:14px}.wallet-card .coin-icon{width:15px;height:15px;font-size:10px}.wallet-amount{gap:6px;margin:8px 0 4px}.wallet-amount strong{font-size:31px}.wallet-amount>span{font-size:8px}.wallet-card>p{font-size:10px;line-height:1.4}.wallet-note{font-size:8px;padding-top:7px;margin-top:9px;align-items:flex-start}.wallet-note>span{margin-top:3px;width:5px;height:5px}.bookshop-page #cat-message{font-size:12px}}
@media(max-height:690px){.wallet-card{padding:9px 12px}.wallet-card h2{font-size:13px}.wallet-amount strong{font-size:27px}.wallet-note{font-size:7px;padding-top:5px;margin-top:7px}.wallet-card>p{font-size:9px}}
@media(orientation:landscape) and (max-height:580px){.wallet-card{display:none}}
.cat-play-card{display:grid;place-items:center;background:#ecdacf;border:1px solid #dec5b8;border-radius:13px;padding:9px 12px;min-height:0;overflow:hidden}
.cat-play-card img{display:block;width:100%;height:100%;max-height:142px;object-fit:contain}
@media(max-width:700px){.cat-play-card{padding:9px 7px}.cat-play-card img{max-height:122px}}
@media(max-height:690px){.cat-play-card{padding:5px}.cat-play-card img{max-height:103px}}
@media(orientation:landscape) and (max-height:580px){.cat-play-card{display:none}}

.brand-title{font:inherit;margin:0}.noscript-message{position:fixed;inset:0;z-index:1000;background:#f7f1e8;padding:10vh max(24px,calc((100vw - 640px)/2));line-height:1.4}.noscript-message h1{font:32px Georgia,serif;margin:0 0 20px}.noscript-message p{font-size:18px;margin-bottom:16px}
