:root{font-family:"Pho Reading Sans",system-ui,sans-serif;color:#18322a;background:#f5fbf7;font-synthesis:none;--green:#087a55;--deep:#07593d;--line:#d5e8dd;--gold:#f4c342}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,a{font:inherit}button{cursor:pointer}a{color:inherit}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar{height:70px;background:#fff;border-bottom:1px solid #e1ece5;display:flex;align-items:center;gap:14px;padding:8px max(16px,calc((100vw - 1200px)/2));position:sticky;top:0;z-index:5}.back,.close,.head-actions button,.language-switch button{border:1px solid #d4e5da;background:#fff;border-radius:14px;min-width:44px;height:42px;display:inline-grid;place-items:center;text-decoration:none;color:#087a55;font-weight:800}.back{font-size:25px}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:#0b7b50;font-size:1.18rem}.brand img{width:39px;height:39px;object-fit:contain}.head-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.head-actions button{padding:0 12px}.language-switch{display:flex;border:1px solid #dae8df;border-radius:14px;overflow:hidden}.language-switch button{border:0;border-radius:0;min-width:39px}.language-switch button[aria-pressed=true]{background:#087a55;color:white}.hero{min-height:270px;max-width:1240px;margin:18px auto 0;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:300px 1fr 160px;align-items:center;position:relative;padding:18px 30px;background:linear-gradient(120deg,#abedce,#fff5c6 68%,#9bdc96);box-shadow:0 12px 30px #1b735219}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 48% 94%,#fff8c9 0 12%,transparent 50%);pointer-events:none}.hero-art{position:relative;z-index:1;align-self:end;height:250px;display:flex;align-items:end;justify-content:center}.hero-art img{height:245px;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 7px #345d3440)}.hero-book{position:absolute;left:23px;bottom:20px;background:#dc3942;color:white;padding:8px 11px;border-radius:8px;transform:rotate(-9deg);font-weight:900;font-size:.8rem;line-height:1.15;box-shadow:0 4px 0 #9d2028}.hero-book.blue{background:#166da8;box-shadow:0 4px 0 #0b487b}.hero-copy{z-index:1;text-align:center;max-width:720px;margin:auto}.eyebrow{font-weight:900;font-size:.78rem;letter-spacing:.08em;color:#198454}.hero-copy h1{font-size:clamp(2rem,4vw,3.1rem);color:#087a55;margin:8px 0;line-height:1.05;letter-spacing:-.035em}.hero-copy>p{margin:8px auto;max-width:670px}.hero-copy [data-ui=tagline]{font-size:1.22rem;font-weight:800;color:#234d36}.hero-note{font-size:1rem;color:#385247}.primary{border:0;border-radius:999px;padding:12px 27px;background:linear-gradient(120deg,#0b9e59,#08744c);color:#fff;font-weight:900;box-shadow:0 4px 0 #07583c;margin-top:9px;min-height:48px}.hero-scene{display:grid;gap:14px;font-size:2.1rem;justify-items:center;position:relative;z-index:1}.course-shell{max-width:1240px;margin:22px auto 0;padding:0 6px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:14px 4px}.section-title h2{font-size:clamp(1.3rem,2.6vw,1.8rem);margin:4px 0;color:#124b35}.progress-pill{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:#176c49;white-space:nowrap}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.activity-card{border:1px solid #dce9df;border-radius:20px;padding:19px;min-height:178px;display:flex;flex-direction:column;align-items:flex-start;background:linear-gradient(145deg,var(--tile,#ecfbef),#fff 72%);box-shadow:0 5px 14px #1839230d}.activity-card:nth-child(2){--tile:#fff6d8}.activity-card:nth-child(3){--tile:#ffe9f4}.activity-card:nth-child(4){--tile:#e5f7ff}.activity-card:nth-child(5){--tile:#f2edff}.activity-card:nth-child(6){--tile:#fff0d8}.activity-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#fff;font-size:1.8rem;box-shadow:0 2px 8px #21351c12}.activity-card h3{font-size:1.15rem;margin:10px 0 4px;color:#0b6444}.activity-card p{font-size:.92rem;color:#41584a;margin:0 0 13px;line-height:1.45}.activity-card button{margin-top:auto;border:1px solid #11a365;background:#fff;color:#087a55;font-weight:800;border-radius:999px;padding:9px 16px;min-height:42px;width:100%}.activity-card button:hover,.activity-card button:focus-visible{background:#e8fbf1}.lesson{margin:24px 0;border:1px solid #cfe5d7;border-radius:22px;background:white;padding:clamp(16px,3vw,28px);box-shadow:0 10px 24px #1b735215;scroll-margin-top:86px}.lesson[hidden]{display:none}.lesson-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.lesson h2{margin:0;color:#075f41;font-size:clamp(1.35rem,2.7vw,2rem)}.lesson-subtitle{margin:6px 0 15px;color:#607166}.text-button,.secondary{border:1px solid #cbded2;background:white;color:#087a55;border-radius:12px;font-weight:800;padding:9px 12px}.settings{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:12px 0 18px}.settings label{display:flex;gap:7px;align-items:center;color:#435e50;font-weight:700}.settings select{border:1px solid #bdd3c5;border-radius:10px;padding:9px;background:#fff;color:#244436}.q-progress{height:8px;border-radius:8px;background:#e7f1e9;overflow:hidden;margin:12px 0}.q-progress i{display:block;height:100%;background:#12a566;transition:width .2s}.q-meta{display:flex;justify-content:space-between;gap:10px;color:#557062;font-size:.9rem}.question{font-size:clamp(1.18rem,2.3vw,1.55rem);font-weight:800;color:#183e2c;margin:18px 0;line-height:1.45}.listen-controls{display:flex;gap:9px;align-items:center;margin:-5px 0 14px}.listen-controls[hidden]{display:none}.listen-controls select{border:1px solid #d1e1d6;border-radius:9px;padding:7px}.answer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.answer-option,.tile{min-height:50px;border:1px solid #cddfd3;border-radius:14px;padding:11px;background:#fff;color:#253e32;text-align:left;font-weight:700}.answer-option:hover,.tile:hover{border-color:#12a565;background:#f1fff6}.answer-option:disabled,.tile:disabled{cursor:default}.answer-option.correct{border-color:#149856;background:#e9faef;color:#075e38}.answer-option.wrong{border-color:#de6a6a;background:#fff0ef}.arrange-area{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.arrange-output{min-height:50px;width:100%;border:1px dashed #9bbda8;border-radius:14px;padding:8px;display:flex;flex-wrap:wrap;gap:6px;background:#f8fcf9}.tile{min-height:40px;text-align:center;padding:7px 12px;background:#fff7db}.typed-answer{width:100%;border:1px solid #cddfd3;border-radius:12px;padding:12px;font:inherit}.feedback{margin-top:16px;border-radius:14px;padding:14px;background:#eff8f1;border:1px solid #d4ebda;line-height:1.5}.feedback[data-correct=true]{background:#e9faef;border-color:#9ad7b2}.feedback[data-correct=false]{background:#fff7e7;border-color:#eddaa4}.feedback strong{display:block;margin-bottom:4px;color:#086542}.lesson-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.lesson-actions button{min-height:44px}.lesson-actions .primary{margin:0}.summary{padding:20px;border:1px solid #d4ebda;border-radius:16px;background:#f4fbf6}.summary h3{font-size:1.45rem;color:#087a55}.summary-list{padding-left:20px;line-height:1.7}.tip-card{display:flex;align-items:center;gap:18px;margin:28px 0 36px;padding:14px 22px;border:1px solid #f2dfaa;border-radius:20px;background:linear-gradient(100deg,#fff6d7,#fff 65%,#fff2d6);min-height:110px}.tip-card img{width:85px;height:95px;object-fit:contain;align-self:end}.tip-card h2{color:#875d08;margin:2px 0 5px;font-size:1.25rem}.tip-card p{margin:0;color:#66583c;line-height:1.5}footer{padding:19px;text-align:center;color:#6a7c70;font-size:.9rem}footer a{color:#087a55;font-weight:800}#toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:#163e2d;color:white;padding:10px 15px;border-radius:12px;opacity:0;pointer-events:none;transition:.2s;z-index:10}#toast.show{opacity:1}
@media(max-width:850px){.hero{margin:10px 12px 0;grid-template-columns:145px 1fr;padding:15px;min-height:230px}.hero-art{height:205px}.hero-art img{height:200px}.hero-scene{display:none}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-shell{padding:0 12px}}
@media(max-width:560px){.topbar{height:58px;padding:6px 8px;gap:6px}.back,.close,.head-actions button,.language-switch button{min-width:36px;height:36px;border-radius:11px}.brand{gap:4px;font-size:1rem}.brand img{width:32px;height:32px}.head-actions{gap:4px}.head-actions>button{font-size:0;padding:0;width:35px}.head-actions>button span{font-size:.68rem}.language-switch button{min-width:30px;font-size:.8rem}.hero{grid-template-columns:96px minmax(0,1fr);min-height:225px;padding:13px 12px;border-radius:18px}.hero-art{height:186px}.hero-art img{height:180px;max-width:112px}.hero-book{left:0;bottom:13px;font-size:.62rem;padding:6px 7px}.hero-copy h1{font-size:1.65rem}.hero-copy [data-ui=tagline]{font-size:1rem}.hero-note{font-size:.85rem}.hero-copy .primary{min-height:43px;padding:9px 18px}.section-title{align-items:start;flex-direction:column}.section-title h2{font-size:1.28rem}.activity-grid{gap:9px}.activity-card{padding:13px;min-height:166px;border-radius:16px}.activity-icon{width:44px;height:44px;font-size:1.5rem}.activity-card h3{font-size:1rem}.activity-card p{font-size:.82rem}.answer-options{grid-template-columns:1fr}.lesson-top{align-items:center}.lesson-top h2{font-size:1.2rem}.q-meta{font-size:.78rem}.question{font-size:1.1rem}.tip-card{padding:10px 14px;gap:8px}.tip-card img{width:60px;height:78px}.tip-card p{font-size:.86rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.activity-count{display:inline-flex;align-items:center;gap:5px;margin:-4px 0 12px;color:#476757;font-size:.82rem;font-weight:800}.activity-card button{margin-top:auto}

.data-credits{max-width:1200px;margin:8px auto 24px;padding:0 18px;color:#51665e;font-size:.82rem}.data-credits summary{cursor:pointer;color:#087a55;font-weight:700}.data-credits p{line-height:1.6}
