:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#253d34;background:#f7f7ef;font-synthesis:none;--green:#265144;--muted:#68786e;--line:#dce2d6}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #a37729;outline-offset:4px}header{max-width:1320px;margin:auto;height:100px;padding:0 48px;display:flex;align-items:center;gap:28px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:25px;font-weight:750;color:var(--green);letter-spacing:-1px;display:flex;align-items:center}.brand>span:last-child{font-weight:400}.mark{display:grid;place-items:center;background:var(--green);color:#f8e5b2;border-radius:11px;width:36px;height:36px;margin-right:10px;font-size:26px}.edition{font-size:11px;letter-spacing:2px;margin-left:auto}.edition b{margin-left:14px;background:#e7ebdf;padding:6px 8px;border-radius:4px;font-size:9px}.quiet{border:0;background:transparent;color:var(--green);font-weight:600;padding:10px}.quiet:hover{text-decoration:underline}main{max-width:1224px;margin:0 auto;min-height:calc(100vh - 182px);padding:48px 0 64px}h1,h2,h3,p{margin-top:0}h1{font-size:44px;font-weight:550;letter-spacing:-1.8px;line-height:1.14;margin-bottom:16px}h2{font-weight:550;font-size:29px;letter-spacing:-.8px}h3{font-size:19px;line-height:1.4}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:750;color:var(--muted);margin-bottom:15px}.intro{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:36px}.intro p{color:var(--muted);font-size:16px;line-height:1.7;margin-bottom:0}.stats{display:flex;gap:30px;border-left:1px solid var(--line);padding-left:30px}.stat strong{font-size:30px;font-weight:500;display:block}.stat span{font-size:12px;color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:32px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.section-title h2{font-size:21px;margin:0}.section-title span{font-size:12px;color:var(--muted)}.courses{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{background:#fffefa;border:1px solid var(--line);border-radius:19px;padding:25px;position:relative;overflow:hidden;transition:transform .15s}.card:hover{transform:translateY(-2px)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.icon{height:47px;width:47px;display:grid;place-items:center;border-radius:14px;font-family:Georgia,serif;font-size:25px;background:var(--tint);color:var(--accent);font-weight:700}.badge{font-size:10px;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--line);border-radius:15px;padding:5px 8px;color:var(--muted)}.card h3{font-size:26px;font-weight:550;margin-bottom:5px;letter-spacing:-.7px}.card .sub{font-size:13px;color:var(--muted);margin-bottom:18px}.card .desc{font-size:14px;line-height:1.6;color:#617267;min-height:44px}.bar{height:4px;background:#edf0e7;border-radius:9px;overflow:hidden;margin-bottom:9px}.bar>span{display:block;height:100%;background:var(--accent,var(--green))}.card .meta{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:20px}.primary,.secondary{border:1px solid var(--green);border-radius:10px;padding:13px 19px;font-size:14px;font-weight:650}.primary{background:var(--green);color:white}.primary:hover{background:#183d31}.secondary{background:transparent;color:var(--green)}.secondary:hover{background:#edf1e7}.card button{width:100%;text-align:left;display:flex;justify-content:space-between}.side-panel{background:#eaf0e3;padding:25px;border-radius:19px;margin-bottom:20px}.side-panel h3{font-weight:550;font-size:23px;margin-bottom:12px}.side-panel p{font-size:14px;line-height:1.7;color:#566c5f}.side-panel .primary{width:100%}.leaf{font-family:Georgia,serif;font-size:62px;color:#628873;line-height:1;margin-bottom:20px}.note{padding:7px 9px;font-size:12px;line-height:1.8;color:var(--muted)}.note strong{color:var(--green);display:block;font-size:13px;margin-bottom:8px}footer{border-top:1px solid var(--line);padding:24px 48px;max-width:1320px;margin:auto;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.back{margin-bottom:24px;padding-left:0}.course-head{max-width:760px}.lesson-list{display:grid;gap:14px;max-width:830px;margin-top:30px}.lesson-row{display:flex;align-items:center;gap:22px;padding:23px;background:#fffefa;border:1px solid var(--line);border-radius:15px}.lesson-row .number{font-size:26px;font-family:Georgia,serif;color:#8b9e90}.lesson-row h3{margin-bottom:5px}.lesson-row p{font-size:14px;color:var(--muted);margin:0}.lesson-row button{margin-left:auto;white-space:nowrap}.lesson-shell{max-width:820px;margin:auto}.lesson-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}.lesson-shell>.bar{margin:12px 0 32px}.exercise{border:1px solid var(--line);border-radius:22px;background:#fffefa;padding:36px}.exercise h2{font-size:28px;line-height:1.4}.teaching{background:#edf2e8;border-radius:13px;padding:20px;line-height:1.8;margin:18px 0 25px;white-space:pre-line}.passage{border-left:3px solid #a9b99b;padding:12px 22px;font-family:Georgia,serif;font-size:20px;line-height:1.8;white-space:pre-line;margin:18px 0 26px;background:#faf9f3}.options{display:grid;gap:12px}.option{border:1px solid #ccd7c7;background:white;border-radius:11px;text-align:left;padding:16px 18px;color:#253d34;line-height:1.6}.option:hover,.option.selected{border-color:var(--green);background:#edf3e8}.option.selected{box-shadow:inset 0 0 0 1px var(--green)}.option:disabled{cursor:default;opacity:1}.feedback{padding:20px;border-radius:12px;background:#eaf1e6;margin-top:22px;line-height:1.7}.feedback.wrong{background:#fff0de}.feedback h3{margin-bottom:7px}.feedback p{margin-bottom:0}.controls{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:26px}.controls .primary{margin-left:auto}.audio{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0}.audio button{padding:10px 14px}.audio-status{font-size:12px;color:var(--muted)}label{display:block;font-weight:600;margin-bottom:10px}textarea,input[type=text]{width:100%;border:1px solid #bac8b7;border-radius:10px;padding:15px;background:white;color:#253d34;font-size:17px}textarea{min-height:150px;line-height:1.7;resize:vertical}.hint{font-size:13px;color:var(--muted);line-height:1.7}.checklist label{font-weight:400;font-size:15px;display:flex;gap:10px;align-items:flex-start}.checklist input{margin-top:5px}.success{text-align:center;max-width:640px;margin:40px auto}.success .leaf{font-size:70px}.success p{line-height:1.8;color:var(--muted)}.success .controls{justify-content:center}.success .controls .primary{margin-left:0}button:disabled{opacity:.5;cursor:not-allowed}dialog{border:1px solid var(--line);border-radius:20px;max-width:600px;width:calc(100% - 32px);padding:30px;color:#253d34;background:#fffefa}dialog::backdrop{background:#102d2466}dialog p{font-size:15px;line-height:1.7}.close{float:right;font-size:24px}.danger{background:transparent;border:1px solid #b46041;color:#9c4229;border-radius:10px;padding:13px;margin-top:12px}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--green);color:white;border-radius:10px;padding:12px 20px;max-width:90%;display:none;font-size:14px}.skip{position:absolute;top:-80px;left:20px;background:white;padding:16px;z-index:9}.skip:focus{top:10px}.trial-note{font-size:12px;color:#6f786b;line-height:1.7;margin-top:22px}a{color:var(--green)}
@media(max-width:1280px){main{padding:35px 35px 55px}}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.side-panel{margin:0}.stats{gap:18px}.edition{display:none}header .quiet{margin-left:auto}}@media(max-width:600px){header{height:77px;padding:0 20px}.brand{font-size:23px}main{padding:28px 20px 40px}h1{font-size:35px}.intro{display:block}.stats{border:0;padding:20px 0 0;gap:35px}.stat strong{font-size:24px}.courses{grid-template-columns:1fr}.card{padding:23px}.card-top{margin-bottom:16px}.card .desc{min-height:0}.sidebar{display:block}.note{margin-top:20px}.exercise{padding:22px}.exercise h2{font-size:23px}.lesson-row{flex-wrap:wrap;gap:14px}.lesson-row button{width:100%}.lesson-row .number{display:none}footer{padding:22px 20px;flex-direction:column;gap:9px}.passage{font-size:18px;padding:10px 15px}.controls{flex-wrap:wrap}.edition{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

main:focus{outline:none}

.lesson-explanation{margin:24px 0;line-height:1.75}.lesson-explanation hr{border:0;border-top:2px solid #b7c5ae;margin:0 0 22px}.lesson-explanation h2{font-size:18px;margin:0 0 12px}.lesson-explanation p{font-size:15px;margin:0 0 14px}

/* Year-one course structure */
.unit-heading{font-size:22px;margin:24px 0 2px}.course-head .primary{text-align:left;line-height:1.5}.year-roadmap{max-width:830px;margin-top:40px;padding:25px;border:1px solid var(--line);border-radius:16px;background:#fffefa;line-height:1.7}.year-roadmap h2{font-size:26px}.year-roadmap summary{cursor:pointer;font-weight:650;color:var(--green);padding:8px 0}.year-roadmap details>p:first-of-type{margin-top:18px}.roadmap-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0;list-style:none;counter-reset:unit}.roadmap-grid li{counter-increment:unit;border:1px solid var(--line);border-radius:12px;padding:18px}.roadmap-grid li h3:before{content:counter(unit,decimal-leading-zero) ' · ';color:var(--muted)}.roadmap-grid .ready{background:#edf2e8}.roadmap-grid h3{margin:8px 0}.roadmap-grid p{font-size:14px;margin:0 0 8px}.roadmap-status{font-size:13px;font-weight:650}.learning-goals{margin:22px 0}.learning-goals h2{font-size:18px}.learning-goals ul{padding-left:22px;line-height:1.7}.practice-note{border-left:3px solid #a9b99b;padding:15px 18px;background:#f7f5e9;line-height:1.7;margin:22px 0}.practice-note p{margin:6px 0 0;font-size:15px}.lesson-explanation p{font-size:16px}.lesson-row>div{min-width:0}.controls{flex-wrap:wrap}@media(max-width:600px){.roadmap-grid{grid-template-columns:1fr}.year-roadmap{padding:18px}.year-roadmap h2{font-size:23px}.exercise .lesson-explanation h2,.exercise .learning-goals h2{font-size:18px}}

/* Both scripts share the pinyin/gloss that follows, and the same audio. */
.script-pair{display:inline-flex;flex-wrap:wrap;gap:5px 16px;vertical-align:baseline;white-space:normal;margin:2px 3px 2px 0}.script-version{display:inline;line-height:1.7}.script-label{display:inline-block;font-family:system-ui,sans-serif;font-size:12px;line-height:1.5;font-weight:600;letter-spacing:0;border:1px solid #c6d1bf;border-radius:4px;padding:0 4px;color:#52664e;background:#f5f7f0;vertical-align:middle}.option .script-pair{font-size:17px}.exercise h2 .script-pair{font-size:.8em}.teaching .script-pair{margin-bottom:5px}@media(max-width:600px){.teaching .script-pair,.option .script-pair{display:inline-flex;flex-direction:column;gap:0}.script-label{font-size:12px}}

/* Local microphone practice, visually separate from the sample player. */
[hidden]{display:none!important}.audio-practice{margin:20px 0}.recording-panel{border:1px solid #c9d7c8;background:#f4f7f0;border-radius:13px;padding:18px;margin-top:18px}.recording-panel p{font-size:14px;line-height:1.6;margin:0}.recording-panel .audio{margin:12px 0}.recording-panel .my-recording{display:block;width:100%;margin:12px 0}.recording-panel .record-status{font-size:13px;color:#526a5d;min-height:1.5em}.recording-panel strong{font-size:16px}

/* The practice number is the result, not a footnote. */
.score-card{margin:18px 0 14px;padding:18px 22px;border:2px solid var(--green);border-radius:14px;background:#fffefa;color:#173b30}.score-card .score-label{font-size:18px;font-weight:700;line-height:1.4}.score-card .score-value{display:flex;align-items:baseline;gap:8px;margin:4px 0}.score-card .score-number{font-size:clamp(58px,12vw,82px);font-weight:750;letter-spacing:-3px;line-height:1.05;font-variant-numeric:tabular-nums}.score-card .score-total{font-size:24px;font-weight:600}.score-card p{font-size:15px;line-height:1.5}.recording-panel .record-status{font-size:15px;line-height:1.5}

.score-card.unscored .score-number{font-size:clamp(29px,7vw,42px);letter-spacing:-.5px;line-height:1.25}.score-card .score-note{font-size:16px;line-height:1.5;margin:8px 0}.score-card .score-timing{font-size:15px;color:#405f51;margin-top:10px}

/* Sentence-level models and optional topic word banks. */
.lesson-phrases,.extra-phrases,.word-bank{margin:24px 0;border:1px solid var(--line);border-radius:15px;background:#fffefa;overflow:hidden}.lesson-phrases h2,.extra-phrases h2,.word-bank h2{font-size:20px;line-height:1.35;margin:0;padding:17px 19px 9px}.extra-phrases{background:#f1f6f8;border-color:#c8d8df}.word-bank{background:#f6f5eb;border-color:#dddcc9}.extra-phrases>p,.word-bank>p{font-size:15px;line-height:1.55;color:#536a60;margin:0;padding:0 19px 15px}.phrase-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;align-items:center;padding:16px 19px;border-top:1px solid var(--line)}.phrase-copy{min-width:0;display:flex;flex-direction:column;gap:4px;line-height:1.5}.target-language{font-size:19px;font-weight:750;color:#193b31;overflow-wrap:anywhere}.phrase-pinyin{font-size:15px;color:#405b68}.phrase-meaning{font-size:16px;color:#364f43}.phrase-usage{font-size:14px;color:#536a60}.phrase-audio{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;max-width:240px}.phrase-audio button{font-size:13px;padding:8px 10px;min-height:38px}.phrase-player{display:none}.phrase-status{font-size:13px;color:#526a5d;min-width:100%;text-align:right}.phrase-status:empty{display:none}.model-note{font-size:16px;line-height:1.65;padding:12px 19px;margin:0;border-top:1px solid var(--line);background:#f3f6ef}.whole-audio-heading{font-size:18px;margin:28px 0 8px}.phrase-row .script-pair{display:inline-flex;margin:0 5px 0 0}.phrase-row .script-version{font-weight:750}@media(max-width:680px){.phrase-row{grid-template-columns:1fr;padding:15px}.phrase-audio{justify-content:flex-start;max-width:none}.phrase-status{text-align:left}.target-language{font-size:18px}.lesson-phrases h2,.extra-phrases h2,.word-bank h2{padding-left:15px}.extra-phrases>p,.word-bank>p{padding-left:15px;padding-right:15px}}

/* Youth-facing ability reference, separate from lesson completion. */
.core-word-bank{margin:24px 0;border:1px solid #bdd0c5;border-radius:15px;background:#eef5ef;overflow:hidden}.core-word-bank>summary{cursor:pointer;padding:18px 20px;font-size:20px;font-weight:650;color:#193b31}.core-word-bank>p{padding:0 20px 16px;margin:0;color:#466254;font-size:15px;line-height:1.55}.core-word-bank .phrase-row{background:#fffefa}@media(max-width:680px){.core-word-bank>summary{padding:16px;font-size:18px}.core-word-bank>p{padding:0 16px 16px}}
.core-word-bank .core-toggle{margin:0 20px 16px}.core-word-bank.hide-meaning .phrase-meaning{display:none}@media(max-width:680px){.core-word-bank .core-toggle{margin-left:16px}}
  .context-examples{margin:24px 0;border:1px solid #c4d0db;border-radius:15px;background:#f1f5f8;overflow:hidden}.context-examples>summary{cursor:pointer;padding:18px 20px;font-size:19px;font-weight:650;color:#1d4557}.context-examples>p{padding:0 20px 16px;margin:0;color:#466271;font-size:15px;line-height:1.55}.context-examples .phrase-row{background:#fffefa}@media(max-width:680px){.context-examples>summary{padding:16px;font-size:18px}.context-examples>p{padding:0 16px 16px}}
  .lesson-dialogue{margin:24px 0;border:1px solid #c5d5ce;border-radius:15px;background:#f2f7f3;overflow:hidden}.lesson-dialogue h2{font-size:20px;line-height:1.35;margin:0;padding:18px 19px 6px}.lesson-dialogue>p{font-size:15px;line-height:1.55;color:#496056;margin:0;padding:0 19px 16px}.dialogue-turn{border-top:1px solid #d6e1da;background:#fffefa}.dialogue-speaker{display:inline-block;margin:13px 19px 0;padding:4px 9px;border-radius:7px;background:#e4eee8;color:#234d3e;font-size:13px;font-weight:750}.dialogue-turn .phrase-row{border-top:0;padding-top:7px}.dialogue-full{border-top:1px solid #c5d5ce;padding:15px 19px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.dialogue-full>strong{font-size:16px}.dialogue-safety{border-top:1px solid #c5d5ce;padding-top:14px!important;background:#fff8eb;color:#624820!important}@media(max-width:680px){.lesson-dialogue h2{padding-left:15px}.lesson-dialogue>p{padding-left:15px;padding-right:15px}.dialogue-speaker{margin-left:15px}.dialogue-full{padding:15px}.dialogue-full .phrase-audio{width:100%}}
.level-guide{max-width:830px;margin:26px 0 8px;padding:22px 26px;border:1px solid #bccdd6;border-left:5px solid #537990;border-radius:14px;background:#f0f5f7;line-height:1.65}.level-guide .eyebrow{margin-bottom:7px}.level-guide h2{font-size:22px;margin-bottom:8px}.level-guide p,.level-guide li{font-size:16px}.level-guide ul{margin:14px 0;padding-left:24px}.level-guide li{margin:0 0 6px}.level-guide .guide-source{font-size:14px;margin-bottom:0;color:#456070}@media(max-width:600px){.level-guide{padding:18px}.level-guide h2{font-size:21px}}

/* Illustrated field-notebook treatment: visuals orient the learner without replacing text. */
.card{box-shadow:0 8px 28px #294b3520}.card::before{content:"";position:absolute;right:-36px;top:-45px;width:155px;height:155px;border-radius:50%;background:radial-gradient(circle,var(--tint) 0 42%,transparent 71%);pointer-events:none}.card>*{position:relative}.card .icon{width:56px;height:56px;border-radius:18px;box-shadow:inset 0 0 0 1px #ffffffa8}.card h3{font-weight:650}.lesson-row{border-left:5px solid #c6d8ca;box-shadow:0 5px 18px #294b3510}.lesson-row .number{font-size:18px;font-family:inherit;font-weight:800;letter-spacing:.04em;color:#355f50;background:#eaf1e9;min-width:46px;height:46px;display:grid;place-items:center;border-radius:13px}.lesson-row:hover{border-left-color:#6e9b7c}.unit-heading{border-bottom:2px solid #d6e4d7;padding-bottom:10px}.exercise{box-shadow:0 10px 36px #294b3514}.lesson-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:192px;padding:24px 25px;margin:-10px -10px 24px;border:1px solid #d7e5db;border-radius:18px;background:linear-gradient(118deg,#eff7ef,#fbf4e7 77%);overflow:hidden}.lesson-intro-copy{min-width:0;max-width:530px;position:relative;z-index:1}.lesson-intro h1{font-size:clamp(30px,3.5vw,40px);line-height:1.17;letter-spacing:-1.2px;margin-bottom:10px}.lesson-intro .hint{font-size:16px;color:#3f6153;line-height:1.55;margin:0}.lesson-intro .eyebrow{font-size:13px;color:#476f5a;margin-bottom:12px}.lesson-art{flex:0 0 215px;width:215px;height:155px;display:grid;place-items:center;border-radius:28px;background:radial-gradient(circle at 79% 20%,#fff8dc 0 28%,transparent 29%),#dcebdc;transform:rotate(2deg)}.lesson-art svg{width:100%;height:100%;display:block}.lesson-art[data-scene="bike"],.lesson-art[data-scene="trip"]{background:#e9f1e0}.lesson-art[data-scene="food"],.lesson-art[data-scene="shop"]{background:#f9e8db}.lesson-art[data-scene="train"],.lesson-art[data-scene="clock"]{background:#e5eef4}.lesson-art[data-scene="care"]{background:#f8e5e4}.greeting-guide{margin:22px 0 27px;border:1px solid #ddcfb2;border-radius:18px;overflow:hidden;background:#fffaf0}.greeting-guide-head{padding:21px 22px 15px}.greeting-guide-head .eyebrow{font-size:12px;margin:0 0 5px;color:#775a35}.greeting-guide h2{font-size:23px;margin:0 0 5px;color:#2a4c3d}.greeting-guide-head p{font-size:16px;line-height:1.5;color:#53645a;margin:0}.greeting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#e3dccb;border-top:1px solid #e3dccb}.greeting-card{display:grid;grid-template-columns:54px 1fr;grid-template-rows:auto auto auto auto;column-gap:12px;align-items:center;padding:17px 19px;background:#fffdf8;min-height:136px}.greeting-card .daypart-icon{grid-column:1;grid-row:1/5;display:grid;place-items:center;width:48px;height:48px;border-radius:16px;font-size:29px;color:#745025;background:#ffebb4}.greeting-card .daypart-icon::before{content:"☀"}.greeting-card.afternoon .daypart-icon{background:#ffe0a0}.greeting-card.evening .daypart-icon{background:#dfe3f5;color:#485985}.greeting-card.evening .daypart-icon::before{content:"☾"}.greeting-card.wave .daypart-icon{background:#d8eadd;color:#296250}.greeting-card.wave .daypart-icon::before{content:"↗"}.greeting-moment{font-size:14px;font-weight:750;color:#6b7059}.greeting-card strong{font-size:21px;line-height:1.35;color:#214838}.greeting-card>span:not(.daypart-icon):not(.greeting-moment){font-size:16px;color:#345547}.greeting-card small{font-size:14px;line-height:1.4;color:#566a5b}.phrase-audio button{min-height:42px}.phrase-status{font-size:14px}.card .meta,.section-title span{font-size:13px}.badge{font-size:11px}.card .desc,.card .sub{font-size:15px}
.greeting-card{align-content:start;row-gap:4px}.greeting-card.sun .daypart-icon{background:#ffe0a0}.greeting-card.moon .daypart-icon{background:#dfe3f5;color:#485985}.greeting-card.moon .daypart-icon::before{content:"☾"}
.greeting-card.night{grid-column:1/-1}.greeting-card.night .daypart-icon{background:#d8ddf0;color:#4d5985}.greeting-card.night .daypart-icon::before{content:"✦"}
.inline-foreign{font-weight:700;color:#214d3d}.inline-pronunciation{display:inline-flex;vertical-align:middle;margin:0 3px}.inline-listen{font:inherit;font-size:12px;font-weight:750;line-height:1.2;min-height:30px;padding:4px 8px;border:1px solid #6b9783;border-radius:7px;background:#eff6ef;color:#174537;cursor:pointer}.inline-listen:hover,.inline-listen:focus-visible{background:#d9ecdf;outline-offset:2px}.inline-pronunciation audio,.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.greeting-card>:not(.daypart-icon){grid-column:2}.greeting-card .inline-pronunciation{justify-self:start;margin:4px 0}.greeting-card .inline-listen{font-size:13px;min-height:35px;padding:6px 10px}.greeting-wishes{display:grid;gap:10px;margin-top:12px;border-top:1px solid #e5dccb;padding-top:12px}.greeting-wish{display:flex;flex-wrap:wrap;align-items:center;gap:3px 7px}.greeting-wish strong{font-size:16px}.greeting-wish>span:not(.inline-pronunciation){font-size:14px;color:#214838}.greeting-wish small{flex-basis:100%;font-size:12px;color:#5c6c60}.greeting-wishes .inline-pronunciation{margin-left:2px}.greeting-guide-head .inline-listen,.learning-goals .inline-listen,.lesson-explanation .inline-listen{font-size:12px}
@media(max-width:700px){.lesson-intro{padding:20px;min-height:0}.lesson-art{flex-basis:130px;width:130px;height:115px}.greeting-card{padding:15px;grid-template-columns:42px 1fr}.greeting-card .daypart-icon{width:38px;height:38px;font-size:23px}}
@media(max-width:530px){.lesson-intro{margin:-6px -6px 22px;align-items:flex-start}.lesson-intro h1{font-size:29px}.lesson-art{flex-basis:85px;width:85px;height:90px;border-radius:17px;margin-right:-12px}.greeting-grid{grid-template-columns:1fr}.greeting-card{min-height:105px}.lesson-row .number{display:grid}}
.gender-context{margin:24px 0;border:1px solid #cbd9d1;border-radius:15px;background:#f2f7f3;overflow:hidden}.gender-context h2{font-size:20px;margin:0;padding:17px 19px 5px}.gender-context>p{font-size:15px;line-height:1.55;margin:0;padding:0 19px 15px;color:#435b4d}.gender-context .phrase-row{background:#fffefa}.gender-badge{display:inline-block;align-self:flex-start;border-radius:100px;padding:3px 9px;font-size:12px;font-weight:750;line-height:1.3}.gender-badge.masculine{background:#e7edf5;color:#315475}.gender-badge.feminine{background:#f7e9ee;color:#79455b}@media(max-width:650px){.gender-context h2{padding-left:15px}.gender-context>p{padding-left:15px;padding-right:15px}}
.gender-badge.neuter{background:#e9eaf8;color:#464780}.gender-badge.plural{background:#e7f2e7;color:#315b3b}.word-example{margin-top:10px;padding-top:10px;border-top:1px solid #d9e5d9;line-height:1.5;font-size:14px}.word-example>strong{font-weight:700}.word-example .phrase-audio{margin-top:5px}
.phrase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:4px 16px 16px}.phrase-grid>.phrase-row{grid-column:1/-1;border:1px solid var(--line);border-radius:12px;background:#fffefa;padding:15px}.phrase-grid>.phrase-row.word-card{grid-column:auto;display:flex;flex-direction:column;align-items:stretch;gap:10px;background:#f0f6f1}.word-card .phrase-copy{flex:1}.word-card .target-language{font-size:18px}.word-card .phrase-audio{justify-content:flex-start;max-width:none}.word-card .phrase-audio button{padding:7px 8px;min-height:36px}.word-card .phrase-status{text-align:left}.phrase-grid>.model-note{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:12px 15px}.word-bank .phrase-grid>.word-card{background:#f2f5e9}.core-word-bank .phrase-grid>.word-card{background:#f0f6f1}@media(max-width:760px){.phrase-grid{grid-template-columns:1fr;padding:3px 12px 12px}.phrase-grid>.phrase-row.word-card{grid-column:1/-1}.phrase-grid>.phrase-row{padding:14px}}
.unit-word-checks{max-width:830px;margin:36px 0;padding:24px;border:1px solid var(--line);border-radius:16px;background:#f2f7f3}.unit-word-checks h2{margin:0 0 8px;font-size:23px}.unit-word-checks p{line-height:1.6}.unit-word-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.word-recall{max-width:760px}.word-recall h1{margin:12px 0}.word-recall>p{font-size:18px;line-height:1.6}.word-recall #word-answer{margin-top:24px}.word-recall .phrase-row{border:1px solid var(--line);border-radius:12px;background:#f2f7f3;padding:18px}.word-recall .controls{margin-top:20px}
.science-teaching{margin:22px 0 30px;padding:22px;border:1px solid #b9d0c8;border-radius:18px;background:#f4faf6}.science-teaching h2{margin:8px 0 16px}.science-figure{margin:18px 0;padding:10px;border:1px solid #c9dcd5;border-radius:16px;background:#fff}.science-figure img{display:block;width:100%;max-height:410px;object-fit:contain}.science-figure figcaption{padding:8px 10px;color:#3f5955;font-size:.9rem}.science-key{display:grid;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));gap:10px;margin:18px 0}.science-key article{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #cfddd6;border-radius:12px;padding:13px}.science-key p{margin:5px 0 0}.science-letter{display:grid;place-items:center;flex:0 0 34px;height:34px;background:#205a58;border-radius:50%;color:white;font-weight:700}.science-question-figure{max-width:680px;margin:12px auto 22px}
.science-audio{margin:20px 0;padding:17px;border:1px solid #b8d2c8;border-radius:14px;background:#fff}.science-audio strong{display:block;margin-bottom:10px}.science-audio .audio{flex-wrap:wrap}.science-audio .audio-status{margin:9px 0 0}
.science-depth{margin:22px 0;padding:20px 22px;border-left:5px solid #cb9b45;border-radius:12px;background:#fff9ec;color:#284840}.science-depth .eyebrow{font-size:13px;color:#73572b;margin-bottom:5px}.science-depth h3{margin:0 0 10px;font-size:21px}.science-depth p{margin:0 0 9px;line-height:1.6;font-size:16px}.science-depth p:last-child{margin-bottom:0}@media(max-width:600px){.science-depth{padding:17px}}
.science-symbol-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:16px 0 24px}.science-symbol-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:16px;background:#fff;border:1px solid #cbdcd5;border-radius:14px}.science-symbol-card img{display:block;width:min(100%,142px);height:142px;object-fit:contain}.science-symbol-card strong{font-size:1.04rem}.science-symbol-card p{margin:0;color:#36534f;font-size:.94rem}.science-word-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:9px;margin:12px 0 20px}.science-word-grid article{padding:12px;background:#fff;border:1px solid #d0dfd9;border-radius:11px}.science-word-grid p{margin:5px 0 0}.science-hard{display:inline-block;margin-left:8px;padding:3px 7px;border-radius:5px;background:#ffe8b0;color:#593b00;font-size:.75rem;font-weight:700}.science-symbol-question{max-width:320px;text-align:center}.science-symbol-question img{max-height:250px;object-fit:contain}

.music-card-link{display:block;text-align:center;text-decoration:none;margin-top:20px}.music-card-link:hover{text-decoration:underline}
