@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#fbf1d9;--paper-2:#f3e3bd;--ink:#3b2a1a;--ink-soft:#7a6247;--wood:#6b4226;--wood-dark:#472a16;--terracotta:#c8553d;--terracotta-dark:#9d3c29;--olive:#6a7b3a;--sun:#f2b632;--good:#4f8a3c;--font-pixel:"Pixelify Sans", "Courier New", monospace;--font-body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--font-body);-webkit-tap-highlight-color:transparent;background:#2c3a1e;margin:0;font-size:16px;overflow:hidden}#game{position:fixed;inset:0}#game canvas{display:block}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}button{font:inherit;color:inherit;cursor:pointer}[hidden]{display:none!important}.muted{color:var(--ink-soft);font-size:.9rem}.center{text-align:center}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.center{justify-content:center}.col{flex-direction:column;gap:8px;display:flex}.icon{image-rendering:pixelated;object-fit:contain;vertical-align:middle}#hud{pointer-events:none;padding:max(8px, env(safe-area-inset-top)) 10px max(10px, env(safe-area-inset-bottom));flex-direction:column;display:flex;position:absolute;inset:0}#hud>*{pointer-events:none}#hud button,#hud .pill{pointer-events:auto}.hud-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.hud-left,.hud-right{flex-wrap:wrap;gap:6px;display:flex}.hud-right{justify-content:flex-end}.pill{background:var(--paper);border:3px solid var(--wood);font-family:var(--font-pixel);box-shadow:0 3px 0 var(--wood-dark);white-space:nowrap;border-radius:12px;align-items:center;gap:6px;padding:4px 10px;font-size:.95rem;display:inline-flex}.pill-btn{position:relative}.pill-btn:active{box-shadow:0 1px 0 var(--wood-dark);transform:translateY(2px)}.hud-day{color:var(--terracotta-dark);font-weight:700}.meter{background:#d9c69b;border-radius:6px;width:70px;height:10px;overflow:hidden}.meter i{background:var(--sun);height:100%;transition:width .3s;display:block}.meter i.low{background:var(--terracotta)}.dot{background:var(--terracotta);color:#fff;text-align:center;border:2px solid var(--paper);border-radius:11px;min-width:22px;height:22px;padding:0 5px;font-size:.8rem;line-height:22px;position:absolute;top:-8px;right:-8px}.goal{color:#fff6dc;text-align:center;background:#3b2a1ad1;border-radius:14px;align-self:center;max-width:min(92vw,560px);margin-top:8px;padding:5px 14px;font-size:.92rem}.hud-bottom{justify-content:space-between;align-items:flex-end;gap:10px;margin-top:auto;display:flex}.seeds{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.tools{flex-wrap:wrap;gap:5px;display:flex}.tool-name{color:#fff6dc;background:#3b2a1ad1;border-radius:10px;padding:2px 10px;font-size:.85rem}.tool-name span{font-family:var(--font-pixel);color:#ffe2a0}.tool{background:var(--paper);border:3px solid var(--wood);width:54px;height:54px;box-shadow:0 3px 0 var(--wood-dark);border-radius:12px;justify-content:center;align-items:center;padding:4px;display:flex;position:relative}.tool .icon{width:36px;height:36px}.tool.selected{border-color:var(--terracotta);box-shadow:0 6px 0 var(--wood-dark), 0 0 0 3px #f2b6328c;background:#fff3cf;transform:translateY(-6px)}.tool-key{font-family:var(--font-pixel);color:var(--ink-soft);font-size:.7rem;position:absolute;top:0;left:3px}.tool-count{font-family:var(--font-pixel);background:var(--paper);border-radius:6px;padding:0 3px;font-size:.85rem;position:absolute;bottom:0;right:3px}.tool-water{background:#d9c69b;border-radius:3px;height:5px;position:absolute;bottom:4px;left:6px;right:6px;overflow:hidden}.tool-water i{background:#4aa3df;height:100%;display:block}.action{background:var(--terracotta);color:#fff;border:3px solid var(--wood-dark);font-family:var(--font-pixel);box-shadow:0 4px 0 var(--wood-dark);border-radius:14px;margin-left:auto;padding:10px 16px;font-size:1.05rem}.action:active{box-shadow:0 1px 0 var(--wood-dark);transform:translateY(3px)}kbd{font-family:var(--font-pixel);background:#ffffff40;border-radius:5px;padding:0 6px}#toasts{pointer-events:none;z-index:60;flex-direction:column;align-items:center;gap:6px;width:max-content;max-width:92vw;display:flex;position:absolute;top:108px;left:50%;transform:translate(-50%)}.toast{background:var(--paper);border:3px solid var(--wood);box-shadow:0 3px 0 var(--wood-dark);text-align:center;border-radius:12px;padding:6px 14px;font-weight:700;transition:opacity .4s,transform .4s;animation:.2s ease-out pop}.toast-good{border-color:var(--good)}.toast-warn{border-color:var(--terracotta)}.toast.out{opacity:0;transform:translateY(-8px)}@keyframes pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.backdrop{z-index:40;background:#1e160c80;justify-content:center;align-items:center;padding:14px;animation:.15s fade;display:flex;position:absolute;inset:0}.backdrop-dialog{background:linear-gradient(#1e160c00 30%,#1e160c8c);align-items:flex-end;padding:10px}.backdrop-night{background:#121630db}@keyframes fade{0%{opacity:0}to{opacity:1}}.panel{background:var(--paper);border:4px solid var(--wood);box-shadow:0 6px 0 var(--wood-dark), inset 0 0 0 3px var(--paper-2);border-radius:16px;flex-direction:column;gap:12px;width:min(560px,100%);max-height:92vh;padding:18px 20px;display:flex;overflow:auto}.panel-title{font-family:var(--font-pixel);color:var(--terracotta-dark);text-align:center;margin:0;font-size:1.5rem}.panel p{margin:0}.btn{background:var(--paper-2);border:3px solid var(--wood);box-shadow:0 3px 0 var(--wood-dark);border-radius:12px;padding:8px 14px;font-weight:800}.btn:active{box-shadow:0 1px 0 var(--wood-dark);transform:translateY(2px)}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:var(--terracotta);color:#fff;border-color:var(--wood-dark)}.btn.ghost{box-shadow:none;color:var(--wood);text-underline-offset:3px;background:0 0;border-color:#0000;padding:6px 8px;text-decoration:underline}.btn.small{padding:5px 10px;font-size:.9rem}.link{color:var(--wood);background:0 0;border:0;align-self:flex-start;padding:2px 0;font-size:.85rem;text-decoration:underline}.text{min-width:0;font:inherit;border:3px solid var(--wood);color:var(--ink);background:#fffaf0;border-radius:12px;flex:1;padding:9px 12px;font-size:1.05rem}.text:focus{outline:3px solid var(--sun)}.accents{gap:4px;display:flex}.accent{background:#fffaf0;border:2px solid #c9b189;border-radius:8px;width:32px;height:30px;font-weight:700}.chip{border:2px solid var(--wood);box-shadow:0 2px 0 var(--wood-dark);background:#fffaf0;border-radius:10px;padding:5px 10px;font-weight:700}.chip-on{background:#ffe9b0}.toggle{align-items:center;gap:10px;font-weight:700;display:flex}.toggle input{width:20px;height:20px;accent-color:var(--terracotta)}.it{font-size:1.12em;line-height:1.55}.w{cursor:pointer;border-radius:4px;padding:0 1px;transition:filter .4s,background .2s}.w:hover{background:#f2b6324d}.w-new{border-bottom:2px dotted var(--terracotta)}.w-extra,.w-unknown{border-bottom:2px dotted var(--ink-soft)}.w.fog{filter:blur(4.5px);-webkit-user-select:none;user-select:none;background:#7a62472e}.w-learning{border-bottom:2px dotted #6a7b3a8c}.w.peeked{background:#f2b63240}.popover{z-index:100;border:3px solid var(--wood);box-shadow:0 4px 0 var(--wood-dark);background:#fffaf0;border-radius:12px;max-width:260px;padding:8px 12px;animation:.12s ease-out pop;position:fixed}.popover-head{justify-content:space-between;align-items:center;gap:10px;font-size:1.15rem;display:flex}.popover-pt{color:var(--terracotta-dark);font-weight:700}.popover-status{color:var(--ink-soft);margin-top:3px;font-size:.8rem}.mini{background:0 0;border:0;padding:0 2px;font-size:1rem}.dialog{flex-direction:column;gap:8px;width:min(760px,100%);max-height:88vh;display:flex}.dialog-main{align-items:flex-end;gap:10px;display:flex}.portrait{width:132px;height:auto;image-rendering:pixelated;filter:drop-shadow(0 4px #00000040);flex-shrink:0;margin-bottom:-6px}.speech{background:var(--paper);border:4px solid var(--wood);box-shadow:0 5px 0 var(--wood-dark);border-radius:16px;flex:1;min-width:0;padding:10px 14px}.speech-head{font-family:var(--font-pixel);color:var(--terracotta-dark);align-items:center;gap:10px;display:flex}.hearts{color:var(--terracotta);letter-spacing:1px}.role{font-family:var(--font-body);color:var(--ink-soft);font-size:.78rem}.badge{font-family:var(--font-body);background:var(--paper-2);color:var(--ink-soft);border-radius:8px;padding:1px 7px;font-size:.72rem}.speech-text{min-height:2.4em;padding:4px 0;font-size:1.25rem}.speech-text span{transition:opacity .15s}.speech-pt{color:var(--ink-soft);border-top:2px dashed #d9c69b;padding-top:4px;font-style:italic}.speech-tools{flex-wrap:wrap;gap:4px;display:flex}.dots i{background:var(--ink-soft);border-radius:50%;width:8px;height:8px;margin-right:5px;animation:.9s infinite bounce;display:inline-block}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.you{border:3px solid var(--olive);background:#fff8e6;border-radius:14px 14px 2px;align-self:flex-end;max-width:80%;padding:5px 12px}.you-label{color:var(--olive);font-weight:800}.correction{border:3px solid var(--olive);background:#eef3dc;border-radius:12px;flex-direction:column;padding:6px 12px;display:flex}.correction-label{color:var(--olive);font-size:.8rem;font-weight:800}.correction small{color:var(--ink-soft)}.outcomes{border:3px solid var(--sun);background:#fff3cf;border-radius:12px;flex-direction:column;gap:2px;padding:6px 12px;font-weight:700;display:flex}.outcome{align-items:baseline;gap:8px;display:flex}.outcome.warn{color:var(--terracotta-dark)}.tab-actions{color:var(--olive);margin-left:auto}.option.action-row{text-align:left;width:100%;font:inherit;justify-content:flex-start;padding:8px 12px}.action-row .option-text{text-align:left;align-items:flex-start}.action-row:disabled{opacity:.6;cursor:default}.action-row:not(:disabled):hover,.gift-item:hover{background:#ffefc4}.action-mark{font-size:1.5rem}.gift-item{font:inherit;cursor:pointer}.taste{color:var(--ink-soft)}.taste.love,.taste.like{color:var(--terracotta-dark);font-weight:800}.correction.ok{border-color:var(--good);background:#e3f0d2}.correction.ok .correction-label{color:var(--good)}.correction.fix{border-color:var(--terracotta);background:#fbe6d4}.correction.fix .correction-label{color:var(--terracotta-dark)}.ideas{flex-direction:column;gap:2px;display:flex}.ideas .row{justify-content:space-between}.link.pay{color:var(--terracotta-dark);align-self:auto;font-weight:700}.link.pay:disabled{opacity:.5;cursor:default}.ideas .option{margin-top:2px}.ideas ul{color:var(--ink-soft);margin:0;padding-left:20px;font-size:.92rem}.reply{background:var(--paper);border:4px solid var(--wood);box-shadow:0 5px 0 var(--wood-dark);border-radius:16px;flex-direction:column;gap:8px;padding:8px 12px 12px;display:flex;overflow:auto}.tabs{gap:4px;display:flex}.tab{font-family:var(--font-pixel);color:var(--ink-soft);background:0 0;border:0;border-bottom:3px solid #0000;padding:3px 10px}.tab.active{color:var(--terracotta-dark);border-bottom-color:var(--terracotta)}.reply-body{flex-direction:column;gap:7px;display:flex}.option{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px 6px 12px;display:flex}.option-text{flex-direction:column;min-width:0;display:flex}.option-text small{color:var(--ink-soft)}.built{background:#fffaf0;border:2px dashed #c9b189;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:6px 8px;display:flex}.bank{flex-wrap:wrap;gap:6px;display:flex}.mic{padding:8px 12px}.mic.recording{background:var(--terracotta);color:#fff;animation:1s infinite pulse}@keyframes pulse{50%{box-shadow:0 3px 0 var(--wood-dark), 0 0 0 8px #c8553d4d}}.letter{background:#fffaf0 repeating-linear-gradient(#0000 0 31px,#ecdcb6 31px 32px);border:2px solid #d9c69b;border-radius:6px;padding:14px 18px;box-shadow:2px 3px #d9c69b}.letter-day{font-family:var(--font-pixel);color:var(--ink-soft);font-size:.85rem}.letter-body{margin:0;font-size:1.2rem;line-height:32px}.letter-sign{text-align:right;margin:4px 0 0;font-style:italic}.letter-pt{color:var(--ink-soft);border-top:2px dashed #d9c69b;padding-top:6px;margin-top:8px!important}.sign{border-color:var(--wood-dark);width:min(420px,100%);box-shadow:0 6px 0 var(--wood-dark), inset 0 0 0 3px #b98848;background:#c99a5b}.sign-text{font-family:var(--font-pixel);text-align:center;color:#2e1c0e;font-size:1.5rem}.sign .muted{color:#4a321c}.garden{width:min(720px,100%)}.garden-grid{border:3px solid var(--wood-dark);background:#8a6a3f;border-radius:12px;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:8px;min-height:90px;max-height:50vh;padding:10px;display:grid;overflow:auto}.plant{color:#fff6dc;background:#a17f4f;border:2px solid #6f5330;border-radius:10px;flex-direction:column;justify-content:flex-end;align-items:center;gap:1px;min-height:104px;padding:6px 4px 4px;display:flex}.plant img{height:52px;image-rendering:pixelated}.plant-word{font-size:.95rem;font-weight:800}.plant-note{opacity:.85;font-size:.7rem}.plant-ripe{border-color:var(--sun);background:#c79a3e;animation:1.4s infinite glow}@keyframes glow{50%{box-shadow:0 0 0 4px #f2b63273}}.speech-feedback{text-align:left;border:3px solid var(--terracotta);background:#fbe6d4;border-radius:12px;flex-direction:column;gap:2px;padding:6px 12px;display:flex}.speech-feedback .spelled{font-family:var(--font-pixel);letter-spacing:1px;font-size:1.2em}.speech-feedback .missed{color:var(--terracotta-dark);text-decoration:underline;text-decoration-thickness:3px}.speech-feedback .tips{color:var(--ink-soft);margin:2px 0 0;padding-left:18px;font-size:.9rem}.challenge{width:min(440px,100%)}.challenge kbd,.btn.ghost kbd,.option-btn kbd{background:#3b2a1a1a;border:1px solid #3b2a1a59;padding:0 5px;font-size:.75em}.challenge-word{font-family:var(--font-pixel);text-align:center;color:var(--terracotta-dark);min-height:1.4em;font-size:2rem}.challenge-options{flex-direction:column;gap:8px;display:flex}.option-btn{text-align:center;font-size:1.05rem}.option-btn.right{border-color:var(--good);background:#cfe6b6}.option-btn.wrong{border-color:var(--terracotta);background:#f3c3b6}.challenge-feedback{text-align:center;min-height:1.5em}.lesson-built{border-top:2px dashed #5a3c1e40;min-height:32px;margin-top:6px;padding-top:6px;font-weight:700}.lesson-bank{flex-wrap:wrap}.challenge-meaning{text-align:center;color:var(--olive);font-size:1.3rem;font-weight:800}.seed-head{background:var(--paper-2);border-radius:12px;align-items:center;gap:10px;padding:6px 12px;font-weight:800;display:flex}.seed-head small{font-weight:400;display:block}.tag{background:var(--sun);color:var(--ink);border-radius:6px;margin-left:6px;padding:0 6px;font-size:.7rem;font-weight:800;display:inline-block}.group-title{font-family:var(--font-pixel);color:var(--wood);margin:4px 0 -4px;font-size:1rem}.market-list{flex-direction:column;gap:6px;max-height:46vh;display:flex;overflow:auto}.sell-row{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;align-items:center;gap:10px;padding:6px 10px;display:flex}.sell-info{flex:1;min-width:0}@media (width<=480px){.sell-row{flex-wrap:wrap;gap:6px 8px}.sell-row .sell-info{flex-basis:calc(100% - 60px)}}.coins{font-family:var(--font-pixel);align-items:center;gap:4px;margin-right:auto;display:inline-flex}.bag-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.bag-item{text-align:center;background:#fffaf0;border:2px solid #c9b189;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px;display:flex;position:relative}.bag-count{font-family:var(--font-pixel);position:absolute;top:4px;right:8px}.starters{flex-wrap:wrap;gap:6px;display:flex}.starters .chip{font-size:.85rem;font-weight:600}.diary-text{resize:vertical;min-height:96px;line-height:1.5}.diary-result{flex-direction:column;gap:8px;display:flex}.diary-corrected{border-left:4px solid var(--olive);background:#fffaf0;border-radius:6px;padding:8px 12px}.praise{color:var(--good);font-weight:800}.notes{flex-direction:column;gap:6px;margin:0;padding-left:18px;display:flex}.notes small{color:var(--ink-soft);display:block}.summary{flex-direction:column;gap:6px;display:flex}.summary-line{align-items:baseline;gap:10px;font-weight:700;display:flex}.summary-line small{color:var(--ink-soft);font-weight:400;display:block}#title{z-index:80;image-rendering:pixelated;background:#1d2a14 50%/cover no-repeat;flex-direction:column;justify-content:space-between;align-items:center;padding:6vh 16px 5vh;transition:opacity .6s;display:flex;position:absolute;inset:0}#title.out{opacity:0;pointer-events:none}.logo{text-align:center;font-family:var(--font-pixel);color:#fff6dc;text-shadow:0 4px 0 var(--wood-dark), 0 0 24px #00000059}.logo h1{letter-spacing:2px;margin:0;font-size:clamp(3rem,11vw,6rem);line-height:1}.logo p{color:#ffe2a0;margin:6px 0 0;font-size:clamp(1rem,3vw,1.5rem)}.title-card{width:min(400px,100%)}.title-card .text{text-align:center;width:100%}.entry-code{font-family:var(--font-pixel);letter-spacing:.3em;font-size:1.8rem}.entry-note{min-height:1.4em;color:var(--ink-soft);font-size:.92rem}.entry-note.warn{color:var(--terracotta-dark);font-weight:700}.awning{border-bottom:4px solid var(--wood);background:repeating-linear-gradient(90deg, var(--terracotta) 0 26px, #fffaf0 26px 52px);font-family:var(--font-pixel);border-radius:11px 11px 0 0;justify-content:space-between;align-items:center;gap:8px;margin:-8px -12px 0;padding:7px 12px;display:flex}.awning strong,.awning span:not(:empty){background:var(--paper);border:2px solid var(--wood);border-radius:8px;padding:0 8px}.tovaglia{border-bottom:3px solid var(--wood);background-color:#fffaf0;background-image:linear-gradient(90deg,#c8553d99 50%,#0000 50%),linear-gradient(#c8553d99 50%,#0000 50%);background-size:20px 20px;border-radius:11px 11px 0 0;flex-shrink:0;height:20px;margin:-8px -12px 0}.banco{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px;display:grid}.good{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;display:flex;position:relative}.good:disabled,.ing:disabled{opacity:.45;cursor:default}.good-name{font-size:.85rem;font-weight:800}.good-price{font-family:var(--font-pixel);color:#f4f1dc;background:#2f3b2a;border-radius:6px;padding:0 6px;font-size:.8rem}.good-count{font-family:var(--font-pixel);font-size:.85rem;position:absolute;top:1px;right:5px}.cesto{border:3px dashed var(--wood);background:#ead6a8;border-radius:14px;flex-wrap:wrap;align-items:center;gap:6px;min-height:52px;padding:6px 10px;display:flex}.cesto-label{font-family:var(--font-pixel);color:var(--wood);font-size:.9rem}.chip-item{border:2px solid var(--wood);font-family:var(--font-pixel);background:#fffaf0;border-radius:10px;align-items:center;gap:2px;padding:2px 6px;display:inline-flex}.chip-item small{font-family:var(--font-body);color:var(--ink-soft)}.price-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.option-pick{text-align:left;width:100%;font:inherit}.mic-big{padding:12px 20px;font-size:1.1rem}.mic-big.recording{background:var(--terracotta-dark);animation:1s infinite pulse}.center-col{align-items:center}.read-step{text-align:center;font-size:1.3rem;line-height:32px}.option-pick:hover{background:#ffefc4}.result{text-align:center;font-family:var(--font-pixel);color:var(--good);font-size:1.5rem}.cook{grid-template-columns:minmax(180px,250px) 1fr;align-items:start;gap:10px;display:grid}.ricetta h3{font-family:var(--font-pixel);color:var(--terracotta-dark);margin:0 0 2px;font-size:1.15rem;line-height:32px}.ricetta-label{font-family:var(--font-pixel);color:var(--ink-soft);font-size:.85rem;line-height:32px}.ricetta ul{margin:0;padding-left:20px;font-size:1.05rem;line-height:32px}.tavolo{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.ing{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;justify-content:center;align-items:center;min-height:58px;padding:5px 2px;display:flex;position:relative}.ing:active,.good:active,.chip-item:active{transform:translateY(2px)}.step{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;align-items:center;gap:8px;padding:5px 8px;display:flex}.step.right{border-color:var(--good);background:#cfe6b6}.step-n{font-family:var(--font-pixel);background:var(--terracotta);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:1.7em;height:1.7em;display:grid}.step-text{flex:1;min-width:0}.step-move{gap:4px;display:flex}.dish{flex-direction:column;align-items:center;gap:4px;display:flex}.need{font-family:var(--font-pixel);color:var(--terracotta-dark);align-items:center;margin-right:6px;display:inline-flex}.need.ok{color:var(--good)}.sell-row.locked{opacity:.6}@media (width<=640px){.cook,.price-options{grid-template-columns:1fr}}.backdrop-story{background:#181008d1;align-items:center}.dialog.story{max-height:96vh}.story-art{object-fit:cover;width:100%;max-height:32vh;image-rendering:pixelated;border:4px solid var(--wood);box-shadow:0 5px 0 var(--wood-dark);border-radius:16px;flex-shrink:1;min-height:0}.read-step small{margin-top:2px;font-size:.9rem;line-height:1.4;display:block}.festa-awning{background:repeating-linear-gradient(90deg, #3f8a4b 0 26px, #fffaf0 26px 52px, var(--terracotta) 52px 78px)}.fiori-got{letter-spacing:2px;color:var(--ink-soft);font-size:1.2rem}.cartella{border:3px solid var(--terracotta-dark);background:#fffaf0;border-radius:12px;grid-template-columns:repeat(3,1fr);align-self:center;gap:6px;width:min(320px,100%);padding:8px;display:grid}.cell{font-family:var(--font-pixel);text-align:center;background:var(--paper);color:var(--ink);border:2px solid #c9b189;border-radius:8px;padding:8px 0;font-size:1.6rem}.cell.marked{background:var(--terracotta);color:#fff;border-color:var(--terracotta-dark);opacity:1}.riddle-options{grid-template-columns:repeat(4,1fr);align-self:center;width:min(420px,100%)}.riddle-options .ing{min-height:78px}.who{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.who-btn{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:4px 2px;font-size:.8rem;font-weight:800;display:flex;overflow:hidden}.who-face{object-fit:cover;object-position:top;width:56px;height:56px;image-rendering:pixelated;border-radius:10px}.diary{width:min(560px,100%)}.diary-head{flex-direction:column;align-items:center;display:flex}.diary-page{padding:6px 16px}.diary-page .letter-body{font-size:1.05rem}.diary-sentence{font-family:var(--font-pixel);text-align:center;color:var(--terracotta-dark);font-size:1.5rem}.diary-sentence.diary-pt{font-family:var(--font-body);color:var(--olive);font-size:1.2rem;font-weight:800}.blank{color:var(--ink-soft);letter-spacing:-2px}.option-btn small{font-weight:400}.stamp{border:4px dashed var(--terracotta);background:#fffaf0;border-radius:50%;place-items:center;width:92px;height:92px;font-size:3.2rem;display:grid;transform:rotate(-8deg)}.stamp.gold{border-color:var(--sun);background:#fff3cf}.album{flex-direction:column;gap:10px;max-height:60vh;display:flex;overflow:auto}.album .letter .row{justify-content:space-between}.album-stamp{font-size:1.2rem}.who-btn.hero{cursor:pointer;flex-direction:column;min-width:120px;padding:8px 10px}.hero-sprite{height:72px;image-rendering:pixelated}.who-btn.chip-on{border-color:var(--terracotta);background:#ffe9b0}.timer{border:2px solid var(--wood);background:#d9c69b;border-radius:8px;height:10px;overflow:hidden}.timer i{background:var(--terracotta);width:100%;height:100%;display:block}.fish-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.fish{font:inherit;background:#dff0f4;border:3px solid #4b8a96;border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;font-weight:800;display:flex}.fish:hover{background:#c6e6ee}.tub{text-align:center;border:4px solid var(--wood-dark);background:#6b4226;border-radius:0 0 60px 60px/0 0 34px 34px;align-self:center;width:min(300px,100%);padding:6px 0 10px;font-size:2.6rem;transition:transform .1s}.tub.stomp-ok{background:#7a2e55;transform:translateY(6px)scale(1.04,.92)}.tub.stomp-miss{opacity:.7;background:#8a6a4a}.stomp-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.btn.stomp{padding:12px 6px;font-size:1.5rem}.ticket{background:#fffaf0;border-style:solid}.quest{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;align-items:flex-start;gap:10px;padding:8px 12px;display:flex}.quest.done{opacity:.7}.quest.locked{opacity:.5}.quest small{color:var(--ink-soft);display:block}.hud-status{color:#fff;background:#7a2e55e0;border-radius:10px;align-self:center;margin-top:4px;padding:2px 10px;font-size:.85rem}@media (width<=920px){.hud-right .pill .label{display:none}}@media (width<=640px){html,body{font-size:15px}.pill{border-width:2px;padding:3px 7px;font-size:.82rem}.pill .label{display:none}.meter{width:44px}.portrait{width:88px}.tool{width:46px;height:46px}.tool .icon{width:30px;height:30px}.tool-key{display:none}.speech-text{font-size:1.12rem}.panel{padding:14px}#toasts{top:124px}}.panel.book{width:min(760px,100%)}.book-tabs{flex-wrap:wrap;gap:6px;display:flex}.book-tab{padding:4px 9px;font-size:.85rem}.book-tab small{opacity:.6;font-weight:700}.book-tab.chip-on{background:var(--sun)}.book-page{gap:8px;max-height:52vh;padding-right:4px}.book-head{align-items:center;gap:10px;display:flex}.book-head h3{font-family:var(--font-pixel);margin:0;font-size:1.25rem}.book-phrase{background:#fffaf0;border:2px solid #d9c69b;border-radius:8px;align-items:flex-start;gap:8px;padding:6px 10px;display:flex}.book-phrase small,.book-example small{display:block}.book-hear{cursor:pointer;background:0 0;border:0;padding:2px;font-size:1.05rem}.book-entry{border-bottom:2px dotted #d9c69b;grid-template-columns:minmax(130px,34%) 1fr;align-items:start;gap:10px;padding:6px 2px;display:grid}.book-word{text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:1rem;display:flex}.book-meaning{flex-direction:column;gap:2px;display:flex}.book-example{border-left:3px solid var(--sun);margin-top:2px;padding-left:8px}@media (width<=560px){.book-entry{grid-template-columns:1fr;gap:2px}}.awning .shell-exit{background:var(--paper);border:2px solid var(--wood);font-family:var(--font-pixel);color:var(--ink-soft);cursor:pointer;border-radius:8px;margin-left:auto;padding:0 8px;font-size:.85rem}.awning .shell-exit:hover{color:var(--ink);background:#ffe9b0}kbd.hk{color:inherit;vertical-align:middle;background:#3b2a1a1f;border:1px solid #3b2a1a59;border-radius:5px;margin-left:6px;padding:0 5px;font-size:.72em}.btn.primary kbd.hk{background:#ffffff40;border-color:#ffffff73}.backdrop button:focus-visible,.backdrop input:focus-visible,.backdrop .w:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.pill-btn kbd{background:#3b2a1a1f;border:1px solid #3b2a1a4d;margin-left:5px;padding:0 4px;font-size:.7em}@media (width<=700px){kbd.hk,.pill-btn kbd{display:none}}.panel.shop{gap:10px;width:min(720px,100%);height:min(640px,92vh);padding-bottom:14px;overflow:hidden}.shop-head{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.shop-head .coins{background:var(--paper-2);border-radius:10px;justify-self:start;margin:0;padding:2px 10px}.shop-close{justify-self:end;font-size:1.1rem;text-decoration:none}.shop-tabs{background:var(--paper-2);border-radius:12px;grid-template-columns:repeat(5,1fr);gap:4px;padding:4px;display:grid}.shop-tab{font-family:var(--font-pixel);color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:6px 4px;font-size:.95rem;display:flex}.shop-tab.on{background:var(--terracotta);color:#fff;box-shadow:0 2px 0 var(--wood-dark)}.shop-tab:not(.on):hover{color:var(--ink);background:#ffe9b0}.shop-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));align-content:start;gap:8px;min-height:0;padding:2px 4px 2px 2px;display:grid;overflow-y:auto}.shop-count,.shop-empty{font-family:var(--font-pixel);color:var(--ink-soft);grid-column:1/-1;font-size:.9rem}.shop-empty{text-align:center;font-family:var(--font-body);padding:40px 10px;font-size:1rem}.shop-row{background:#fffaf0;border:2px solid #c9b189;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:8px 10px;display:flex}.shop-row>.icon,.shop-icon{flex-shrink:0;width:40px;height:40px}.shop-mark{text-align:center;flex-shrink:0;width:40px;font-size:1.5rem}.shop-info{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.shop-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;overflow:hidden}.shop-info small{color:var(--ink-soft);font-size:.82rem}.shop-info .tag{margin:0 5px 0 0}.shop-buy{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.shop-buy .btn{white-space:nowrap;justify-content:center;align-items:center;min-width:62px;display:inline-flex}.shop-need{color:var(--terracotta-dark);white-space:nowrap;align-items:center;margin-right:6px;font-weight:700;display:inline-flex}.shop-need.ok{color:var(--good)}@media (width<=640px){.panel.shop{height:92vh}.shop-tab{flex-direction:column;gap:0;padding:4px 2px;font-size:.72rem}.shop-tab-mark,.shop-head .panel-title{font-size:1.1rem}.shop-body{grid-template-columns:1fr}}
