@import url("https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=DM+Sans:wght@400;500;600;700&family=Noto+Serif:wght@600;700&family=Playfair+Display:wght@600;700&display=swap");:root{--cream:#f7f5ef;--gold:#e8b84c;--mint:#dcece3;--line:#dce4dd;--muted:#70827c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Be Vietnam Pro,DM Sans,sans-serif}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:flex}.sidebar{width:255px;background:#fbfaf6;border-right:1px solid var(--line);padding:28px 18px;position:fixed;inset:0 auto 0 0}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 34px}.brand-mark{width:40px;height:40px;border-radius:13px;background:var(--ink);color:#f7d36f;display:grid;place-items:center;font-family:"Noto Serif",Georgia,serif;font-size:22px}.brand strong{display:block;font:700 18px "Noto Serif",Georgia,serif;letter-spacing:-.4px}.brand span{font-size:9px;letter-spacing:2px;color:var(--muted)}.level-card{background:#edf5ef;border-radius:20px;padding:17px;margin-bottom:25px}.level-card small{color:#39756a;font-weight:700}.level-row{display:flex;justify-content:space-between;align-items:center;margin:10px 0}.level-row b{font:700 30px "Noto Serif",Georgia,serif}.pill{padding:7px 9px;border-radius:9px;font-weight:700;font-size:12px}.bar,.pill{background:#fff}.bar{height:6px;overflow:hidden}.bar,.bar i{border-radius:20px}.bar i{display:block;height:100%;background:#315f88}.nav{display:grid;grid-gap:6px;gap:6px}.nav a,.nav button{border:0;background:transparent;color:#59716b;text-align:left;padding:13px 14px;border-radius:13px;display:flex;align-items:center;gap:12px;font-weight:600}.nav a.active,.nav a:hover,.nav button.active,.nav button:hover{background:var(--ink);color:white}.nav a span:last-child,.nav button span:last-child{margin-left:auto;font-size:11px;opacity:.7}.main{margin-left:255px;width:calc(100% - 255px)}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5.2%;border-bottom:1px solid var(--line);background:#fbfaf6cc}.topbar-left{color:var(--muted);font-size:14px}.topbar-left b{color:#2f6083}.top-actions{display:flex;align-items:center;gap:12px}.lang{border:1px solid var(--line);background:#fff;color:var(--ink)}.lang,.streak{border-radius:22px;padding:9px 14px}.streak{background:#f2e7d2;font-size:13px;font-weight:700}.content{max-width:1120px;margin:auto;padding:40px 5.2% 70px}.hero{background:var(--ink);border-radius:28px;padding:42px 42px 38px;color:#fffdf8;position:relative;overflow:hidden;display:grid;grid-template-columns:1.35fr .65fr;grid-gap:25px;gap:25px}.hero:after{content:"";position:absolute;width:420px;height:420px;border:28px solid #234966;border-radius:50%;right:-130px;top:-170px;opacity:.7}.eyebrow{color:#b7d8c5;font-weight:700;letter-spacing:2px;font-size:11px;text-transform:uppercase}.hero h1{font:700 clamp(40px,5vw,66px)/1.02 "Noto Serif",Playfair Display,Georgia,serif;margin:18px 0;letter-spacing:-2px;position:relative;z-index:1}.hero h1 em{color:#f1c958;font-style:normal}.hero p{color:#d5e3dc;max-width:580px;font-size:16px;line-height:1.7}.hero p,.hero-actions{position:relative;z-index:1}.hero-actions{display:flex;gap:12px;margin-top:25px}.primary{background:#f4cb58;border:0;color:var(--ink);border-radius:12px;padding:14px 20px;font-weight:800}.ghost{border:1px solid #70869a;background:transparent;color:white;border-radius:12px;padding:14px 18px;font-weight:700}.momo-card{align-self:center;background:#214765e6;border:1px solid #617b93;border-radius:20px;padding:21px;position:relative;z-index:1}.momo-face{display:flex;align-items:center;gap:10px;font-weight:700}.momo-face strong{font:700 22px "Noto Serif",Georgia,serif;color:#f1c958}.momo-card p{font-size:13px;line-height:1.6;color:#e5f0ea;margin-bottom:0}.section-head{display:flex;justify-content:space-between;align-items:end;margin:42px 0 18px}.section-head h2{font:700 28px "Noto Serif",Georgia,serif;margin:3px 0}.section-head .label{color:#b08b3b;letter-spacing:2px;font-size:10px;font-weight:800;text-transform:uppercase}.section-head a{color:#2d587c;font-weight:700;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.stat{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px}.stat small{color:#84938d;letter-spacing:1.5px;text-transform:uppercase;font-size:10px;font-weight:800}.stat strong{font:700 25px "Noto Serif",Georgia,serif;display:block;margin:14px 0 12px}.stat p{margin:0;color:var(--muted);font-size:12px}.stat .tinybar{margin-top:14px;height:7px;background:#e8efea;border-radius:10px}.stat .tinybar i{display:block;height:100%;border-radius:10px;background:#315f88}.course-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:12px;gap:12px}.level{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:17px;transition:.2s}.level:hover{transform:translateY(-3px);box-shadow:0 12px 25px #173b5c12}.level.locked{opacity:.65}.level-top{display:flex;justify-content:space-between;align-items:center}.level-code{font:700 23px "Noto Serif",Georgia,serif}.level-tag{font-size:10px;padding:5px 7px;background:var(--mint);border-radius:7px;color:#2c5d82;font-weight:800}.level h3{margin:18px 0 5px;font-size:14px}.level p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.lesson-row{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.lesson{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:19px;display:flex;gap:15px;align-items:center}.lesson-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:#eaf3ed;color:#317368;font-weight:800}.lesson h3{margin:0 0 5px;font-size:15px}.lesson p{margin:0;color:var(--muted);font-size:12px}.lesson button{margin-left:auto;border:0;color:#2d587c;background:transparent;font-weight:800;font-size:20px}@media (max-width:900px){.sidebar{width:82px;padding:22px 10px}.brand{justify-content:center;padding:0 0 28px}.brand>div:last-child,.level-card,.nav a span,.nav button span{display:none}.nav a,.nav button{justify-content:center;padding:14px}.main{margin-left:82px;width:calc(100% - 82px)}.hero{grid-template-columns:1fr}.momo-card{max-width:340px}.course-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:620px){.topbar{padding:0 18px}.topbar-left{font-size:12px}.content{padding:24px 18px 50px}.hero{padding:28px 24px;border-radius:22px}.hero h1{font-size:42px}.hero p{font-size:14px}.ghost{display:none}.lesson-row,.stats{grid-template-columns:1fr}.course-grid{grid-template-columns:repeat(2,1fr)}.section-head h2{font-size:23px}.streak{display:none}}.back-link{display:inline-flex;align-items:center;gap:7px;color:#2d587c;font-weight:700;font-size:13px;margin-bottom:30px}.eyebrow-dark,.lesson-kicker,.section-label{color:#b08b3b;font-weight:800;letter-spacing:1.8px;font-size:11px;text-transform:uppercase;display:flex;align-items:center;gap:7px}.course-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:20px 0 52px}.course-heading h1{font:700 clamp(45px,6vw,76px)/.98 "Noto Serif",Playfair Display,Georgia,serif;letter-spacing:-3px;margin:16px 0}.course-heading h1 em{color:#c39236;font-style:normal}.course-heading p{max-width:560px;color:var(--muted);line-height:1.7;font-size:16px}.course-note{width:270px;background:#edf5ef;border-radius:20px;padding:22px;color:#32685f}.course-note p{font-size:13px;margin:11px 0 0;line-height:1.6;color:#53776f}.course-layout{display:grid;grid-template-columns:290px 1fr;grid-gap:44px;gap:44px}.level-list h2{font:700 25px "Noto Serif",Georgia,serif;margin:10px 0 22px}.level-select{width:100%;border:0;background:transparent;padding:13px 12px;border-radius:14px;display:flex;align-items:center;gap:12px;color:#6e7f79;text-align:left;margin:5px 0}.level-select.active,.level-select:hover{background:#fffdf8;box-shadow:0 8px 20px #173b5c0d;color:var(--ink)}.level-select .level-code{width:42px;height:42px;display:grid;place-items:center;background:#e8f1eb;border-radius:12px;color:#2e6288;font:700 17px "Noto Serif",Georgia,serif}.level-select.active .level-code{background:var(--ink);color:#f3cf61}.level-select span:nth-child(2){display:grid;grid-gap:3px;gap:3px;flex:1 1}.level-select b{font-size:13px}.level-select small{color:#98a49f;font-size:10px}.free-dot{color:#315f88;font-size:10px;font-weight:800}.panel-top{display:flex;justify-content:space-between;align-items:start;gap:20px}.panel-top h2{font:700 31px "Noto Serif",Georgia,serif;margin:14px 0 5px}.panel-top p{color:var(--muted);font-size:13px}.panel-top p span{color:#9ba9a4}.progress-ring{border:5px solid #e7f0e8;border-top-color:#315f88;border-radius:50%;width:75px;height:75px;display:grid;place-items:center;font-size:12px;font-weight:800;color:#315f88;flex:none}.skill-strip{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 28px}.skill-strip span{background:#edf5ef;color:#2c5d82;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:6px}.lesson-panel>h3{font:700 19px "Noto Serif",Georgia,serif;margin:0 0 14px}.lesson-list{display:grid;grid-gap:12px;gap:12px}.lesson-card{display:flex;align-items:center;gap:16px;background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:16px 18px}.lesson-number{color:#c7d4cb;font:700 24px "Noto Serif",Georgia,serif;width:38px}.lesson-copy{flex:1 1}.lesson-copy>span{color:#b08b3b;font-size:9px;letter-spacing:1px;font-weight:800}.lesson-copy h4{margin:5px 0 2px;font-size:15px}.lesson-copy p{margin:0;color:#6c827b;font-size:12px}.lesson-copy small{display:block;color:#9aa7a2;margin-top:8px;font-size:11px}.lesson-open{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:#edf5ef;color:#2d587c}.empty-state,.locked-preview{border:1px dashed #c9d7ce;border-radius:16px;padding:22px;display:flex;gap:14px;align-items:start;color:#5c776f}.locked-preview p{margin:6px 0 0;color:#8b9b95;font-size:13px;line-height:1.55}.lesson-page{min-height:100vh;background:#f7f5ef}.lesson-header{max-width:1180px;margin:auto;padding:25px 5.2%;display:flex;align-items:center;justify-content:space-between}.lesson-header .back-link{margin:0}.lesson-header-progress{display:flex;align-items:center;gap:12px;color:#71847d;font-size:12px;font-weight:700}.lesson-header-progress .bar{width:120px;background:#e1ebe4}.lesson-shell{max-width:1180px;margin:auto;display:grid;grid-template-columns:300px 1fr;grid-gap:70px;gap:70px;padding:45px 5.2% 80px}.lesson-sidebar h1{font:700 43px/1.03 "Noto Serif",Playfair Display,Georgia,serif;margin:18px 0 8px;letter-spacing:-1.5px}.lesson-sidebar h1 em{color:#c39236;font-style:normal}.lesson-sidebar>p{color:#81918b;margin:0;font-size:13px}.momo-tip{background:#173b5c;color:white;border-radius:18px;padding:18px;margin:30px 0 25px;display:grid;grid-template-columns:40px 1fr;grid-gap:10px;gap:10px}.momo-mini{width:38px;height:38px;border-radius:12px;background:#f2c85b;color:#173b5c;display:grid;place-items:center;font:700 21px "Noto Serif",Georgia,serif}.momo-tip b{color:#f2c85b}.momo-tip small{display:block;color:#b6d0c4;font-size:10px;margin-top:3px}.momo-tip p{grid-column:1/-1;color:#d7e6de;font-size:12px;line-height:1.55;margin:5px 0 0}.lesson-sidebar nav{display:grid;grid-gap:5px;gap:5px}.lesson-sidebar nav button{border:0;background:transparent;display:flex;align-items:center;gap:12px;padding:10px;text-align:left;color:#7a8a84;border-radius:10px}.lesson-sidebar nav button.active{background:#fffdf8;color:#173b5c}.lesson-sidebar nav button>span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#e5eee7;color:#578477;font-weight:800;font-size:11px}.lesson-sidebar nav button.active>span{background:#173b5c;color:#f2c85b}.lesson-sidebar nav button div{display:grid;flex:1 1}.lesson-sidebar nav b{font-size:12px}.lesson-sidebar nav small{font-size:10px;color:#a0ada7;margin-top:3px}.lesson-content{max-width:680px}.lesson-content h2{font:700 44px/1.1 "Noto Serif",Playfair Display,Georgia,serif;margin:15px 0 10px;letter-spacing:-1px}.lesson-lead{color:#71847d;line-height:1.7;font-size:15px;max-width:600px}.lesson-block{margin-top:30px}.audio-card,.dialogue-card,.grammar-card,.pronunciation-grid,.quiz-card,.vocab-table{background:#fffdf8;border:1px solid var(--line);border-radius:18px}.audio-card{padding:17px;display:flex;gap:14px;align-items:center}.audio-button{width:42px;height:42px;border:0;border-radius:13px;background:#173b5c;color:#f2c85b;display:grid;place-items:center}.audio-card div{flex:1 1;display:grid;grid-gap:5px;gap:5px}.audio-card span{color:#8b9b95;font-size:12px}.pronunciation-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;margin-top:15px;overflow:hidden}.pronunciation-grid div{padding:20px 17px;border-right:1px solid var(--line);display:grid;grid-gap:7px;gap:7px}.pronunciation-grid div:last-child{border:0}.pronunciation-grid b{font:700 20px "Noto Serif",Georgia,serif}.pronunciation-grid small{color:#879891;line-height:1.4}.complete-section,.record-button{border:0;background:#173b5c;color:white;border-radius:11px;padding:13px 16px;font-weight:800;display:inline-flex;align-items:center;gap:8px;margin-top:18px}.vocab-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-gap:15px;gap:15px;padding:13px 16px;border-bottom:1px solid #edf0ec;font-size:12px}.vocab-row:last-child{border:0}.vocab-row.header{color:#9aa9a2;text-transform:uppercase;font-size:9px;letter-spacing:1px;font-weight:800}.vocab-row small{color:#84958e}.momo-inline{background:#edf5ef;border-radius:13px;padding:13px 15px;display:flex;gap:9px;align-items:start;color:#47766c;font-size:12px;line-height:1.5;margin-top:15px}.grammar-card{padding:23px}.grammar-label,.quiz-top{color:#b08b3b;font-size:10px;letter-spacing:1.5px;font-weight:800}.grammar-card>strong{font:700 29px "Noto Serif",Georgia,serif;display:block;margin:14px 0 8px}.grammar-card p{color:#6d8179;line-height:1.65;font-size:13px}.grammar-example{background:#f1f7f2;border-radius:11px;padding:12px;margin-top:9px;display:flex;justify-content:space-between}.grammar-example span{font-weight:800}.grammar-example small{color:#80918a}.dialogue-card{padding:20px;display:grid;grid-gap:12px;gap:12px}.dialogue-line{display:flex;align-items:center;gap:11px}.dialogue-line>div{flex:1 1;display:grid;grid-gap:4px;gap:4px}.dialogue-line b{font-size:13px}.dialogue-line small{color:#85958e;font-size:11px}.speaker{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#f1d474;font-weight:800;font-size:11px}.speaker.second{background:#d7e9df}.record-button{background:#d16e59}.record-button.recording{animation:pulse 1.2s infinite}.quiz-card{padding:22px}.quiz-top{display:flex;justify-content:space-between}.quiz-card h3{font:700 24px "Noto Serif",Georgia,serif;margin:22px 0}.answers{display:grid;grid-gap:9px;gap:9px}.answer{border:1px solid var(--line);background:white;border-radius:11px;padding:13px;text-align:left;display:flex;align-items:center;gap:10px;color:#3b5c54}.answer:hover{border-color:#5f87a8}.answer.correct{background:#e6f3e7;border-color:#6ca67d}.answer.wrong{background:#fbebe6;border-color:#d48370}.answer-letter{width:23px;height:23px;border-radius:7px;background:#edf5ef;display:grid;place-items:center;font-size:11px;font-weight:800}.answer-feedback{margin-top:15px;padding:12px;border-radius:10px;font-size:12px}.answer-feedback.good{background:#e6f3e7;color:#347152}.answer-feedback.bad{background:#fbebe6;color:#a45c4e}.quiz-footer{justify-content:space-between}.quiz-footer,.secondary-button{display:flex;align-items:center}.secondary-button{border:0;background:transparent;color:#71847d;gap:7px;font-weight:700;padding:12px 0}@keyframes pulse{50%{box-shadow:0 0 0 8px #d16e5933}}@media (max-width:800px){.course-heading{display:block}.course-note{margin-top:25px;width:auto}.course-layout,.lesson-shell{grid-template-columns:1fr;gap:30px}.level-list{overflow:auto}.level-list h2{margin-bottom:10px}.level-select{width:260px;display:inline-flex;margin-right:5px}.lesson-shell{padding-top:20px}.lesson-sidebar nav{display:grid;grid-template-columns:repeat(5,1fr)}.lesson-sidebar nav button{display:grid;justify-items:center;padding:8px 3px;grid-gap:5px;gap:5px}.lesson-sidebar nav button div{text-align:center}.lesson-sidebar nav button svg,.lesson-sidebar nav small{display:none}.lesson-sidebar h1{font-size:38px}.lesson-header-progress span{display:none}}@media (max-width:520px){.content{padding-left:18px;padding-right:18px}.course-heading h1{font-size:52px}.course-layout{gap:18px}.panel-top h2{font-size:25px}.progress-ring{width:62px;height:62px;font-size:10px}.vocab-row{grid-template-columns:1.2fr 1fr}.vocab-row small{display:none}.pronunciation-grid{grid-template-columns:1fr}.pronunciation-grid div{border-right:0;border-bottom:1px solid var(--line)}.lesson-content h2{font-size:36px}.lesson-header{padding-left:18px;padding-right:18px}.lesson-sidebar nav b{font-size:10px}.quiz-footer{flex-direction:column;gap:10px;align-items:stretch}.quiz-footer .secondary-button{justify-content:center}.quiz-footer .cms-primary{width:100%;max-width:100%;white-space:normal;justify-content:center;text-align:center}}:root{--ink:#173b5c;--ink-2:#244e70;--gold:#d2a52e;--red:#a62b2b;--cream:#f7f4ee;--paper:#fffdf8;--mint:#fbefd0;--line:#e5ded2;--muted:#706b65}.sidebar,.topbar{background:#fbfaf6}.audio-button,.brand-mark,.complete-section,.hero,.momo-tip,.nav button.active,.nav button:hover{background:#173b5c}.hero:after{border-color:#315f88}.hero h1 em,.level-select.active .level-code,.momo-face strong,.primary{color:#d2a52e}.primary{background:#d2a52e;color:#173b5c}.back-link,.eyebrow,.eyebrow-dark,.grammar-label,.lesson button,.lesson-copy>span,.lesson-kicker,.lesson-open,.level-copy>span,.quiz-top,.section-head .label,.section-head a,.section-label,.topbar-left b{color:#a62b2b}.answer-letter,.course-note,.lesson-icon,.level-card,.level-select .level-code,.level-tag,.momo-inline,.skill-strip span,.streak{background:#fbefd0}.course-note,.level-card small,.level-tag,.momo-inline,.skill-strip span{color:#7b241f}.bar i,.progress-ring,.stat .tinybar i{border-top-color:#a62b2b}.bar i,.record-button,.stat .tinybar i{background:#a62b2b}.record-button.recording{box-shadow:0 0 0 5px #a62b2b33}.dialogue-audio{width:32px;height:32px;border:1px solid #d7e1e8;border-radius:9px;background:#f4f7fa;color:#2d587c;display:grid;place-items:center;flex:none;transition:transform .16s ease-out,background .16s ease-out,color .16s ease-out}.dialogue-audio:focus-visible,.dialogue-audio:hover{background:#e4edf4;color:#173b5c}.dialogue-audio:active{transform:scale(.96)}.audio-button.is-speaking{background:#a62b2b;color:#fffdf8}.pronunciation-learning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:28px}.pronunciation-card{background:#fffdf8;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 10px 28px rgba(23,59,92,.06)}.pronunciation-card-top{display:flex;align-items:center;justify-content:space-between}.pronunciation-kind{color:#a62b2b;font-size:9px;font-weight:800;letter-spacing:1.3px}.pronunciation-card h3{font:700 28px/1.15 "Noto Serif",Playfair Display,Georgia,serif;margin:18px 0 5px;color:#173b5c}.pronunciation-card>p{margin:0;color:#667c76;font-size:13px}.pronunciation-details{display:grid;grid-gap:8px;gap:8px;margin-top:16px;padding:12px;background:#f7f1df;border-radius:12px;color:#526a66;font-size:12px}.pronunciation-details span{display:flex;gap:7px;align-items:baseline}.pronunciation-details b{min-width:74px;color:#a62b2b;font-size:10px;letter-spacing:.5px;text-transform:uppercase}.pronunciation-details code{font-family:Be Vietnam Pro,sans-serif;color:#173b5c;font-size:16px}.pronunciation-card>small{display:block;margin-top:12px;color:#8b9b95;font-size:11px}.pronunciation-note{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding:14px 16px;border-radius:13px;background:#edf1f6;color:#536a78;font-size:12px;line-height:1.55}.pronunciation-note svg{flex:none;color:#c1932d;margin-top:2px}.pronunciation-card .audio-button{cursor:pointer;transition:transform .16s ease,background .16s ease}.pronunciation-card .audio-button:hover{transform:translateY(-1px)}.pronunciation-card .audio-button:active{transform:scale(.97)}@media (max-width:720px){.pronunciation-learning-grid{grid-template-columns:1fr}}.lesson-card{color:inherit;text-decoration:none}.lesson-card:focus-visible{outline:3px solid var(--gold,#d2a52e);outline-offset:3px}.lesson-open{display:inline-flex;align-items:center;justify-content:center}.lesson-flow-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.lesson-flow-link{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--paper);color:var(--ink)}.lesson-flow-link.next{text-align:right;margin-left:auto}.lesson-flow-link span{display:grid;grid-gap:3px;gap:3px}.lesson-flow-link small{color:var(--muted);font-size:10px}.lesson-flow-link b{font-size:12px}.lesson-flow-link:hover{border-color:var(--gold);background:#fffaf0}@media (max-width:620px){.lesson-flow-nav{flex-direction:column}.lesson-flow-link.next{margin-left:0;justify-content:flex-end}}.public-home{min-height:100vh;background:var(--cream)}.public-nav{max-width:1180px;margin:auto;padding:22px 5.2%;justify-content:space-between;gap:24px}.public-brand,.public-nav{display:flex;align-items:center}.public-brand{gap:10px}.public-brand>span:last-child{display:grid;grid-gap:3px;gap:3px}.public-brand b{font:700 19px "Noto Serif",Georgia,serif}.public-brand small{color:var(--muted);font-size:10px;letter-spacing:.6px}.public-nav nav{display:flex;align-items:center;gap:23px;color:#6b7e78;font-size:13px;font-weight:600}.nav-login,.public-nav nav a:hover{color:var(--ink)}.nav-login{border:1px solid var(--line);padding:10px 15px;border-radius:11px;background:var(--paper)}.public-hero{max-width:1180px;margin:auto;padding:58px 5.2% 82px;display:grid;grid-template-columns:1.12fr .88fr;grid-gap:55px;gap:55px;align-items:center}.public-hero-copy h1{font:700 clamp(45px,6vw,78px)/1.02 "Noto Serif",Georgia,serif;letter-spacing:-3px;margin:18px 0;max-width:700px}.public-hero-copy h1 em,.public-section h2 em{color:#b8892d;font-style:normal}.public-hero-copy p{max-width:650px;color:#647971;font-size:16px;line-height:1.75}.public-actions{display:flex;align-items:center;gap:12px;margin-top:28px;flex-wrap:wrap}.public-secondary{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;padding:14px 18px;font-weight:700}.public-trust{display:flex;gap:17px;flex-wrap:wrap;margin-top:22px;color:#71847d;font-size:11px}.public-trust span{display:flex;align-items:center;gap:5px}.public-trust svg{color:#b8892d}.public-hero-art{min-height:390px;border-radius:30px;background:var(--ink);position:relative;overflow:hidden;box-shadow:0 24px 60px #173b5c22}.flag-block{position:absolute;left:0;right:0;height:34%;opacity:.93}.flag-block.black{top:0;background:#171717}.flag-block.red{top:33%;background:#a52b2b}.flag-block.gold{bottom:0;background:#d5a52f}.momo-hero{position:absolute;left:12%;right:12%;bottom:12%;background:#173b5ce8;border:1px solid #b9c7cf55;border-radius:22px;padding:23px;color:#fffdf8;display:grid;grid-template-columns:44px 1fr;grid-gap:4px 12px;gap:4px 12px}.momo-hero .brand-mark{grid-row:span 2;width:44px;height:44px;background:#f2c85b;color:var(--ink)}.momo-hero b{color:#f2c85b;font-size:19px}.momo-hero small{color:#c5d6d0}.momo-hero p{grid-column:1/-1;margin:14px 0 0;color:#e2ece7;font-size:12px;line-height:1.6}.public-section{max-width:1180px;margin:auto;padding:70px 5.2%}.intro-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:75px;gap:75px;border-top:1px solid var(--line)}.public-section h2{font:700 clamp(31px,4vw,52px)/1.08 "Noto Serif",Georgia,serif;letter-spacing:-1.7px;margin:16px 0}.intro-grid>p{align-self:end;color:#687b74;line-height:1.8;max-width:530px}.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;padding-top:0}.public-pillar{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:25px}.pillar-icon{width:43px;height:43px;display:grid;place-items:center;color:#173b5c;background:#f2d98b;border-radius:13px}.public-pillar h3{margin:21px 0 8px;font:700 20px "Noto Serif",Georgia,serif}.public-pillar p{margin:0;color:#74847e;font-size:13px;line-height:1.65}.pathway{padding-top:32px}.pathway-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.pathway-heading>a{display:flex;align-items:center;gap:7px;color:#2d587c;font-weight:700;font-size:13px}.pathway-list{display:grid;grid-gap:10px;gap:10px;margin-top:24px}.pathway-step{display:flex;align-items:center;gap:18px;padding:19px 20px;border:1px solid var(--line);border-radius:15px;background:var(--paper)}.pathway-step:hover{border-color:var(--gold);transform:translateX(4px)}.pathway-step>span{color:#b8892d;font:700 22px "Noto Serif",Georgia,serif}.pathway-step b{flex:1 1;font-size:14px}.public-cta{max-width:1180px;margin:25px auto 70px;padding:35px 5.2%;background:var(--ink);color:var(--paper);border-radius:25px;display:flex;justify-content:space-between;align-items:center;gap:25px}.public-cta h2{font:700 34px "Noto Serif",Georgia,serif;margin:10px 0}.public-cta p{color:#d0dfda;max-width:590px;line-height:1.6;font-size:13px}.public-footer{max-width:1180px;margin:auto;padding:25px 5.2%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;color:#82918b;font-size:11px}.admin-page,.public-footer .public-brand{color:var(--ink)}.admin-page{min-height:100vh;background:#f2f4f1}.admin-header{height:76px;background:var(--paper);border-bottom:1px solid var(--line);padding:0 4.5%;justify-content:space-between}.admin-header,.admin-header-actions{display:flex;align-items:center;gap:20px}.admin-link,.admin-role{display:flex;align-items:center;gap:7px;font-size:12px}.admin-role{color:#47766c;font-weight:800}.admin-link{color:#2d587c;font-weight:700}.admin-shell{display:grid;grid-template-columns:245px 1fr;min-height:calc(100vh - 76px)}.admin-sidebar{background:var(--ink);color:white;padding:30px 18px}.admin-sidebar-title{display:flex;align-items:center;gap:9px;color:#f2c85b;font-weight:800;padding:0 10px 25px}.admin-sidebar nav{display:grid;grid-gap:4px;gap:4px}.admin-sidebar nav a{color:#c8d8d2;padding:12px 13px;border-radius:10px;font-size:13px}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{background:#315f88;color:white}.admin-security{margin-top:70px;padding:15px;border:1px solid #ffffff25;border-radius:13px;color:#dce8e2}.admin-security svg{color:#f2c85b}.admin-security b{display:block;margin-top:8px;font-size:12px}.admin-security p{font-size:10px;line-height:1.5;color:#acc4bb}.admin-content{padding:42px 4.5% 70px;max-width:1380px;width:100%}.admin-kicker,.admin-panel-heading>div>span{color:#b08b3b;letter-spacing:1.7px;font-weight:800;font-size:10px}.admin-title-row{display:flex;justify-content:space-between;align-items:start;gap:20px;margin:11px 0 30px}.admin-title-row h1{font:700 38px "Noto Serif",Georgia,serif;margin:9px 0}.admin-title-row p{color:#71847d;margin:0;font-size:13px}.admin-outline,.admin-primary{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:11px 14px;font-weight:800;font-size:12px}.admin-primary{border:0;background:var(--ink);color:white}.admin-outline{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:13px;gap:13px;margin-bottom:24px}.admin-metric{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:18px}.admin-metric-icon{width:33px;height:33px;display:grid;place-items:center;background:#e6f0ea;color:#2d587c;border-radius:10px}.admin-metric small{display:block;color:#82918b;font-size:10px;margin-top:16px}.admin-metric strong{display:block;font:700 30px "Noto Serif",Georgia,serif;margin:5px 0}.admin-metric p{margin:0;color:#9aa8a2;font-size:10px}.admin-panel{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:22px;margin-top:18px}.admin-panel-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.admin-panel-heading h2{font:700 23px "Noto Serif",Georgia,serif;margin:8px 0 18px}.admin-table{display:grid;grid-gap:2px;gap:2px}.admin-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #edf0ec}.admin-row-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#eef4ef;color:#2d587c}.admin-row-copy{flex:1 1;display:grid;grid-gap:4px;gap:4px}.admin-row-copy b{font-size:13px}.admin-row-copy small{color:#8a9993;font-size:10px}.admin-status{display:inline-flex;align-items:center;gap:5px;border-radius:8px;padding:6px 8px;font-size:10px;font-weight:800}.admin-status.published{background:#e5f1e9;color:#39756a}.admin-status.review{background:#f8ecd0;color:#a1731e}.admin-row-action{border:0;background:transparent;color:#2d587c;font-weight:800;font-size:11px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.admin-text-link{display:flex;align-items:center;gap:5px;color:#2d587c;font-weight:700;font-size:11px}.admin-panel-description{color:#74847e;font-size:12px;line-height:1.65}.admin-check,.quality-list>div{display:flex;align-items:center;gap:9px;border-top:1px solid #edf0ec;padding:12px 0;font-size:11px}.admin-check svg,.quality-list svg{color:#39756a}.admin-check span,.quality-list span{flex:1 1}.admin-check b,.quality-list b{color:#39756a;font-size:10px}.admin-empty{min-height:135px;border:1px dashed #c8d6ce;border-radius:12px;display:grid;place-items:center;align-content:center;grid-gap:7px;gap:7px;color:#71847d;text-align:center;font-size:11px}.admin-empty svg{color:#b08b3b}.quality-panel{margin-bottom:20px}.quality-list{max-width:720px}@media (max-width:850px){.public-nav nav a:not(.nav-login){display:none}.intro-grid,.public-hero{grid-template-columns:1fr}.public-hero-art{min-height:300px}.admin-grid,.pillar-grid{grid-template-columns:1fr}.public-cta{margin-left:18px;margin-right:18px;flex-direction:column;align-items:start}.admin-shell{grid-template-columns:1fr}.admin-sidebar{padding:15px}.admin-sidebar nav{display:flex;flex-wrap:wrap}.admin-security{display:none}.admin-metrics{grid-template-columns:repeat(2,1fr)}.admin-header-actions .admin-link{display:none}}@media (max-width:620px){.public-nav{padding:18px}.public-hero,.public-section{padding-left:18px;padding-right:18px}.public-hero{padding-top:35px}.public-hero-copy h1{font-size:46px}.public-hero-art{min-height:270px}.pathway-heading,.public-footer{flex-direction:column;align-items:start}.admin-content{padding:28px 18px 55px}.admin-header{padding:0 18px}.admin-metrics{grid-template-columns:1fr 1fr}.admin-title-row{flex-direction:column}.admin-title-row h1{font-size:31px}.admin-row{align-items:start;flex-wrap:wrap}.admin-status{margin-left:43px}.admin-row-action{margin-left:auto}}.public-nav nav a.active{color:var(--ink)}.access-gate-page,.coming-soon-page{min-height:100vh;background:var(--cream)}.access-gate-card{width:min(560px,calc(100% - 36px));margin:0 auto;padding:72px 0;text-align:center}.access-gate-icon{width:58px;height:58px;margin:0 auto 24px;display:grid;place-items:center;border-radius:18px;background:#f2d98b;color:var(--ink)}.access-gate-card .eyebrow-dark{justify-content:center}.access-gate-card h1,.coming-soon-content h1{margin:17px 0 12px;font:700 clamp(34px,5vw,54px)/1.08 "Noto Serif",Georgia,serif;letter-spacing:-1.5px}.access-gate-card p,.coming-soon-content p{margin:0 auto;max-width:520px;color:var(--muted);line-height:1.7;font-size:15px}.access-gate-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}.access-gate-actions .secondary-button{padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink)}.access-gate-card .back-link{justify-content:center;margin-top:30px}.coming-soon-content{max-width:1180px;margin:0 auto;padding:108px 5.2% 140px}.coming-soon-content h1{max-width:620px}.coming-soon-content p{margin:0}.coming-soon-content .back-link{margin-top:30px}@media (max-width:850px){.public-nav nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.public-nav nav a:not(.nav-login){display:inline}}@media (max-width:620px){.public-nav{align-items:flex-start}.public-nav nav{justify-content:flex-start}.access-gate-card{padding:52px 0}.coming-soon-content{padding-top:72px;padding-bottom:90px}}.public-nav{flex-wrap:wrap;row-gap:18px}.public-nav nav{flex-wrap:wrap;justify-content:flex-end;column-gap:16px;row-gap:10px;min-width:0}.public-nav nav a{white-space:nowrap}.lesson-unavailable{max-width:1180px;min-height:340px;margin:0 auto;padding:64px 5.2%;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start}.lesson-unavailable .back-link{margin:24px 0 0}@media (max-width:620px){.public-nav{row-gap:14px}.public-nav nav{justify-content:flex-start}.lesson-unavailable{min-height:280px;padding:48px 18px}}.lesson-guide{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding:16px 17px;border:1px solid #e5d6ab;border-radius:15px;background:#fff9e9;color:#526a66}.lesson-guide b{display:block;color:#173b5c;font-size:13px}.lesson-guide p{margin:5px 0 0;color:#667871;font-size:12px;line-height:1.6}.lesson-guide strong{color:#7b241f}.lesson-stages{display:grid;grid-gap:9px;gap:9px}.lesson-stage{border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden}.lesson-stage-toggle{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:12px;color:var(--ink);text-align:left}.lesson-stage-toggle:hover{background:#fffaf0}.stage-number{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:9px;background:#fbefd0;color:#a62b2b;font:700 14px "Noto Serif",Georgia,serif}.lesson-stage-toggle>div{display:grid;grid-gap:3px;gap:3px;flex:1 1;min-width:0}.lesson-stage-toggle b{font-size:13px}.lesson-stage-steps small,.lesson-stage-toggle small{color:#8b9b95;font-size:10px}.stage-chevron{color:#a62b2b;transition:transform .18s ease-out}.stage-chevron.is-open{transform:rotate(180deg)}.lesson-stage-steps{display:grid;grid-gap:2px;gap:2px;padding:0 7px 7px}.lesson-stage-steps button{border:0;background:transparent;display:flex;align-items:center;gap:8px;padding:9px 7px;border-radius:9px;color:#71847d;text-align:left}.lesson-stage-steps button.active,.lesson-stage-steps button:hover{background:#f7f1df;color:var(--ink)}.lesson-stage-steps button>span{width:18px;flex:none;display:grid;place-items:center;color:#a62b2b}.lesson-stage-steps button>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.lesson-stage-steps button b{font-size:11px;line-height:1.35}.dynamic-text-line{display:grid;grid-gap:5px;gap:5px}.dynamic-text-line>p{margin-bottom:0}.inline-pronunciation{gap:8px 15px;margin:0 0 8px;padding:7px 10px;font-size:11px}.inline-pronunciation b{font-size:9px}.inline-pronunciation code{font-size:14px}@media (max-width:800px){.lesson-stage-toggle{padding:10px 8px}.lesson-stage-steps button b{font-size:10px}.lesson-guide p{font-size:11px}}.lesson-scroll-shell{align-items:start}.lesson-scroll-sidebar{position:-webkit-sticky;position:sticky;top:18px;align-self:start;max-height:calc(100vh - 36px);overflow:auto}.scrollspy-nav{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.scrollspy-nav button{width:100%;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;padding:11px 10px;background:var(--paper);color:var(--ink);text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.scrollspy-nav button.active,.scrollspy-nav button:hover{background:#fff8e8;border-color:var(--gold);transform:translateY(-1px)}.scrollspy-nav button>span{width:27px;height:27px;flex:none;display:grid;place-items:center;border-radius:9px;background:#fbefd0;color:#a62b2b;font:700 14px "Noto Serif",Georgia,serif}.scrollspy-nav button>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.scrollspy-nav button b{font-size:11px;line-height:1.3}.scrollspy-nav button small{color:#8b9b95;font-size:9px}.lesson-scroll-content{min-width:0}.lesson-scroll-content h2{margin-top:0}.lesson-scroll-stage{scroll-margin-top:26px;margin-top:58px;padding-top:4px}.scroll-stage-heading{padding:19px 0 17px;border-top:2px solid var(--ink)}.scroll-stage-heading>span{color:var(--red);font-size:10px;font-weight:800;letter-spacing:1.5px}.scroll-stage-heading h2{margin:8px 0 5px;color:var(--ink);font:700 clamp(28px,4vw,44px)/1.08 "Noto Serif",Georgia,serif;letter-spacing:-.8px}.scroll-stage-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.scroll-subsection{margin:18px 0;padding:21px;border:1px solid var(--line);border-radius:17px;background:var(--paper);box-shadow:0 10px 28px rgba(23,59,92,.045)}.subsection-heading{margin-bottom:13px}.subsection-heading span{color:var(--red);font-size:9px;font-weight:800;letter-spacing:1.2px}.subsection-heading h3{margin:5px 0 0;color:var(--ink);font:700 24px/1.2 "Noto Serif",Georgia,serif}.section-instructions{color:var(--muted);font-size:13px;line-height:1.65}.bilingual-copy{margin-top:15px;padding:14px 15px;border-radius:12px;background:#fbfaf6}.bilingual-copy+.bilingual-copy{margin-top:9px;background:#f4f7fa}.bilingual-copy p{margin:5px 0;color:var(--ink);line-height:1.65;white-space:pre-wrap}.grammar-examples{margin-top:15px;padding:14px 15px;border-radius:12px;background:#f4f7fa}.grammar-example{padding:12px 0;border-top:1px solid rgba(23,59,92,.12)}.grammar-example:first-of-type{padding-top:8px;border-top:0}.grammar-example-line{display:flex;align-items:center;justify-content:space-between;color:var(--ink);font-size:16px;line-height:1.6}.grammar-example-line mark{padding:1px 4px;border-radius:4px;background:#f6d36f;color:#173b5c;font-weight:800}.grammar-example p{color:#5e716b;font-size:13px}.transfer-suggestions{background:#fff8e5}.transfer-subsection .interactive-drill{margin-top:16px}.text-with-pronunciation{margin:6px 0}.text-with-pronunciation p{margin:0}.vocabulary-table-wrap{overflow-x:auto;margin:19px 0;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.vocabulary-table{width:100%;min-width:620px;border-collapse:collapse;font-size:12px}.vocabulary-table th{padding:13px 14px;background:#173b5c;color:#fffdf8;font-size:10px;letter-spacing:.6px;text-align:left}.vocabulary-table td{padding:13px 14px;border-top:1px solid var(--line);color:#526a66;vertical-align:middle}.vocabulary-table tr:hover td{background:#fffaf0}.vocabulary-table td:first-child{color:var(--ink)}.vocabulary-table td strong{display:block;font:700 19px/1.25 "Noto Serif",Georgia,serif}.vocabulary-table td small{display:block;margin-top:3px;color:#8b9b95}.muted-copy{color:#9aa6a1;font-size:11px}.dialogue-bubbles{display:grid;grid-gap:14px;gap:14px}.dialogue-bubble-row{display:flex;gap:9px;align-items:flex-start;max-width:92%}.dialogue-bubble-row.is-learner{margin-left:auto;flex-direction:row-reverse}.dialogue-avatar{width:31px;height:31px;flex:none;display:grid;place-items:center;border-radius:50%;background:#173b5c;color:#f2c85b;font-weight:800}.is-learner .dialogue-avatar{background:#fbefd0;color:#a62b2b}.dialogue-bubble{position:relative;min-width:0;padding:12px 37px 12px 14px;border-radius:15px 15px 15px 4px;background:#edf1f6}.is-learner .dialogue-bubble{border-radius:15px 15px 4px 15px;background:#fff5d9}.dialogue-bubble small{display:block;margin-bottom:4px;color:#a62b2b;font-size:10px;font-weight:800}.dialogue-bubble strong{display:block;color:var(--ink);line-height:1.55}.dialogue-bubble p{margin:7px 0 0;color:#667871;font-size:12px;line-height:1.5}.dialogue-bubble .inline-pronunciation{margin-top:6px}.dialogue-audio{position:absolute;right:9px;top:12px}.inline-pronunciation{display:flex;flex-wrap:wrap;gap:7px 14px;margin:6px 0 0;padding:7px 9px;border-radius:9px;background:#fbefd0;color:#667871;font-size:10px}.inline-pronunciation span{display:flex;gap:5px;align-items:baseline}.inline-pronunciation b{color:#a62b2b;font-size:8px;letter-spacing:.5px;text-transform:uppercase}.inline-pronunciation code{color:#173b5c;font-size:13px}.vietnamese-warning{margin-top:16px;padding:14px 16px;border-left:4px solid #c8792e;border-radius:10px;background:#fff3d6;color:#6b4a27}.vietnamese-warning strong{display:block;color:#9a3a22;font-size:12px}.vietnamese-warning p{margin:7px 0 0;font-size:12px;line-height:1.55}.arrange-answers{display:flex;flex-wrap:wrap}.answer.selected{border-color:var(--gold);background:#fff4ca}.lesson-scroll-stage .quiz-card{margin-top:18px}.lesson-scroll-stage .quiz-footer{justify-content:flex-start;margin-top:20px}@media (max-width:800px){.lesson-scroll-sidebar{position:static;max-height:none;overflow:visible}.scrollspy-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.scrollspy-nav button{padding:9px 8px}.scrollspy-nav button b{font-size:10px}.lesson-scroll-stage{margin-top:40px}.scroll-subsection{padding:16px}.dialogue-bubble-row{max-width:100%}}@media (max-width:520px){.scrollspy-nav{grid-template-columns:1fr}.scroll-stage-heading h2{font-size:30px}.vocabulary-table{min-width:570px}.dialogue-bubble{padding-right:35px}.lesson-guide{padding:13px}}@media (prefers-reduced-motion:reduce){.scrollspy-nav button{transition:none}}.vocabulary-match{margin-top:17px;padding:16px;border:1px solid #dce5df;border-radius:14px;background:#f6faf5}.vocabulary-match-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.vocabulary-match-head h4{margin:4px 0 0;color:var(--ink);font:700 20px/1.2 "Noto Serif",Georgia,serif}.vocabulary-match-head>span{color:#71867d;font-size:11px;font-weight:800;white-space:nowrap}.vocabulary-match-help{margin:9px 0 15px;color:var(--muted);font-size:12px;line-height:1.5}.vocabulary-match-grid{grid-gap:13px;gap:13px}.vocabulary-match-column-title{display:block;margin-bottom:7px;color:#668078;font-size:10px;letter-spacing:.8px;text-transform:uppercase}.vocabulary-match-item{width:100%;min-height:46px;display:flex;align-items:center;justify-content:flex-start;gap:5px;margin:7px 0;padding:10px 11px;border:1px solid #cbdad1;border-radius:10px;background:#fff;color:var(--ink);text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.vocabulary-match-item:focus-visible,.vocabulary-match-item:hover:not(:disabled){border-color:#c8792e;background:#fff5d9;outline:2px solid #f2c85b;outline-offset:1px;transform:translateY(-1px)}.vocabulary-match-item strong{font:700 15px/1.25 "Noto Serif",Georgia,serif}.vocabulary-match-item small{display:block;color:#788b84;font-size:10px;line-height:1.3}.vocabulary-match-item.is-selected{border-color:#173b5c;background:#173b5c;color:#fff}.vocabulary-match-item.is-matched{border-color:#6ba982;background:#e3f3e7;color:#28664f;cursor:default}.vocabulary-match-item:disabled{opacity:1}.vocabulary-match-feedback{margin-top:11px;padding:9px 11px;border-radius:9px;font-size:12px;font-weight:700}.vocabulary-match-feedback.is-wrong{background:#fff0ea;color:#a34633}.vocabulary-match-feedback.is-correct{background:#e3f3e7;color:#28664f}.vocabulary-match-next{margin-top:12px}.summary-blocks{display:grid;grid-gap:12px;gap:12px;margin-top:15px}.summary-block{padding:14px 15px;border-radius:12px;background:#fbfaf6}.summary-block:nth-child(2n){background:#f4f7fa}.summary-block p{margin:6px 0;color:var(--ink);font-size:13px;line-height:1.65}.summary-heading{display:flex;flex-wrap:wrap;gap:6px;align-items:baseline;margin-bottom:6px;color:var(--ink);font-size:13px;line-height:1.6}.summary-heading strong{color:#9a3a22}.summary-action{display:flex!important;align-items:flex-start;gap:8px}.summary-action b{min-width:39px;padding:3px 6px;border-radius:6px;background:#e8f1eb;color:#397765;font-size:10px;line-height:1.2;text-align:center}.summary-action span{flex:1 1}@media (max-width:520px){.vocabulary-match{padding:13px}.vocabulary-match-grid{gap:8px}.vocabulary-match-item{padding:9px 8px}.vocabulary-match-item strong{font-size:13px}.vocabulary-match-item small{font-size:9px}.summary-block{padding:12px}}.quiz-container{display:grid;grid-gap:22px;gap:22px}.quiz-question-card{margin:0}.answer-feedback{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.quiz-explanation{margin:10px 0 0;color:#6b4a27;font-size:12px;line-height:1.55}.ordering-answer-area{margin:16px 0 13px;padding:15px;border:1px dashed #c5a85a;border-radius:14px;background:#fffaf0}.ordering-answer-area>span{display:block;margin-bottom:10px;color:#8c6a29;font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}.ordering-selected{display:flex;min-height:43px;flex-wrap:wrap;align-items:center;gap:8px}.ordering-selected em{color:#9aa6a1;font-size:12px}.ordering-word-bank{display:flex;flex-wrap:wrap;gap:9px;margin:13px 0 17px}.word-pill{border:1px solid #cbd7d3;border-radius:999px;padding:9px 14px;background:#fff;color:#173b5c;font:600 14px/1.1 "Noto Serif",Georgia,serif;box-shadow:0 2px 0 rgba(23,59,92,.07);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.word-pill:focus-visible,.word-pill:hover:not(:disabled){border-color:#c8792e;background:#fff5d9;transform:translateY(-1px);outline:none}.word-pill:active{transform:scale(.97)}.word-pill.used{opacity:.38;cursor:default;box-shadow:none}.word-pill.selected{background:#173b5c;border-color:#173b5c;color:#fff}.ordering-actions{display:flex;flex-wrap:wrap;gap:10px}.ordering-actions button:disabled{opacity:.5;cursor:not-allowed}.inline-reset{margin-left:4px;border:0;border-bottom:1px solid;background:transparent;color:inherit;font-weight:800;cursor:pointer}.quiz-reset-all{justify-self:start}@media (max-width:520px){.ordering-actions>button{flex:1 1 170px;justify-content:center}.word-pill{padding:10px 13px}.ordering-answer-area{padding:13px}}.cms-auth-loading,.cms-auth-wall,.cms-login-page{min-height:100vh;background:var(--cream);display:grid;place-items:center}.cms-auth-wall{text-align:center;padding:30px}.cms-auth-wall h1{font:700 38px "Noto Serif",Georgia,serif;margin:18px 0 8px}.cms-auth-wall p{color:var(--muted);margin:0 0 20px}.admin-portal{min-height:100vh;background:#f4f6f1;color:var(--ink);display:flex}.cms-sidebar{width:270px;flex:none;position:fixed;inset:0 auto 0 0;background:#173b5c;color:#eaf3ed;padding:28px 17px;display:flex;flex-direction:column;z-index:10;transition:width .2s ease}.cms-brand{display:flex;gap:11px;align-items:center;padding:0 10px 30px}.cms-brand .brand-mark,.cms-login-brand .brand-mark{width:40px;height:40px;border-radius:12px;background:#f2c85b;color:#173b5c;display:grid;place-items:center;font:700 22px "Noto Serif",Georgia,serif}.cms-brand b{display:block;font:700 19px "Noto Serif",Georgia,serif}.cms-brand small{display:block;color:#afcbbc;font-size:9px;letter-spacing:1.5px;margin-top:3px}.cms-collapse{position:absolute;top:31px;right:14px;border:1px solid #ffffff26;background:#ffffff12;color:#d9eadf;border-radius:8px;padding:7px;display:grid;place-items:center}.cms-workspace{padding:14px 13px;border:1px solid #ffffff1d;background:#ffffff0e;border-radius:13px;margin-bottom:22px}.cms-kicker,.cms-modal-head span,.cms-panel-head span,.cms-workspace span{display:block;color:#b4d4c2;font-size:9px;font-weight:800;letter-spacing:1.7px}.cms-workspace b{display:block;font-size:13px;margin-top:7px}.cms-workspace small{display:block;color:#a8c1b5;font-size:10px;margin-top:4px}.cms-nav{display:grid;grid-gap:4px;gap:4px}.cms-nav a{display:flex;align-items:center;gap:11px;color:#b7cfc1;padding:12px 13px;border-radius:10px;font-size:12px;font-weight:700}.cms-nav a.active,.cms-nav a:hover{background:#f2c85b;color:#173b5c}.cms-sidebar-foot{display:flex;gap:9px;margin-top:auto;padding:14px 11px;border-top:1px solid #ffffff1d;color:#b6d1c3;font-size:11px;line-height:1.5}.cms-sidebar-foot small{color:#8fac9e}.cms-main{margin-left:270px;width:calc(100% - 270px);min-width:0}.cms-topbar{height:72px;padding:0 4.5%;background:#fbfaf6;border-bottom:1px solid var(--line);justify-content:space-between;gap:20px}.cms-breadcrumb,.cms-topbar{display:flex;align-items:center}.cms-breadcrumb{gap:8px;color:#93a39c;font-size:12px}.cms-breadcrumb b{color:var(--ink)}.cms-top-actions{display:flex;align-items:center;gap:15px}.cms-filterbar label,.cms-search{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);border-radius:10px;padding:9px 12px;color:#9baa9f}.cms-filterbar input,.cms-search input{border:0;outline:0;background:transparent;width:160px;font:inherit;font-size:12px;color:var(--ink)}.cms-avatar,.cms-user-avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#f2c85b;color:var(--ink);font-weight:800;font-size:12px}.cms-logout{border:0;background:transparent;color:#668078;font-size:12px;display:flex;align-items:center;gap:6px}.cms-content{max-width:1280px;margin:auto;padding:40px 4.5% 70px}.cms-kicker{color:#b08b3b}.cms-title-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:11px 0 28px}.cms-title-row h1{font:700 clamp(32px,4vw,48px)/1.03 "Noto Serif",Georgia,serif;letter-spacing:-1.3px;margin:0 0 9px}.cms-title-row p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.cms-outline,.cms-primary,.secondary-button{border:0;border-radius:10px;padding:11px 14px;display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:12px;white-space:nowrap}.cms-primary{background:#f2c85b;color:var(--ink)}.cms-outline,.secondary-button{border:1px solid var(--line);background:#fff;color:#315f78}.cms-button-row{display:flex;gap:9px}.cms-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:13px;gap:13px;margin-bottom:22px}.cms-panel,.cms-stat{background:#fffdf8;border:1px solid var(--line);border-radius:16px}.cms-stat{padding:18px}.cms-stat small{color:#82948d;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.cms-stat strong{display:block;font:700 31px "Noto Serif",Georgia,serif;margin:11px 0 5px}.cms-stat p{margin:0;color:#8b9c95;font-size:11px}.cms-panel-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.cms-panel{padding:21px}.cms-panel-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:16px}.cms-panel-head h2{font:700 22px "Noto Serif",Georgia,serif;margin:6px 0 0}.cms-panel-head button,.cms-text-link{border:0;background:transparent;color:#2d6684;font-weight:800;font-size:11px;display:flex;align-items:center;gap:4px}.cms-list-row{display:flex;align-items:center;gap:11px;padding:12px 0;border-top:1px solid #edf0ec}.cms-list-row>div{flex:1 1;min-width:0}.cms-list-row b,.cms-list-row small{display:block}.cms-list-row b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cms-list-row small{font-size:10px;color:#8d9b95;margin-top:4px}.cms-row-icon{width:30px;height:30px;border-radius:9px;background:#edf5ef;color:#317368;display:grid;place-items:center}.cms-badge,.cms-level-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:7px;font-size:9px;font-weight:800;white-space:nowrap}.cms-badge.success{background:#e2f1e7;color:#397765}.cms-badge.warning{background:#fff0c9;color:#9c7226}.cms-progress{font-size:11px;color:#397765;font-weight:800}.cms-filterbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}.cms-filterbar select,.cms-level-tabs button{border:1px solid var(--line);border-radius:9px;background:white;color:#637a72;padding:10px 12px;font-size:11px}.cms-table-wrap{overflow-x:auto}.cms-table-wrap table{width:100%;min-width:850px;border-collapse:collapse;font-size:11px}.cms-table-wrap th{padding:11px 10px;text-align:left;background:#edf5ef;color:#658078;font-size:9px;letter-spacing:.5px;text-transform:uppercase}.cms-table-wrap td{padding:13px 10px;border-bottom:1px solid #edf0ec;color:#60766e;vertical-align:middle}.cms-table-wrap td b{color:var(--ink)}.cms-table-wrap code{color:#8b6e36;font-size:10px}.cms-level-badge{background:#e8f1eb;color:#32685f}.table-progress{width:54px;height:6px;border-radius:5px;background:#e8efea;display:inline-block;margin-right:7px;vertical-align:middle}.table-progress i{display:block;height:100%;border-radius:inherit;background:#315f88}.cms-empty{padding:30px;text-align:center;color:#8b9b95}.cms-level-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 17px}.cms-level-tabs button.active{background:var(--ink);color:white;border-color:var(--ink)}.cms-modal-backdrop{position:fixed;inset:0;background:#173b5c80;display:grid;place-items:center;padding:20px;z-index:30}.cms-modal{width:min(720px,100%);max-height:90vh;overflow:auto;background:#fffdf8;border-radius:18px;padding:23px;box-shadow:0 24px 60px #173b5c40}.cms-modal-head{display:flex;justify-content:space-between;align-items:start}.cms-modal-head h2{font:700 25px "Noto Serif",Georgia,serif;margin:7px 0 20px}.cms-modal-head>button{border:0;background:transparent;color:#6c8179}.cms-editor-tabs{display:flex;gap:7px;margin-bottom:12px}.cms-editor-tabs button{border:0;background:#edf5ef;padding:9px 12px;border-radius:8px;color:#397765;font-size:11px;font-weight:800}.cms-editor-tabs button.active{background:var(--ink);color:white}.cms-editor-tabs button:disabled{opacity:.5}.cms-modal textarea{width:100%;min-height:300px;resize:vertical;border:1px solid var(--line);border-radius:11px;padding:14px;background:#fbfaf6;color:var(--ink);font:12px/1.6 ui-monospace,SFMono-Regular,monospace;outline-color:#b08b3b}.cms-modal-foot{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.cms-form-error{color:#a34633;background:#fff0ea;border-radius:8px;padding:9px;font-size:11px}.cms-toast{position:-webkit-sticky;position:sticky;top:10px;z-index:4;margin-bottom:16px;padding:12px 14px;border-radius:10px;background:#e4f2e8;color:#397765;font-size:12px;display:flex;justify-content:space-between}.cms-toast button{border:0;background:transparent;color:inherit}.cms-coming{text-align:center;padding:70px 24px}.cms-coming-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:#edf5ef;color:#317368;margin:0 auto 15px}.cms-coming h2{font:700 25px "Noto Serif",Georgia,serif;margin:0 0 8px}.cms-coming p{max-width:480px;margin:auto;color:var(--muted);font-size:13px;line-height:1.6}.cms-login-page{padding:20px}.cms-login-card{width:min(430px,100%);background:#fffdf8;border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:0 20px 50px #173b5c0d}.cms-login-brand{display:flex;align-items:center;gap:10px;margin-bottom:30px}.cms-login-brand b,.cms-login-brand small{display:block}.cms-login-brand b{font:700 18px "Noto Serif",Georgia,serif}.cms-login-brand small{color:var(--muted);font-size:9px;letter-spacing:1px;margin-top:3px}.cms-login-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#edf5ef;color:#317368}.cms-login-card h1{font:700 35px "Noto Serif",Georgia,serif;margin:12px 0 8px}.cms-login-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 22px}.cms-login-card label{display:grid;grid-gap:7px;gap:7px;color:#526f67;font-size:11px;font-weight:800;margin-bottom:12px}.cms-login-card input{border:1px solid var(--line);border-radius:10px;padding:12px;background:white;outline-color:#b08b3b}.cms-login-card .cms-primary{width:100%;justify-content:center;margin-top:5px}.cms-back-link{display:flex;justify-content:center;align-items:center;gap:6px;color:#47766c;font-size:12px;font-weight:800;margin-top:18px}@media (max-width:900px){.cms-sidebar{width:78px;padding:25px 10px}.cms-brand{justify-content:center;padding:0 0 30px}.cms-brand>span:last-child,.cms-nav span,.cms-sidebar-foot span,.cms-workspace{display:none}.cms-collapse{right:8px}.cms-nav a{padding:12px}.cms-nav a,.cms-sidebar-foot{justify-content:center}.cms-main{margin-left:78px;width:calc(100% - 78px)}.cms-panel-grid{grid-template-columns:1fr}.cms-stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.cms-topbar{height:auto;min-height:70px;padding:12px 18px;align-items:flex-start;flex-direction:column}.cms-top-actions{width:100%;justify-content:space-between}.cms-search{flex:1 1}.cms-search input{width:100%}.cms-content{padding:28px 18px 50px}.cms-title-row{align-items:flex-start;flex-direction:column}.cms-title-row h1{font-size:34px}.cms-button-row{width:100%;flex-wrap:wrap}.cms-button-row>*{flex:1 1;justify-content:center}.cms-stat-grid{gap:9px}.cms-stat{padding:14px}.cms-stat strong{font-size:25px}.cms-logout{font-size:0}.cms-logout svg{width:18px;height:18px}}.public-auth-actions{display:flex;align-items:center;gap:8px;margin-left:auto;position:relative}.auth-header-outline,.auth-header-primary{border-radius:999px;padding:9px 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.auth-header-outline{background:transparent;border:1px solid #b8c8c1;color:#173d54}.auth-header-primary{background:#f7c84b;border:1px solid #f7c84b;color:#173d54}.learner-menu-wrap{position:relative}.learner-profile-button{display:flex;align-items:center;gap:8px;border:1px solid #dbe5df;background:#fff;border-radius:999px;padding:5px 10px 5px 5px;color:#173d54;cursor:pointer}.learner-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#173d54;color:#f7c84b;font-weight:800}.learner-profile-text{display:grid;text-align:left;line-height:1.1}.learner-profile-text b{font-size:12px}.learner-profile-text small{font-size:10px;color:#6b8179}.learner-dropdown{position:absolute;z-index:40;right:0;top:calc(100% + 8px);min-width:190px;padding:7px;background:#fff;border:1px solid #dbe5df;border-radius:14px;box-shadow:0 18px 40px rgba(23,61,84,.16)}.learner-dropdown a,.learner-dropdown button{display:flex;align-items:center;gap:8px;width:100%;padding:10px;border:0;background:transparent;color:#173d54;text-decoration:none;text-align:left;font:inherit;font-size:13px;border-radius:9px;cursor:pointer}.learner-dropdown a:hover,.learner-dropdown button:hover{background:#f2f7f3}.auth-modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(12,36,48,.52)}.auth-modal{position:relative;width:min(100%,500px);max-height:calc(100vh - 40px);overflow:auto;padding:30px;background:#fffdf8;border:1px solid #dce8df;border-radius:24px;box-shadow:0 24px 80px rgba(12,36,48,.28)}.auth-modal-close{position:absolute;right:16px;top:16px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #dbe5df;border-radius:50%;background:#fff;color:#173d54;cursor:pointer}.auth-modal-kicker{font-size:11px;letter-spacing:.14em;color:#b0811a;font-weight:800}.auth-modal h2{max-width:390px;margin:8px 35px 18px 0;color:#173d54;font-family:"Noto Serif",Be Vietnam Pro,serif;font-size:28px;line-height:1.15}.auth-lead-message{margin-bottom:16px;padding:12px 14px;border-left:3px solid #f7c84b;background:#fff7dc;color:#52665d;font-size:14px;line-height:1.5}.auth-tabs{display:flex;gap:6px;margin-bottom:18px;padding:4px;background:#edf4ef;border-radius:12px}.auth-tabs button{flex:1 1;border:0;border-radius:9px;padding:10px;background:transparent;color:#61766c;font-weight:800;cursor:pointer}.auth-tabs button.active{background:#fff;color:#173d54;box-shadow:0 2px 8px rgba(23,61,84,.08)}.auth-modal form{display:grid;grid-gap:12px;gap:12px}.auth-modal label{display:grid;grid-gap:6px;gap:6px;color:#355568;font-size:12px;font-weight:800}.auth-modal label small{font-weight:500;color:#73837c}.auth-modal input,.auth-modal select{width:100%;box-sizing:border-box;border:1px solid #cadbd2;border-radius:10px;padding:11px 12px;background:#fff;color:#173d54;font:inherit;font-size:14px}.auth-modal input:focus,.auth-modal select:focus{outline:2px solid rgba(247,200,75,.55);border-color:#c49b2b}.auth-submit{width:100%;margin-top:5px;justify-content:center}.auth-switch-copy{margin:2px 0 0;text-align:center;color:#66786f;font-size:13px}.auth-switch-copy button{border:0;background:none;color:#2a6b76;font:inherit;font-weight:800;cursor:pointer}.auth-error{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#fff0ed;color:#a24436;font-size:13px}@media (max-width:760px){.public-nav{flex-wrap:wrap;gap:10px}.public-nav nav{order:3;width:100%;overflow-x:auto}.public-auth-actions{margin-left:auto}.auth-header-outline,.auth-header-primary{padding:8px 10px;font-size:11px}.learner-profile-text{display:none}.learner-profile-button{padding-right:7px}.auth-modal{padding:25px 18px;border-radius:18px}.auth-modal h2{font-size:24px}}.cms-modal{width:min(920px,100%)}.cms-visual-form{display:grid;grid-gap:16px;gap:16px}.cms-form-section{display:grid;grid-gap:12px;gap:12px}.cms-general-info{padding:18px;background:#f4f6f1;border:1px solid #dfe7e1;border-radius:14px}.cms-form-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid #dfe7e1}.cms-form-section-head>div{display:grid;grid-gap:5px;gap:5px}.cms-form-section-head span{display:block;color:#668078;font-size:9px;font-weight:800;letter-spacing:1.5px}.cms-form-section-head b{color:var(--ink);font-size:16px}.cms-form-section-head small{color:#82938c;font-size:11px}.cms-lesson-meta-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:14px 12px;gap:14px 12px}.cms-form-field{display:block;min-width:0}.cms-form-field>span{display:block;margin-bottom:6px;color:#475569;font-size:12px;font-weight:600;line-height:1.2}.cms-form-field input,.cms-form-field select{width:100%;box-sizing:border-box;min-height:40px;border:1px solid #cbd5e1;border-radius:8px;padding:9px 12px;background:#fff;color:var(--ink);font:inherit;font-size:13px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}.cms-form-field input::placeholder{color:#94a3b8}.cms-form-field input:focus,.cms-form-field select:focus{border-color:#5b8fb2;box-shadow:0 0 0 3px rgba(91,143,178,.16)}.cms-meta-title{grid-column:span 3}.cms-meta-level,.cms-meta-order,.cms-meta-slug{grid-column:span 2}.cms-meta-video{grid-column:span 4}.cms-meta-status-pair{grid-column:span 2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:end;grid-gap:10px;gap:10px}.cms-general-info+.cms-form-section{padding-top:0}@media (max-width:780px){.cms-lesson-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cms-meta-level,.cms-meta-order,.cms-meta-slug,.cms-meta-title{grid-column:auto}.cms-meta-status-pair,.cms-meta-video{grid-column:1/-1}}@media (max-width:520px){.cms-general-info{padding:15px}.cms-form-section-head{align-items:flex-start;flex-direction:column;gap:7px}.cms-lesson-meta-grid{grid-template-columns:1fr}.cms-meta-level,.cms-meta-order,.cms-meta-slug,.cms-meta-status-pair,.cms-meta-title,.cms-meta-video{grid-column:auto}.cms-meta-status-pair{grid-template-columns:repeat(2,minmax(0,1fr))}}.momo-logo{display:block;flex:none;object-fit:cover;object-position:center;border:1px solid #e4e9e3;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(23,59,92,.12)}.momo-logo,.public-brand .momo-logo{width:42px;height:42px}.momo-hero{display:flex;align-items:center;gap:14px}.momo-hero .momo-hero-logo{width:88px;height:88px;border-radius:24px;box-shadow:0 10px 25px rgba(0,0,0,.18)}.momo-hero-copy{display:grid;grid-gap:5px;gap:5px;min-width:0}.momo-hero-copy b{color:#f1c958;font-size:14px;line-height:1.35}.momo-hero-copy small{color:#e5f0ea;font-size:12px;line-height:1.45}.momo-tip .momo-mini-logo{width:38px;height:38px;border-radius:12px}.lesson-guide-logo{width:36px;height:36px;border-radius:11px}.cms-brand .momo-logo{width:40px;height:40px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.16)}.cms-auth-wall>.momo-logo{width:64px;height:64px;border-radius:18px}.cms-login-brand .momo-logo{width:40px;height:40px;border-radius:12px}@media (max-width:620px){.public-brand .momo-logo{width:38px;height:38px}.momo-hero .momo-hero-logo{width:72px;height:72px}.momo-hero-copy b{font-size:12px}.momo-hero-copy small{font-size:11px}}.cms-brand small{letter-spacing:.1px;line-height:1.25;max-width:145px}.cms-login-brand small{letter-spacing:.1px;line-height:1.3}.course-note-head{display:flex;align-items:center;gap:10px}.course-note-head .course-note-avatar{width:36px;height:36px;border-radius:12px;object-fit:cover;flex:none}.course-note-head b{line-height:1.25}.audio-sentence{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:7px 0;background:#f3f8f3;border-radius:11px}.audio-sentence-copy{min-width:0;flex:1 1;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.audio-sentence-copy strong{color:var(--ink);font-size:14px;line-height:1.5}.audio-sentence-copy span{color:#6c827b;font-size:11px}.audio-sentence-copy code{color:#315f88;font-size:12px}.small-audio-button{width:32px;height:32px;flex:none;border:0;border-radius:9px;background:var(--ink);color:#f2c85b;display:grid;place-items:center}.small-audio-button.is-speaking{background:#2d806c}.audio-paragraph{margin-top:12px}.listen-block-button{border:0;border-radius:10px;padding:10px 13px;background:#e8f1eb;color:#245b70;font-weight:800;display:inline-flex;align-items:center;gap:7px}.audio-paragraph-lines{margin-top:10px}.practice-panel{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fffdf8}.practice-panel-head>span{color:#b08b3b;font-size:10px;letter-spacing:1.4px;font-weight:800;text-transform:uppercase}.practice-panel-head h3{margin:8px 0 12px;font:700 20px "Noto Serif",Georgia,serif}.practice-panel textarea{display:block;width:100%;resize:vertical;border:1px solid #cddbd1;border-radius:10px;padding:11px;margin-top:13px;background:#fff;color:var(--ink);font:inherit}.practice-submit{margin-top:10px;display:inline-flex;align-items:center;gap:7px;border:0}.listen-rounds,.record-controls{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.record-button{margin-top:0}.record-controls audio{max-width:100%;height:34px}.practice-result{margin-top:14px;padding:13px;border-radius:11px;background:#edf5ef;color:#3d6259;display:grid;grid-gap:8px;gap:8px}.practice-result strong{color:var(--ink);font-size:12px}.practice-result p,.practice-result small{margin:0;line-height:1.55;font-size:12px}@media (max-width:620px){.audio-sentence-copy{display:grid;grid-gap:4px;gap:4px}.practice-panel{padding:14px}.listen-rounds .secondary-button{width:100%;justify-content:center}}.german-phrase{display:flex;align-items:flex-start;gap:12px;padding:11px 12px;margin:7px 0;background:#f3f8f3;border-radius:11px}.german-phrase-main{flex:1 1;min-width:0}.german-phrase-main strong{display:block;color:var(--ink);font-size:14px;line-height:1.5}.german-phrase-meta{display:flex;flex-wrap:wrap;gap:5px 14px;margin-top:4px;color:#5a7c74;font-size:11px}.german-phrase-meta code{color:#315f88;font-size:12px}.german-phrase-meta i{color:#8a6a43}.german-phrase-main p{margin:5px 0 0;color:#526b65;font-size:12px}.german-phrase .small-audio-button{flex:none}.vocabulary-table .german-phrase{margin:-2px;padding:5px;background:transparent}.vocabulary-table .german-phrase-main p,.vocabulary-table .german-phrase-main strong{display:none}.interactive-drill,.listening-practice,.speaking-practice,.structured-practice{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fffdf8}.interactive-drill h4,.listening-practice h4,.speaking-practice h4,.structured-practice h4{margin:14px 0 10px;color:var(--ink);font:700 18px "Noto Serif",Georgia,serif}.practice-question{padding:12px 0;border-top:1px solid #e7eee8}.listening-practice label,.practice-question label{display:block;font-weight:700;color:#315f59;font-size:13px;margin-bottom:6px}.interactive-drill textarea,.listening-practice input,.practice-question textarea{width:100%;border:1px solid #cddbd1;border-radius:9px;padding:10px;background:white;color:var(--ink);font:inherit}.listening-practice label{margin-top:10px}.listening-practice input{margin-top:5px}.paragraph-translation{margin:12px 0 0;padding:11px;color:#526b65;border-radius:9px;font-size:13px;line-height:1.55}.common-mistakes{margin-top:16px;padding:14px 16px;border-radius:12px;background:#fff4df;border-left:4px solid #d59b36;color:#674d24}.common-mistakes strong{display:block;color:#7a551d}.common-mistakes p{margin:7px 0 0;font-size:13px;line-height:1.45}.reading-keywords{margin-top:14px;padding:12px;border:1px solid #e5eee7;border-radius:12px;background:#f8fbf8}.reading-keywords>strong{display:block;margin-bottom:8px;color:#315f59;font-size:13px}.exam-page{min-height:100vh;background:#f8f6ef;color:#173d54}.exam-page-content{max-width:1080px;padding-top:28px;padding-bottom:72px}.exam-page-header{display:grid;grid-gap:22px;gap:22px;align-items:end;margin:34px 0}.exam-kicker{display:inline-block;color:#9a5f36;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.exam-page-header h1,.exam-runner-top h1{margin:8px 0;color:#173d54;font-family:"Noto Serif",Be Vietnam Pro,serif;font-size:clamp(32px,6vw,58px);line-height:1.02;letter-spacing:-.02em}.exam-page-header p{max-width:650px;color:#63746b;line-height:1.6}.exam-momo-note{display:grid;grid-gap:5px;gap:5px;padding:18px 20px;border:1px solid #f1dfae;border-radius:18px;background:#fff4cf;color:#6b5a2a}.exam-momo-note span{font-size:13px;line-height:1.5}.exam-list{display:grid;grid-gap:16px;gap:16px}.exam-list-card{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px;border:1px solid #dfe7e1;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(23,61,84,.06)}.exam-list-card-main{min-width:0}.exam-level-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eaf3ed;color:#2d6c57;font-size:11px;font-weight:800}.exam-list-card h2{margin:10px 0 4px;color:#173d54;font-size:22px}.exam-list-card p{margin:0;color:#6a7b73}.exam-meta{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:16px;color:#557067;font-size:12px}.exam-meta span{display:inline-flex;align-items:center;gap:5px}.exam-primary-button,.exam-secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:999px;padding:11px 16px;text-decoration:none;font:inherit;font-weight:800;cursor:pointer}.exam-primary-button{border:1px solid #f7c84b;background:#f7c84b;color:#173d54}.exam-secondary-button{border:1px solid #cbdcd3;background:#fff;color:#173d54}.exam-empty{margin-top:34px;padding:32px;border:1px dashed #cbdcd3;border-radius:20px;background:#fff;text-align:center}.exam-empty h1,.exam-empty h2{margin-top:0;color:#173d54}.exam-empty p{color:#65766e;line-height:1.6}.exam-empty .exam-secondary-button{margin-top:12px}.exam-runner{max-width:820px;margin:34px auto 0}.exam-instructions{margin-bottom:18px;padding:16px 18px;border:1px solid #ead9a6;border-radius:16px;background:#fff8dc;color:#5d684e;line-height:1.55}.exam-instructions strong{display:block;margin-bottom:5px;color:#173d54}.exam-instructions p{margin:4px 0}.exam-stimulus{margin-top:18px;padding:16px;border-left:4px solid #2c7b69;border-radius:12px;background:#edf7f0;color:#35564b}.exam-stimulus p{margin:6px 0;color:#173d54;font-weight:700;line-height:1.5}.exam-stimulus small{display:block;color:#65766e;line-height:1.45}.exam-stimulus .exam-secondary-button{margin-top:12px;padding:8px 12px;font-size:12px}.exam-missing-stimulus{margin-top:18px!important;padding:12px;border-radius:10px;background:#fff0ed;color:#a24436!important}.exam-runner-top{display:flex;justify-content:space-between;gap:18px;align-items:start}.exam-runner-top h1{font-size:clamp(28px,5vw,44px)}.exam-runner-top p{margin:8px 0;color:#66786f}.exam-timer{min-width:92px;padding:12px 14px;border:1px solid #dbe5df;border-radius:14px;background:#fff;text-align:center;color:#173d54;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.exam-timer.is-warning{border-color:#e5a69a;background:#fff0ed;color:#a24436}.exam-progress{height:7px;margin:22px 0 18px;overflow:hidden;border-radius:999px;background:#e4ece7}.exam-progress span{display:block;height:100%;border-radius:inherit;background:#2c7b69;transition:width .2s ease}.exam-section-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.exam-section-tabs button{flex:1 1;min-width:130px;padding:10px 12px;border:1px solid #dbe5df;border-radius:12px;background:#fff;color:#61746b;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.exam-section-tabs button.active{border-color:#2c7b69;background:#eaf3ed;color:#1f624f}.exam-section-tabs small{display:block;margin-top:3px;font-size:10px;font-weight:600}.exam-teil-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.exam-teil-groups button{display:grid;grid-gap:4px;gap:4px;padding:13px 14px;border:1px solid #dbe5df;border-radius:14px;background:#fff;color:#173d54;text-align:left;font:inherit;cursor:pointer}.exam-teil-groups button.active,.exam-teil-groups button:hover{border-color:#2c7b69;background:#edf7f0}.exam-teil-groups button span{font-size:12px;font-weight:900;line-height:1.35}.exam-teil-groups button small{color:#65766e;font-size:10px;line-height:1.35}.exam-teil-groups button b{color:#2c7b69;font-size:11px}.exam-teil-heading{display:grid;grid-gap:3px;gap:3px;margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid #edf1ee}.exam-teil-heading span{color:#9a5f36;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.exam-teil-heading small{color:#65766e;font-size:12px}.exam-question-card{margin-top:18px;padding:24px;border:1px solid #dfe7e1;border-radius:20px;background:#fff;box-shadow:0 14px 34px rgba(23,61,84,.07)}.exam-question-number{color:#9a5f36;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.exam-question-card h2{margin:12px 0 7px;color:#173d54;font-family:"Noto Serif",Be Vietnam Pro,serif;font-size:clamp(22px,4vw,32px);line-height:1.2;letter-spacing:-.01em}.exam-question-card>p{margin:0;color:#6a7b73}.exam-options{display:grid;grid-gap:10px;gap:10px;margin-top:24px}.exam-options button{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:1px solid #dbe5df;border-radius:13px;background:#fff;color:#173d54;text-align:left;font:inherit;cursor:pointer;transition:border-color .15s,background .15s}.exam-options button.selected,.exam-options button:hover{border-color:#2c7b69;background:#edf7f0}.exam-options button>span{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#edf4ef;color:#2c7b69;font-size:12px;font-weight:900}.exam-options button.selected>span{background:#2c7b69;color:#fff}.exam-runner-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.exam-runner-actions>span{color:#65766e;font-size:12px;text-align:center}.exam-runner-actions button:disabled{cursor:not-allowed;opacity:.45}.exam-result{max-width:680px;margin:44px auto 0;padding:30px;border:1px solid #dfe7e1;border-radius:24px;background:#fff;text-align:center;box-shadow:0 14px 34px rgba(23,61,84,.07)}.exam-result-badge{display:inline-flex;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:900}.exam-result-badge.is-pass{background:#e5f4ea;color:#267052}.exam-result-badge.is-review{background:#fff4cf;color:#87651d}.exam-result h1{margin:16px 0 8px;color:#173d54;font-family:"Noto Serif",Be Vietnam Pro,serif;font-size:clamp(28px,5vw,42px);letter-spacing:-.01em}.exam-result-lead,.exam-unanswered{color:#66786f;line-height:1.5}.exam-score-card{display:grid;grid-gap:2px;gap:2px;margin:24px auto;padding:18px;border-radius:18px;background:#edf7f0}.exam-score-card strong{color:#1f624f;font-size:48px;line-height:1}.exam-score-card span{color:#557067;font-weight:800}.exam-section-results{display:grid;grid-gap:8px;gap:8px;margin:20px 0;text-align:left}.exam-section-results div{display:flex;justify-content:space-between;padding:11px 13px;border-bottom:1px solid #edf1ee;color:#52665d}.exam-section-results b{color:#173d54}.exam-result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}@media (min-width:760px){.exam-page-header{grid-template-columns:1fr 300px}.exam-runner-actions{margin-bottom:24px}}@media (max-width:600px){.exam-page-content{padding-top:20px}.exam-list-card{display:grid}.exam-list-card .exam-primary-button{width:100%}.exam-runner-top{align-items:start}.exam-timer{min-width:78px;font-size:14px}.exam-teil-groups{grid-template-columns:1fr}.exam-question-card{padding:20px}.exam-runner-actions{flex-wrap:wrap}.exam-runner-actions>span{order:-1;width:100%}.exam-runner-actions button{flex:1 1}.exam-result{padding:22px 16px}}.exam-writing-form,.exam-writing-free-text{display:grid;grid-gap:16px;gap:16px;margin-top:24px}.exam-writing-fields{display:grid;grid-gap:12px;gap:12px}.exam-writing-fields label{display:grid;grid-gap:5px;gap:5px;color:#315f59;font-size:13px;font-weight:800}.exam-writing-fields label small{color:#65766e;font-size:11px;font-weight:600}.exam-writing-fields input,.exam-writing-free-text textarea{width:100%;border:1px solid #cddbd1;border-radius:10px;padding:11px 12px;background:#fff;color:#173d54;font:inherit}.exam-writing-fields input:focus,.exam-writing-free-text textarea:focus{outline:2px solid #b9dcca;outline-offset:1px}.exam-writing-hints{padding:13px 15px;border-radius:12px;background:#fff8dc;color:#6b5a2a;font-size:13px;line-height:1.5}.exam-writing-hints strong{color:#5d4c20}.exam-writing-hints ul{margin:7px 0 0;padding-left:20px}.exam-model-answer{padding:14px 16px;border-left:4px solid #2c7b69;border-radius:10px;background:#edf7f0;color:#31564b;font-size:13px;line-height:1.5}.exam-model-answer strong{display:block;margin-bottom:7px;color:#1f624f}.exam-model-answer p{margin:5px 0}.learn-login-page,.learn-page{min-height:100vh;background:var(--cream);color:var(--ink)}.learn-topbar{height:76px;justify-content:space-between;padding:0 max(5.2%,24px);border-bottom:1px solid var(--line);background:#fbfaf6e8}.learn-brand,.learn-topbar{display:flex;align-items:center}.learn-brand{gap:10px}.learn-brand>span:last-child{display:grid;grid-gap:2px;gap:2px}.learn-brand b{font:700 18px "Noto Serif",Georgia,serif}.learn-brand small{color:var(--muted);font-size:10px;letter-spacing:.5px}.learn-brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--ink);color:#f3cf61;font:700 21px "Noto Serif",Georgia,serif}.learn-top-actions{display:flex;align-items:center;gap:18px}.learn-course-link{color:#2d587c;font-size:13px;font-weight:700}.learn-signout{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;padding:10px 13px;font-size:12px;font-weight:700}.learn-content{max-width:1120px;margin:auto;padding:38px 5.2% 70px}.learn-hero{background:var(--ink);border-radius:26px;padding:38px 40px;color:var(--paper);display:grid;grid-template-columns:1fr 230px;grid-gap:28px;gap:28px;align-items:center;overflow:hidden}.learn-eyebrow{display:flex;align-items:center;gap:7px;color:#e4bd52;font-size:10px;letter-spacing:1.8px;font-weight:800}.learn-hero h1{margin:15px 0 12px;font:700 clamp(36px,5vw,58px)/1.02 "Noto Serif",Georgia,serif;letter-spacing:-2px}.learn-hero h1 em{color:#f1c958;font-style:normal}.learn-hero p{margin:0;color:#d5e3dc;line-height:1.65;font-size:14px}.learn-hero-card{background:#214765;border:1px solid #668097;border-radius:18px;padding:20px}.learn-hero-card span,.learn-profile-strip span{display:block;color:#9bb7aa;font-size:9px;letter-spacing:1.4px;font-weight:800;text-transform:uppercase}.learn-hero-card strong{display:block;margin:10px 0;color:#f4cb58;font:700 42px "Noto Serif",Georgia,serif}.learn-hero-card small{display:block;margin-top:10px;color:#d5e3dc;font-size:11px}.learn-progress-bar{height:7px;overflow:hidden;border-radius:8px;background:#dfe9e1}.learn-progress-bar i{display:block;height:100%;border-radius:8px;background:#d2a52e}.learn-profile-strip{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-gap:20px;gap:20px;align-items:center;margin:22px 0;padding:18px 20px;background:var(--paper);border:1px solid var(--line);border-radius:18px}.learn-profile-strip>div:first-child{display:flex;align-items:center;gap:11px}.learn-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#dcece3;color:#2d587c;font-weight:800}.learn-profile-strip b{display:block;font-size:14px}.learn-profile-strip small{color:var(--muted);font-size:11px}.learn-profile-strip strong{display:block;margin-top:6px;font-size:13px}.learn-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.learn-stat{min-height:145px;padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:17px}.learn-stat-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#fbefd0;color:#7b241f}.learn-stat small{display:block;margin-top:15px;color:#84938d;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.learn-stat strong{display:block;margin:6px 0;font:700 24px "Noto Serif",Georgia,serif}.learn-stat p{min-height:30px;margin:0;color:var(--muted);font-size:11px;line-height:1.4}.learn-empty-prominent{margin:22px 0;padding:30px;background:#fff8dc;border-color:#ead9a6;color:#765c26;text-align:center}.learn-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.learn-progress-card{padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:17px}.learn-progress-card-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.learn-progress-card-top b,.learn-progress-card-top small{display:block}.learn-progress-card-top b{color:var(--ink);font-size:14px}.learn-progress-card-top small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}.learn-progress-card-top strong{color:#2d587c;font:700 22px "Noto Serif",Georgia,serif;white-space:nowrap}.learn-progress-card .learn-progress-bar{margin-top:15px}.learn-progress-card p{margin:8px 0 0;color:var(--muted);font-size:11px}.learn-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:38px 0 15px}.learn-section-head span{color:#a62b2b;font-size:10px;letter-spacing:1.7px;font-weight:800}.learn-section-head h2{margin:5px 0 0;font:700 25px "Noto Serif",Georgia,serif}.learn-section-head.compact{margin:0 0 13px}.learn-primary{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:11px;padding:12px 15px;background:#173b5c;color:#fffdf8;font-size:12px;font-weight:800}.learn-continue-card{display:grid;grid-template-columns:55px 1fr 150px;align-items:center;grid-gap:16px;gap:16px;padding:20px;background:#edf5ef;border:1px solid #d5e5db;border-radius:18px}.learn-continue-number{color:#b08b3b;font:700 29px "Noto Serif",Georgia,serif}.learn-continue-card>div:nth-child(2)>span{color:#a62b2b;font-size:9px;letter-spacing:1px;font-weight:800}.learn-continue-card h3{margin:6px 0 2px;font-size:16px}.learn-continue-card p{margin:0;color:var(--muted);font-size:12px}.learn-continue-progress strong{display:block;margin-bottom:7px;color:#2d587c;font-size:13px;text-align:right}.learn-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px;margin-top:38px}.learn-list{display:grid;grid-gap:9px;gap:9px}.learn-lesson-row{display:flex;align-items:center;gap:12px;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:14px}.learn-lesson-row:hover{border-color:#b9cfc2;transform:translateY(-1px)}.learn-lesson-number{color:#c7d4cb;font:700 20px "Noto Serif",Georgia,serif}.learn-lesson-row>span:nth-child(2){flex:1 1;min-width:0}.learn-lesson-row b,.learn-lesson-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn-lesson-row b{font-size:13px}.learn-lesson-row small{margin-top:3px;color:var(--muted);font-size:10px}.learn-lesson-status{color:#2d587c;font-size:10px;font-weight:800;white-space:nowrap}.learn-empty,.learn-loading{padding:22px;border:1px dashed #c9d7ce;border-radius:15px;color:var(--muted);font-size:13px}.learn-footnote{display:flex;align-items:center;gap:7px;justify-content:center;margin:35px 0 0;color:#8a9992;font-size:11px}.learn-error{margin:16px 0;padding:12px 14px;border:1px solid #edc1b8;border-radius:11px;background:#fff1ed;color:#9a3125;font-size:13px;line-height:1.5}.learn-login-page{display:grid;place-items:center;padding:30px 18px}.learn-login-card{width:min(100%,450px);padding:35px;background:var(--paper);border:1px solid var(--line);border-radius:23px;box-shadow:0 20px 50px #173b5c0d}.learn-login-card>.learn-brand{margin-bottom:42px}.learn-login-card h1{margin:17px 0 9px;font:700 31px/1.1 "Noto Serif",Georgia,serif}.learn-login-card>p{color:var(--muted);line-height:1.6;font-size:13px}.learn-form{display:grid;grid-gap:17px;gap:17px;margin-top:25px}.learn-form label{display:grid;grid-gap:7px;gap:7px;color:#44655f;font-size:12px;font-weight:700}.learn-form input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px 13px;color:var(--ink);outline:0;font:inherit;font-size:13px}.learn-form input:focus{border-color:#6f9d88;box-shadow:0 0 0 3px #dcece3}.learn-form .learn-primary{justify-content:center;margin-top:3px;padding:13px;cursor:pointer}.learn-form .learn-primary:disabled{opacity:.6;cursor:wait}.learn-back-link{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:22px;color:#2d587c;font-size:12px;font-weight:700}.learn-loading{margin:15vh auto;max-width:420px;text-align:center}@media (max-width:760px){.learn-hero{padding:28px 25px}.learn-grid,.learn-hero,.learn-profile-strip,.learn-progress-grid{grid-template-columns:1fr}.learn-profile-strip{align-items:start}.learn-stats{grid-template-columns:repeat(2,1fr)}.learn-continue-card{grid-template-columns:42px 1fr}.learn-continue-progress{grid-column:2}.learn-topbar{padding:0 18px}.learn-course-link{display:none}}@media (max-width:480px){.learn-content{padding:24px 18px 50px}.learn-hero h1{font-size:39px}.learn-stats{gap:9px}.learn-stat{padding:14px}.learn-stat strong{font-size:20px}.learn-lesson-status{display:none}.learn-login-card{padding:27px 22px}}.profile-edit-modal{max-width:520px}.profile-edit-note{margin:-8px 0 18px;color:#66786f;font-size:14px;line-height:1.5}.profile-edit-level{margin:4px 0 0;color:#66786f;font-size:12px;line-height:1.5}.profile-edit-level strong{color:#173d54}.profile-edit-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.profile-edit-actions .auth-submit{width:auto;min-width:150px;margin-top:0}.profile-edit-cancel{border:1px solid #cadbd2;border-radius:10px;padding:11px 18px;background:#fff;color:#355568;font:inherit;font-weight:800;cursor:pointer}.profile-edit-cancel:hover{background:#f2f7f3}.profile-edit-actions .auth-submit:disabled,.profile-edit-cancel:disabled{cursor:not-allowed;opacity:.65}.auth-success-message{margin:12px 0;padding:11px 13px;border:1px solid #b8d8c5;border-radius:10px;background:#edf8f0;color:#28634e;font-size:13px;line-height:1.5}.speaking-page{max-width:980px}.speaking-back{justify-content:flex-start;margin:0 0 22px}.speaking-hero{padding:30px 34px;background:#edf5ef;border:1px solid #d5e5db;border-radius:22px}.speaking-hero h1{margin:10px 0 8px;font:700 42px/1.1 "Noto Serif",Georgia,serif;color:var(--ink)}.speaking-hero p{max-width:680px;margin:0;color:var(--muted);line-height:1.6}.speaking-hero small{display:block;margin-top:16px;color:#557466;font-size:12px}.speaking-account{margin:22px 0 12px;color:var(--muted);font-size:13px}.speaking-list{display:grid;grid-gap:18px;gap:18px}.speaking-recorder{padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 30px #173b5c08}.speaking-recorder-top{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.speaking-label{color:#a62b2b;font-size:10px;letter-spacing:1.5px;font-weight:800}.speaking-recorder h3{margin:8px 0 4px;font:700 22px/1.25 "Noto Serif",Georgia,serif}.speaking-recorder-top p{margin:0;color:var(--muted);font-size:13px}.speaking-timer{padding:8px 10px;border-radius:10px;background:#edf5ef;color:#2d587c;font-size:12px;font-weight:800;white-space:nowrap}.speaking-timer.is-warning{background:#fff0df;color:#a64c22}.speaking-prompt{margin:17px 0;padding:14px 16px;border-left:3px solid #6f9d88;background:#f5faf6;border-radius:0 12px 12px 0}.speaking-prompt strong{display:block;color:#44655f;font-size:11px}.speaking-prompt p{margin:5px 0 0;color:var(--ink);line-height:1.5}.speaking-prompt small{display:block;margin-top:5px;color:var(--muted)}.speaking-audio{display:block;width:100%;margin:18px 0 12px}.speaking-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.learn-secondary{display:inline-flex;align-items:center;gap:7px;border:1px solid #b9cfc2;border-radius:11px;padding:11px 14px;background:transparent;color:#2d587c;font-size:12px;font-weight:800;cursor:pointer}.speaking-stop{background:#9b3028}.speaking-uploading{display:inline-flex;align-items:center;gap:7px;color:#557466;font-size:12px}.speaking-warning{margin:10px 0;color:#a64c22;font-size:12px;font-weight:700}.speaking-success{display:flex;align-items:flex-start;gap:8px;margin:14px 0;padding:11px 13px;border:1px solid #b8d8c5;border-radius:10px;background:#edf8f0;color:#28634e;font-size:12px;line-height:1.5}.speaking-empty{margin-top:18px}.learn-course-link{white-space:nowrap}@media (max-width:760px){.speaking-hero{padding:24px 20px}.speaking-hero h1{font-size:34px}.speaking-recorder-top{display:block}.speaking-timer{display:inline-block;margin-top:14px}.speaking-actions .learn-primary,.speaking-actions .learn-secondary{justify-content:center;flex:1 1}.learn-top-actions{gap:8px}.learn-course-link{font-size:10px}}.cms-inline-actions{display:flex;align-items:center;gap:10px;white-space:nowrap}.cms-inline-actions button{font:inherit}.cms-danger-link{color:#a24436}.cms-danger-link:hover{color:#7d2f26;text-decoration:underline}.speaking-consent{margin:18px 0;padding:16px 18px;border:1px solid #ead5a7;border-radius:14px;background:#fff9e9}.speaking-consent strong{display:block;color:#7d5a22;font-size:13px}.speaking-consent p{margin:7px 0 12px;color:var(--muted);font-size:12px;line-height:1.55}.speaking-consent label{display:flex;align-items:flex-start;gap:8px;color:var(--ink);font-size:12px;line-height:1.45}.speaking-consent input{margin-top:2px;accent-color:#173b5c}.speaking-consent button{margin-top:13px}.speaking-consent button:disabled{cursor:not-allowed;opacity:.5}.speaking-review-list{display:grid;grid-gap:16px;gap:16px}.speaking-review-card{padding:20px}.speaking-review-meta{display:flex;gap:12px;flex-wrap:wrap;color:#83928c;font-size:11px;margin-bottom:16px}.speaking-review-meta span:first-child{color:#2f6083;font-weight:800}.speaking-review-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(300px,1.2fr);grid-gap:18px;gap:18px}.speaking-review-audio{background:#f1f7f2;border-radius:13px;padding:14px;display:grid;grid-gap:12px;gap:12px;align-content:center}.speaking-review-audio audio{width:100%}.speaking-review-audio small{color:#70827c;display:flex;align-items:center;gap:6px}.speaking-review-transcript{border:1px solid var(--line);border-radius:13px;padding:14px}.speaking-review-transcript>span{color:#b08b3b;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;font-weight:800}.speaking-review-transcript p{font-size:16px;line-height:1.65;margin:12px 0 0;color:#244e70}.speaking-review-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid #edf0ec}.speaking-review-actions>span{font-size:12px;color:#70827c;font-weight:700;margin-right:4px}.speaking-rating{border:1px solid var(--line);background:#fffdf8;color:#526d68;border-radius:10px;padding:9px 12px;display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;transition:.16s}.speaking-rating:hover{border-color:#9bb9a8;transform:translateY(-1px)}.speaking-rating.selected.correct{background:#e7f5eb;border-color:#8fc5a0;color:#28634e}.speaking-rating.selected.minor_error{background:#fff5d9;border-color:#e4c66c;color:#85631f}.speaking-rating.selected.meaning_error{background:#fce9e4;border-color:#dfa092;color:#914c40}.rating-dot{width:13px;height:13px;border:1px solid #9bb0a7;border-radius:50%}.speaking-review-empty{padding:26px;display:flex;align-items:center;gap:9px;color:#70827c}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(max-width:700px){.speaking-review-grid{grid-template-columns:1fr}.speaking-review-card{padding:15px}.speaking-review-actions{align-items:flex-start;flex-direction:column}.speaking-rating{width:100%;justify-content:center}}.exam-stimulus p,.exam-stimulus small,.speaking-prompt p{white-space:pre-line}.exam-ai-card{margin-top:14px;padding:14px 16px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:rgba(0,0,0,.03)}.exam-ai-score{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.exam-ai-score strong{font-size:1.6rem}.exam-ai-score span{font-size:.9rem;opacity:.75}.exam-ai-criteria{display:flex;gap:6px 16px;flex-wrap:wrap;margin:10px 0 0;padding:0;list-style:none;font-size:.92rem}.exam-ai-block{margin-top:10px}.exam-ai-block ul{margin:6px 0 0;padding-left:20px}.exam-ai-wrong{color:#b42318;text-decoration:line-through}.exam-ai-right{color:#067647;font-weight:600}.exam-ai-praise{margin:10px 0 0}.exam-ai-note{margin-top:8px;font-size:.9rem;opacity:.8}.exam-ai-status{margin-top:8px;font-size:.92rem}.exam-ai-status.is-error{color:#b42318}.exam-ai-results{margin:16px 0;text-align:left}.exam-ai-results h2{font-size:1.1rem;margin:0 0 8px}.lesson-scroll-content .bilingual-copy,.lesson-scroll-content .common-mistakes,.lesson-scroll-content .grammar-examples,.lesson-scroll-content .structured-practice,.scroll-subsection{font-size:17px;line-height:1.7}.lesson-scroll-content .bilingual-copy p,.lesson-scroll-content .scroll-subsection p{margin:12px 0}.lesson-scroll-content .scroll-subsection{max-width:65ch}.grammar-body .grammar-opening{margin:12px 0 18px}.grammar-rule{display:flex;gap:.5rem;margin:14px 0;align-items:flex-start}.grammar-rule>b{color:var(--red);font-size:17px}.grammar-rule>span{display:block;flex:1 1;min-width:0;text-align:justify;text-align-last:left}.grammar-example{padding:14px 0}.grammar-example-line{min-height:44px}.grammar-example-line>span{font-size:17px;line-height:1.55}.grammar-example-line>span>strong{font-weight:800}.grammar-example p{margin:5px 0 0;color:#425c60;font-size:15px;line-height:1.55}.grammar-examples .dynamic-label{margin-bottom:7px}.pronunciation-toggle,.translation-toggle{min-height:44px;display:inline-flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:1px;margin:12px 0 0;padding:8px 13px;border:1px solid #b8d2c5;border-radius:10px;background:#f4faf6;color:#245b58;font:inherit;font-weight:800;cursor:pointer}.pronunciation-toggle small,.translation-toggle small{color:#54756c;font-size:12px;font-weight:600}.pronunciation-toggle:hover,.translation-toggle:hover{border-color:#2c7b69;background:#eaf7ef}.paragraph-translation{margin-top:12px;padding:12px 14px;border-left:4px solid #6f9d88;background:#f7f0df;color:#425c60}.paragraph-translation p{margin:5px 0!important}.audio-paragraph-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.audio-paragraph-lines{display:grid;grid-gap:12px;gap:12px}.german-phrase.is-plain{margin:0;padding:0;background:transparent;border-radius:0}.german-phrase.is-plain .german-phrase-main strong{font-weight:400;font-size:17px;line-height:1.7}.reading-practice{background:#fffdf8}.practice-task{padding:12px 14px;border-left:4px solid #6f9d88;border-radius:0 11px 11px 0;background:#f5faf6}.practice-task p{margin:4px 0 0;color:var(--ink)}.speaking-guide{margin-top:16px;padding:14px 16px;border:1px solid #d5e5db;border-radius:13px;background:#edf5ef}.speaking-guide ol{margin:9px 0 0;padding-left:24px}.speaking-guide li{padding:5px 0 5px 4px}.speaking-guide li small,.speaking-guide li span{display:block}.speaking-guide li small{color:#42635c;font-size:14px;line-height:1.5}.required-points{margin:10px 0 0;padding-left:22px;color:#315f59;font-size:16px}.pronunciation-word-list{display:grid;grid-gap:10px;gap:10px;margin-top:16px}.pronunciation-word-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid #dce8df;border-radius:12px;background:#f7fbf7}.pronunciation-word-row>div{min-width:0}.pronunciation-word-row>div>strong{display:block;color:var(--ink);font-size:19px;line-height:1.35}.pronunciation-word-meta{display:flex;flex-wrap:wrap;gap:5px 14px;margin-top:4px;color:#425c60;font-size:15px;line-height:1.5}.pronunciation-word-meta span{display:inline-flex;gap:5px;align-items:baseline}.pronunciation-word-meta b{color:var(--red);font-size:11px;letter-spacing:.04em}.pronunciation-word-meta code{color:#245b70;font-size:15px}.pronunciation-tips{margin-top:16px;padding:13px 15px;border-radius:12px;background:#f7f0df;color:#425c60}.pronunciation-tips p{margin:7px 0}.dialogue-bubbles{gap:16px}.dialogue-bubble{font-size:16px}.dialogue-bubble>strong{font-size:17px;line-height:1.65}.dialogue-bubble .pronunciation-toggle{margin-top:8px;padding:5px 9px;font-size:14px}.dialogue-bubble .inline-pronunciation{margin-top:7px;font-size:14px;font-style:normal}.dialogue-bubble .inline-pronunciation i{font-style:normal}.vocabulary-match-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;align-items:stretch}.vocabulary-match-row{display:contents}.vocabulary-match-german{display:flex;align-items:stretch;gap:4px;min-width:0}.vocabulary-match-german .vocabulary-match-item{flex:1 1;min-width:0;margin:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.vocabulary-match-german .vocabulary-match-item strong{font-size:16px;line-height:1.35}.vocabulary-match-german .vocabulary-match-item small{font-size:14px;line-height:1.35}.vocabulary-match-audio{width:40px;min-width:40px;min-height:40px;border:1px solid #cbdad1;border-radius:10px;background:#173b5c;color:#f2c85b;display:grid;place-items:center;cursor:pointer}.vocabulary-match-meaning{min-height:52px}.break-words{overflow-wrap:anywhere;word-break:break-word}@media (max-width:620px){.lesson-scroll-content .bilingual-copy,.lesson-scroll-content .common-mistakes,.lesson-scroll-content .grammar-examples,.lesson-scroll-content .structured-practice,.scroll-subsection{font-size:16px}.lesson-scroll-content .scroll-subsection{max-width:none}.grammar-rule{grid-template-columns:24px 1fr}.vocabulary-match-grid{gap:7px}.vocabulary-match-german{gap:3px}.vocabulary-match-audio{width:40px;min-width:40px}.vocabulary-match-german .vocabulary-match-item strong{font-size:14px}.vocabulary-match-german .vocabulary-match-item small{font-size:12px}.vocabulary-match-meaning{font-size:14px;padding-left:8px;padding-right:8px}}.text-justified{text-align:justify;text-align-last:left;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word;word-break:normal}.text-left{text-align:left;overflow-wrap:break-word}.lesson-scroll-content .german-phrase,.lesson-scroll-content .german-phrase-main>strong,.lesson-scroll-content li,.lesson-scroll-content p{text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto}.lesson-scroll-content .dialogue-bubble,.lesson-scroll-content .dialogue-bubble *,.lesson-scroll-content .dynamic-label,.lesson-scroll-content .grammar-example,.lesson-scroll-content .grammar-example *,.lesson-scroll-content .lesson-kicker,.lesson-scroll-content .pronunciation-word-meta,.lesson-scroll-content .pronunciation-word-meta *,.lesson-scroll-content .pronunciation-word-row,.lesson-scroll-content .pronunciation-word-row *,.lesson-scroll-content .scroll-stage-heading,.lesson-scroll-content .scroll-stage-heading *,.lesson-scroll-content .scrollspy-nav,.lesson-scroll-content .scrollspy-nav *,.lesson-scroll-content .subsection-heading,.lesson-scroll-content .subsection-heading *,.lesson-scroll-content .vocabulary-match-grid,.lesson-scroll-content .vocabulary-match-grid *,.lesson-scroll-content .vocabulary-table,.lesson-scroll-content .vocabulary-table *,.lesson-scroll-content button{text-align:left;text-align-last:auto;hyphens:none;-webkit-hyphens:manual}.lesson-scroll-content .grammar-rule>b{text-align:left;text-align-last:auto}.lesson-scroll-content .grammar-rule>span{text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto}.vocabulary-match-help{display:grid;grid-gap:3px;gap:3px}.vocabulary-match-help small,.vocabulary-match-help span{display:block}.vocabulary-match-help small{color:#668078;font-size:11px}.vocabulary-match-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.vocabulary-match-column{min-width:0}.vocabulary-match-list{display:flex;flex-direction:column;gap:12px}.vocabulary-match-card{min-width:0}.vocabulary-match-column-title{min-height:30px;margin:0 0 7px}.vocabulary-match-german-card{display:flex;align-items:stretch;gap:8px;padding:6px;border:1px solid #cbdad1;border-radius:10px;background:#fff;transition:border-color .16s ease,background .16s ease}.vocabulary-match-german-card.is-matched{border-color:#6ba982;background:#e3f3e7}.vocabulary-match-card.is-wrong .vocabulary-match-item,.vocabulary-match-german-card.is-wrong{animation:vocabulary-match-shake .3s ease-in-out}.vocabulary-match-german-card .vocabulary-match-item{flex:1 1;min-width:0;min-height:52px;margin:0;padding:4px 5px;border:0;background:transparent}.vocabulary-match-german-card .vocabulary-match-item:focus-visible,.vocabulary-match-german-card .vocabulary-match-item:hover:not(:disabled){border:0;outline:2px solid #f2c85b;outline-offset:1px;background:#fff5d9;transform:none}.vocabulary-match-german-card .vocabulary-match-item.is-selected{border:2px solid #173b5c;border-radius:7px;background:#eaf1f7;color:var(--ink)}.vocabulary-match-german-card .vocabulary-match-item.is-matched{border:0;background:transparent;color:#28664f}.vocabulary-match-meaning{min-height:64px;margin:0;padding:10px 11px;align-items:flex-start}.vocabulary-match-meaning.is-matched{border-color:#6ba982;background:#e3f3e7;color:#28664f}.vocabulary-match-meaning.is-wrong{animation:vocabulary-match-shake .3s ease-in-out}.vocabulary-match-copy{min-width:0;flex:1 1;display:flex;flex-direction:column;align-items:flex-start;gap:3px;overflow-wrap:anywhere;word-break:break-word}.vocabulary-match-copy strong{max-width:100%;font-size:16px;line-height:1.35}.vocabulary-match-copy small{max-width:100%;font-size:14px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.vocabulary-match-badge{flex:none;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#edf4ef;color:#2c6c58;font-size:11px;font-weight:900;line-height:1}.vocabulary-match-german-card .vocabulary-match-item.is-selected .vocabulary-match-badge{background:#173b5c;color:#f7d36f}.vocabulary-match-german-card .vocabulary-match-item.is-matched .vocabulary-match-badge,.vocabulary-match-meaning.is-matched .vocabulary-match-badge{background:#6ba982;color:#fff}.vocabulary-match-audio{align-self:center}@keyframes vocabulary-match-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}@media (max-width:620px){.vocabulary-match-columns{gap:16px}.vocabulary-match-list{gap:10px}.vocabulary-match-german-card{gap:5px;padding:5px}.vocabulary-match-german-card .vocabulary-match-item{padding:3px 4px}.vocabulary-match-copy strong{font-size:14px}.vocabulary-match-copy small{font-size:12px}.vocabulary-match-meaning{min-height:58px;padding:9px 7px;font-size:14px}.vocabulary-match-badge{width:22px;height:22px;font-size:10px}}@media (prefers-reduced-motion:reduce){.vocabulary-match-card.is-wrong .vocabulary-match-item,.vocabulary-match-german-card.is-wrong{animation:none}}.lesson-sidebar h1{font-size:clamp(30px,3vw,32px);letter-spacing:-.8px}.lesson-sidebar h1 em{font-size:.72em}.grammar-example{display:grid;grid-gap:9px;gap:9px;padding:16px;margin-top:12px}.grammar-example-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;grid-gap:12px;gap:12px}.grammar-example-line>span{min-width:0}.grammar-example p{border-top:1px solid rgba(23,59,92,.12);padding-top:9px;margin:0}.audio-button,.dialogue-audio,.small-audio-button{width:40px;height:40px;min-width:40px;aspect-ratio:1;flex:none;display:inline-flex;align-items:center;justify-content:center}.pronunciation-word-tip{margin:7px 0 0;color:#425c60;font-size:14px;line-height:1.45;font-style:normal}.pronunciation-word-tip b{color:#a62b2b;margin-right:4px}.pronunciation-tips{line-height:1.55}@media (max-width:800px){.lesson-sidebar h1{font-size:30px}.lesson-sidebar h1 em{font-size:.74em}}