@font-face{font-family:Fredoka;src:url(/brand/font-0.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Nunito Sans;src:url(/brand/font-1.woff2) format("woff2");font-weight:100 900;font-display:swap}:root{font-family:Nunito Sans,ui-rounded,system-ui,sans-serif;color:#fff2d9;background:#293c51;font-synthesis:none;--cream: #fff2d9;--ink: #293c51;--yellow: #f3ce7d;--coral: #e89586;--mint: #b9d5bc}*{box-sizing:border-box}html,body{height:100%;overflow:hidden;overscroll-behavior:none}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.6}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #fff2d9;outline-offset:5px}button{border:0}button svg{width:20px;height:20px}button{display:inline-flex;align-items:center;justify-content:center;gap:12px}button:hover{filter:brightness(1.06)}button:active{transform:translateY(2px)}[hidden]{display:none!important}#app{height:100svh;min-height:0;position:relative;overflow:hidden;isolation:isolate}.sky{position:absolute;inset:0;background:radial-gradient(ellipse at 75% 15%,#748092 0,transparent 52%),linear-gradient(180deg,#354b65,#879399 65%,#364a4c);z-index:-2}.sky:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#263b51d9,#263b5100 62%)}#farm{position:absolute;width:100%;height:100%;inset:0;outline:none;touch-action:none;z-index:-1}#farm:focus-visible{outline-offset:-6px}.topbar{position:absolute;top:0;width:100%;padding:26px 38px;display:flex;align-items:center;justify-content:space-between;z-index:5}.brand{font-family:Fredoka,ui-rounded,system-ui,sans-serif;font-size:30px;font-weight:600;color:var(--cream);text-decoration:none;line-height:1}.brand span{display:inline-block;font-family:Nunito Sans,sans-serif;font-size:9px;font-weight:800;letter-spacing:2px;margin-left:15px;border-left:1px solid #fff2d940;padding-left:15px;vertical-align:middle}.top-actions{display:flex;gap:9px}.icon-button{width:46px;height:46px;border:1px solid #fff2d94d;border-radius:50%;background:#293c513d;color:var(--cream);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.menu{position:absolute;left:8%;top:17%;width:390px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;color:var(--mint);margin-bottom:20px}h1,h2,h3{font-family:Fredoka,ui-rounded,system-ui,sans-serif;letter-spacing:-.025em;font-weight:600;margin:0}h1{font-size:clamp(60px,7vw,94px);line-height:.94;text-shadow:0 4px 0 #1f35422e}h1 span{color:var(--yellow)}.intro{font-size:25px;line-height:1.25;letter-spacing:-.5px;font-weight:700;margin:25px 0 14px}.menu-description{color:#e3e9e4;font-size:13px;line-height:1.65;margin-bottom:26px}.mode-switch{display:flex;border:1px solid #ffffff42;border-radius:14px;background:#2036497d;padding:4px;gap:4px;margin-bottom:12px}.mode-switch button{display:block;background:none;color:var(--cream);width:50%;text-align:left;padding:12px 14px;border-radius:10px;font-weight:800;font-size:14px}.mode-switch button small{display:block;font-size:11px;font-weight:500;opacity:.75;margin-top:3px}.mode-switch button[aria-pressed=true]{background:var(--cream);color:var(--ink)}.primary{min-height:56px;border-radius:13px;background:var(--yellow);color:var(--ink);font-weight:850;font-size:16px;box-shadow:0 4px #9a8050;border:1px solid #fff2d940;padding:14px 24px}.menu>.primary{width:100%;justify-content:space-between}.menu-links{display:flex;justify-content:space-between;margin-top:14px}.text-button{min-height:44px;background:none;color:var(--cream);font-size:12px;font-weight:700;padding:0 4px}.text-button svg{width:16px;height:16px}.record{font-size:10px;letter-spacing:2px;color:var(--mint);font-weight:800;margin-top:18px}.scene-caption{position:absolute;right:10%;bottom:14%;font-size:10px;letter-spacing:2.3px;font-weight:800}.scene-caption small{display:block;font-size:12px;letter-spacing:0;font-weight:500;margin:10px 0 0 30px;color:#e5e9df}.caption-dash{display:inline-block;width:20px;height:2px;background:var(--yellow);vertical-align:middle;margin-right:8px}.bottom-note{position:absolute;bottom:24px;left:38px;right:38px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#edf0dfb5}.hud{position:absolute;top:102px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:start;pointer-events:none}.hud span,.hud small{font-size:10px;font-weight:800;letter-spacing:1.5px;display:block}.hud strong{display:block;font-family:Fredoka,sans-serif;font-size:54px;line-height:1.1;margin:8px 0 4px}.hud-center{text-align:center;padding-top:7px;width:200px}.hud-center span{font-size:14px;letter-spacing:0}.progress-track{height:5px;background:#192e4555;border-radius:5px;margin:14px 0}.progress-track div{height:100%;background:var(--yellow);border-radius:5px;transition:width .15s}#chain{color:var(--yellow);letter-spacing:.5px}.mistake-group{text-align:right;padding-top:7px}#mistakes{display:flex;gap:8px;margin-top:16px}#mistakes b{width:18px;height:18px;border:2px solid #fff2d9aa;border-radius:50%}#mistakes b.used{background:var(--coral);border-color:var(--coral)}.feedback{position:absolute;top:29%;left:50%;transform:translate(-50%);text-align:center;font-family:Fredoka,sans-serif;font-size:32px;color:var(--yellow);pointer-events:none;white-space:nowrap;text-shadow:0 2px 10px #293c51}.feedback small{display:block;font-family:Nunito Sans,sans-serif;font-size:12px;color:var(--cream);margin-top:7px}.feedback.bad{color:#ffb6a7}.ready{position:absolute;left:50%;top:36%;transform:translate(-50%,-50%);font-family:Fredoka,sans-serif;font-size:50px;text-align:center;color:var(--cream);pointer-events:none}#play-controls{position:absolute;bottom:34px;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;gap:20px}.instruction strong{font-size:17px;display:block}.instruction span{display:block;font-size:12px;color:#e8eee4;margin-top:7px}.jump{min-width:210px;touch-action:none}.jump span{font-size:10px;border:1px solid #293c5140;border-radius:5px;padding:4px 6px;margin-left:18px}dialog{background:radial-gradient(ellipse at 15% 0%,#fff9e6,transparent 65%),#ead4b1;color:#493b39;border:2px solid #9b8060;border-bottom:8px solid #a48662;border-radius:42px 36px 40px 32px/34px 42px 32px 38px;padding:30px;width:min(520px,calc(100% - 28px));max-height:calc(100svh - 40px);overflow:hidden;box-shadow:inset 0 4px 3px #fffdf0,inset 0 -5px 9px #b9956255,0 12px #705345,0 28px 65px #13233380}#dialog[open]{display:flex;flex-direction:column}#dialog-scroll{min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:transparent transparent;border-radius:12px}#dialog-content{display:flow-root;padding:5px 8px 10px 5px}#dialog-scroll:focus-visible{outline:2px solid #78523f;outline-offset:-2px}#dialog-scroll[data-scrolling]{scrollbar-color:#94734f transparent}@supports selector(::-webkit-scrollbar){#dialog-scroll{scrollbar-width:auto;scrollbar-color:auto}#dialog-scroll::-webkit-scrollbar{width:8px;height:0}#dialog-scroll::-webkit-scrollbar-track{background:transparent;margin-block:8px}#dialog-scroll::-webkit-scrollbar-thumb{background:transparent;background-clip:padding-box;border:2px solid transparent;border-radius:999px}#dialog-scroll[data-scrolling]{scrollbar-color:auto}#dialog-scroll[data-scrolling]::-webkit-scrollbar-thumb{background-color:#94734f}#dialog-scroll::-webkit-scrollbar-button{display:none;width:0;height:0}#dialog-scroll::-webkit-scrollbar-corner{background:transparent}}dialog::backdrop{background:#182b4580;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}dialog h2{font:600 36px/1.12 Fredoka,ui-rounded,sans-serif;color:#633842;text-shadow:0 2px #fff8e2;margin:0 0 16px}dialog p{font-size:14px;line-height:1.6;color:#594b46}dialog button:focus-visible,dialog input:focus-visible{outline:3px solid #293c51;outline-offset:4px}dialog .text-button{color:#633842;min-height:44px;text-decoration:underline;text-underline-offset:4px}#dialog .dialog-eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:850;color:#78523f;margin:0 0 10px}.dialog-actions{display:flex;gap:14px;margin-top:24px;margin-bottom:8px}.dialog-actions button{flex:1}#dialog .primary,#dialog .secondary{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;padding:12px 16px;border:2px solid #81493d;border-radius:24px 28px 22px 26px/23px 21px 25px 22px;font:500 20px/1.15 Fredoka,ui-rounded,sans-serif;color:#fff0cf;text-shadow:0 2px #7d3b38;background:linear-gradient(155deg,#df976d,#bf6947 75%,#ac543e);box-shadow:inset 0 3px 3px #ffd2a598,inset 0 -3px 5px #7f383650,0 5px #703e37,0 8px 9px #63384230;transition:transform .12s,box-shadow .12s}#dialog .secondary{color:#394638;text-shadow:0 1px #e5f2d5;border-color:#78805e;background:linear-gradient(155deg,#ccdcba,#abc4a0 75%,#98b28c);box-shadow:inset 0 3px 3px #f2ffe6aa,inset 0 -3px 5px #63775250,0 5px #657755,0 8px 9px #63384225}#dialog .primary:focus-visible,#dialog .secondary:focus-visible{outline:none}#dialog .primary:focus-visible:after,#dialog .secondary:focus-visible:after{content:"";position:absolute;inset:4px;border:2px solid #293c51;border-radius:18px 22px 16px 20px/17px 15px 19px 16px;pointer-events:none}@media(forced-colors:active){#dialog .primary:focus-visible:after,#dialog .secondary:focus-visible:after{border-color:Highlight}}#dialog .primary:active,#dialog .secondary:active{transform:translateY(3px);box-shadow:inset 0 2px 5px #63384230,0 2px #705345}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.stat{border:0;background:#dbc49f;border-radius:22px 25px 20px 23px;padding:14px;box-shadow:inset 0 2px 4px #84674840,0 2px #fff5df}.stat strong{font-family:Fredoka,sans-serif;font-weight:500;font-size:28px;display:block;color:#633842}.stat span{font-size:12px;color:#594b46}.reward{display:flex;gap:14px;padding:12px 0;border-bottom:2px solid #cdb28a;align-items:center}.reward>svg{width:40px;height:40px;padding:10px;flex:none;color:#795e4b;background:#dfc8a3;border-radius:45% 50% 43% 48%;box-shadow:inset 0 2px 3px #fff7dd,0 3px #ad8d66}.reward strong{font:500 18px/1.2 Fredoka,sans-serif}.reward small{font-size:12px;display:block;color:#594b46;margin-top:4px}.reward.earned>svg{color:#374e3b;background:#abc4a0}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;border-bottom:2px solid #cdb28a}.toggle-row label{font:500 20px/1.2 Fredoka,sans-serif;cursor:pointer}.toggle-row small{display:block;font:12px/1.5 Nunito Sans,sans-serif;color:#594b46;margin-top:5px}.toggle-row input{appearance:none;position:relative;flex:0 0 64px;width:64px;height:44px;margin:0;cursor:pointer;border:2px solid #967459;border-radius:24px 27px 23px 26px;background:#c3a786;box-shadow:inset 0 3px 5px #70534555,0 2px #fff4dc}.toggle-row input:after{content:"";position:absolute;top:4px;left:4px;width:30px;height:30px;border-radius:45% 50% 44% 48%;background:linear-gradient(145deg,#fff8e0,#e1c69b);box-shadow:inset 0 2px 2px #fffdf0,0 3px 3px #70534570;transition:transform .14s}.toggle-row input:checked{background:#829d78;border-color:#657755}.toggle-row input:checked:after{transform:translate(20px)}#dialog .danger{color:#8a343b}.lesson-card{background:linear-gradient(150deg,#c6d7b7,#abc4a0);color:#354634;padding:17px 18px;border-radius:24px 20px 23px 27px;box-shadow:inset 0 2px 4px #66795155,0 2px #fff7df;margin:16px 0;font-size:14px;line-height:1.6}.lesson-card strong{display:block;font:500 21px/1.2 Fredoka,sans-serif;margin-bottom:6px}.result-score{font:600 58px/1.1 Fredoka,sans-serif;color:#633842;text-shadow:0 2px #fff8e2;margin:18px 0}#dialog[data-view=results],#dialog[data-view=result-rewards]{width:min(480px,calc(100% - 32px));max-height:calc(100svh - 44px);padding:22px}#dialog .result-layout{display:grid;gap:12px}#dialog .result-heading,#dialog .result-details{min-width:0}#dialog .result-heading .dialog-eyebrow{margin-bottom:6px}#dialog .result-heading h2,#dialog[data-view=result-rewards] h2{font-size:32px;margin:0}#dialog .result-score{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;font-size:52px;margin:8px 0 0;overflow-wrap:anywhere}#dialog .result-score small{font:800 12px/1.3 Nunito Sans,sans-serif;text-shadow:none}#dialog .result-details .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}#dialog .result-details .stat{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-radius:18px 21px 17px 20px}#dialog .result-details .stat strong{flex-shrink:0;white-space:nowrap;font-size:26px;line-height:1.1;overflow-wrap:anywhere;min-width:0}#dialog .result-details .stat span{font-size:12px;line-height:1.25}#dialog .result-mistakes{margin:10px 0 0;font-size:12px;line-height:1.4}#dialog .result-rewards-link{justify-self:start;min-height:44px;padding:4px 6px;font-size:14px;font-weight:800;gap:8px;border-radius:12px}#dialog .result-rewards-link svg{width:18px;height:18px;flex:none}#dialog .result-layout .dialog-actions,#dialog[data-view=result-rewards] .dialog-actions{gap:12px;margin:0 0 6px}#dialog .result-layout .dialog-actions button,#dialog[data-view=result-rewards] .dialog-actions button{min-height:50px;min-width:0;padding:10px;font-size:18px}#dialog .result-qa-note{margin:0;font-size:11px;line-height:1.3}#dialog .result-practice-note{margin:12px 0 0}#dialog .result-reward-list{display:grid;gap:8px;padding:0;margin:16px 0;list-style:none}#dialog .result-reward-list li{display:flex;align-items:center;gap:10px;min-height:40px;font-size:14px}#dialog .result-reward-list svg{flex:none;width:28px;height:28px;padding:5px;color:#374e3b;background:#abc4a0;border-radius:45% 50% 43% 48%;box-shadow:inset 0 2px 3px #fff7dd,0 2px #78805e}@media(max-height:650px),(max-width:420px){#dialog[data-view=results],#dialog[data-view=result-rewards]{padding:16px;border-radius:30px 26px 32px 28px;max-height:calc(100svh - 32px)}#dialog .result-layout{gap:8px}#dialog .result-heading h2,#dialog[data-view=result-rewards] h2{font-size:28px}#dialog .result-score{font-size:44px;margin-top:6px}#dialog .result-details .stat{padding:8px 10px}#dialog .result-details .stat strong{font-size:24px}#dialog .result-reward-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}}@media(max-height:500px)and (min-width:480px){#dialog[data-view=results],#dialog[data-view=result-rewards]{width:min(720px,calc(100% - 32px));padding:14px 18px}#dialog .result-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:20px}#dialog .result-heading{grid-column:1;grid-row:1}#dialog .result-details{grid-column:2;grid-row:1 / span 2;align-self:center}#dialog .result-details .stat{flex-direction:column;gap:3px;padding:8px;text-align:center}#dialog .result-rewards-link{grid-column:1;grid-row:2}#dialog .result-layout .dialog-actions,#dialog .result-qa-note,#dialog .result-practice .result-heading{grid-column:1 / -1}#dialog .result-reward-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;margin:12px 0}}@media(max-height:380px)and (min-width:480px){#dialog[data-view=results],#dialog[data-view=result-rewards]{padding:12px 16px}#dialog .result-layout{gap:6px 16px}#dialog .result-heading h2,#dialog[data-view=result-rewards] h2{font-size:24px}#dialog .result-score{font-size:38px}#dialog .result-layout .dialog-actions button,#dialog[data-view=result-rewards] .dialog-actions button{min-height:44px;padding:8px}}@media(max-width:380px){#dialog .result-details .stat{flex-direction:column;align-items:flex-start;gap:3px}#dialog .result-details .stat strong{overflow-wrap:normal;font-size:22px}#dialog .result-layout .dialog-actions button{font-size:16px;padding:8px;gap:6px;white-space:nowrap}#dialog .result-layout .dialog-actions svg{flex:none;width:18px}}@media(max-width:420px){#dialog{padding:24px 20px;border-radius:30px 26px 32px 28px}#dialog h2{font-size:30px}#dialog .primary,#dialog .secondary{font-size:18px;padding:10px}}@media(prefers-reduced-motion:reduce){#dialog button,#dialog input:after{transition:none}}#fatal{position:absolute;inset:0;background:#293c51;padding:10%;z-index:20}#fatal h1{font-size:40px}#fatal button{padding:15px;border-radius:10px}.qa-panel{position:absolute;left:10px;bottom:105px;background:#17283de8;padding:10px;border-radius:8px;display:flex;gap:4px;flex-wrap:wrap;max-width:350px;z-index:4}.qa-panel button{font-size:10px;padding:8px;border-radius:5px}.qa-panel small{width:100%;font-size:10px;color:#fff}.qa-panel button{background:#fff2df;color:#293c51}.qa-label{position:absolute;top:85px;left:15px;font-size:10px;background:#7042a7;padding:4px 8px;border-radius:4px}body.playing .sky:after{background:linear-gradient(180deg,#263b5170,transparent 55%,#263b5155)}body.playing .menu,body.playing .scene-caption,body.playing .bottom-note{display:none}body:not(.playing) #farm{pointer-events:none}@media(min-width:1500px){.menu{left:12%;top:19%}}@media(max-height:760px)and (min-width:701px){.menu{top:16%;width:350px}h1{font-size:68px}.intro{font-size:20px;margin:18px 0 8px}.menu-description{margin-bottom:16px}.eyebrow{margin-bottom:13px}.record{margin-top:10px}.menu-links{margin-top:8px}}@media(max-width:700px){#app{min-height:0}.topbar{padding:18px 20px}.brand{font-size:27px}.brand span{display:none}.top-actions{gap:7px}.icon-button{width:44px;height:44px}.menu{top:100px;left:24px;width:calc(100% - 48px)}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:14px}h1{font-size:64px}.intro{font-size:20px;margin-top:15px}.intro br{display:none}.intro br:after{content:" "}.menu-description{display:none}.mode-switch{margin-top:180px}.menu-links{margin-top:10px}.record{position:absolute;right:0;top:118px;font-size:8px;letter-spacing:1px}.scene-caption{display:none}.bottom-note{left:24px;right:24px;bottom:15px;font-size:8px;letter-spacing:.4px}.bottom-note>span:first-child{display:none}.bottom-note>span:last-child{margin-left:auto}.sky:after{background:linear-gradient(180deg,#263b5180,transparent 60%,#263b5199)}.hud{top:95px;left:20px;right:20px}.hud strong{font-size:40px}.hud span,.hud small{font-size:9px}.hud-center{width:135px;padding-top:3px}.hud-center span{font-size:12px}.mistake-group{padding-top:3px}#mistakes{gap:5px}#mistakes b{width:14px;height:14px}.feedback{top:29%;font-size:25px}#play-controls{left:24px;right:24px;bottom:32px;flex-direction:column;gap:20px;text-align:center}.instruction strong{font-size:15px}.instruction span{font-size:11px}.jump{width:100%;min-height:60px}.jump span{display:none}.ready{top:36%;font-size:40px}dialog{padding:25px}dialog h2{font-size:29px}}@media(max-height:700px)and (max-width:700px){.menu{top:83px}h1{font-size:52px}.intro{font-size:17px;margin-top:10px}.mode-switch{margin-top:143px}.eyebrow{font-size:8px}.record{top:102px}.mode-switch button{padding:10px}.menu-links{margin-top:5px}.primary{min-height:50px}.bottom-note{bottom:8px}.hud{top:80px}.feedback{top:28%}#play-controls{bottom:20px;gap:13px}.instruction span{max-width:280px}.jump{min-height:54px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}body:not(.playing) #app:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#203449e0 0%,#203449a0 30%,transparent 62%);pointer-events:none;z-index:0}.menu,.scene-caption,.bottom-note{z-index:1}@media(max-width:700px){body:not(.playing) #app:after{background:linear-gradient(180deg,#20344990 0%,transparent 45%,#203449dd 76%)}}@media(max-height:500px)and (orientation:landscape){#app{min-height:100svh}.topbar{padding:12px 24px}.icon-button{width:40px;height:40px}.menu{top:64px;left:32px;width:310px}h1{font-size:43px}.eyebrow{font-size:8px;margin-bottom:7px}.intro{font-size:16px;margin:8px 0}.intro br,.menu-description,.record,.scene-caption,.bottom-note{display:none}.mode-switch{margin-top:8px;margin-bottom:10px}.mode-switch button{padding:8px}.primary{min-height:44px;padding:10px 18px}.menu-links{margin-top:2px}.hud{top:65px;left:32px;right:32px}.hud strong{font-size:34px}.hud span,.hud small{font-size:9px}.hud-center{width:150px;padding-top:0}.feedback{top:31%;font-size:24px}#play-controls{left:32px;right:32px;bottom:12px;gap:20px;flex-direction:row;text-align:left}.instruction strong{font-size:13px}.instruction span{font-size:10px}.jump{width:150px;min-height:44px}.jump span{display:none}}.game-title{line-height:1}.game-logo{display:block;width:auto;height:220px;max-width:100%;object-fit:contain}@media(max-height:760px)and (min-width:701px){.game-logo{height:170px}}@media(max-width:700px){.game-logo{height:170px}.menu .mode-switch{margin-top:140px}}@media(max-height:700px)and (max-width:700px){.game-logo{height:140px}.menu .mode-switch{margin-top:110px}}@media(max-height:500px)and (min-width:701px){.game-logo{height:90px}.menu .mode-switch{margin-top:8px}}body:not(.playing) .qa-panel{display:none}.menu{width:360px;top:15%}.menu .eyebrow,.menu-description{display:none}.menu .game-logo{margin:0 auto;height:230px}.menu .intro{font-size:18px;text-align:center;margin:18px 0 24px}.menu .intro br{display:none}.menu .mode-switch{padding:0;border:0;background:none;border-radius:0;gap:16px;margin:0 0 22px}.menu .mode-switch button{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:106px;padding:12px 8px 13px;border:2px solid #765d49;border-radius:34px 39px 29px 35px/28px 30px 25px 29px;color:#493b39;background:linear-gradient(155deg,#c6d7b7,#abc4a0 65%,#8aa480);box-shadow:inset 0 3px 3px #f2ffe6aa,inset 0 -4px 5px #63775250,0 7px #657755,0 10px 10px #13233355;text-align:center;transform:rotate(2deg);transition:transform .15s,box-shadow .15s}.menu .mode-switch button:first-child{transform:rotate(-2deg)}.menu .mode-switch button[aria-pressed=true]{background:linear-gradient(145deg,#fff1c9,#f2d89c 70%,#d4b67e);border-color:#875e42;transform:translateY(4px) rotate(-2deg);box-shadow:inset 0 3px 3px #fff9df,inset 0 -3px 5px #b68b5650,0 3px #977045,0 6px 8px #13233355}.menu .mode-switch button:last-child[aria-pressed=true]{transform:translateY(4px) rotate(2deg)}.menu .mode-switch button[aria-pressed=true]:after{content:"✓";position:absolute;top:7px;right:12px;color:#65433c;font-size:18px;font-weight:900;text-shadow:0 1px #fff4d5}.mode-stamp{font:600 30px/.95 Fredoka,ui-rounded,sans-serif;color:#72534b;text-shadow:0 2px 0 #fff5d17d}.mode-label{font:600 19px/1.1 Fredoka,ui-rounded,sans-serif}.menu .mode-switch button small{font:700 11px/1.3 Nunito Sans,sans-serif;opacity:1;margin-top:4px}.menu>.primary{justify-content:center;gap:15px;min-height:76px;padding:12px 24px;font:600 37px/1 Fredoka,ui-rounded,sans-serif;letter-spacing:.015em;color:#fff0cf;text-shadow:0 3px 0 #7d3b38;background:linear-gradient(165deg,#e6a277,#c47751 48%,#b45d41);border:2px solid #81493d;border-radius:33px 37px 29px 34px/29px 27px 32px 28px;box-shadow:inset 0 4px 4px #ffd2a598,inset 0 -5px 7px #7f383651,0 8px #703e37,0 13px 13px #1624316b;transition:transform .15s,box-shadow .15s}.play-stamp{font-size:25px;color:#ffe5ab}.menu>.primary:active{transform:translateY(5px);box-shadow:inset 0 3px 5px #7f383640,0 3px #703e37,0 6px 7px #16243155}.menu .menu-links{gap:18px;margin-top:24px}.menu-links .text-button{flex:1;min-height:46px;padding:8px 12px;gap:7px;color:#5f4540;font:600 16px/1 Fredoka,ui-rounded,sans-serif;background:linear-gradient(150deg,#fff4dc,#dfcba8);border:1px solid #9b8060;border-radius:23px 28px 22px 25px;box-shadow:inset 0 2px 2px #fffdf2,inset 0 -2px 3px #aa886344,0 4px #9a7e60,0 7px 8px #17252e44}.menu .record{text-align:center;font-size:11px;letter-spacing:.7px;margin-top:22px}body:not(.playing) .icon-button{color:#f8e8c8;background:linear-gradient(140deg,#88958b,#54675f);border:1px solid #b7c0a866;box-shadow:inset 0 2px 2px #dbe2ce70,0 4px #354b46;border-radius:48% 45% 47% 44%;-webkit-backdrop-filter:none;backdrop-filter:none}.menu button:focus-visible{outline:3px solid #fff6d8;outline-offset:7px}@media(max-height:760px)and (min-width:701px){.menu{top:12%;width:330px}.menu .game-logo{height:180px}.menu .intro{margin:12px 0 17px;font-size:16px}.menu .mode-switch button{min-height:94px}.menu>.primary{min-height:65px;font-size:32px}.menu .menu-links{margin-top:20px}}@media(max-width:700px){.menu{top:82px;width:calc(100% - 48px)}.menu .game-logo{height:168px}.menu .intro{font-size:16px;margin:12px 0 0}.menu .mode-switch{margin:118px 0 20px;gap:14px}.menu .mode-switch button{min-height:91px}.mode-label{font-size:18px}.mode-stamp{font-size:25px}.menu>.primary{min-height:65px;font-size:32px}.menu .menu-links{margin-top:20px}}@media(max-height:700px)and (max-width:700px){.menu{top:76px}.menu .game-logo{height:132px}.menu .intro{font-size:14px;margin-top:8px}.menu .mode-switch{margin-top:70px;margin-bottom:17px}.menu .mode-switch button{min-height:78px;padding:8px}.mode-stamp{font-size:22px}.menu>.primary{min-height:56px;font-size:29px}.menu .menu-links{margin-top:18px}.menu .record{margin-top:15px}}@media(max-height:500px)and (min-width:701px){.menu{top:60px;width:300px}.menu .game-logo{height:90px}.menu .intro{display:none}.menu .mode-switch{margin:10px 0 12px;gap:12px}.menu .mode-switch button{min-height:64px;flex-direction:row;gap:8px;padding:8px}.mode-label{font-size:16px}.mode-stamp{font-size:23px}.menu>.primary{min-height:50px;font-size:27px}.menu .menu-links{margin-top:14px}.menu-links .text-button{min-height:40px}}@media(prefers-reduced-motion:reduce){.menu button{transition:none}}.menu .record{position:static;inset:auto}@media(max-width:700px)and (min-height:701px){.menu .mode-switch{margin-top:190px}}@media(max-width:700px)and (max-height:700px){.menu .mode-switch{margin-top:150px}}@media(max-width:700px)and (max-height:600px){.menu .game-logo{height:108px}.menu .mode-switch{margin-top:94px}.menu .record{display:none}}@media(max-height:500px)and (min-width:701px){.menu-links .text-button{min-height:44px}}@media(max-width:700px)and (max-height:560px)and (orientation:portrait){.menu{top:68px}.menu .game-logo{height:92px}.menu .mode-switch{margin-top:18px}.menu .menu-links{margin-top:12px}.bottom-note{display:none}}.playing{--hud-wash: #1d3036b8;--hud-ink: #fff2d9;--hud-soft-ink: #f6efdf}.playing .hud{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,200px) minmax(0,1fr);gap:16px}.playing .hud>div,.playing .instruction{background:var(--hud-wash);color:var(--hud-ink);padding:9px 12px;border-radius:22px 27px 21px 25px;box-shadow:0 4px 18px #142a3024;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-shadow:0 1px 2px #15282e80}.playing .hud>div{min-width:0;max-width:100%;justify-self:start}.playing .hud .hud-center{justify-self:center;width:100%}.playing .hud .mistake-group{justify-self:end}.practicing .hud>div:first-child,.practicing .hud .mistake-group{display:none}.practicing .hud .hud-center{grid-column:2}.timing-example{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0;padding:10px;border-radius:12px;background:#314a42;color:#fff2d9;font-size:13px}.example-dot{width:12px;height:12px;border-radius:50%;background:#fff}.example-arrow{font-size:24px}.example-line{width:4px;height:28px;background:#fff}#dialog .result-best{margin:4px 0 0;font-size:13px;font-weight:800;color:#405847}#dialog .result-coaching{grid-column:1 / -1;padding:12px 14px;border-radius:15px;background:#e4e9d9;color:#2c4539}#dialog .result-coaching strong{font-size:14px}#dialog .result-coaching p{margin:5px 0 8px;font-size:13px;line-height:1.4}#dialog .result-coaching small{display:block;font-size:12px;line-height:1.4}.playtest-tools{position:fixed;bottom:8px;left:50%;transform:translate(-50%);z-index:20;max-width:calc(100vw - 20px);padding:6px 12px;border-radius:10px;background:#203831;color:#fff2d9;font-size:11px}.playtest-tools button{min-height:44px;margin-left:8px;padding:8px;background:#fff2d9;color:#263f38;border-radius:6px;font-size:12px}.playing .playtest-tools{pointer-events:none;opacity:.65}.playing .playtest-tools button{display:none}.playing .hud strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.playing .instruction span{color:var(--hud-soft-ink)}.playing .brand{color:var(--hud-ink);text-shadow:0 2px 4px #142a30,0 0 12px #142a3080}.playing .icon-button{background:var(--hud-wash);border-color:#fff2d929;border-radius:48% 45% 47% 44%;color:var(--hud-ink);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:inset 0 1px 1px #fff2d91a;min-width:44px;min-height:44px}.playing #chain{color:#ffe6b6}.playing .progress-track{background:#142a3080;box-shadow:inset 0 1px 2px #071a2359;height:6px}.playing .progress-track div{background:#edcb8b;box-shadow:inset 0 1px 1px #fff3d680}.playing #mistakes b{border-color:#f5e8cf;background:#142a3033;box-shadow:0 1px 2px #142a3059}.playing #mistakes b.used{background:#ffc8b6;border-color:#ffc8b6;box-shadow:inset 0 1px 2px #fff2d966}.playing .feedback:not(:empty){background:var(--hud-wash);border-radius:22px 25px 20px 24px;padding:8px 16px;box-shadow:0 4px 18px #142a3024;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-shadow:0 1px 2px #15282e80}.playing .jump{color:var(--hud-ink);background:linear-gradient(150deg,#415a50e6,#314a42f2);border:1px solid #d2ddba59;border-radius:25px 29px 23px 27px/23px 25px 28px 24px;font:500 23px/1.15 Fredoka,ui-rounded,sans-serif;text-shadow:0 1px 2px #263c35;box-shadow:inset 0 2px 2px #e1e8ce38,0 3px #263f38b3,0 6px 12px #142a3033}.playing .jump span{font:800 10px/1.2 Nunito Sans,sans-serif;color:var(--hud-soft-ink);background:#142a3033;border-color:#e5ecd233;border-radius:8px 10px 7px 9px;margin-left:12px}.playing .jump:active{transform:translateY(2px);box-shadow:inset 0 2px 4px #142a3059,0 1px #263f38b3}@media(max-width:700px){.playing .hud{left:16px;right:16px;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.85fr);gap:8px}.playing .hud>div{padding:8px}.playing .hud strong{font-size:clamp(28px,6vw,40px)}.playing .hud span,.playing .hud small{letter-spacing:.3px}.playing .instruction{max-width:100%}}@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.playing{--hud-wash: #243b40}.playing .hud>div,.playing .instruction,.playing .feedback:not(:empty),.playing .icon-button{-webkit-backdrop-filter:none;backdrop-filter:none}.playing .jump{background:#3d574f}}@media(forced-colors:active){.playing .hud>div,.playing .instruction,.playing .feedback:not(:empty){background:Canvas;color:CanvasText;border:1px solid CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none;text-shadow:none}.playing #mistakes b{border-color:CanvasText}.playing #mistakes b.used{background:CanvasText}}.cover-capture #app>:not(#farm):not(.sky){visibility:hidden!important}.cover-capture body:not(.playing) #app:after{display:none}.menu .sleep-entry{display:flex;width:100%;min-height:44px;margin-top:12px;color:#fff0d8;font-family:Fredoka,sans-serif;font-size:17px}.sleep-entry span{font:11px system-ui,sans-serif;opacity:.8}body.sleeping #app>:not(#farm):not(.sky):not(#sleep-view):not(#fatal){display:none}body.sleeping #app:after{display:none}body.sleeping .qa-panel{display:none}#sleep-view{position:absolute;inset:0;pointer-events:none}#sleep-count{position:absolute;top:28px;left:50%;transform:translate(-50%);color:#fff0d8;font:500 26px Fredoka,sans-serif;text-shadow:0 2px 5px #293c51;white-space:nowrap}#sleep-controls{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));right:24px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 14px;max-width:calc(100% - 48px);border-radius:22px 25px 19px 24px;background:#293c51dc;pointer-events:auto;transition:opacity .4s}#sleep-controls button{min-height:44px;color:#fff0d8;padding:4px 8px}#sleep-hint{flex-basis:100%;color:#eee0c8;font-size:11px}.sleep-controls-hidden #sleep-controls:not(:focus-within):not(:hover){opacity:0;pointer-events:none}@media(max-width:700px){.menu .sleep-entry{margin-top:6px;font-size:15px;gap:7px}.sleep-entry span{font-size:10px}#sleep-controls{right:16px;max-width:calc(100% - 32px)}}@media(prefers-reduced-motion:reduce){#sleep-controls{transition:none}}.qa-panel.collapsed small,.qa-panel.collapsed [data-qa]:not([data-qa="Hide tools"]){display:none}.qa-panel.collapsed{width:auto}.qa-panel.scripted-demo small{display:block}@media(max-width:700px)and (max-height:500px)and (orientation:landscape){.menu{top:62px;left:20px;width:calc(100% - 40px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px 20px}.menu .game-title{grid-column:1;grid-row:1 / span 3;align-self:center;margin:0}.menu .game-logo{height:130px}.menu .intro{grid-column:1;grid-row:4;align-self:center;margin:0;font-size:13px}.menu .mode-switch{grid-column:2;grid-row:1;margin:0;gap:12px}.menu .mode-switch button{min-height:64px;padding:6px}.menu .mode-label{font-size:16px}.menu .mode-label small{font-size:10px}.menu>.primary{grid-column:2;grid-row:2;min-height:48px;font-size:27px}.menu .menu-links{grid-column:2;grid-row:3;margin:0;gap:12px}.menu-links .text-button{min-height:44px;padding:6px;font-size:13px}.menu .sleep-entry{grid-column:2;grid-row:4;margin:0}.menu .sleep-entry span,.bottom-note{display:none}}:root{--ui-enter: .26s;--ui-exit: .18s;--ui-stagger: 28ms;--ui-hudDelay: 80ms;--ui-ease: cubic-bezier(.22, 1, .36, 1)}#menu,#scene-caption,#menu-note,#app>.topbar{opacity:1;transition-property:opacity,display;transition-duration:var(--ui-exit);transition-behavior:allow-discrete}#menu>*{--item: 0;opacity:1;translate:0 0;transition-property:opacity,translate,transform,box-shadow;transition-duration:var(--ui-enter),var(--ui-enter),.12s,.12s;transition-delay:calc(var(--item) * var(--ui-stagger)),calc(var(--item) * var(--ui-stagger)),0ms,0ms;transition-timing-function:var(--ui-ease)}#menu>:nth-child(2){--item: 1}#menu>:nth-child(3){--item: 2}#menu>:nth-child(4){--item: 3}#menu>:nth-child(5){--item: 4}#menu>:nth-child(6){--item: 5}#menu>:nth-child(7){--item: 6}#menu>:nth-child(8){--item: 7}#menu>:nth-child(9){--item: 8}:root.ui-booting #menu,:root.ui-booting #scene-caption,:root.ui-booting #menu-note{opacity:0;pointer-events:none}:root.ui-booting #menu>*,body.playing #menu>*,body.sleeping #menu>*{opacity:0;translate:0 8px;transition-duration:var(--ui-exit);transition-delay:0ms}body.playing #menu,body.playing #scene-caption,body.playing #menu-note,body.sleeping #menu,body.sleeping #scene-caption,body.sleeping #menu-note,body.sleeping #app>.topbar{opacity:0;pointer-events:none}#app:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:linear-gradient(90deg,#203449e0 0%,#203449a0 30%,transparent 62%);opacity:0;transition:opacity var(--ui-enter) ease}body:not(.playing):not(.sleeping) #app:after{opacity:1}body.sleeping #app:after{display:block;opacity:0}#hud,#play-controls,#pause,#sleep-view,#sleep-count{opacity:1;translate:0 0;transition-property:opacity,translate,display;transition-duration:var(--ui-enter);transition-delay:var(--ui-hudDelay);transition-timing-function:var(--ui-ease);transition-behavior:allow-discrete}#hud[hidden],#play-controls[hidden],#pause[hidden],#sleep-view[hidden],#sleep-count[hidden]{opacity:0;transition-duration:var(--ui-exit);transition-delay:0ms;pointer-events:none}#hud[hidden]{translate:0 -6px}#play-controls[hidden]{translate:0 8px}#dialog{opacity:0;translate:0 10px;scale:.985;transition-property:opacity,translate,scale,display,overlay;transition-duration:var(--ui-exit);transition-timing-function:ease-in;transition-behavior:allow-discrete}#dialog[open]{opacity:1;translate:0 0;scale:1;transition-duration:var(--ui-enter);transition-timing-function:var(--ui-ease)}#dialog::backdrop{background-color:#182b4500;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);transition-property:background-color,backdrop-filter,display,overlay;transition-duration:var(--ui-exit);transition-behavior:allow-discrete}#dialog[open]::backdrop{background-color:#182b4580;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}@starting-style{#menu>*{opacity:0;translate:0 8px}#scene-caption,#menu-note,#app>.topbar{opacity:0}#hud{opacity:0;translate:0 -6px}#play-controls{opacity:0;translate:0 8px}#pause,#sleep-view,#sleep-count{opacity:0}#dialog[open]{opacity:0;translate:0 10px;scale:.985}#dialog[open]::backdrop{background-color:#182b4500;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}}.mode-switch button{transition-property:transform,box-shadow,background-color,color;transition-duration:.15s}#sound,.playing .jump{transition-property:transform,box-shadow,background-color;transition-duration:.1s}:root.ui-reduced *,:root.ui-reduced *:before,:root.ui-reduced *:after{transition:none!important;animation:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
