:root{--bg:#f7f8f2;--paper:#fffffb;--ink:#293c30;--muted:#768375;--green:#417853;--lime:#dcebb3;--line:#e2e7d9;--pink:#ee837e;--serif:Georgia,serif;--radius:22px;font-family:'Avenir Next','Nunito','PingFang SC','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{border:0;background:none}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,canvas:focus-visible{outline:3px solid #73a47a;outline-offset:4px}button{transition:background .18s,transform .18s}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit}button:hover:not(:disabled){filter:brightness(.96)}.header{height:103px;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 54px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:24px;font-weight:850;letter-spacing:1px}.brand small{display:block;font-size:9px;letter-spacing:3.2px;margin-top:3px}.brand-melon{width:43px;height:28px;border-radius:3px 3px 29px 29px;background:#ef8b83;border:4px solid #507d47;border-top:0;transform:rotate(-17deg);display:flex;gap:6px;align-items:center;justify-content:center;padding-bottom:4px}.brand-melon i{width:3px;height:6px;border-radius:50%;background:#583d37;transform:rotate(-15deg)}nav{height:100%;display:flex;gap:34px;align-items:center}.nav-btn{height:100%;font-size:14px;position:relative;color:#697867;font-weight:600}.nav-btn.selected{color:var(--green)}.nav-btn.selected:after{content:'';position:absolute;bottom:0;height:3px;left:16%;right:16%;background:var(--green);border-radius:4px}.nav-btn span{background:#e9efdf;padding:2px 5px;font-size:10px;margin-left:4px;border-radius:5px}.header-actions{display:flex;align-items:center;gap:14px}.edition-label{font-size:11px;color:var(--muted);margin-right:6px}.icon-btn{width:33px;height:33px;border:1px solid #dce2d4;border-radius:50%;font-size:17px;display:grid;place-items:center}.header-actions .icon-btn:last-child{font:600 14px Georgia}main{max-width:1440px;margin:auto;padding:39px 54px 0}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:2px;color:#7e8a72;display:flex;align-items:center;gap:8px}.tiny-leaf{width:9px;height:13px;display:inline-block;background:#819b53;border-radius:9px 0 9px 0;transform:rotate(25deg)}h1{font-size:35px;line-height:1.4;letter-spacing:-1.5px;margin:10px 0 6px;font-weight:800}h1 span{color:#518062}h1+p{font-size:12px;color:var(--muted);margin:0}.daily{padding-right:5px;padding-top:15px;font-size:11px;color:var(--muted)}.daily>span{display:block;margin-bottom:9px;text-align:right}.daily strong{font-size:13px;color:var(--green);font-weight:600}.daily strong span{font-size:11px;color:#82907d;margin-left:6px}.play-layout{display:grid;grid-template-columns:236px minmax(340px,1fr) 236px;gap:23px;align-items:start}.left-panel,.right-panel{display:grid;gap:19px}.lesson-panel{padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.section-label{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#7b886e;letter-spacing:.7px}.section-label>span{font-size:12px;color:#a7b398}h2{font-size:18px;margin:11px 0 20px;letter-spacing:-.4px}.book-tabs{display:flex;padding:4px;background:#f1f4e9;border-radius:10px;margin-bottom:23px}.book-tabs button{flex:1;white-space:nowrap;padding:9px 0;font-size:11px;color:#7c8873;border-radius:7px}.book-tabs button.active{background:var(--paper);color:var(--green);box-shadow:0 2px 5px #3f6f4220;font-weight:700}.field-label{font-size:11px;display:block;color:#77846e;margin:0 0 9px}select{width:100%;background:var(--paper);border:1px solid #dfe5d7;border-radius:9px;padding:11px 9px;font-size:11px;color:var(--ink);cursor:pointer}.scope-text{font-size:10px;color:#89937f;margin:9px 0 0}.divider{height:1px;background:var(--line);margin:21px 0}.mode-options{display:grid;gap:9px}.mode{display:flex;align-items:center;gap:10px;border:1px solid #e2e7da;padding:11px 10px;border-radius:11px;text-align:left}.mode.active{background:#f1f7e9;border-color:#b4c99e}.mode-symbol{width:27px;height:29px;background:#e7eddc;display:grid;place-items:center;font-size:13px;border-radius:7px;color:#58835c;font-weight:700}.mode b{font-size:11px;display:block;font-weight:650}.mode small{font-size:9px;color:#8a947e;display:block;margin-top:4px}.mode i{margin-left:auto;width:12px;height:12px;border-radius:50%;border:1px solid #cad3bf}.mode.active i{border:4px solid #618955;background:#f4f7ec}.primary-btn{background:var(--green);color:#fffef9;padding:14px 18px;width:100%;border-radius:11px;font-size:13px;font-weight:650;text-align:center;box-shadow:0 4px 0 #305e42}.lesson-panel>.primary-btn{margin-top:24px;display:flex;justify-content:space-between}.primary-btn:hover{background:#356947}.no-rush{text-align:center;font-size:9px;color:#8b967f;margin:15px 0 0}.experiment{padding:21px 22px;background:#eff2e4;border-radius:var(--radius);border:1px solid #e2e6d5}.experiment>p{font-size:10px;color:#8b947a;margin:8px 0 21px}.experiment label{font-size:10px;display:flex;justify-content:space-between;margin-top:17px}.experiment output{font-size:9px;color:#789363}.experiment input{width:100%;accent-color:#6e9053;height:4px;display:block;margin:14px 0 10px;cursor:pointer}.range-ends{display:flex;justify-content:space-between;color:#8a947d;font-size:8px}.arena-panel{background:var(--paper);border:1px solid #dce4d2;border-radius:25px;overflow:hidden;box-shadow:0 9px 25px #465c3410}.arena-top{padding:17px 24px 12px;display:flex;justify-content:space-between;align-items:center}.live-label{display:flex;gap:7px;align-items:center;font-size:11px}.live-label>span{width:6px;height:6px;background:#80a96c;border-radius:50%}.live-label b{font-weight:500}.arena-controls{display:flex;gap:12px}.text-icon{font-size:19px;padding:1px 5px;color:#849078}.score-strip{display:grid;grid-template-columns:1fr 1fr 1fr;padding:7px 29px 17px;text-align:center}.score-strip>div:first-child{text-align:left}.score-strip>div:last-child{text-align:right}.score-strip small{display:block;font-size:9px;color:#929b84;margin-bottom:6px}.score-strip strong{font-size:27px;line-height:1;font-weight:650;letter-spacing:-1px;font-variant-numeric:tabular-nums}.score-strip strong em{font-size:13px;font-style:normal;color:#a1ab93;font-weight:400;margin-left:5px}.score-strip .combo{font-size:23px;color:#bd7950;font-weight:600}.tank-wrap{position:relative;margin:0 17px;background:#f1f5e7;border:1px solid #e1e8d5;border-radius:17px 17px 36px 36px;overflow:hidden;aspect-ratio:600/680}.tank-wrap:before{content:'';position:absolute;inset:0;border:6px solid #fffffc60;border-radius:inherit;pointer-events:none;z-index:1}#game{display:block;width:100%;height:100%;touch-action:none;cursor:grab}.tank-intro{position:absolute;top:36px;left:0;right:0;text-align:center;pointer-events:none}.intro-tag{font-size:9px;color:#81966e;background:#e5edd8;padding:6px 11px;border-radius:20px}.tank-intro h2{font-size:32px;line-height:1.45;margin:19px 0 11px;color:#44643b;letter-spacing:-1px}.tank-intro p{font-size:10px;color:#879474;line-height:1.9}.intro-arrow{font-size:42px;color:#9eae79;margin-top:4px;transform:rotate(-15deg)}.next-drop{position:absolute;top:12px;left:50%;transform:translateX(-50%);background:#fffff4ec;border:1px solid #dbe5ca;border-radius:50px;padding:7px 13px;display:flex;align-items:center;gap:10px;white-space:nowrap;pointer-events:none}.next-drop>span{font-size:9px;color:#899675}.next-drop>b{font-size:16px;color:#45673e}.next-drop button{font-size:18px;pointer-events:auto;color:#587d43}.tank-floor{position:absolute;bottom:0;left:0;right:0;height:12px;display:flex;justify-content:space-evenly;background:#dfe9c8;pointer-events:none}.tank-floor span{width:35px;background:#c1d2a5;border-radius:50%;height:4px;transform:rotate(-15deg);margin-top:3px}.arena-bottom{padding:12px 22px 14px}#feedback{text-align:center;color:#7f8d6d;font-size:10px;min-height:16px;margin:1px 0 10px}.controls-hint{display:flex;justify-content:space-between;align-items:center;color:#949c88;font-size:8px;padding-top:9px;border-top:1px solid #edf0e5}.controls-hint button{font-size:10px;color:#64834d}.controls-hint kbd{border:1px solid #dfe5d5;background:#fafbf6;border-radius:4px;padding:2px 5px;font:8px inherit;color:#8a9877}.answer-buttons{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin-bottom:9px}.answer-buttons:empty{display:none}.answer-buttons button{border:1px solid #dce5cf;border-radius:7px;padding:6px 9px;font-size:10px;background:#f5f8ed;color:#62744f}.answer-buttons button.hinted{background:#e1efc1;border-color:#759755}.harvest-panel{padding:22px;background:#f0f3e7;border:1px solid #e2e8d7;border-radius:var(--radius)}.harvest-panel h2{font-size:18px;margin-bottom:9px}.harvest-panel>p{font-size:10px;color:#8c987e;margin:0}.harvest-panel canvas{display:block;width:100%;height:auto;margin:0 0 -6px}.growth-steps{display:flex;justify-content:space-around;align-items:center;height:28px}.growth-steps i{font-size:10px;color:#a2ac94;font-style:normal}.fruit-dot{border-radius:50%;display:inline-block;box-shadow:inset -3px -3px 0 #b16f2115}.f1{width:13px;height:13px;background:#eda192}.f2{width:18px;height:18px;background:#e9b65d}.f3{width:24px;height:24px;background:#c5d480}.f4{width:29px;height:29px;background:repeating-linear-gradient(75deg,#699e51 0 5px,#a7c476 5px 11px);border:2px solid #7eaa56}.growth-labels{display:flex;justify-content:space-between;font-size:8px;color:#8e9b7c;margin-top:5px}.goal-track{background:#dde6ce;height:5px;border-radius:5px;overflow:hidden;margin-top:21px}.goal-track>span{height:100%;display:block;background:#85a66a;width:0;transition:width .4s}.goal-caption{display:flex;justify-content:space-between;font-size:8px;color:#8b977b;margin-top:9px}.goal-caption b{color:#738960}.how-panel{padding:5px 9px}.how-panel ol{padding:0;list-style:none;margin:21px 0 0}.how-panel li{display:flex;gap:12px;margin-bottom:22px;align-items:flex-start}.how-panel li>span{background:#edf0e3;border-radius:50%;width:21px;height:21px;display:grid;place-items:center;color:#8d9e77;font-size:10px}.how-panel b{font-size:11px;font-weight:600}.how-panel li p{font-size:9px;color:#89937d;margin:6px 0 0}.tip{font-size:9px;color:#9c967e;padding:12px 9px;background:#f3f0e5;border-radius:9px;text-align:center}.review-link{text-align:left;font-size:10px;color:#748862;padding:0 10px;display:flex;justify-content:space-between}footer{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#a2aa95;margin-top:28px;padding:20px 0 23px;border-top:1px solid #e6eadc}footer button{font-size:9px;color:#8b977c}.pause-overlay{position:absolute;inset:0;z-index:3;background:#f1f5e8ea;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(5px)}.pause-overlay>span{font-size:42px;color:#829b67}.pause-overlay h2{margin-bottom:0;font-size:26px}.pause-overlay p{font-size:12px;color:var(--muted)}.pause-overlay button{width:160px;margin-top:10px}[hidden]{display:none!important}dialog{width:min(760px,calc(100% - 32px));max-height:85dvh;border:1px solid #dce3d0;border-radius:23px;background:var(--paper);color:var(--ink);padding:27px;box-shadow:0 25px 100px #29402926}dialog::backdrop{background:#26371d65;backdrop-filter:blur(5px)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.modal-header small{font-size:9px;letter-spacing:2px;color:#8a9d75}.modal-header h2{margin:8px 0 0;font-size:26px}#modal-body{font-size:13px;line-height:1.9}#modal-body p{color:#718069}.word-toolbar{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.word-toolbar input,.word-toolbar select{padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);font-size:12px}.word-toolbar input{flex:1;min-width:160px}.word-toolbar select{width:140px}.word-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:47dvh;overflow:auto}.word-row{border:1px solid #e2e8d8;border-radius:10px;padding:12px;display:flex;align-items:center;gap:8px}.word-row>div{flex:1;min-width:0}.word-row b{font-size:15px;display:block;overflow-wrap:anywhere}.word-row p{margin:2px 0;font-size:11px}.word-row small{font-size:9px;color:#a0ac92}.word-row>button{color:#75915d;font-size:20px}.word-row .learned{font-size:10px;color:#7b9b54}.modal-count{font-size:11px;color:#90a17b;margin:8px 0}.source-note{font-size:12px;background:#f1f4e8;padding:16px;border-radius:12px}.garden-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:center;margin:25px 0}.garden-stats div{background:#f1f5e8;padding:19px 7px;border-radius:12px}.garden-stats strong{font-size:29px;display:block;color:#5d8350}.garden-stats span{font-size:10px;color:#8a997b}.empty{text-align:center;padding:35px 12px;color:#8a9b79}.result-word{display:inline-block;margin:5px;padding:6px 12px;background:#eef4e3;border-radius:9px;font-size:12px}.result-title{font-size:39px;color:#557e42;text-align:center;margin:10px 0}.result-sub{text-align:center}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);padding:12px 21px;border-radius:30px;background:#38543d;color:#fffdf4;font-size:12px;box-shadow:0 6px 20px #38543d24;z-index:10;max-width:90vw;text-align:center}.source-links a{color:#527845}.review-all{margin-top:15px;text-decoration:underline;font-size:12px;color:#64864f}
@media(min-width:1500px){main{padding-top:48px}.play-layout{gap:28px;grid-template-columns:250px minmax(340px,1fr) 250px}.tank-wrap{aspect-ratio:600/680}.page-heading{margin-bottom:37px}.header{height:110px}.lesson-panel,.harvest-panel{padding:24px}}
@media(max-width:1150px){.header{padding:0 30px}main{padding:30px 30px 0}.play-layout{grid-template-columns:210px minmax(320px,1fr);gap:20px}.right-panel{grid-column:1/-1;grid-template-columns:1fr 1fr;align-items:start}.harvest-panel{position:relative;min-height:195px;padding-right:180px}.harvest-panel canvas{position:absolute;right:16px;top:4px;width:165px}.how-panel{padding:20px}.how-panel ol{display:flex;gap:12px;margin-top:15px}.how-panel li{gap:6px}.how-panel li>span{flex-shrink:0}.how-panel li p{line-height:1.6}.how-panel .tip{margin-top:-12px}.review-link{display:none}.edition-label{display:none}nav{gap:22px}.header-actions{gap:10px}.tank-wrap{aspect-ratio:600/680}}
@media(max-width:760px){.header{height:79px;padding:0 21px}.brand{font-size:20px;gap:9px}.brand small{font-size:7px}.brand-melon{width:36px;height:25px}nav{margin-left:auto;margin-right:14px;gap:14px}.nav-btn{font-size:11px}#game-nav,.nav-btn span,#garden-nav{display:none}.header-actions{gap:7px}.icon-btn{width:28px;height:28px;font-size:14px}main{padding:25px 17px 0}.page-heading{margin-bottom:23px}.eyebrow{font-size:8px;letter-spacing:1px}h1{font-size:28px;letter-spacing:-1px}h1+p{font-size:10px}.daily{display:none}.play-layout{display:flex;flex-direction:column;gap:17px}.left-panel{display:contents}.lesson-panel{width:100%;padding:16px;border-radius:17px;display:grid;grid-template-columns:1fr 1fr;gap:10px 13px}.lesson-panel .section-label,.lesson-panel>h2,.lesson-panel .field-label,.divider,.scope-text,.no-rush{display:none}.book-tabs{margin:0;align-self:center}.book-tabs button{font-size:11px;padding:9px 0}.lesson-panel select{font-size:11px;align-self:center}.mode-options{display:flex;gap:7px;grid-column:1}.mode{padding:9px 6px;gap:5px;flex:1;justify-content:center}.mode b{font-size:10px;white-space:nowrap}.mode small,.mode-symbol,.mode i{display:none}.lesson-panel>.primary-btn{grid-column:2;margin:0;padding:11px 15px;font-size:12px}.arena-panel{width:100%;order:1;border-radius:20px}.experiment{order:3;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:4px 20px;padding:17px}.experiment .section-label{grid-column:1/-1}.experiment>p{grid-column:1/-1;margin:0 0 5px}.experiment label{margin:10px 0 3px}.experiment label[for=softness]{grid-column:1;grid-row:3}.experiment #softness{grid-column:1;grid-row:4}.experiment #softness+.range-ends{grid-column:1;grid-row:5}.experiment label[for=gravity]{grid-column:2;grid-row:3}.experiment #gravity{grid-column:2;grid-row:4}.experiment #gravity+.range-ends{grid-column:2;grid-row:5}.right-panel{order:2;display:block;width:100%}.harvest-panel{min-height:146px;padding:18px 140px 16px 18px}.harvest-panel h2{font-size:16px;margin:7px 0}.harvest-panel canvas{width:140px;right:7px;top:5px}.harvest-panel .growth-steps,.growth-labels{display:none}.harvest-panel .goal-track{margin-top:15px}.how-panel{display:none}.tank-wrap{margin:0 12px;aspect-ratio:600/680}.score-strip{padding:7px 23px 16px}.arena-top{padding:15px 21px 11px}.score-strip strong{font-size:25px}.tank-intro{top:28px}.tank-intro h2{font-size:28px}.tank-intro p{font-size:10px}.tank-intro .intro-tag{font-size:9px}.tank-intro .intro-arrow{font-size:34px}footer{gap:10px;margin-top:19px;padding:16px 0;font-size:8px}footer>span:last-child{display:none}footer button{font-size:8px}.word-grid{grid-template-columns:1fr}dialog{padding:20px}.next-drop{top:9px}.next-drop b{font-size:14px}.next-drop>span{font-size:8px}.controls-hint{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.pause-overlay{backdrop-filter:none}}
/* Play-focused refinements: continuous board, readable feedback, reachable tools. */
.arena-panel{position:relative}.next-preview{text-align:center;color:#6d8261;font-size:12px;min-height:19px;margin-bottom:7px}
#feedback{font-size:12px;line-height:1.7;min-height:24px;color:#536c44;margin-bottom:10px}
.answer-caption{text-align:center;font-size:10px;color:#7a8970;margin:5px 0 8px}.answer-buttons{gap:8px}
.answer-buttons button{font-size:13px;min-height:40px;min-width:65px;padding:8px 12px;color:#425e35;background:#f0f5e5}
.power-row{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:8px;margin-top:14px}.power-row button{min-height:42px;border:1px solid #d4dfc6;border-radius:9px;background:#f3f6eb;font-size:12px;color:#537640}.power-row button kbd{font:10px inherit;margin-left:3px;opacity:.65}
.power-row #magnet-btn:not(:disabled){background:#557f43;color:#fffdf3;border-color:#557f43}.power-row #magnet-btn:disabled{opacity:.7}
.energy-track{height:4px;border-radius:4px;background:#e4ebd7;margin:10px 0}.energy-track span{display:block;height:100%;width:0;border-radius:4px;background:#8fad66;transition:width .35s}
.controls-hint{border-top:0;padding-top:1px;font-size:10px}.controls-hint b{font-weight:500;color:#66884b}
.recent-label{font-size:10px;color:#7f8e72;margin-top:13px}.recent-words{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.recent-chip{font-size:11px;text-align:left;color:#556f44;background:#eef3e5;border-radius:7px;min-height:34px;padding:6px 10px}
.checkpoint{position:absolute;top:30px;left:22px;right:22px;background:#fffef5f5;border:1px solid #c5d5b4;border-radius:18px;box-shadow:0 10px 25px #4c713621;padding:22px;text-align:center;z-index:2}
.checkpoint-tag{font-size:11px;color:#7a9168}.checkpoint h2{font-size:24px;margin:10px 0}.checkpoint p{font-size:12px;color:#738667;margin:8px 0 19px}.checkpoint>div{display:flex;align-items:center;justify-content:center;gap:17px}.checkpoint .primary-btn{width:auto;min-width:180px}.checkpoint-rest{font-size:12px;color:#76886a;min-height:44px}
.book-tabs button:disabled,.mode:disabled,select:disabled{cursor:not-allowed;opacity:.72}.no-rush{line-height:1.7;font-size:10px}.review-link{min-height:40px}.header-actions .icon-btn{min-width:36px;min-height:36px}.arena-controls .text-icon{min-width:36px;min-height:36px}
.tank-wrap{aspect-ratio:600/680}.tank-intro{top:26px}.tank-intro h2{font-size:30px;margin:14px 0 8px}.tank-intro .intro-arrow{font-size:34px;margin-top:0}
@media(max-width:1150px){.tank-wrap{aspect-ratio:600/680}.next-drop>b{font-size:19px}.harvest-panel{min-height:178px}}
@media(max-width:760px){.tank-wrap{aspect-ratio:600/680}.arena-bottom{padding:12px 13px 15px}.next-preview{font-size:11px}#feedback{font-size:12px}.answer-buttons button{min-height:44px;font-size:13px;padding:8px 10px}.power-row{gap:6px}.power-row button{min-height:44px;font-size:11px}.controls-hint{font-size:8px;gap:6px}.checkpoint{top:18px;left:10px;right:10px;padding:18px 12px}.checkpoint h2{font-size:19px}.checkpoint p{font-size:11px}.checkpoint>div{gap:10px}.checkpoint .primary-btn{min-width:155px;font-size:12px}.checkpoint-rest{font-size:11px}.tank-intro h2{font-size:26px}.recent-chip{font-size:11px;min-height:38px}.header-actions .icon-btn{min-width:32px;min-height:32px}.next-drop>b{font-size:17px}.recent-label{font-size:10px}#garden-nav{display:block;font-size:10px}nav{gap:9px;margin-right:8px}#words-nav{font-size:10px}.brand{font-size:18px}.brand-melon{width:30px;height:23px}}
/* Continuous-drop mode keeps the next decision beside the physical result. */
.recipe-panel{padding:18px;background:#fffef8;border:1px solid var(--line);border-radius:18px}.recipe-panel .section-label{margin-bottom:12px}.recipe-word{width:100%;display:grid;grid-template-columns:23px 1fr auto;column-gap:8px;padding:8px 0;text-align:left;border-bottom:1px solid #edf0e5;align-items:center}.recipe-word>span{grid-row:1/3;width:21px;height:21px;display:grid;place-items:center;background:#e9eedf;border-radius:50%;font-size:10px;color:#6e8259}.recipe-word b{font-size:13px;overflow-wrap:anywhere}.recipe-word small{font-size:11px;color:#6c7d60;grid-column:2;line-height:1.5}.recipe-word i{grid-column:3;grid-row:1/3;font-style:normal;color:#7d9863}.recipe-word.reached>span{background:#d5e6ba;color:#416b38}.recipe-panel p{font-size:11px;line-height:1.7;color:#748466}.recipe-goal{font-size:10px;color:#5a7d43}.queue-chip{display:inline-flex;background:#edf3e2;border:1px solid #dce6cb;border-radius:7px;padding:5px 8px;color:#46603a;font-size:11px;white-space:nowrap}.cascade-mode .next-preview{display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.cascade-mode #game{cursor:crosshair}.cascade-mode .next-drop{top:7px;padding:4px 12px}.cascade-mode .next-drop>b{font-size:16px}.cascade-mode .next-drop>span{font-size:10px}.cascade-mode .tank-wrap{aspect-ratio:600/680}.cascade-mode .tank-intro{top:44px}.cascade-mode .tank-intro h2{font-size:29px}.cascade-mode .tank-intro p{font-size:12px}.cascade-mode .harvest-panel{padding:18px}.cascade-mode .harvest-panel canvas{width:140px;margin:auto}.cascade-mode .growth-steps,.cascade-mode .growth-labels{display:none}.cascade-mode .harvest-panel h2{font-size:17px;margin-top:9px}.cascade-mode .goal-caption{font-size:10px}.cascade-mode .how-panel{display:none}.cascade-mode .power-row{margin-top:9px}.cascade-controls #soften-btn{background:#4e7944;color:#fffdf7}.cascade-controls #soften-btn:disabled{opacity:.7}.hold-slot{display:flex;align-items:center;gap:9px;margin-top:8px;font-size:12px;border-bottom:1px solid #e8eddc;padding-bottom:7px;min-width:0}.hold-slot button{font-size:12px;border:1px solid #dbe3cd;border-radius:7px;padding:6px 9px;min-height:34px;white-space:nowrap}.hold-slot kbd{font-size:10px;color:#7d8d6c}.hold-slot>span{color:#4f7040;font-weight:650}.hold-slot small{margin-left:auto;font-size:9px;color:#7d8b70}.danger-banner{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);background:#fff1e7;border:1px solid #d59a80;border-radius:8px;color:#9b4938;padding:8px 12px;font-size:12px;white-space:nowrap;pointer-events:none}.cascade-mode .score-strip{padding-bottom:12px}.cascade-mode .arena-bottom{padding-top:9px}.cascade-mode .recent-words{margin-top:5px}.cascade-mode .controls-hint{flex-wrap:wrap;gap:5px;font-size:9px}.cascade-mode .energy-track{margin:8px 0}.cascade-mode #feedback{min-height:39px;font-size:12px;line-height:1.6;margin-bottom:0}.cascade-mode .header{height:78px}.cascade-mode main{padding-top:23px}.cascade-mode .page-heading{margin-bottom:19px}.cascade-mode h1{font-size:29px}.cascade-mode .page-heading .eyebrow{font-size:9px}.cascade-mode .left-panel{gap:15px}.cascade-mode .lesson-panel{padding:18px}.cascade-mode .book-tabs{margin-bottom:16px}.cascade-mode .divider{margin:16px 0}.cascade-mode .mode-options{gap:7px}.cascade-mode .lesson-panel>.primary-btn{margin-top:18px}.cascade-mode .mode b{font-size:12px}.cascade-mode .mode small{font-size:10px}
@media(max-width:1150px){.cascade-mode .right-panel{grid-template-columns:1fr 1fr}.cascade-mode .harvest-panel{padding-right:150px;min-height:180px}.cascade-mode .harvest-panel canvas{position:absolute;right:8px;top:8px;width:140px}.cascade-mode #recipe-list{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}}
@media(max-width:760px){.cascade-mode main{padding-top:18px}.cascade-mode .header{height:72px;padding:0 16px}.cascade-mode .lesson-panel{padding:12px;grid-template-columns:1fr 1fr}.cascade-mode .mode-options{grid-column:1/-1;grid-row:2;gap:6px}.cascade-mode .mode small{display:none}.cascade-mode .mode b{font-size:12px}.cascade-mode .lesson-panel>.primary-btn{grid-row:3;grid-column:1/-1;margin:0;justify-content:center;min-height:44px}.cascade-mode .lesson-panel .no-rush{display:block;grid-column:1/-1;margin:2px 0 0;font-size:10px}.cascade-mode .book-tabs{margin-bottom:0}.cascade-mode .tank-wrap{aspect-ratio:600/680}.cascade-mode .tank-intro{top:35px}.cascade-mode .tank-intro h2{font-size:26px}.cascade-mode .tank-intro p{font-size:11px}.cascade-mode .queue-chip{font-size:10px;padding:5px 6px}.cascade-mode .next-preview{gap:4px}.cascade-mode .right-panel{display:grid;grid-template-columns:1fr;gap:15px}.cascade-mode .harvest-panel{min-height:144px;padding:18px 148px 16px 18px}.cascade-mode .harvest-panel canvas{width:136px;right:7px;top:7px}.cascade-mode .recipe-panel{padding:15px}.cascade-mode .recipe-word{min-height:44px}.cascade-mode .controls-hint{font-size:8px}.cascade-mode .hold-slot button{min-height:44px}.cascade-mode .hold-slot small{font-size:9px}.cascade-mode .arena-bottom{padding-bottom:13px}.cascade-mode h1{font-size:27px}}
#tool-dock:empty{display:none}.cascade-mode.is-playing .page-heading{display:none}.cascade-mode.is-playing .header{height:64px}.cascade-mode.is-playing main{padding-top:16px}.cascade-mode.is-playing .play-layout{grid-template-columns:220px minmax(320px,480px) 220px;justify-content:center;gap:20px}.cascade-mode.is-playing .lesson-panel .section-label,.cascade-mode.is-playing .lesson-panel>h2,.cascade-mode.is-playing .lesson-panel .book-tabs,.cascade-mode.is-playing .lesson-panel .field-label,.cascade-mode.is-playing .lesson-panel select,.cascade-mode.is-playing .lesson-panel .scope-text,.cascade-mode.is-playing .lesson-panel .divider,.cascade-mode.is-playing .lesson-panel .mode-options{display:none}.cascade-mode.is-playing .lesson-panel>.primary-btn{margin-top:0}.cascade-mode.is-playing .lesson-panel{padding:15px}.cascade-mode.is-playing #tool-dock{padding:15px;background:#f0f4e7;border:1px solid #dce5ce;border-radius:18px}.cascade-mode.is-playing #tool-dock .power-row{grid-template-columns:1fr 1fr;gap:7px;margin:0}.cascade-mode.is-playing #tool-dock #soften-btn{grid-column:1/-1;grid-row:1;min-height:48px}.cascade-mode.is-playing #tool-dock .hold-slot{flex-wrap:wrap;gap:7px}.cascade-mode.is-playing #tool-dock .hold-slot small{margin:0;width:100%;font-size:10px}.cascade-mode.is-playing #tool-dock .controls-hint{line-height:1.8;display:grid;font-size:10px}.cascade-mode.is-playing #tool-dock .power-row button{font-size:12px}.cascade-mode.is-playing .arena-top{padding:8px 18px 3px}.cascade-mode.is-playing .score-strip{padding:3px 23px 12px}.cascade-mode.is-playing .tank-wrap{margin:0 12px;aspect-ratio:600/680}.cascade-mode.is-playing .arena-bottom{padding:9px 13px 12px}.cascade-mode.is-playing .recent-label{margin-top:6px}.cascade-mode.is-playing .recent-chip{min-height:28px;padding:4px 7px;font-size:10px}.cascade-mode.is-playing .queue-chip{font-size:10px;padding:4px 6px}.cascade-mode.is-playing .harvest-panel canvas{width:105px}.cascade-mode.is-playing .goal-track{margin-top:9px}.cascade-mode.is-playing .harvest-panel{padding:15px}.cascade-mode.is-playing .recipe-panel{padding:15px}.cascade-mode.is-playing .recipe-word{padding:5px 0}.cascade-mode.is-playing footer{margin-top:17px}
@media(min-width:761px) and (max-width:1150px){.cascade-mode.is-playing .play-layout{grid-template-columns:180px minmax(300px,480px);gap:16px}.cascade-mode.is-playing .right-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.cascade-mode.is-playing .harvest-panel{padding-right:130px}.cascade-mode.is-playing .harvest-panel canvas{width:120px}}
@media(max-width:760px){.cascade-mode.is-playing .page-heading{display:none}.cascade-mode.is-playing .header{height:64px}.cascade-mode.is-playing .lesson-panel{display:flex;flex-wrap:wrap;padding:12px;gap:6px}.cascade-mode.is-playing .lesson-panel>.primary-btn{flex:1}.cascade-mode.is-playing .lesson-panel .no-rush{width:100%}.cascade-mode.is-playing .tank-wrap{aspect-ratio:600/680}.cascade-mode.is-playing .arena-bottom{padding:10px 12px 13px}.cascade-mode.is-playing .queue-chip{font-size:10px}.cascade-mode.is-playing .right-panel{display:grid;grid-template-columns:1fr}.cascade-mode.is-playing .recipe-word{min-height:44px}.cascade-mode.is-playing .recent-chip{min-height:38px;font-size:11px}.cascade-mode.is-playing .harvest-panel{padding-right:140px}.cascade-mode.is-playing .harvest-panel canvas{width:125px}}

/* Visual clarity: cream paper, defined juice colours, and readable game labels. */
:root{--bg:#f6f7f0;--paper:#fffef9;--ink:#263f33;--muted:#60705f;--green:#356d50;--line:#d4ddcb;--radius:20px}
body{font-weight:500}button,select,input{font-weight:500}.header{border-bottom-color:#dbe2d3}.brand{letter-spacing:.3px}.brand small{color:#48694d}.nav-btn{color:#53664f}.edition-label{color:#5c7054}.header-actions .icon-btn{background:#fffef9;border-color:#c4d1ba}.icon-btn,.text-icon{color:#456344}.text-icon:focus-visible{outline-offset:0}
.eyebrow,.cascade-mode .page-heading .eyebrow{font-size:11px;letter-spacing:1px;color:#5b7550}h1{letter-spacing:-.8px}h1+p{font-size:14px;color:#61705d;line-height:1.7}.daily,.daily strong span{color:#60715a}.section-label{font-size:12px;letter-spacing:.3px;font-weight:650;color:#536c48}.section-label>span{color:#778968}.field-label{font-size:12px;color:#53664b}.scope-text{font-size:11px;line-height:1.6;color:#647159}.lesson-panel{box-shadow:0 3px 0 #dce4d333}.book-tabs{background:#eaf0df}.book-tabs button{font-size:12px;color:#526448}.book-tabs button.active{color:#315d3e;box-shadow:0 1px 5px #526a3720}.lesson-panel select{font-size:12px;color:#334d37;border-color:#c9d4bc;min-height:43px}
.mode{background:#fffef9;border-color:#d5dfca}.mode.active{background:#eaf3dc;border-color:#8cae72;box-shadow:inset 3px 0 #729356}.mode-symbol{background:#e8eedf;color:#3f6c42}.mode b,.cascade-mode .mode b{font-size:13px}.mode small,.cascade-mode .mode small{font-size:11px;color:#65765a}.mode.active i{border-color:#4d7c43}.primary-btn{font-size:14px;background:#356d50;box-shadow:0 3px 0 #234e38;border-radius:12px}.primary-btn:hover{background:#2c6045}.no-rush,.cascade-mode .no-rush{color:#66755c;font-size:11px}.book-tabs button:disabled,.mode:disabled,select:disabled{opacity:.85}
.arena-panel{border:1px solid #bdcdb1;background:#fffef9;box-shadow:0 8px 28px #435c3410}.arena-top{background:#f9fbf3}.live-label{font-size:12px;color:#37573c}.live-label b{font-weight:650}.live-label>span{width:7px;height:7px;background:#568e4d;box-shadow:0 0 0 3px #e1edd6}.arena-controls{gap:5px}.score-strip small{font-size:11px;color:#5d6e55;font-weight:600;letter-spacing:.3px}.score-strip strong{font-size:32px;font-weight:750;letter-spacing:-1px;color:#264434}.score-strip .combo{font-size:29px;color:#a46335}.score-strip>div{position:relative}.score-strip>div+div:before{content:'';position:absolute;left:-9px;top:5px;bottom:2px;width:1px;background:#e5eadc}
.tank-wrap{background:#f4f7ee;border:1px solid #c3d1b7;border-radius:19px 19px 29px 29px;box-shadow:inset 0 2px 10px #5c793313}.tank-wrap:before{border-width:4px;border-color:#fffef980}.tank-floor{height:8px;background:#d5e2bd}.tank-floor span{background:#b9cf94}.tank-intro h2,.cascade-mode .tank-intro h2{color:#35593c;font-weight:800}.intro-tag{font-size:11px;background:#e2edce;color:#4c713b}.tank-intro p,.cascade-mode .tank-intro p{font-size:13px;color:#586e49;line-height:1.8}.tank-intro .intro-arrow{color:#698a49}
.next-drop,.cascade-mode .next-drop{background:#fffef8;border:1px solid var(--bubble-edge,#9db486);box-shadow:0 3px 10px #526b361a;border-radius:12px;padding:5px 12px;gap:9px;top:9px}.next-drop>span,.cascade-mode .next-drop>span{font-size:11px;color:#5d7150}.next-drop>b,.cascade-mode .next-drop>b{font-size:20px;font-weight:750;color:#264834}.next-drop button{width:26px;height:29px;color:#496e3c;font-size:21px}.next-drop:before{content:'';width:8px;height:8px;flex-shrink:0;background:var(--bubble-color,#c6e18e);border:1px solid var(--bubble-edge,#648a38);border-radius:50%}
#feedback,.cascade-mode #feedback{font-size:13px;font-weight:600;line-height:1.6;color:#37563a;min-height:40px;margin:7px 0 3px}.answer-caption{font-size:12px;color:#617157}.answer-buttons button{font-size:14px;color:#2f5233;border-color:#c7d7b6;background:#edf5e2}.answer-buttons button.hinted{border-color:#688e4d;background:#dcecbe}.next-preview,.cascade-mode .next-preview{font-size:13px;gap:7px;min-height:24px}.cascade-mode .next-preview{flex-wrap:nowrap;align-items:stretch}
.queue-chip,.cascade-mode .queue-chip,.cascade-mode.is-playing .queue-chip{display:grid;grid-template-columns:1fr auto;align-content:center;align-items:center;gap:3px 6px;flex:1;min-width:0;border:1px solid #d6dfcc;border-top:3px solid var(--bubble-edge,#648a38);background:#f9fbf3;color:#2e5037;border-radius:9px;padding:6px 9px;text-align:left;white-space:normal}.queue-chip small{font-size:10px;font-weight:500;grid-column:1/-1;color:#64755b}.queue-chip b{font-size:14px;line-height:1.3;overflow-wrap:anywhere}.queue-chip>span{font-size:10px;color:#4f6644;white-space:nowrap}
.power-row button,.cascade-mode.is-playing #tool-dock .power-row button{border-color:#bfceb0;background:#fffef7;font-size:13px;font-weight:650;color:#355333;min-height:44px;border-radius:10px}.cascade-controls #soften-btn{background:#477846;color:#fffef6;border-color:#366237;box-shadow:0 3px 0 #345b31}.cascade-controls #soften-btn:disabled{box-shadow:none;background:#e1e8d7;color:#536749;border-color:#c6d2ba;opacity:1}.power-row button:disabled{color:#7e8c70;background:#eff2e8;border-color:#d9e1cf;opacity:1}.power-row #magnet-btn:not(:disabled){background:#477846;color:#fffef6}.hold-slot{gap:8px;border-bottom-color:#cfdac1;padding-bottom:9px;margin-top:12px}.hold-slot button{font-size:13px;color:#3b5f3c;background:#fdfdf4;border-color:#c4d1b4;font-weight:650;min-height:40px}.hold-slot>span{font-size:14px;color:#2f5234;overflow-wrap:anywhere}.hold-slot small,.cascade-mode.is-playing #tool-dock .hold-slot small{color:#647457;font-size:11px}.energy-track{height:6px;background:#d8e2cb;border:1px solid #cbd8ba}.energy-track span{background:#7ba35a}.controls-hint,.cascade-mode .controls-hint,.cascade-mode.is-playing #tool-dock .controls-hint{font-size:11px;color:#5c6f51;line-height:1.65}.controls-hint b{font-weight:750;color:#375a37}
.recent-label{font-size:11px;color:#68765c}.recent-chip,.cascade-mode.is-playing .recent-chip{font-size:12px;min-height:32px;background:#edf3e2;border:1px solid #d7e2c9;color:#3b5b37;padding:5px 9px;border-radius:8px}.experiment{background:#edf2e3;border-color:#d1dcc3}.experiment>p{font-size:12px;line-height:1.5;color:#66755b}.experiment label{font-size:12px;color:#3c5738}.experiment output{font-size:11px;color:#547641}.experiment input{accent-color:#688c49;height:6px}.range-ends{font-size:10px;color:#65755a}
.harvest-panel,.cascade-mode.is-playing .harvest-panel{background:#eef3e3;border-color:#cbd8b9}.harvest-panel>p{font-size:12px;color:#5d704e;line-height:1.6}.harvest-panel h2{color:#2f4f36}.goal-caption,.cascade-mode .goal-caption{font-size:11px;color:#586c49;line-height:1.5;gap:8px}.goal-caption b{color:#41633a;white-space:nowrap}.goal-track{height:6px;background:#d4dfc2}.goal-track>span{background:#71964f}.recipe-panel{border-color:#cfdcc1;background:#fffef8}.recipe-word{grid-template-columns:27px 1fr 18px;column-gap:9px;border-bottom-color:#e5ebda;min-height:44px}.recipe-word>span{width:25px;height:25px;border:1px solid var(--bubble-edge,#648a38);background:var(--bubble-color,#c6e18e);color:#314c33;font-size:12px;font-weight:750;box-shadow:inset 0 2px 3px #ffffff9c}.recipe-word.reached>span{background:var(--bubble-color,#c6e18e);color:#314c33}.recipe-word b{font-size:15px;color:#2e4934}.recipe-word small{font-size:12px;color:#5d6c54}.recipe-word i{font-size:18px;color:#567c47}.recipe-panel p{font-size:12px;color:#617153;line-height:1.65}.recipe-goal{font-size:11px;color:#4b6b3d}.review-link{font-size:12px;color:#526e42}.how-panel b{font-size:13px}.how-panel li p{font-size:12px;color:#627254}.tip{font-size:11px;color:#736444}.danger-banner{font-size:14px;font-weight:700;color:#963e2e;background:#fff5e9;border-color:#bb7256}.pause-overlay p{color:#566b4b}.word-row b{font-size:17px}.word-row p{font-size:13px}.word-row small{font-size:11px;color:#6c7c5b}#modal-body p{color:#54674c}.modal-count{color:#637b4e}.source-note{background:#edf2e3}footer,footer button{font-size:11px;color:#677a56}.empty{color:#63774e}.garden-stats span{font-size:12px;color:#5a714c}.garden-stats strong{color:#416d39}
#mascot{aspect-ratio:460/360;height:auto}
.cascade-mode.is-playing .play-layout{grid-template-columns:210px minmax(320px,520px) 230px;gap:20px}.cascade-mode.is-playing .arena-top{padding:8px 17px 4px}.cascade-mode.is-playing .score-strip{padding:4px 24px 13px}.cascade-mode.is-playing #tool-dock{background:#ebf1e0;border-color:#c6d5b5;box-shadow:0 3px 0 #dee7d144}.cascade-mode.is-playing .tank-wrap{margin:0 12px}.cascade-mode.is-playing .arena-bottom{padding:10px 13px 12px}.cascade-mode.is-playing .recipe-word{padding:6px 0}.cascade-mode.is-playing .recent-label{margin-top:5px}
@media(min-width:761px) and (max-width:1150px){.cascade-mode.is-playing .play-layout{grid-template-columns:190px minmax(320px,520px)}.cascade-mode.is-playing .right-panel{grid-template-columns:1fr 1fr}.cascade-mode #recipe-list{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.header,.cascade-mode .header{padding-left:13px;padding-right:13px}.brand{font-size:17px}.brand small{font-size:7px;letter-spacing:2.8px}.header nav{gap:7px;margin-right:7px}#words-nav,#garden-nav{font-size:11px}.header-actions{gap:5px}main{padding-left:10px;padding-right:10px}.page-heading{padding:0 5px}.eyebrow,.cascade-mode .page-heading .eyebrow{font-size:10px}h1+p{font-size:12px}.mode b,.cascade-mode .mode b{font-size:12px}.lesson-panel select,.book-tabs button{font-size:12px}.cascade-mode .lesson-panel>.primary-btn{font-size:14px}.cascade-mode.is-playing .tank-wrap{margin:0 8px;aspect-ratio:600/680}.cascade-mode .tank-intro h2{font-size:28px}.cascade-mode .tank-intro p{font-size:12px}.score-strip strong{font-size:30px}.score-strip .combo{font-size:27px}.score-strip small{font-size:11px}.live-label{font-size:12px}.cascade-mode.is-playing .arena-top{padding-left:14px;padding-right:12px}.cascade-mode .next-drop>b{font-size:19px}.cascade-mode .next-drop>span{font-size:11px}.cascade-mode.is-playing .arena-bottom{padding:10px}.cascade-mode .next-preview{gap:5px}.queue-chip,.cascade-mode .queue-chip,.cascade-mode.is-playing .queue-chip{padding:5px 6px;gap:3px}.queue-chip b{font-size:13px}.queue-chip small,.queue-chip>span{font-size:10px}.cascade-mode #feedback{font-size:13px;min-height:41px}.power-row button{font-size:12px}.hold-slot{margin-top:10px}.hold-slot button{min-height:44px}.hold-slot>span{font-size:13px}.hold-slot small{font-size:10px}.controls-hint,.cascade-mode .controls-hint{font-size:10px}.cascade-mode.is-playing .recent-chip{font-size:12px;min-height:36px}.recipe-word b{font-size:15px}.recipe-word small{font-size:12px}footer,footer button{font-size:10px}.cascade-mode .harvest-panel h2{font-size:16px}.harvest-panel>p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.energy-track span,.goal-track>span{transition:none}}
.cascade-mode.is-playing #tool-dock #soften-btn:not(:disabled){background:#477846;color:#fffef6;border-color:#366237;box-shadow:0 3px 0 #345b31}.cascade-mode.is-playing #tool-dock #soften-btn:disabled{background:#e1e8d7;color:#536749;border-color:#c6d2ba;box-shadow:none}
/* Keep the readable current-word chip out of the falling bubble's path. */
.arena-top{gap:10px}.arena-top .live-label{min-width:0;flex:1}.arena-top .live-label>span{flex-shrink:0}.arena-top .live-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arena-top .next-drop{position:static;transform:none;max-width:48%;flex-shrink:1;gap:7px;padding:3px 9px;border-radius:10px;min-width:0}.arena-top .next-drop>span{display:none}.arena-top .next-drop>b{font-size:17px;overflow:hidden;text-overflow:ellipsis;min-width:0}.arena-top .next-drop button{flex-shrink:0;font-size:19px;width:25px;height:28px}.arena-top .arena-controls{flex-shrink:0}.arena-top .next-drop:before{width:7px;height:7px}
@media(max-width:760px){.cascade-mode.is-playing .tank-wrap{aspect-ratio:600/680}.arena-top{gap:6px}.arena-top .live-label{font-size:11px}.arena-top .next-drop{max-width:46%;padding:3px 7px}.arena-top .next-drop>b{font-size:16px}.arena-top .arena-controls{gap:1px}.arena-controls .text-icon{min-width:32px}.cascade-mode.is-playing .arena-top{padding-left:13px;padding-right:10px}}
/* Give the playable pool the space; the two rails remain within easy reach. */
@media(min-width:761px){.cascade-mode.is-playing #tool-dock .power-row button{padding-left:4px;padding-right:4px;white-space:nowrap;font-size:12px}}
@media(min-width:1151px){
 .cascade-mode.is-playing main{max-width:1520px;padding-left:24px;padding-right:24px}
 .cascade-mode.is-playing .play-layout{grid-template-columns:196px minmax(320px,760px) 196px;gap:18px}
 .cascade-mode.is-playing .lesson-panel,.cascade-mode.is-playing #tool-dock,.cascade-mode.is-playing .experiment{padding:13px}
 .cascade-mode.is-playing .left-panel,.cascade-mode.is-playing .right-panel{position:sticky;top:16px}
 .cascade-mode.is-playing .harvest-panel h2{font-size:17px}
 .cascade-mode.is-playing .harvest-panel,.cascade-mode.is-playing .recipe-panel{padding:13px}
}
@media(min-width:761px) and (max-width:1150px){
 .cascade-mode.is-playing main{padding-left:18px;padding-right:18px}
 .cascade-mode.is-playing .play-layout{grid-template-columns:170px minmax(320px,760px);gap:16px}
}
@media(min-width:1151px) and (max-height:800px){
 .cascade-mode.is-playing .play-layout{grid-template-columns:196px minmax(320px,560px) 196px}
}
@media(min-width:761px) and (max-width:1150px) and (max-height:800px){
 .cascade-mode.is-playing .play-layout{grid-template-columns:170px minmax(320px,560px)}
}
/* The fruit skin, thumbnail and evolution route share the same artwork. */
.next-drop:before{display:none}.next-drop>img{width:28px;height:28px;object-fit:contain;flex-shrink:0}
.queue-chip,.cascade-mode .queue-chip,.cascade-mode.is-playing .queue-chip{grid-template-columns:24px minmax(0,1fr) auto;column-gap:5px}
.queue-chip>img{width:24px;height:28px;object-fit:contain}.queue-chip>small{grid-column:1/-1}
.recipe-word{grid-template-columns:40px minmax(0,1fr) 18px;column-gap:7px}
.recipe-word>span.recipe-fruit,.recipe-word.reached>span.recipe-fruit{position:relative;width:40px;height:43px;background:none;border:0;box-shadow:none;border-radius:0}
.recipe-fruit img{width:40px;height:40px;object-fit:contain}.recipe-fruit em{position:absolute;bottom:0;right:0;min-width:14px;height:14px;display:grid;place-items:center;border-radius:50%;background:#fffdf1;color:#3e5d38;border:1px solid #c9d6b8;font-size:9px;font-style:normal}
.recipe-word .fruit-name{display:block;font-size:10px;color:#748163;line-height:1.4;margin-top:1px}
.fruit-progression{max-width:1188px;margin:24px auto 0;display:flex;align-items:center;gap:30px;border-top:1px solid #d7e1cb;border-bottom:1px solid #d7e1cb;padding:19px 12px 17px}
.fruit-progression>div{flex:0 0 190px}.fruit-progression h2{font-size:18px;margin:0 0 6px;color:#36583e;letter-spacing:0}.fruit-progression p{font-size:11px;color:#6d7d5d;line-height:1.7;margin:0}
#fruit-evolution{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:9px;list-style:none;padding:0;margin:0;flex:1;min-width:0}
#fruit-evolution li{position:relative;text-align:center;min-width:0;padding:3px 0 7px;border-bottom:2px solid transparent}
#fruit-evolution li+li:before{content:'›';position:absolute;left:-7px;top:32px;color:#b5c7a0;font-size:19px;font-weight:400}
.evolution-image{height:80px;display:flex;align-items:center;justify-content:center}.evolution-image img{width:var(--fruit-size);height:var(--fruit-size);object-fit:contain}
#fruit-evolution b{display:block;font-size:12px;color:#526747;font-weight:600}#fruit-evolution small{display:block;font-size:9px;color:#89967a;margin-top:3px}#fruit-evolution li.current{border-bottom-color:#79995a}#fruit-evolution li.current b{color:#315b36;font-weight:750}
@media(max-width:1150px){.fruit-progression{gap:16px}.fruit-progression>div{flex-basis:156px}.fruit-progression h2{font-size:16px}#fruit-evolution{gap:5px}}
@media(max-width:760px){.next-drop>img{width:23px;height:25px}.queue-chip,.cascade-mode .queue-chip,.cascade-mode.is-playing .queue-chip{grid-template-columns:18px minmax(0,1fr) auto;gap:3px}.queue-chip>img{width:18px;height:25px}.queue-chip b{font-size:12px}.queue-chip>span{font-size:9px}.fruit-progression{display:block;padding:14px 0 9px;margin-top:18px}.fruit-progression>div{padding:0 5px}.fruit-progression h2{font-size:16px;margin-bottom:3px}.fruit-progression p{font-size:10px}#fruit-evolution{margin-top:4px;gap:1px}.evolution-image{height:66px}.evolution-image img{width:calc(var(--fruit-size)*.75);height:calc(var(--fruit-size)*.75)}#fruit-evolution b{font-size:10px}#fruit-evolution small{font-size:8px}#fruit-evolution li+li:before{font-size:13px;left:-2px;top:29px}}

/* Difficulty choices use the existing learning controls; locked during a round. */
.difficulty-choice{margin-top:18px}.difficulty-choice .scope-text{line-height:1.65;min-height:3.3em}
.recipe-word>span.merge-output,.recipe-word.reached>span.merge-output{grid-column:2 / -1;grid-row:3;display:block;width:auto;height:auto;border:0;border-radius:0;background:none;box-shadow:none;font-size:10px;line-height:1.5;font-weight:500;color:#617153;padding:2px 0 3px;white-space:normal}
.recipe-word .merge-output:empty{display:none}
.cascade-mode.is-playing .difficulty-choice{display:none}
@media(max-width:760px){.difficulty-choice{margin-top:12px}.difficulty-choice .scope-text{min-height:0}.recipe-word .merge-output{font-size:11px}}

/* Catalog selection and focused practice share the fruit playground. */
#grade-select{margin-bottom:10px}.lesson-panel .book-tabs{margin-bottom:9px}.edition-note{font-size:11px;line-height:1.55;color:#57714d;margin:0 0 16px}
.catalog-table{margin:20px 0}.catalog-table>div{display:grid;grid-template-columns:1fr 1.3fr auto;gap:8px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}.catalog-table span{color:#617353}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.training-mode .tank-wrap{min-height:680px;aspect-ratio:600/680}.training-mode #tool-rack,.training-mode #answer-caption,.training-mode .experiment,.training-mode #next-preview{display:none}
.training-mode .tank-intro h2{font-size:30px}.training-mode.is-playing .page-heading{display:none}.training-mode.is-playing main{padding-top:20px}
.training-card{position:absolute;inset:16px 18px auto;z-index:2;background:#fffff8f5;border:1px solid #cddcbf;border-radius:18px;padding:22px;box-shadow:0 8px 24px #3b583814;max-height:calc(100% - 32px);overflow:auto;overscroll-behavior:contain}
.training-meta{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#557048}.training-meta strong{font-variant-numeric:tabular-nums}.training-meta .urgent{color:#b54b3b}
.training-track{height:4px;border-radius:3px;background:#e6eddb;margin-top:10px;overflow:hidden}.training-track span{display:block;height:100%;background:#83a15a;width:0}
.training-prompt{text-align:center;font-size:12px;color:#687b5a;margin:25px 0 8px}.training-card h2{font-size:clamp(22px,2.7vw,34px);line-height:1.35;text-align:center;margin:0;overflow-wrap:anywhere;color:#31583b}
#training-location{text-align:center;font-size:10px;color:#718166;line-height:1.6;margin:8px 0 22px}
#spelling-input{width:100%;min-width:0;padding:13px 12px;font-size:20px;color:#294830;background:#fff;border:2px solid #b1c795;border-radius:10px;box-shadow:0 2px 0 #e7edda}#spelling-submit{margin-top:12px;min-height:44px}
.training-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.training-choices button{background:#f5f8ed;border:1px solid #cbdab8;border-radius:11px;min-height:64px;padding:12px;font-size:15px;line-height:1.55;overflow-wrap:anywhere}.training-choices button.correct{border:2px solid #477f4d;background:#e5f1d6;opacity:1}
.training-feedback{min-height:48px;margin-top:15px;padding:6px 0;font-size:13px;line-height:1.7;color:#60754c;overflow-wrap:anywhere}.training-feedback.correct{color:#346939}.training-feedback.incorrect{color:#a94735}
.training-actions{display:flex;gap:12px;align-items:center;justify-content:space-between}.training-actions>button{min-height:44px;font-size:12px}.training-actions>.primary-btn{width:auto;min-width:110px}.training-note{font-size:10px;color:#6c7d60;line-height:1.7;margin:14px 0 0}
.training-mode .pause-overlay{z-index:4}.training-mode.is-playing .lesson-panel .section-label,.training-mode.is-playing .lesson-panel>h2,.training-mode.is-playing .lesson-panel>.field-label,.training-mode.is-playing #grade-select,.training-mode.is-playing .book-tabs,.training-mode.is-playing #unit-select,.training-mode.is-playing .mode-options,.training-mode.is-playing .divider,.training-mode.is-playing .scope-text{display:none}
@media(max-width:760px){.mode-options{grid-template-columns:1fr 1fr;gap:8px}.mode{padding:10px 8px}.mode i{display:none}.mode small{font-size:10px}.training-mode .tank-wrap{min-height:660px;aspect-ratio:auto}.training-card{inset:12px 10px auto;padding:18px 14px;max-height:calc(100% - 24px)}.training-card h2{font-size:27px}.training-prompt{margin-top:18px}.training-choices button{font-size:14px;min-height:60px}.training-mode.is-playing .left-panel{margin-bottom:5px}.catalog-table>div{grid-template-columns:1fr auto}.catalog-table span{grid-row:2;font-size:10px}.catalog-table strong{grid-column:2;grid-row:1}.word-toolbar{flex-wrap:wrap}.word-toolbar select{max-width:100%;min-width:0}}
[hidden]{display:none!important}
.training-feedback:empty{min-height:0;padding:0;margin-top:12px}
@media(max-width:760px){
 .training-mode #game{position:absolute;inset:0}
 .training-mode .training-card{position:relative;inset:auto;max-height:none;overflow:visible;margin:12px 10px;padding:16px 14px}
 .training-prompt{margin-top:16px}#training-location{margin-bottom:16px}
 .training-actions{margin-top:8px}.training-note{margin-top:10px}
}

/* Keep textbook choice distinct from grade and term, including narrow screens. */
#curriculum-select{font-weight:700;border-color:#739465;background:#edf3e3;margin-bottom:10px}
.word-toolbar{flex-wrap:wrap}.word-toolbar input{flex:1 1 220px}.word-toolbar select{max-width:100%;min-width:0}
@media(max-width:760px){.lesson-panel label[for="curriculum-select"],.lesson-panel #curriculum-select{grid-column:1/-1}.lesson-panel #curriculum-select{margin-bottom:3px}.word-toolbar #word-curriculum-filter{flex:1 1 110px}.word-toolbar #word-book-filter{flex:1 1 190px}}

.training-mode.is-playing #curriculum-select{display:none}
@media(max-width:760px){
 body:not(.is-playing) .lesson-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
 body:not(.is-playing) .lesson-panel>.field-label{display:none}
 body:not(.is-playing) .lesson-panel>select{min-width:0;width:100%;margin:0}
 body:not(.is-playing) #curriculum-select{grid-area:1/1/2/-1}
 body:not(.is-playing) #grade-select{grid-area:2/1/3/2}
 body:not(.is-playing) .lesson-panel .book-tabs{grid-area:2/2/3/3;margin:0}
 body:not(.is-playing) #edition-note{grid-area:3/1/4/-1;margin:0}
 body:not(.is-playing) #unit-select{grid-area:4/1/5/-1}
 body:not(.is-playing) #scope-text{grid-area:5/1/6/-1;margin:0}
 body:not(.is-playing) .lesson-panel .mode-options{display:grid;grid-area:6/1/7/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0}
 body:not(.is-playing) .lesson-panel .mode{min-width:0;min-height:44px;justify-content:center}
 body:not(.is-playing) .lesson-panel .mode b{white-space:normal}
 body:not(.is-playing) .difficulty-choice{grid-area:7/1/8/-1;margin:0}
 body:not(.is-playing) .lesson-panel>.primary-btn{grid-area:8/1/9/-1;margin:0}
 body:not(.is-playing) .lesson-panel .no-rush{grid-area:9/1/10/-1;margin:0}
}

.vocabulary-progress{margin:8px 0 4px;font-size:12px;line-height:1.6;color:#536c44;text-align:center}

/* Compact, accessible disclosure without interrupting play. */
.privacy-note{position:relative;max-width:340px;text-align:left}.privacy-note summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.privacy-note p{font-size:12px;line-height:1.8;margin:12px 0 0;color:var(--ink,#294838)}
