@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap');
:root{--ink:#243149;--muted:#68758a;--yellow:#ffca4b;--coral:#ff765f;--blue:#90d8f0;--mint:#a8e7c6;--pink:#ffbad0;--paper:#fffdf6;--line:#eee9dc;--shadow:0 12px 30px #23314912;font-family:Nunito,system-ui,sans-serif;color:var(--ink);background:#fffdf7}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 8% 5%,#fff3c977,transparent 27rem),#fffdf7}a{color:inherit;text-decoration:none}.topbar{height:76px;max-width:1180px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800}.brand-mark{height:39px;width:39px;border-radius:14px;background:var(--yellow);display:grid;place-items:center;font-weight:900;font-size:18px;transform:rotate(-5deg);box-shadow:inset 0 -3px #e9ad24}.topbar nav{display:flex;gap:8px}.topbar nav a{padding:10px 15px;border-radius:14px;font-weight:800;font-size:14px}.topbar nav a:hover,.topbar nav a.active{background:#fff0bd}.nav-toggle{display:none;border:0;background:var(--yellow);border-radius:12px;padding:8px 12px;font-size:20px}main{max-width:1100px;margin:auto;padding:20px 24px 45px}.page{display:none}.page.active{display:block;animation:appear .24s ease}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.hero{min-height:405px;border-radius:34px;padding:54px 7%;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden;background:linear-gradient(115deg,#ffdf76,#ffe99c 55%,#ffd9bb);position:relative}.hero:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:#fff6;right:-80px;top:-140px}.hero-copy{z-index:1}.eyebrow{font-weight:900;letter-spacing:1.4px;font-size:11px;color:#56627a}.hero h1{font-size:clamp(42px,5vw,58px);line-height:.99;letter-spacing:-2px;margin:16px 0}.hero h1 span{color:#ed6652}.hero p,.section-heading p{color:#58667b;line-height:1.65;max-width:460px;font-weight:700}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 20px;border-radius:15px;font:900 14px Nunito,system-ui;cursor:pointer;transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #24314922}.button-coral{background:var(--coral);color:white}.button-light{background:#fff;color:var(--ink)}.button-yellow{background:var(--yellow);color:var(--ink)}.hero-art{position:relative;display:grid;place-items:center;z-index:1}.hero-art img{width:min(330px,100%);filter:drop-shadow(0 17px 10px #c5784e27)}.sticker{position:absolute;right:0;bottom:5px;background:#fff;border:3px solid var(--coral);border-radius:50%;width:84px;height:84px;display:grid;place-content:center;text-align:center;line-height:1.05;font-weight:900;color:#ed6652;transform:rotate(9deg);box-shadow:0 7px 0 #e7af8c}.welcome-row{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:35px 2px 16px}.welcome-row h2{font-size:24px;margin:0}.welcome-row p{color:var(--muted);margin:4px 0}.welcome-stats{display:flex;gap:16px;color:#58667b;font-weight:800;font-size:13px}.welcome-stats b{color:var(--ink)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.feature-card{border-radius:24px;padding:22px;min-height:190px;box-shadow:var(--shadow);transition:transform .18s}.feature-card:hover{transform:translateY(-4px)}.card-yellow{background:#fff1b9}.card-blue{background:#c7eff8}.card-pink{background:#ffd6e2}.feature-icon{font-size:30px}.feature-card h3{margin:8px 0 5px;font-size:19px}.feature-card p{margin:0 0 15px;color:#56627a;line-height:1.45;font-weight:600;font-size:14px}.card-link{font-size:13px;font-weight:900}.site-footer{display:flex;justify-content:space-between;color:#8a91a0;font-weight:700;font-size:12px;padding:25px 3px 0}.section-heading{margin:26px 0 25px}.section-heading h1,.game-top h1{font-size:clamp(32px,5vw,44px);margin:7px 0}.section-heading p{margin:0}.resource-grid,.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.resource-card,.lesson-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:21px;box-shadow:var(--shadow)}.resource-card{display:flex;flex-direction:column;min-height:210px}.resource-icon{font-size:30px}.resource-card h3,.lesson-card h3{font-size:18px;margin:12px 0 6px}.resource-card p,.lesson-card p{color:var(--muted);line-height:1.55;font-weight:600;font-size:14px;flex:1;margin:0 0 15px}.download-link{display:inline-flex;width:max-content;background:#edf9ef;color:#306947;padding:9px 12px;border-radius:11px;font-weight:900;font-size:13px}.teacher-note{background:#f0f8ff;border:1px solid #dbeefa;border-radius:20px;padding:18px 20px;display:flex;gap:14px;margin-top:21px}.teacher-note>span{font-size:27px}.teacher-note p{margin:4px 0 0;color:var(--muted);font-size:14px}.game-top{display:flex;justify-content:space-between;align-items:center;margin:12px 2px 20px}.game-top h1{font-size:34px}.score-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.score-pill{background:#fff0b6;padding:12px 17px;border-radius:15px;font-weight:900;white-space:nowrap}.reset-score{border:2px solid #f0b0a6;background:#fff;color:#b94e42;padding:9px 12px;border-radius:13px;font:900 12px Nunito,system-ui;cursor:pointer;transition:background .15s,transform .15s}.reset-score:hover{background:#fff0ed;transform:translateY(-1px)}.reset-score:active{transform:translateY(0)}.level-picker{display:flex;align-items:center;gap:12px;margin:0 auto 17px;max-width:780px}.level-picker label{font-weight:900}.level-picker select{font:800 14px Nunito,sans-serif;color:var(--ink);border:2px solid #eee2bc;background:#fff;border-radius:12px;padding:10px 12px}.level-picker>span{margin-left:auto;color:var(--muted);font-weight:800;font-size:13px}.blackboard{max-width:780px;margin:auto;background:#275c54;color:#fff;border:9px solid #b97949;border-radius:20px;padding:22px 28px 18px;box-shadow:0 8px 0 #935b38,0 18px 30px #24314919;position:relative}.blackboard:before{content:"";position:absolute;inset:5px;border:1px dashed #ffffff25;border-radius:10px;pointer-events:none}.board-top,.board-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:900;font-size:12px;letter-spacing:.7px;color:#d8f4db;position:relative}.blackboard h2{font-size:clamp(22px,3vw,30px);line-height:1.25;margin:24px 0 21px;position:relative}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative}.answer-btn{border:2px solid #ffffff35;background:#fff;color:var(--ink);border-radius:14px;padding:14px;text-align:left;min-height:58px;font:800 15px Nunito,system-ui;cursor:pointer;transition:transform .14s,border .14s}.answer-btn:hover:not(:disabled){transform:translateY(-2px);border-color:var(--yellow)}.answer-btn .letter{display:inline-grid;place-items:center;background:#fff0b6;width:27px;height:27px;border-radius:9px;margin-right:8px;font-weight:900}.answer-btn.correct{background:#c6f2d3;border-color:#53b77b}.answer-btn.wrong{background:#ffd4d0;border-color:#ff766c}.answer-btn:disabled{cursor:default}.feedback{position:relative;margin-top:12px;padding:11px 13px;border-radius:12px;background:#ffffff20;font-weight:700;line-height:1.4}.board-actions{display:flex;align-items:center;gap:10px}.board-bottom{margin-top:21px;color:#d5eadb}.board-bottom .button{font-size:13px;padding:10px 14px}.board-bottom .reset-score{border-color:#ffffff70;background:transparent;color:#fff;padding:10px 14px}.board-bottom .reset-score:hover{background:#ffffff20}.result-panel{text-align:center;position:relative;background:#ffffff18;border:1px solid #ffffff35;border-radius:16px;padding:22px 18px;margin:10px 0}.result-emoji{font-size:clamp(48px,8vw,76px);line-height:1.1}.result-panel h2{margin:10px 0;font-size:clamp(23px,4vw,32px)}.result-panel p{margin:8px 0;color:#e7f5e9;font-weight:800}.result-panel #resultSummary{font-size:19px}.result-panel .button{margin-top:10px}[hidden]{display:none!important}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f09c47;outline-offset:3px}.lesson-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.filter{border:1px solid var(--line);border-radius:20px;padding:8px 14px;background:#fff;color:var(--ink);font:800 13px Nunito;cursor:pointer}.filter.active{background:var(--yellow);border-color:var(--yellow)}.lesson-card{min-height:220px}.lesson-meta{font-size:11px;letter-spacing:.7px;font-weight:900;color:#ed6652}.lesson-card details{border-top:1px solid var(--line);padding-top:12px;font-weight:800;font-size:13px}.lesson-card summary{cursor:pointer}.lesson-card .lesson-body{font-weight:600;color:var(--muted);line-height:1.6;margin:10px 0 0}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);opacity:0;background:#243149;color:white;padding:12px 18px;border-radius:14px;font-weight:800;transition:.2s;z-index:5;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f09c47;outline-offset:3px}
@media(max-width:760px){.topbar{height:65px;padding:0 16px}.brand{font-size:17px}.nav-toggle{display:block}.topbar nav{display:none;position:absolute;top:58px;right:14px;background:white;padding:9px;border-radius:18px;box-shadow:var(--shadow);z-index:4;flex-direction:column;min-width:200px}.topbar nav.open{display:flex}.topbar nav a{padding:12px}.hero{grid-template-columns:1fr;min-height:unset;padding:34px 25px 16px;border-radius:26px}.hero h1{font-size:48px}.hero-art img{width:220px}.sticker{right:8%;bottom:2px;width:68px;height:68px;font-size:14px}.welcome-row{align-items:flex-start;flex-direction:column}.welcome-stats{flex-wrap:wrap;gap:10px}.feature-grid,.resource-grid,.lesson-grid{grid-template-columns:1fr}.feature-card{min-height:unset}.site-footer{flex-direction:column;gap:8px}.section-heading{margin-top:10px}.game-top{align-items:flex-start;flex-direction:column;gap:8px}.score-controls{justify-content:flex-start}.score-pill{padding:9px 11px;font-size:13px}.level-picker>span{margin-left:auto}.blackboard{padding:19px 17px 16px;border-width:7px}.blackboard h2{margin:19px 0}.answer-grid{grid-template-columns:1fr}.answer-btn{min-height:52px}.board-bottom{align-items:flex-start;flex-direction:column}.score-pill{padding:9px 11px;font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.lesson-card details summary{cursor:pointer;color:#145d8d;font-weight:800;padding:5px 0}.lesson-card details[open] summary{margin-bottom:8px}.lesson-sources{display:block;margin-top:14px;padding-top:10px;border-top:1px solid rgba(31,43,56,.12);font-size:.88rem;color:#53616e}.lesson-sources a{color:#145d8d;font-weight:700;margin-left:6px}.resource-card a[href^="http"]::after{content:" ↗"}

.about-card{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;max-width:930px;margin:14px auto 30px;background:#fff;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.about-photo-wrap{min-height:410px;background:linear-gradient(145deg,#f8d06a,#ffdca0);display:flex;align-items:flex-end;justify-content:center;padding:12px 12px 0}.about-photo{width:100%;height:100%;max-height:440px;object-fit:cover;object-position:center top;border-radius:18px 18px 0 0}.about-copy{padding:clamp(24px,5vw,50px);align-self:center}.about-kicker{font-size:12px;letter-spacing:.13em;font-weight:900;color:#c45b42}.about-copy h2{font-size:clamp(25px,4vw,38px);line-height:1.13;margin:12px 0 18px}.about-copy p{color:var(--muted);line-height:1.75;font-weight:600}.about-copy .about-signoff{color:#27354b;font-weight:900;margin:22px 0}.about-copy .button{display:inline-flex;gap:10px;align-items:center}@media(max-width:700px){.about-card{grid-template-columns:1fr}.about-photo-wrap{min-height:0;max-height:380px;padding:10px 10px 0}.about-photo{height:auto;max-height:370px;width:auto;max-width:100%;object-fit:contain;border-radius:14px 14px 0 0}.about-copy{padding:25px}}
