:root{--paper:#f8f5ec;--white:#fffef9;--ink:#304837;--muted:#73806c;--green:#54744e;--green-dark:#3e5c39;--line:#dfdfcf;--font:"Avenir Next","Trebuchet MS",ui-rounded,system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #b37b45;outline-offset:5px}svg{display:block}button svg,a svg{pointer-events:none}[hidden]{display:none!important}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.site-header{height:106px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none;font-size:29px;font-weight:750;letter-spacing:-1.6px}.brand-flower{width:42px;height:42px;color:#79966a}.brand-dot{color:#d99872}.site-header nav{display:flex;align-items:center;gap:31px}.library-link{font-size:12px;text-decoration:none;color:#738168}.parent-nav{display:flex;align-items:center;gap:8px;padding:11px 17px;border:1px solid #d9dece;background:transparent;color:var(--ink);border-radius:25px;font-size:11px;font-weight:700}.parent-nav>span{font-size:20px;font-weight:400}.parent-nav:hover{background:#eeeee3}.eyebrow{font-size:9px;line-height:1.8;letter-spacing:2px;font-weight:800;display:flex;gap:8px;align-items:center}.eyebrow-dot{width:6px;height:6px;border-radius:50%;background:#dca580}.home-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;min-height:394px;padding:22px 0 35px}.hero-copy h1{font-size:clamp(44px,4.6vw,65px);letter-spacing:-3px;line-height:1.1;font-weight:650;margin:18px 0}.hero-copy h1 span{color:#65825b}.hero-copy>p{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 23px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid transparent;text-decoration:none;border-radius:13px;padding:14px 20px;min-height:49px;font:650 12px var(--font);transition:transform .15s,background .15s}.button.primary{background:var(--green);color:#fffdf5;border-color:var(--green)}.button.primary:hover:not(:disabled){background:var(--green-dark);transform:translateY(-1px)}.button.primary:disabled{background:#e3e8db;color:#9ba58e;border-color:#e3e8db}.button.soft{background:#f7f7ec;color:#57734e;border-color:#d9e0cb}.button.soft:hover{background:#e4ead9}.button.outlined{border-color:#ccd6c2;color:#59734f;background:transparent}.button.outlined:hover{background:#e8eddf}.hero-trust{display:flex;gap:17px;flex-wrap:wrap;margin-top:18px;font-size:9px;color:#8a9380}.hero-trust span{display:flex;gap:5px;align-items:center}.hero-trust span:before{content:'✓';color:#8aa17b}.hero-art{height:345px;position:relative;isolation:isolate}.hero-halo{position:absolute;background:#e4ebd9;width:315px;height:315px;border-radius:47% 53% 49% 51%;left:70px;bottom:0;z-index:-1}.hero-bunny{position:absolute;width:194px;height:255px;left:130px;bottom:4px;transform:rotate(-3deg)}.float-card{position:absolute;background:#fffdf5;border:1px solid #e4e2d2;border-radius:16px;box-shadow:0 5px 0 #dddcca3b}.numbers-card{left:5px;top:45px;padding:15px 22px 11px;transform:rotate(-9deg);width:190px;white-space:nowrap}.numbers-card>span{font-size:37px;font-weight:700;display:inline-block;margin-right:12px;line-height:1.25}.numbers-card>span:first-child{color:#8da676}.numbers-card>span:nth-child(2){color:#ce9673}.numbers-card>span:nth-child(3){color:#a197b8;margin:0}.numbers-card small{display:block;font-size:8px;color:#a19c87;text-align:center;margin-top:5px}.shapes-card{right:5px;top:93px;display:flex;gap:11px;padding:21px 17px;transform:rotate(9deg)}.mini-triangle{width:0;height:0;border-left:15px solid transparent;border-right:15px solid transparent;border-bottom:28px solid #d6a085}.mini-circle{width:28px;height:28px;border-radius:50%;background:#9ebc91}.mini-square{width:27px;height:27px;border-radius:5px;background:#a398b7}.letter-card{left:12px;bottom:35px;padding:12px 18px;font-size:37px;letter-spacing:6px;font-family:Georgia,serif;font-weight:bold;color:#8ca6b5;transform:rotate(5deg)}.letter-card span{color:#d6aa77}.hero-carrot{position:absolute;right:69px;bottom:18px;width:57px;height:80px;transform:rotate(27deg)}.hero-flower{position:absolute;width:27px;height:27px}.f-one{right:44px;top:31px;color:#d4b295;transform:rotate(18deg)}.f-two{left:96px;bottom:11px;color:#b4a6c4}.hero-spark{position:absolute;top:9px;left:230px;font-size:43px;color:#d3b374}.hero-cloud{position:absolute;width:44px;height:13px;background:#f3f2e7;border-radius:15px}.hero-cloud:after{content:'';position:absolute;left:10px;bottom:0;width:22px;height:22px;background:inherit;border-radius:50%}.cloud-a{right:68px;top:45px}.cloud-b{left:65px;top:192px;transform:scale(.7)}
.age-selector{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;gap:25px}.age-selector h2{font-size:25px;letter-spacing:-.8px;font-weight:650;margin:5px 0}.age-buttons{display:flex;gap:10px}.age-button{display:flex;align-items:center;gap:12px;min-width:166px;padding:13px 17px;background:#f4f1e8;border:1px solid #dfdfd1;border-radius:14px;color:#7e8874}.age-button strong{font-size:23px;font-weight:650;letter-spacing:-1px}.age-button span{font-size:10px}.age-button[aria-pressed=true]{background:#e4ecd9;border-color:#b7c8a7;color:#49623d;box-shadow:0 2px 0 #cad6bc55}.age-note{margin:19px 0 0;background:#f3ead9;border:1px solid #e8dbbf;border-radius:15px;padding:13px 19px;display:flex;gap:13px;align-items:center}.age-note>span{font-size:28px;color:#b2936d}.age-note p{font-size:12px;line-height:1.7;margin:0;color:#8b795f}.journey-strip{display:flex;align-items:center;gap:19px;padding:21px 24px;background:#eaf0e1;border:1px solid #dce4cf;border-radius:18px;margin:28px 0 42px}.journey-symbol{width:47px;height:47px;display:grid;place-items:center;background:#f6f7ed;color:#a5b78b;font-size:31px;border-radius:14px;flex-shrink:0}.journey-strip .eyebrow{font-size:8px;letter-spacing:1.6px;color:#899b73}.journey-strip h3{font-size:15px;font-weight:650;margin:3px 0 5px}.journey-strip p{font-size:11px;color:#82916f;margin:0;line-height:1.5}.journey-strip>.button{margin-left:auto;flex-shrink:0;font-size:11px;padding:12px 17px;min-height:44px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.section-heading h2{font-size:33px;letter-spacing:-1px;font-weight:650;margin:7px 0 0}.section-heading>p{font-size:11px;color:#939a87;margin:0 0 5px}.category-filters{display:flex;gap:8px;flex-wrap:wrap;padding:23px 0 25px}.filter-button{border:1px solid #e2e3d5;background:transparent;padding:10px 16px;border-radius:25px;font-size:11px;color:#87907c}.filter-button[aria-pressed=true]{background:#587650;border-color:#587650;color:#fffdf5}.filter-button:hover:not([aria-pressed=true]){background:#ecefe2}.activity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:21px}.activity-card{background:var(--white);border:1px solid #e3e3d6;border-radius:21px;overflow:hidden;box-shadow:0 4px 15px #73774b03;display:flex;flex-direction:column}.card-art{height:160px;position:relative;display:flex;align-items:center;justify-content:center;overflow:clip}.sage{background:#e4ecd9;color:#759563}.peach{background:#f1e2d3;color:#c18b68}.lavender{background:#e8e4ef;color:#a095b8}.blue{background:#e1eaf0;color:#84a2b5}.butter{background:#f3edd8;color:#c4ad6b}.rose{background:#f1e2df;color:#c99b92}.card-tag{position:absolute;left:18px;top:15px;font-size:7px;font-weight:750;letter-spacing:1.6px;opacity:.8}.activity-illustration{width:86px;height:101px;margin-top:15px;transform:rotate(-4deg)}.activity-illustration svg{width:100%;height:100%}.activity-illustration:has(use[href="#bunny"]){width:79px;height:111px;margin-top:20px}.card-art-decoration{position:absolute;right:24px;bottom:26px;font-size:31px;opacity:.45}.played-badge{position:absolute;right:10px;top:12px;background:#ffffffa6;border-radius:14px;padding:5px 8px;font-size:8px;color:#6e8559}.card-content{padding:21px 19px 16px;flex:1;display:flex;flex-direction:column}.card-kicker{font-size:8px;letter-spacing:1px;color:#94a185;text-transform:uppercase;font-weight:700}.card-content h3{font-size:19px;letter-spacing:-.55px;font-weight:650;margin:7px 0 9px;line-height:1.3}.card-content>p{font-size:11px;color:#8c947f;line-height:1.75;margin:0 0 14px;min-height:39px;flex:1}.card-meta{display:flex;gap:11px;color:#a1a793;font-size:8px;margin:0 0 16px}.card-meta span+span:before{content:'·';margin-right:11px}.card-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eeeee3;padding-top:11px;gap:8px}.card-play{color:#5e7c50;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;flex:1;font-size:11px;font-weight:700;min-height:37px;padding:0 7px 0 0}.card-play span{font-size:17px}.card-details{font-size:9px;border:1px solid #e4e6d9;background:#f6f7ef;color:#8c987d;padding:8px 10px;border-radius:9px}.card-play:hover{color:#3b5c30}.card-details:hover{background:#e7eddb}.parent-banner{display:flex;align-items:center;gap:26px;background:#efede6;border:1px solid #e1dfd2;border-radius:21px;padding:31px 34px;margin:46px 0}.parent-banner-icon{font-size:63px;color:#b4a68b;font-weight:300}.parent-banner h2{font-size:26px;line-height:1.25;letter-spacing:-.7px;font-weight:650;margin:7px 0 10px}.parent-banner p{font-size:11px;color:#8f927f;line-height:1.8;max-width:390px;margin:0}.parent-banner>.button{margin-left:auto;flex-shrink:0}.site-footer{padding:27px 0 34px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line)}.footer-brand{font-size:20px;letter-spacing:-1px;gap:0}.site-footer>span{font-size:9px;color:#959c88}.site-footer>div{display:flex;gap:22px}.site-footer button{border:0;background:transparent;color:#8f9881;font-size:9px;padding:5px}.empty-state{padding:40px;text-align:center;color:#94a085}
/* Activity screens */
.play-wrap{width:min(830px,calc(100% - 48px));margin:0 auto 44px}.play-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 22px}.back-link{font-size:12px;text-decoration:none;display:flex;gap:8px;align-items:center;color:#80916f}.play-meta{font-size:10px;color:#929b84}.voice-button{border:1px solid #dde4d1;background:#edf2e5;color:#758767;border-radius:25px;padding:10px 13px;display:flex;gap:7px;align-items:center;font-size:10px;flex-shrink:0}.voice-button[aria-pressed=false]{background:#efebe3;border-color:#e4dfd5;color:#9c907b}.session-panel{background:var(--white);border:1px solid #e0e3d4;border-radius:25px;box-shadow:0 10px 40px #60704705;overflow:clip}.session-heading{text-align:center;padding:28px 30px 22px;border-bottom:1px solid #eeeee3}.session-heading .eyebrow{justify-content:center;font-size:8px;letter-spacing:1.25px;color:#98a389;max-width:650px;margin:auto}.session-heading h1{font-size:31px;letter-spacing:-1px;font-weight:650;line-height:1.2;margin:9px 0 17px}.session-progress{display:flex;align-items:center;justify-content:center;gap:16px}.progress-dots{display:flex;gap:6px}.progress-dot{width:7px;height:7px;border-radius:50%;border:1px solid #d9dfcc;background:#f4f6ee}.progress-dot.current{background:#dfb87b;border-color:#dfb87b;box-shadow:0 0 0 3px #f5eddd}.progress-dot.done{background:#8da87a;border-color:#8da87a}.session-progress>span{font-size:9px;color:#a0a791}.question-title{display:flex;align-items:center;justify-content:center;gap:12px;padding:25px 25px 18px;max-width:720px;margin:auto}.question-title h2{font-size:25px;letter-spacing:-.6px;line-height:1.4;font-weight:650;text-align:center;margin:0}.repeat-button{border:0;background:#ecf0e3;color:#7c9469;border-radius:50%;width:35px;height:35px;flex-shrink:0;font-size:19px}.repeat-button:hover{background:#dfe9d0}.choices-grid{display:grid;grid-template-columns:repeat(var(--choices),minmax(0,1fr));gap:15px;padding:12px 37px 20px;max-width:720px;margin:auto}.choice-tile{min-width:0;min-height:156px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 12px 14px;background:#f9f7f0;border:1px solid #e4e4d6;border-bottom:4px solid #dddfcd;border-radius:20px;color:var(--ink);transition:transform .15s,background .15s}.choice-tile:hover:not(:disabled){background:#f1f3e6;transform:translateY(-3px)}.choice-tile>svg,.color-flower>svg{width:76px;height:76px}.color-flower{display:block}.choice-label{font-size:12px;text-transform:capitalize;margin-top:12px;color:#80916c}.number-choice{font-size:52px;line-height:1.2;font-weight:650;color:#6e8a59}.number-choice+.choice-label{display:none}.emoji{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:62px;line-height:1.2}.choice-tile.chosen{background:#e6efdb;border-color:#a4bd8e;box-shadow:0 0 0 2px #ccddbc}.choice-tile.chosen .choice-label{color:#5b794a}.choice-tile.tried:not(.chosen){border-color:#e0cbb1;background:#f8f0e5}.choice-tile:disabled:not(.chosen){opacity:.55}.question-bottom{padding:6px 30px 28px;text-align:center}.feedback{min-height:35px;font-size:12px;line-height:1.7;display:flex;align-items:center;justify-content:center;color:#a27e59;margin:2px 0 14px}.feedback.success{color:#5b7b47;font-weight:650}.next-button{min-width:211px}.play-footer{text-align:center;font-size:10px;line-height:1.8;color:#9aa38c;margin:18px 0 0}.play-footer button{display:block;margin:6px auto 0;font-size:10px;color:#819571;background:transparent;border:0;text-decoration:underline;text-underline-offset:4px}.playing .site-header{height:89px}.playing .site-footer{margin-top:10px}
.snack-scene{position:relative;display:flex;justify-content:center;align-items:center;gap:46px;padding:18px 35px 10px;min-height:196px;background:#edf2e4;margin:0 28px;border-radius:22px;overflow:clip}.snack-scene.bear{background:#f3e8da}.snack-scene.owl{background:#eae7f2}.snack-mascot{width:138px;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.snack-bunny{height:164px;width:129px}.snack-mascot>span:last-child{font-size:10px;color:#889776;margin-top:3px;font-weight:650}.snack-friend{font-size:94px;line-height:1.4}.snack-basket{position:relative;width:260px;min-height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 17px 24px;background:#fff9ec;border:2px dashed #d3be95;border-radius:45% 45% 20px 20px}.basket-label{font-size:9px;color:#b1a080;margin-bottom:8px}.tray-items{min-height:63px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;max-width:230px;padding-bottom:6px}.tray-items svg{width:24px;height:44px;transform:rotate(13deg);margin:0 -1px}.tray-items>span{font-size:23px;line-height:1.25;display:inline-block;margin:0 1px}.tray-count{position:absolute;bottom:-14px;left:calc(50% - 23px);border:1px solid #d4dcbf;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fffef4;color:#6d805a;font-size:25px;font-weight:650}.snack-spark{position:absolute;right:18px;top:14px;color:#c8b085;font-size:28px}.small-instruction{text-align:center;font-size:11px;color:#99a286;margin:25px 0 14px}.feed-grid{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:8px;width:min(580px,calc(100% - 70px));margin:0 auto}.feed-item{position:relative;height:72px;display:grid;place-items:center;border:1px solid #e4e4d6;border-bottom-width:3px;border-radius:14px;background:#f7f4ec;color:#8fa07e;transition:background .15s,transform .15s}.feed-item svg{width:35px;height:58px;transform:rotate(13deg)}.feed-item>span{font-size:34px}.feed-item:hover:not(:disabled){transform:translateY(-2px);background:#fff0db}.feed-item.collected{border-style:dashed;background:#f0f3e7}.feed-item.collected>*{opacity:0}.feed-item.collected:after{content:'✓';position:absolute;font-size:22px;color:#a0b38b}.feed-actions{display:flex;justify-content:space-between;align-items:center;width:min(580px,calc(100% - 70px));gap:15px;margin:17px auto 0}.feed-actions .button{font-size:10px;min-height:42px;padding:11px 15px}.undo-button{font-size:11px;color:#a1a68f;border:0;background:transparent;padding:10px 0}.undo-button:disabled{opacity:.4}.undo-button:hover:not(:disabled){color:#5e7b4a}.feed-actions+.question-bottom{padding-top:12px}.feed-actions+.question-bottom .feedback{font-size:11px}
.memory-grid{display:grid;grid-template-columns:repeat(var(--memory-cols),minmax(0,1fr));gap:13px;width:min(540px,calc(100% - 70px));margin:5px auto 25px}.memory-card{aspect-ratio:1.13;border:1px solid #c9d8b9;border-bottom:4px solid #c1d0b0;border-radius:18px;position:relative;background:#e4edd9;display:grid;place-items:center;transition:transform .18s,background .18s}.memory-card:hover:not(:disabled){transform:translateY(-2px);background:#d7e6c7}.card-back svg{width:34px;height:34px;color:#b0c099}.card-face{display:none;font-size:51px}.memory-card.face-up{background:#fff9ec;border-color:#ddceaf}.memory-card.face-up .card-back{display:none}.memory-card.face-up .card-face{display:block}.memory-card.matched{background:#edf3e3;border-color:#b3c69c}.memory-card.matched:after{content:'✓';position:absolute;top:7px;right:9px;font-size:11px;color:#89a371}.memory-reset{margin:0 auto 19px;display:flex;font-size:11px;min-height:42px}.pattern-track{display:flex;gap:8px;justify-content:center;padding:20px 28px 28px;position:relative}.pattern-car{position:relative;width:68px;height:70px;flex-shrink:1;min-width:0;padding:11px;background:#f7f2e6;border:1px solid #e6dac3;border-bottom:3px solid #d7c7a9;border-radius:12px}.pattern-car:after,.pattern-car:before{content:'';position:absolute;bottom:-8px;width:10px;height:10px;background:#8c987e;border-radius:50%;left:12px}.pattern-car:after{left:auto;right:12px}.pattern-car svg{width:100%;height:100%}.missing{display:grid;place-items:center;font-size:35px;color:#b3a387;background:#f8f1e2;border-style:dashed}.pattern-options .choice-tile{min-height:132px}.pattern-options .choice-tile svg{height:55px;width:55px}.pattern-options .choice-label{font-size:10px}.number-trail{display:flex;align-items:center;justify-content:center;gap:13px;padding:20px 30px 30px}.trail-number{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#e6eddc;font-size:32px;color:#7c9367;border:1px solid #d5e1c7;font-weight:650}.trail-number:nth-child(2n){background:#f2e7d8;color:#b09670;border-color:#e5d8c2}.trail-number.missing{background:#faf6e9;border:2px dashed #d4c39e;color:#c1ac83}.subject-display{display:flex;flex-direction:column;align-items:center;gap:10px;margin:8px auto 13px}.subject-icon{display:grid;place-items:center;width:116px;height:116px;background:#f3eee3;border-radius:25px}.subject-icon>svg{width:83px;height:83px}.subject-display strong{font-size:15px;color:#8e9d80;font-weight:650;text-transform:capitalize}.sorting-options .choice-tile{min-height:138px;border-radius:20px 20px 35px 35px;background:#f3f0e6}.sorting-options .emoji{font-size:42px}.sorting-options .choice-tile>svg{width:55px;height:55px}.spelling-picture{font-size:77px;text-align:center;line-height:1.3;margin:8px 0 20px}.letter-slots{display:flex;justify-content:center;gap:12px;padding:0 20px 29px}.letter-slot{width:66px;height:71px;display:grid;place-items:center;border:2px dashed #d6dccc;border-radius:15px;background:#faf9f2;font-size:40px;color:#6b8758;font-weight:650}.letter-slot i{font-style:normal;color:#d9dfce}.letter-slot.filled{background:#e8efde;border:2px solid #becfab}.letter-choices{display:flex;justify-content:center;gap:12px;padding:0 22px 13px;flex-wrap:wrap}.letter-button{width:67px;height:68px;border:1px solid #dfd3bc;border-bottom:4px solid #d4c2a3;border-radius:14px;background:#f6eddc;font-size:36px;color:#a18359;font-weight:650}.letter-button:hover:not(:disabled){background:#f0e3c8;transform:translateY(-2px)}.letter-button.used{opacity:.28}.spelling-undo{display:block;margin:0 auto 8px}.math-equation{display:flex;gap:17px;align-items:center;justify-content:center;padding:10px 25px 15px}.math-equation>span{font-size:43px;font-weight:650;color:#83986f}.math-equation>b{font-size:30px;font-weight:400;color:#c4bca6}.math-equation .math-question{display:grid;place-items:center;width:61px;height:62px;border:2px dashed #dacfaf;background:#fbf6e8;color:#b3a284;border-radius:15px}.apple-groups{display:flex;align-items:center;justify-content:center;gap:17px;padding:4px 38px 22px}.apple-row{display:flex;justify-content:center;gap:3px;flex-wrap:wrap;max-width:270px}.count-apple{font-size:30px;position:relative;display:inline-block}.count-apple.taken-away{opacity:.25}.count-apple.taken-away:after{content:'';position:absolute;left:1px;right:1px;height:3px;top:50%;transform:rotate(-40deg);background:#746f62}.apple-plus{font-size:27px;color:#b5bea5}.listening-steps{display:flex;justify-content:center;gap:10px;margin:4px 0 17px}.listening-steps>span{width:30px;height:30px;border:1px solid #d5ddca;background:#f1f5e9;border-radius:50%;display:grid;place-items:center;font-size:12px;color:#9aa98b}.listening-steps>span.done{background:#91ad7c;color:#fff;border-color:#91ad7c}
.parent-play-area{padding:30px 45px 15px;text-align:center;max-width:680px;margin:auto}.parent-play-symbol{width:91px;height:91px;display:grid;place-items:center;border-radius:24px;transform:rotate(-5deg);margin:0 auto 25px}.parent-play-symbol svg{height:65px;width:65px}.parent-play-area .eyebrow{justify-content:center;color:#a6ad98;font-size:8px}.parent-play-area h2{font-size:30px;letter-spacing:-.8px;line-height:1.3;margin:11px 0 16px;font-weight:650}.parent-play-body{font-size:17px;line-height:1.85;color:#849277;margin:0 0 24px}.real-world-note{display:flex;align-items:center;gap:15px;background:#f4efdf;border:1px solid #e9e0c9;border-radius:16px;padding:16px 20px;text-align:left}.real-world-note>span{font-size:26px;color:#c3aa80}.real-world-note p{font-size:11px;line-height:1.8;color:#a89575;margin:0}.completion{padding:32px 40px 35px;max-width:630px;margin:auto;text-align:center}.completion-flower{width:63px;height:63px;color:#a8bd94;margin:0 auto 20px}.completion .eyebrow{justify-content:center;font-size:8px;color:#98a88b}.completion h2{font-size:34px;line-height:1.25;letter-spacing:-1px;font-weight:650;margin:13px 0 12px}.completion>p{font-size:13px;color:#94a184;line-height:1.8}.completion-skill{padding:17px;background:#ecf2e3;border-radius:15px;margin:24px 0}.completion-skill>span{display:block;text-transform:uppercase;font-size:8px;letter-spacing:1.4px;color:#9aab89;margin-bottom:7px}.completion-skill>strong{font-size:13px;font-weight:650;color:#718b5e}.offscreen-card{background:#f6f0e3;border-radius:16px;padding:20px 25px;margin:18px 0 24px}.offscreen-card strong{font-size:12px;color:#a08b68}.offscreen-card p{font-size:12px;line-height:1.8;color:#a89b81;margin:8px 0 0}.completion-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.completion-actions .button{font-size:11px}.finish-link{display:block;text-align:center;font-size:10px;text-decoration:underline;text-underline-offset:4px;color:#a7ae9a;margin-top:22px}
/* Parent and information windows */
dialog{border:1px solid #e1e4d4;border-radius:24px;background:var(--white);color:var(--ink);font-family:var(--font);padding:35px;width:min(540px,calc(100% - 30px));max-height:90dvh;box-shadow:0 20px 100px #29402d24}dialog::backdrop{background:#30433366;backdrop-filter:blur(5px)}dialog h2{font-size:32px;letter-spacing:-1.2px;line-height:1.22;font-weight:650;margin:13px 0 18px}dialog>p,#info-content>p{font-size:13px;line-height:1.85;color:#849077}.close-dialog{position:absolute;right:16px;top:14px;width:31px;height:31px;border:0;background:#eef1e6;color:#92a281;border-radius:50%;font-size:24px;line-height:1}.detail-art{width:85px;height:85px;display:grid;place-items:center;border-radius:23px;margin-bottom:20px}.detail-art svg{width:61px;height:68px}.skill-note{padding:15px 17px;background:#eff3e7;border-radius:13px;display:flex;flex-direction:column;gap:6px;margin:20px 0}.skill-note strong{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px;color:#9baa8c}.skill-note span{font-size:12px;color:#81936f;line-height:1.6}.level-options{display:grid;gap:9px}.level-option{padding:15px 17px;border:1px solid #e0e5d3;background:#f8f9f1;border-radius:13px;color:#738961;text-align:left;position:relative}.level-option:hover{background:#e9f0dd;border-color:#c6d7b3}.level-option strong{font-size:12px;display:block;margin-bottom:5px}.level-option>span{font-size:11px;color:#9aa78b;display:block;padding-right:20px;line-height:1.65}.level-option b{position:absolute;right:16px;top:calc(50% - 10px);font-size:20px;font-weight:400}.parent-dialog{width:min(640px,calc(100% - 30px))}.parent-tabs{display:flex;gap:7px;padding:8px 0 22px;flex-wrap:wrap}.parent-tabs button{border:1px solid #e2e7d7;background:transparent;padding:9px 13px;border-radius:25px;font-size:10px;color:#94a285}.parent-tabs button[aria-pressed=true]{background:#e6eedb;color:#708a5d;border-color:#bfcfac}.parent-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.parent-stats>div{background:#edf2e4;border-radius:15px;padding:17px 13px}.parent-stats strong{font-size:30px;font-weight:650;color:#819a6e;display:block}.parent-stats span{font-size:9px;line-height:1.7;display:block;color:#a0ad91;margin-top:4px}.parent-storage-note{font-size:10px;color:#a7b097;line-height:1.8;margin-top:13px}.parent-subheading{font-size:14px;font-weight:650;margin:24px 0 15px}.practice-list{border-top:1px solid #e6eadb}.practice-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e6eadb}.practice-icon{width:43px;height:43px;padding:6px;border-radius:11px;flex-shrink:0}.practice-icon svg{width:100%;height:100%}.practice-row>div{display:flex;flex-direction:column;gap:4px}.practice-row strong{font-size:11px;font-weight:650}.practice-row span{font-size:9px;color:#a3ad95}.practice-row .practice-check{margin-left:auto;font-size:18px;color:#94ab7e}.parent-prose h3{font-size:14px;font-weight:650;margin:24px 0 9px}.parent-prose p{font-size:12px;line-height:1.9;color:#8f9d82}.parent-prose a{font-size:11px;color:#82986f}.age-guide{background:#f3f3e8;padding:18px;border-radius:14px;margin:20px 0}.age-guide strong{font-size:11px;font-weight:700;color:#85966e}.age-guide p{font-size:11px;margin-top:7px}.clear-button{font-size:10px;color:#a1a991;border:0;background:transparent;padding:16px 0 4px;text-decoration:underline;text-underline-offset:4px}.no-practice{background:#f7f5ec;border-radius:15px;padding:24px;text-align:center}.no-practice>span{font-size:35px;color:#c9bba0}.no-practice p{font-size:11px;line-height:1.8;color:#acb39e}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1150px){.wrap{width:calc(100% - 58px)}.activity-grid{gap:17px}.card-content{padding:18px 15px 13px}.card-content h3{font-size:18px}.home-hero{gap:15px}.hero-art{transform:scale(.9);transform-origin:right center}.age-button{min-width:149px;padding:12px 14px;gap:9px}.age-selector h2{font-size:23px}}
@media(max-width:950px){.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-hero{grid-template-columns:1fr .85fr}.hero-copy h1{font-size:49px;letter-spacing:-2.3px}.hero-art{height:320px;transform:scale(.8);transform-origin:center;min-width:400px;margin-left:-55px}.hero-halo{left:45px}.hero-bunny{left:105px}.age-button{min-width:132px;display:flex;flex-direction:column;gap:3px;padding:12px 16px}.age-button strong{font-size:22px}.age-selector{padding:22px 0}.age-selector h2{font-size:21px}.parent-banner{gap:21px;padding:27px}.parent-banner h2{font-size:23px}.parent-banner-icon{font-size:49px}.parent-banner .button{font-size:10px;gap:10px;padding:13px 15px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.site-header{height:83px}.brand{font-size:25px;letter-spacing:-1.3px}.brand-flower{width:34px;height:34px}.site-header nav{gap:15px}.library-link{display:none}.parent-nav{font-size:10px;padding:8px 11px;gap:5px}.parent-nav>span{font-size:18px}.home-hero{grid-template-columns:1fr 1fr;padding:21px 0 26px;min-height:300px;gap:0}.hero-copy h1{font-size:40px;letter-spacing:-1.9px;position:relative;z-index:1}.hero-copy .eyebrow{font-size:7px;letter-spacing:1.7px}.hero-copy>p{font-size:11px;line-height:1.9;margin-bottom:17px}.hero-copy>p br{display:none}.hero-copy .button{font-size:10px;padding:12px 14px;gap:12px;min-height:43px}.hero-trust{font-size:7px;gap:7px;margin-top:13px;line-height:1.5}.hero-trust span{gap:3px}.hero-art{transform:scale(.65);transform-origin:center;margin-left:-75px;min-width:350px;width:350px;height:330px;margin-right:-50px}.hero-halo{left:35px;width:285px;height:285px}.hero-bunny{left:87px;width:180px;height:242px}.shapes-card{right:-9px}.numbers-card{left:-9px}.letter-card{left:-3px;bottom:21px}.hero-carrot{right:25px}.age-selector{display:block;padding:21px 0}.age-selector>.eyebrow,.age-selector>div>.eyebrow{font-size:7px}.age-selector h2{font-size:24px;margin:4px 0 17px}.age-buttons{gap:9px}.age-button{flex:1;min-width:0;flex-direction:row;padding:13px 12px;gap:8px;justify-content:center}.age-button strong{font-size:21px}.age-button span{font-size:8px}.journey-strip{padding:18px;gap:12px;margin:22px 0 32px}.journey-symbol{width:37px;height:37px;font-size:26px;border-radius:12px}.journey-strip h3{font-size:12px;line-height:1.5}.journey-strip p{font-size:9px;line-height:1.7}.journey-strip .eyebrow{font-size:7px;letter-spacing:1.2px}.journey-strip .button{font-size:9px;padding:10px 12px;gap:6px;min-height:40px}.section-heading h2{font-size:28px}.section-heading .eyebrow{font-size:8px}.section-heading>p{font-size:9px;max-width:90px;text-align:right;line-height:1.7}.category-filters{gap:7px;padding:20px 0}.filter-button{font-size:10px;padding:9px 14px}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.card-art{height:145px}.card-tag{left:14px;top:13px;font-size:6px;letter-spacing:1.3px}.activity-illustration{height:90px;width:78px}.card-content{padding:17px 14px 12px}.card-kicker{font-size:7px}.card-content h3{font-size:18px;line-height:1.35}.card-content>p{font-size:10px;line-height:1.8;min-height:52px}.card-meta{font-size:7px;gap:7px}.card-meta span+span:before{margin-right:7px}.card-play{font-size:10px;min-height:35px}.card-details{font-size:8px;padding:7px 8px}.played-badge{font-size:7px;right:9px;padding:4px 6px}.parent-banner{flex-wrap:wrap;gap:15px;padding:25px;margin:31px 0}.parent-banner-icon{font-size:38px;align-self:flex-start;margin-top:22px}.parent-banner>div:nth-child(2){flex:1}.parent-banner h2{font-size:25px}.parent-banner p{font-size:10px}.parent-banner .eyebrow{font-size:7px}.parent-banner .button{margin-left:51px;min-height:43px}.site-footer{gap:15px;padding:23px 0;flex-wrap:wrap}.footer-brand{font-size:19px}.site-footer>span{font-size:8px}.site-footer>div{gap:14px}.site-footer button{font-size:8px}.play-wrap{width:calc(100% - 28px);margin-bottom:30px}.playing .site-header{height:78px}.play-topbar{gap:9px;flex-wrap:wrap;margin:5px 0 17px}.back-link{font-size:11px}.play-meta{font-size:8px}.voice-button{font-size:9px;padding:9px 12px}.session-panel{border-radius:22px}.session-heading{padding:23px 17px 20px}.session-heading h1{font-size:28px}.session-heading .eyebrow{font-size:7px;letter-spacing:1px;max-width:390px;line-height:1.8}.question-title{padding:22px 19px 17px;gap:9px}.question-title h2{font-size:22px;line-height:1.45}.choices-grid{gap:11px;padding:10px 23px 19px}.choice-tile{min-height:132px;padding:16px 10px 12px;border-radius:17px}.choice-tile>svg,.color-flower>svg{width:65px;height:65px}.emoji{font-size:51px}.choice-label{font-size:10px;margin-top:10px}.number-choice{font-size:43px}.question-bottom{padding:7px 22px 24px}.feedback{font-size:11px;min-height:39px;margin-bottom:12px}.button{font-size:11px;min-height:46px;padding:13px 18px}.snack-scene{margin:0 21px;gap:22px;padding:16px 24px;min-height:180px}.snack-bunny{width:105px;height:139px}.snack-mascot{width:105px}.snack-friend{font-size:78px}.snack-basket{width:225px;min-height:123px;padding:15px 12px 23px}.basket-label{font-size:8px}.tray-items>span{font-size:20px}.tray-items svg{width:20px;height:36px}.snack-spark{font-size:23px;right:12px}.feed-grid,.feed-actions{width:calc(100% - 46px)}.feed-item{height:65px}.feed-item svg{width:31px;height:51px}.feed-item>span{font-size:30px}.small-instruction{font-size:10px;margin-top:25px}.feed-actions .button{font-size:9px}.undo-button{font-size:10px}.memory-grid{width:calc(100% - 46px);gap:10px}.memory-card{border-radius:15px}.card-face{font-size:41px}.pattern-track{gap:6px;padding:15px 23px 26px}.pattern-car{height:64px;padding:10px}.pattern-options .choice-label{font-size:9px}.number-trail{gap:9px;padding:15px 23px 27px}.trail-number{width:65px;height:65px;font-size:28px}.letter-slot{width:61px;height:65px;font-size:37px}.letter-button{width:61px;height:62px;font-size:33px}.spelling-picture{font-size:69px;margin-bottom:18px}.math-equation>span{font-size:37px}.math-equation>b{font-size:26px}.math-equation{gap:15px}.math-equation .math-question{width:53px;height:55px}.count-apple{font-size:27px}.apple-groups{padding:3px 25px 22px;gap:12px}.parent-play-area{padding:25px 26px 12px}.parent-play-body{font-size:15px}.parent-play-area h2{font-size:27px}.completion{padding:29px 27px 28px}.completion h2{font-size:29px}.completion-skill strong{font-size:12px}.completion-actions{gap:9px}dialog{padding:30px 25px}.parent-stats strong{font-size:27px}}
@media(max-width:440px){.wrap{width:calc(100% - 30px)}.home-hero{min-height:0;grid-template-columns:1.12fr .8fr;padding-top:16px;padding-bottom:26px;overflow:clip}.hero-copy h1{font-size:34px;letter-spacing:-1.7px;line-height:1.16;min-width:230px;margin:15px 0}.hero-copy>p{font-size:10px;max-width:211px}.hero-copy>.eyebrow{font-size:6px;letter-spacing:1.1px}.hero-trust{max-width:228px;font-size:6px;gap:5px}.hero-art{transform:scale(.45);transform-origin:35% center;margin-left:-72px;width:320px;min-width:320px;height:270px;margin-right:-100px}.hero-halo{left:15px;bottom:-7px}.hero-bunny{left:66px;bottom:-7px}.numbers-card{left:-20px;top:12px}.shapes-card{right:-8px;top:68px}.letter-card{left:-20px;bottom:-8px}.hero-carrot{right:13px;bottom:6px}.f-one{top:6px;right:4px}.hero-spark{top:-20px;left:211px}.age-button{flex-direction:column;gap:2px;padding:11px 8px}.age-button strong{font-size:22px}.age-button span{font-size:8px}.age-selector h2{font-size:22px}.journey-strip{padding:16px 14px;gap:10px;position:relative;flex-wrap:wrap}.journey-strip>div:nth-child(2){flex:1}.journey-strip .button{margin:2px 0 0 47px;min-height:37px;padding:8px 12px}.journey-strip h3{font-size:12px}.journey-symbol{width:35px;height:35px}.section-heading h2{font-size:24px;letter-spacing:-.8px}.section-heading .eyebrow{font-size:6px;letter-spacing:1.4px}.section-heading>p{font-size:8px;max-width:75px}.category-filters{gap:6px}.filter-button{font-size:9px;padding:8px 12px}.activity-grid{gap:12px}.card-art{height:126px}.card-art-decoration{font-size:25px;right:15px;bottom:17px}.activity-illustration{width:68px;height:82px;margin-top:18px}.activity-illustration:has(use[href="#bunny"]){width:61px;height:94px;margin-top:19px}.card-content{padding:16px 11px 10px}.card-content h3{font-size:16px;letter-spacing:-.45px;line-height:1.35}.card-content>p{font-size:9px;line-height:1.8;min-height:50px}.card-kicker{font-size:6px;letter-spacing:.8px}.card-meta{font-size:6px;gap:5px;margin-bottom:13px}.card-meta span+span:before{margin-right:5px}.card-play{font-size:9px;padding-right:2px}.card-details{font-size:7px;padding:6px 7px;border-radius:7px}.card-actions{gap:5px}.played-badge{font-size:6px;padding:4px 5px}.parent-banner{padding:23px 18px;gap:12px}.parent-banner h2{font-size:22px}.parent-banner p{font-size:9px}.parent-banner .button{margin-left:45px;font-size:10px}.parent-banner-icon{font-size:33px}.parent-banner .eyebrow{font-size:6px;letter-spacing:1.4px}.site-footer{justify-content:space-between;gap:12px}.site-footer>span{font-size:7px;max-width:140px;text-align:right;line-height:1.6}.site-footer>div{width:100%;justify-content:flex-end}.play-meta{order:3;width:100%;text-align:center;font-size:8px;margin-top:2px}.voice-button{margin-left:auto}.play-topbar{margin-bottom:14px}.session-heading h1{font-size:25px}.session-heading .eyebrow{font-size:6px;letter-spacing:.7px;line-height:1.9}.session-progress{gap:11px}.session-progress>span{font-size:8px}.progress-dots{gap:5px}.progress-dot{width:6px;height:6px}.question-title{padding:21px 16px 16px;gap:8px}.question-title h2{font-size:20px;letter-spacing:-.4px}.repeat-button{width:31px;height:31px;font-size:17px}.choices-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 19px 17px;gap:10px}.choice-tile{min-height:127px}.choice-tile>svg,.color-flower>svg{width:62px;height:62px}.choice-label{font-size:10px}.number-choice{font-size:43px}.subject-icon{width:102px;height:102px}.subject-display strong{font-size:13px}.subject-display{margin:4px auto 7px}.subject-icon>svg{width:73px;height:73px}.sorting-options .choice-tile{min-height:124px}.question-bottom{padding:5px 18px 23px}.feedback{font-size:10px;line-height:1.8;min-height:40px}.next-button{min-width:195px;font-size:10px}.snack-scene{margin:0 16px;padding:15px 16px;gap:16px;min-height:159px}.snack-mascot{width:75px}.snack-bunny{width:77px;height:111px}.snack-friend{font-size:60px}.snack-mascot>span:last-child{font-size:8px}.snack-basket{width:172px;min-height:110px;padding:14px 10px 22px}.basket-label{font-size:7px;margin-bottom:4px}.tray-items{min-height:48px;padding-bottom:0;max-width:145px}.tray-items>span{font-size:17px}.tray-items svg{width:15px;height:28px}.tray-count{width:37px;height:37px;left:calc(50% - 18.5px);bottom:-12px;font-size:22px}.snack-spark{font-size:18px;top:8px;right:8px}.feed-grid,.feed-actions{width:calc(100% - 36px);gap:6px}.feed-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.feed-item{height:59px;border-radius:11px}.feed-item svg{width:26px;height:44px}.feed-item>span{font-size:26px}.feed-actions{margin-top:15px;gap:7px}.feed-actions .button{font-size:8px;padding:10px 11px;min-height:40px;white-space:nowrap}.undo-button{font-size:9px}.small-instruction{font-size:9px;margin-top:23px}.feed-actions+.question-bottom .feedback{font-size:10px}.memory-grid{width:calc(100% - 36px);gap:8px}.memory-card{border-radius:12px}.card-face{font-size:34px}.card-back svg{width:25px;height:25px}.memory-reset{font-size:10px}.pattern-track{gap:5px;padding:13px 17px 26px}.pattern-car{height:51px;padding:7px;border-radius:9px}.pattern-car:after,.pattern-car:before{width:7px;height:7px;bottom:-6px;left:7px}.pattern-car:after{right:7px;left:auto}.pattern-car.missing{font-size:27px}.pattern-options .choice-tile{min-height:121px}.pattern-options .choice-label{font-size:9px;line-height:1.5}.pattern-options .choice-tile svg{width:51px;height:51px}.number-trail{gap:6px;padding:10px 17px 23px}.trail-number{width:49px;height:49px;font-size:24px}.letter-slots{gap:9px;padding-bottom:24px}.letter-slot{width:54px;height:59px;font-size:34px;border-radius:12px}.letter-choices{gap:9px}.letter-button{width:55px;height:57px;font-size:30px;border-radius:12px}.spelling-picture{font-size:61px;margin:5px 0 17px}.math-equation{gap:12px;padding-bottom:13px}.math-equation>span{font-size:33px}.math-equation>b{font-size:23px}.math-equation .math-question{width:47px;height:49px}.apple-groups{gap:9px;padding:2px 19px 17px}.count-apple{font-size:23px}.apple-row{gap:2px}.apple-plus{font-size:23px}.parent-play-area{padding:24px 22px 11px}.parent-play-area h2{font-size:25px}.parent-play-body{font-size:14px;line-height:1.85}.real-world-note{gap:10px;padding:14px 15px}.real-world-note p{font-size:10px;line-height:1.85}.parent-play-symbol{width:78px;height:78px;border-radius:20px;margin-bottom:21px}.parent-play-symbol svg{width:55px;height:55px}.completion{padding:25px 22px}.completion h2{font-size:27px}.completion>p{font-size:11px}.completion-skill strong{font-size:11px}.offscreen-card{padding:18px 20px}.offscreen-card p{font-size:11px}.completion-actions{display:grid}.completion-actions .button{font-size:10px}.play-footer{font-size:9px}dialog{padding:29px 23px}dialog h2{font-size:29px}.parent-stats{gap:7px}.parent-stats>div{padding:14px 10px}.parent-stats span{font-size:8px}.parent-stats strong{font-size:25px}.parent-tabs button{font-size:9px;padding:9px 11px}.parent-storage-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Keep instructions readable and controls comfortable on small screens. */
.card-content>p,.choice-label,.small-instruction,.play-meta,.play-footer,.parent-prose p,.parent-storage-note,.practice-row span,.level-option>span{color:#68795f}
@media(max-width:440px){
 .home-hero{grid-template-columns:1fr;overflow:clip;gap:0;padding-bottom:10px}
 .hero-copy h1{font-size:39px;min-width:0;max-width:350px}
 .hero-copy>p{font-size:13px;max-width:330px}
 .hero-copy .eyebrow{font-size:8px}
 .hero-copy .button{min-height:48px;font-size:12px}
 .hero-trust{font-size:9px;max-width:none;gap:12px}
 .hero-art{transform:scale(.72);transform-origin:center;margin:-23px auto -22px;min-width:300px;width:320px;height:275px}
 .activity-grid{grid-template-columns:1fr;gap:19px}
 .card-art{height:155px}
 .activity-illustration{width:90px;height:105px}
 .activity-illustration:has(use[href="#bunny"]){width:77px;height:119px;margin-top:18px}
 .card-tag{font-size:8px}.played-badge{font-size:9px}
 .card-content{padding:20px 21px 15px}
 .card-content h3{font-size:24px}.card-kicker{font-size:8px}
 .card-content>p{font-size:13px;min-height:0;margin-bottom:17px}
 .card-meta{font-size:10px;margin-bottom:13px}
 .card-play{font-size:13px;min-height:44px}.card-details{font-size:11px;min-height:42px;padding:9px 13px}
 .age-button{min-height:65px}.age-button span{font-size:9px}
 .filter-button{font-size:11px;min-height:42px}
 .choice-label{font-size:13px}.pattern-options .choice-label{font-size:12px}
 .feedback{font-size:13px}.small-instruction{font-size:12px;padding:0 15px;line-height:1.7}
 .next-button{font-size:13px;min-height:49px}.feed-actions .button{font-size:10px;min-height:45px}.undo-button{font-size:11px}
 .parent-nav{min-height:44px}.voice-button{min-height:44px;font-size:11px}
 .play-meta{font-size:10px}.play-footer{font-size:11px}.play-footer button{font-size:11px;min-height:40px}
 .close-dialog{width:40px;height:40px}.parent-tabs button{font-size:12px;min-height:44px}
 .parent-stats span{font-size:10px}.parent-storage-note{font-size:12px}.parent-prose p{font-size:14px}
 .level-option strong{font-size:15px}.level-option>span{font-size:13px}
}
