
:root{--ink:#263633;--green:#416d5b;--cream:#f8f6ef;--paper:#fffefa;--orange:#d5794c;--line:#e4e8dd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.9 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit}header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid var(--line);background:var(--cream);position:sticky;top:0;z-index:3}.brand{font-family:Georgia,serif;font-size:23px;font-weight:bold;letter-spacing:-1px}.brand i{color:var(--orange);font-style:normal}.top{font-size:13px;color:#718077;letter-spacing:.08em}.wrap{max-width:1120px;margin:auto;padding:0 28px}.hero{display:grid;grid-template-columns:1fr 1.12fr;gap:55px;align-items:center;padding:72px 0 60px}.eyebrow,.label{font-size:12px;letter-spacing:.18em;color:var(--green);font-weight:700;text-transform:uppercase}.hero h1{font:normal clamp(54px,7vw,90px)/1 Georgia,serif;letter-spacing:-.05em;margin:20px 0}.hero h1 em{font-weight:normal;color:var(--orange)}.hero p{color:#65746c;max-width:430px}.hero img{width:100%;height:370px;object-fit:cover;border-radius:48% 48% 8px 8px}.btn,button{border:0;cursor:pointer;font:inherit}.btn{display:inline-block;text-decoration:none;background:var(--green);color:white;border-radius:5px;padding:11px 24px;margin-top:14px}.meta{display:flex;gap:24px;font-size:13px;margin-top:25px;color:#718077}.layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:56px;padding-bottom:90px}.nav{position:sticky;top:90px;align-self:start;font-size:13px;color:#718077}.nav strong{display:block;letter-spacing:.15em;color:#9ba89e;font-size:11px;margin-bottom:12px}.nav a{display:block;text-decoration:none;padding:7px 0}.nav a:hover{color:var(--orange)}.progress{height:4px;background:#dce5da;margin:18px 0}.progress span{display:block;height:100%;width:0;background:var(--orange)}main{min-width:0}.section{padding:42px 0;border-top:1px solid var(--line);scroll-margin-top:85px}.section h2{font:normal 37px/1.2 Georgia,'Songti SC',serif;margin:12px 0 20px}.section h3{font-size:20px;margin:30px 0 8px}.section p{margin:10px 0 18px}.muted{color:#75847b}.lead{font-size:18px}.card{background:var(--paper);border:1px solid #e7eae1;border-radius:12px;padding:26px;margin:18px 0}.scene{background:#eaf0e7;border:0}.dialogue{display:grid;grid-template-columns:75px 1fr;gap:5px 14px}.speaker{font-weight:700;color:var(--green);font-size:13px}.fr{font-family:Georgia,serif;font-size:21px}.translation{font-size:14px;color:#7a8980}.audio{background:transparent;color:var(--green);padding:2px 7px;border-radius:5px;font-size:14px}.audio:hover{background:#e1ebe1}.toggle{background:none;text-decoration:underline;color:var(--green);padding:0;font-size:14px}.hidden{display:none}.columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.word{border-left:3px solid var(--orange);padding-left:18px}.word strong{font:normal 29px Georgia,serif}.note{background:#fbefe4;border-radius:8px;padding:18px 22px;color:#705b4e;margin:20px 0}table{width:100%;border-collapse:collapse;font-size:15px}td,th{padding:12px;border-bottom:1px solid var(--line);text-align:left}th{color:#819087;font-size:12px;letter-spacing:.07em}details{border-bottom:1px solid var(--line);padding:14px 0}summary{cursor:pointer;font-weight:600;color:var(--green)}.quiz label{display:block;margin:16px 0 5px;font-weight:600}.quiz input,.quiz textarea,.quiz select{font:inherit;width:100%;padding:10px;border:1px solid #cdd8ce;border-radius:6px;background:white}.quiz textarea{min-height:110px}.smallbtn{background:var(--green);color:#fff;border-radius:5px;padding:9px 18px;margin:20px 10px 0 0}.secondary{background:#e8eee7;color:var(--green)}.result{margin-top:16px;color:var(--green);font-weight:600}.checks label{display:block;padding:5px 0}.checks input{accent-color:var(--green)}footer{background:#314d40;color:#eaf0e7;padding:40px 0}.footerinner{display:flex;justify-content:space-between;gap:20px}.pill{display:inline-block;background:#ebf0e6;border-radius:30px;padding:3px 12px;color:#66806b;font-size:12px} @media(max-width:760px){header{padding:0 20px}.top{font-size:11px}.hero{grid-template-columns:1fr;gap:24px;padding:45px 0}.hero img{height:280px}.layout{display:block}.nav{position:static;display:flex;gap:14px;overflow:auto;white-space:nowrap;margin-bottom:25px}.nav strong,.progress{display:none}.nav a{display:inline}.columns{grid-template-columns:1fr}.section h2{font-size:31px}.dialogue{grid-template-columns:62px 1fr}.footerinner{display:block}}

.lesson-player{display:block;width:100%;max-width:100%;margin:12px 0 18px}.audio-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.audio-controls label{font-size:14px;color:var(--green)}.audio-controls select{font:inherit;border:1px solid #cdd8ce;border-radius:5px;background:var(--paper);color:var(--green);padding:3px 7px}.audio[aria-pressed="true"]{background:#d8e5d7}.audio-status{font-size:14px;color:#8a482e;margin:8px 0}.audio-status:empty{display:none}


:root{--muted:#596c61;--line:#dce3d7;--green-dark:#2b5743;--soft:#edf2e9;--orange-dark:#a4542d}
[hidden]{display:none!important}.brand{text-decoration:none}.skip-link{position:fixed;top:-100px;left:16px;z-index:20;background:var(--green-dark);color:white;padding:10px 18px}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--orange-dark);outline-offset:4px}.muted,.translation,.hero p,.meta,.nav,.nav a,.top,.pill{color:var(--muted)}.section{scroll-margin-top:90px}.section h3{font-size:22px}.section h4{font-size:18px;margin:14px 0;font-weight:650;line-height:1.6}.course-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;border-bottom:1px solid var(--line)}.course-strip p{margin:2px 0 0;font-size:14px;color:var(--muted)}.course-strip strong{margin-left:10px;color:var(--ink)}.continue-link,.text-link{color:var(--green-dark);text-underline-offset:5px;font-weight:600}.hero{gap:40px;padding:32px 0}.hero h1{font-size:clamp(54px,7vw,82px);margin:12px 0}.hero img{height:290px}.hero .meta{gap:18px;margin-top:18px}.hero .btn{margin-top:0}.objectives{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:8px 0 32px}.objective{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:18px}.objective>span{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--soft);color:var(--green-dark);font-family:'Songti SC',serif;font-size:23px}.objective small{display:block;color:var(--muted);font-size:12px}.objective strong{display:block;font-size:14px;line-height:1.5}.nav a{border-radius:6px;padding:7px 8px;margin-left:-8px;font-size:13px;line-height:1.65}.nav a span{font-size:11px;margin-right:6px;color:var(--muted)}.nav a[aria-current]{background:#e7eee2;color:var(--green-dark);font-weight:650}.nav strong{color:var(--muted)}#progressText{font-size:12px;color:var(--muted);line-height:1.6}.progress{margin:14px 0}.card{padding:24px}.audio{display:inline-grid;place-items:center;min-width:44px;min-height:44px;vertical-align:middle;border:1px solid transparent;font-size:15px}.audio:hover,.audio[aria-pressed=true]{background:#dce8d8;border-color:#b7cbb7}.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.outline{min-height:44px;border:1px solid #b4c8b5;background:var(--paper);color:var(--green-dark);border-radius:7px;padding:7px 14px;font-size:14px;line-height:1.5}.outline:hover{background:var(--soft)}.outline[aria-pressed=true]{background:var(--green-dark);border-color:var(--green-dark);color:#fff}.smallbtn{min-height:44px;margin:8px 0;padding:8px 18px}.toggle{min-height:44px;line-height:1.5;text-underline-offset:4px}button:disabled{cursor:default;opacity:.55}.audio-controls{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap}.audio-controls strong{font-size:15px}.audio-controls label{font-size:13px;color:var(--green-dark)}.audio-controls select{font:inherit;border:1px solid #b4c8b5;border-radius:6px;background:white;color:var(--green-dark);padding:7px;min-height:40px}.lesson-player{width:100%;display:block;margin:14px 0 8px}.recording{margin:12px 0 18px}.waveform{display:block;width:100%;height:36px;margin-top:10px}.waveform rect{fill:#c3d2bd;transition:fill .12s}.waveform rect.played{fill:var(--green)}.audio-notice{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:8;width:max-content;max-width:calc(100% - 32px);border-radius:10px;padding:12px 18px;background:var(--green-dark);color:white;box-shadow:0 6px 24px #213b2929;font-size:14px}.listen-steps{display:flex;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:14px;margin:20px 0}.listen-steps b{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e6eddf;color:var(--green-dark);margin-right:5px}.speech-scene{display:grid;gap:18px;padding:24px 0 14px}.speech-row{display:flex;align-items:flex-start;gap:10px;max-width:94%}.speech-row.haotian{flex-direction:row-reverse;justify-self:end}.avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;background:var(--green);color:#fff;border-radius:50%;font:19px Georgia,serif;margin-top:7px}.haotian .avatar{background:#ad643e}.speech-bubble{background:#fffefa;border:1px solid #dce4d4;border-radius:4px 18px 18px 18px;padding:14px 18px;min-width:150px}.haotian .speech-bubble{background:#fcf0e4;border-color:#eddcc9;border-radius:18px 4px 18px 18px}.speech-bubble p{margin:0;line-height:1.6;font:21px/1.6 Georgia,serif}.speech-bubble .translation{font:14px/1.6 -apple-system,BlinkMacSystemFont,sans-serif;margin-top:6px}.speaker{display:block;font-size:11px;letter-spacing:.09em;margin-bottom:4px}.sentence-builder{background:#edf2e9}.sentence-parts{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:24px 0}.sentence-parts>div{background:white;border:1px solid #dce4d4;border-radius:10px;padding:14px 18px}.sentence-parts strong{font:27px Georgia,serif;display:block;word-break:break-word}.sentence-parts small{font-size:11px;display:block;color:var(--muted);margin-top:7px}.sentence-parts>.name-part{border-color:#d2a47e;background:#fff4e6;min-width:110px}.sentence-parts>span{color:#60765e}.name-label{display:block;font-size:13px;font-weight:600}.name-input{width:100%;max-width:300px;min-height:44px;font:18px Georgia,serif;border:1px solid #b2c4b1;border-radius:6px;padding:8px 12px;background:white}.sentence-builder .button-row{margin:12px 0}.sentence-builder small.muted{font-size:12px;display:block;margin-top:10px}.phrase-chips{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.phrase-chips span{border:1px solid #d9e2d2;border-radius:30px;padding:3px 12px;font-family:Georgia,serif;color:var(--green-dark)}.practice-intro{margin:24px 0}.listening-grid{display:grid;gap:16px}.listening-card{margin:0;background:#fffefa}.question-top{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.question-number{font:24px Georgia,serif;color:var(--orange-dark)}.listening-card fieldset{border:0;margin:18px 0;padding:0;display:grid;gap:9px}.answer-option{display:flex;align-items:center;gap:10px;border:1px solid #d9e2d2;border-radius:7px;padding:10px 12px;cursor:pointer;min-height:46px}.answer-option:has(input:checked){background:#eaf0e4;border-color:var(--green)}.answer-option input{accent-color:var(--green);width:17px;height:17px;flex-shrink:0}.listening-card fieldset:disabled .answer-option{color:var(--muted);background:#f5f5ef;cursor:default}.listen-hint{font-size:13px;color:var(--muted)}.listen-result:empty,.inline-feedback:empty{display:none}.listen-result,.inline-feedback{font-size:14px;border-radius:7px;padding:12px 14px;margin-top:12px;background:var(--soft);color:var(--green-dark)}.listen-result.retry{background:#fbefe4;color:#784b2a}.transcript{border-top:1px dashed #c7d5c0;padding-top:16px;margin-top:14px}.transcript p{font:22px Georgia,serif}.trick-grid{display:grid;gap:16px}.trick-card{margin:0}.trick-card h3{margin:8px 0 12px}.trick-number{font-size:11px;letter-spacing:.1em;font-weight:650;color:var(--orange-dark)}.situation{background:var(--soft);border-radius:9px;padding:14px 16px;margin:20px 0}.situation strong{font-size:15px}.situation p{margin:2px 0 0;font-size:13px;color:var(--muted)}.formula{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:20px 0;font:23px Georgia,serif}.formula span:first-child,.formula .accent{background:var(--soft);border-radius:8px;padding:12px 16px}.formula .accent{background:#fbefe4;color:var(--orange-dark)}.echo-steps{display:flex;gap:10px;align-items:center;margin:20px 0}.echo-steps span{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:48px;height:48px;font-size:14px;color:var(--green-dark);background:var(--soft)}.echo-steps i{font-style:normal;color:var(--muted)}.gender-note{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:#fbf4ea}.gender-note>div{flex:1}.gender-note strong{font:28px Georgia,serif;display:block}.gender-note strong b{color:var(--orange-dark);font-weight:normal;text-decoration:underline;text-underline-offset:5px}.gender-note div span{display:block;font:12px/1.6 -apple-system,BlinkMacSystemFont,sans-serif;color:var(--muted);margin-top:8px}.gender-note .same-sound{font-size:12px;border:1px solid #d9c4a8;padding:4px 10px;border-radius:20px;color:#775b39}.gender-note p{flex-basis:100%;font-size:14px;margin:4px 0}.learning-summary{display:flex;gap:24px;flex-wrap:wrap;background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:22px;margin-bottom:28px}.learning-summary>div{flex:1;min-width:140px}.learning-summary strong{font:32px Georgia,serif;display:block;color:var(--green-dark)}.learning-summary span{display:block;font-size:13px;color:var(--muted)}.learning-summary p{flex-basis:100%;font-size:12px;color:var(--muted);margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.embedded header,.embedded footer,.embedded .hero,.embedded .course-strip,.embedded .nav{display:none}.embedded .layout{display:block}.embedded .objectives{margin-top:20px}.embedded .section{scroll-margin-top:16px}
@media(min-width:1100px){.trick-grid{grid-template-columns:1fr 1fr}.trick-card:last-child{grid-column:1/-1}.trick-card:last-child .echo-steps{float:right;margin-left:20px}.listening-card .answer-option{max-width:100%}}
@media(max-width:760px){header{height:60px}.course-strip{padding:16px 0}.course-strip .eyebrow{font-size:10px}.continue-link{font-size:13px}.hero{padding:26px 0;gap:22px}.hero img{height:240px}.hero h1{font-size:64px}.hero .meta{font-size:12px}.wrap{padding:0 20px}.objectives{grid-template-columns:1fr;gap:8px;margin:6px 0 24px}.objective{padding:11px 14px}.objective small{font-size:11px}.objective strong{font-size:14px}.objective>span{width:34px;height:34px;font-size:20px}.layout{padding-bottom:50px}.nav{position:sticky;top:60px;z-index:3;background:var(--cream);padding:10px 0;border-bottom:1px solid var(--line);margin:0 -20px 10px;padding-left:20px;padding-right:20px;gap:8px;scrollbar-width:thin}.nav a{font-size:12px;margin:0;padding:8px 10px;min-height:36px}.nav a span{display:none}#progressText{display:none}.section{scroll-margin-top:130px;padding:32px 0}.card{padding:19px}.listen-steps{gap:12px;font-size:12px}.speech-row{max-width:100%}.speech-bubble{padding:12px 14px;min-width:0}.speech-bubble p{font-size:20px}.sentence-parts{gap:7px}.sentence-parts>div{padding:12px}.sentence-parts strong{font-size:23px}.sentence-parts small{font-size:10px}.formula{font-size:20px;gap:8px}.formula span:first-child,.formula .accent{padding:10px 12px}.gender-note{gap:12px}.gender-note strong{font-size:24px}.gender-note .same-sound{padding:4px 7px;font-size:11px}.learning-summary{gap:14px;padding:18px}.learning-summary>div{min-width:110px}.audio-notice{bottom:12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.waveform rect{transition:none}}

@media(max-width:420px){.gender-note>div{flex-basis:100%;text-align:center}.gender-note .same-sound{margin:0 auto}.gender-note .outline{margin:0 auto}}
