/* Palette sampled from dransay.com: forest #1c433b, mint #00efab, pale mint #dceeeb. */
:root{--accent:#00efab;--accent-hover:#00d79a;--surface-soft:#f5f9f7;--border-strong:#87b5a6;--brand:#1c433b;--brand-dark:#112823;--ink:#212a36;--muted:#526c64;--line:#d3e0da;--paper:#f4f5f7;--tint:#dceeeb;--green:#247452;--green-bg:#edf8f1;--yellow:#fff8dc;--orange:#915720;--font:'DM Sans',sans-serif;--heading:'Manrope',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{transition:background .16s,border-color .16s,color .16s,transform .16s}button:disabled{cursor:default}a{color:var(--brand)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2c6d60;outline-offset:4px}button svg{flex-shrink:0}.icon{width:20px;height:20px;vertical-align:middle;flex-shrink:0}.sidebar{position:fixed;inset:0 auto 0 0;width:254px;background:#ffffff;border-right:1px solid var(--line);padding:34px 22px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--ink);font-family:var(--heading);font-size:19px;font-weight:800;white-space:nowrap}.brand small{display:block;font-family:var(--font);font-size:8px;letter-spacing:1.5px;font-weight:600;margin-top:4px;color:var(--muted)}.brand-mark{background:var(--brand);color:#ffffff;border-radius:12px;width:39px;height:42px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:34px;line-height:1;letter-spacing:-3px;padding-right:4px}.brand-mark>span{font-family:var(--font);color:#00efab;font-size:29px;align-self:flex-end;margin-bottom:5px}.sidebar-label{font-size:11px;font-weight:650;letter-spacing:1.45px;color:var(--muted)}.sidebar>.sidebar-label{margin:48px 12px 12px}.sidebar nav{display:grid;gap:7px}.nav-item{width:100%;border:0;background:transparent;display:flex;align-items:center;text-align:left;gap:12px;padding:12px;border-radius:7px;color:var(--muted);font-size:14px;font-weight:550;min-height:45px}.nav-item:hover{background:var(--surface-soft)}.nav-item.active{background:var(--tint);color:var(--brand);font-weight:700}.nav-badge{font-size:11px;margin-left:auto;background:var(--brand);color:#ffffff;padding:0 6px;border-radius:8px}.level-label{display:flex;align-items:center;gap:10px;margin:37px 12px 16px}.tiny-line{height:1px;background:var(--line);flex:1}.level-buttons{display:grid;gap:9px}.level-btn{display:flex;align-items:center;gap:12px;text-align:left;padding:11px 12px;border:1px solid transparent;background:transparent;border-radius:9px;color:var(--ink)}.level-btn:hover{background:var(--surface-soft)}.level-btn.selected{border-color:var(--border-strong);background:var(--surface-soft)}.level-code{font-family:var(--heading);font-size:14px;font-weight:800;width:34px;height:35px;background:var(--surface-soft);border-radius:6px;display:grid;place-items:center}.selected .level-code{background:var(--brand);color:#ffffff}.level-btn strong{display:block;font-size:14px;font-weight:600}.level-btn small{font-size:11px;color:var(--muted);display:block}.level-btn>.icon{color:var(--brand);width:16px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding:36px 12px 19px}.progress-caption{display:flex;align-items:center;justify-content:space-between}.progress-caption strong{font-size:14px}.progress-caption .icon{color:var(--brand);width:18px}.sidebar-bottom p{color:var(--muted);font-size:12px;margin:7px 0 12px}.track{background:var(--tint);height:5px;border-radius:5px;overflow:hidden}.track i{display:block;height:100%;background:var(--brand);border-radius:5px}.sidebar-bottom small{display:block;font-size:11px;color:var(--muted);margin-top:12px}.sidebar-foot{border-top:1px solid var(--line);padding:18px 10px 0;display:flex;gap:9px;align-items:center;font-size:10px;color:var(--muted)}.flag-german{display:flex;flex-direction:column;width:14px;overflow:hidden;border-radius:2px;height:10px}.flag-german i{flex:1;background:#253042}.flag-german i:nth-child(2){background:#df4b4b}.flag-german i:nth-child(3){background:#f4c654}.main-shell{margin-left:254px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 44px;background:#ffffff;gap:18px}.breadcrumb{font-size:12px;color:var(--muted);display:flex;gap:13px}.breadcrumb strong{font-weight:500;color:var(--muted)}.breadcrumb>span{color:var(--muted)}.topbar-right{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.level-pill{padding:2px 7px;font-size:11px;font-weight:750;color:var(--brand);border-radius:4px;background:var(--tint)}.avatar{margin-left:12px;border:1px solid var(--line);background:var(--surface-soft);border-radius:50%;height:32px;width:32px;font-weight:600;display:grid;place-items:center;color:var(--muted)}.mobile-menu{display:none}main{width:100%;max-width:1400px;margin:0 auto;padding:44px 44px 46px;flex:1}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px}.eyebrow,.section-eyebrow{color:var(--muted);font-size:10px;letter-spacing:1.7px;font-weight:650}.eyebrow{color:var(--brand);margin-bottom:10px}h1,h2,h3,p{margin-top:0}h1{font-family:var(--heading);font-size:clamp(24px,2.35vw,35px);font-weight:750;line-height:1.3;letter-spacing:-1.15px;margin-bottom:11px}.page-heading p{font-size:14px;color:var(--muted);margin:0}.quiet-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);background:#ffffff;border-radius:6px;color:var(--muted);white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:550}.quiet-btn:hover{border-color:var(--border-strong);background:var(--tint)}.quiet-btn .icon{width:16px}.study-layout{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:28px;align-items:start}.lesson-select-row{display:flex;align-items:center;gap:11px;margin-bottom:15px;min-height:27px;flex-wrap:wrap}.lesson-index{display:grid;place-items:center;font-family:var(--heading);font-weight:750;font-size:12px;background:var(--tint);width:28px;height:28px;border-radius:5px;color:var(--brand)}select{color:var(--ink);background:transparent;max-width:calc(100% - 50px);border:0;font-size:14px;font-weight:600;padding:3px 20px 3px 0;cursor:pointer}.lesson-meta{margin-left:auto;font-size:11px;color:var(--muted)}.exercise-card{background:#ffffff;border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 4px 14px #1c433b05}.exercise-top{display:flex;justify-content:space-between;padding:23px 28px 19px;gap:15px}.exercise-type{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}.exercise-type .icon{width:17px;color:var(--muted)}.exercise-number{font-size:12px;color:var(--muted)}.exercise-number strong{font-weight:650;color:var(--muted)}.segmented-progress{margin:0 28px;display:flex;gap:4px}.segmented-progress i{flex:1;height:3px;background:var(--tint);border-radius:2px}.segmented-progress i.done{background:var(--brand)}.segmented-progress i.now{background:var(--accent)}.exercise-content{padding:34px 28px 24px}.question-context{font-size:12px;color:var(--muted);margin-bottom:15px}#exercise-heading{font-family:var(--heading);font-size:clamp(24px,2.5vw,33px);font-weight:650;line-height:1.6;letter-spacing:-.8px;outline:none;margin-bottom:10px}.gap{display:inline-block;border-bottom:2px solid var(--border-strong);min-width:90px;color:var(--brand);text-align:center;line-height:1.3;background:var(--surface-soft);border-radius:4px 4px 0 0;margin:0 5px}.translation{font-size:14px;color:var(--muted);margin-bottom:30px}.answer-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:27px}.answer-option{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:#ffffff;border-radius:7px;padding:14px 13px;text-align:left;font-size:16px;color:var(--muted);min-height:56px}.answer-option:hover:not(:disabled){background:var(--surface-soft);border-color:var(--border-strong);transform:translateY(-1px)}.option-key{border:1px solid var(--line);border-radius:4px;color:var(--muted);display:grid;place-items:center;font-size:11px;width:25px;height:25px;flex-shrink:0}.answer-option.chosen{border-color:var(--brand);background:var(--surface-soft);color:var(--brand)}.chosen .option-key{background:var(--brand);color:#ffffff;border-color:var(--brand)}.selection-dot{margin-left:auto;width:12px;height:12px;border:3px solid var(--surface-soft);border-radius:50%;background:var(--brand);outline:1px solid var(--brand);flex-shrink:0}.answer-option.is-correct{border-color:#65ac85;background:var(--green-bg);color:#246642}.answer-option.is-correct>.icon{margin-left:auto;width:18px}.answer-option.is-wrong{border-color:#d5977a;background:#fff3ed;color:#874a31}.hint-row{display:flex;align-items:center;gap:18px;justify-content:space-between;flex-wrap:wrap;margin-top:23px;min-height:27px}.text-btn{background:none;border:0;padding:4px 0;font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:7px;text-align:left}.text-btn:hover{color:var(--brand)}.text-btn .icon{width:16px;height:16px}.hint-button{color:var(--muted)}.hint-text{font-size:14px;color:var(--muted);white-space:pre-line;width:100%;padding:14px;background:var(--yellow);border-radius:5px;margin:0}.keyboard-note{font-size:10px;color:var(--muted)}kbd{font:inherit;border:1px solid var(--line);border-radius:4px;padding:3px 5px;margin-left:3px;color:var(--muted);background:#ffffff}.exercise-bottom{display:flex;align-items:center;justify-content:space-between;background:var(--surface-soft);border-top:1px solid var(--line);padding:18px 28px;gap:16px}.primary-btn{background:var(--accent);color:var(--brand-dark);border:1px solid var(--brand);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:13px;font-weight:550;padding:12px 18px;min-height:44px}.primary-btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--brand-dark)}.primary-btn:disabled{opacity:.5}.primary-btn .icon{width:17px;height:17px}.check-wrap{display:flex;align-items:center;gap:17px}.practice-note{display:flex;align-items:center;font-size:11px;color:var(--muted);gap:7px;margin-top:16px}.practice-note .icon{width:14px;color:var(--muted)}.practice-note>span{margin-left:auto;font-size:10px}.grammar-aside{padding:20px 22px 0;background:var(--tint);border-radius:10px;margin-top:43px}.aside-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.aside-heading .icon{color:var(--muted);width:17px}.aside-heading .section-eyebrow{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.grammar-aside h2{font-family:var(--heading);font-size:19px;line-height:1.45;letter-spacing:-.4px;font-weight:700;margin-bottom:13px}.grammar-aside>p{font-size:13px;line-height:1.8;color:var(--muted)}.grammar-pattern{font-family:var(--font);padding:15px 14px;border-radius:5px;background:#ffffff;color:var(--brand);font-size:14px;line-height:1.9;white-space:normal;margin:19px 0}.example-label{font-size:9px;letter-spacing:1.3px;font-weight:650;color:var(--muted);margin-top:23px;margin-bottom:8px}.grammar-example{font-size:14px;color:var(--muted);line-height:1.8}.grammar-link{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:none;color:var(--brand);font-size:12px;padding:12px 0 18px;text-align:left}.grammar-link .icon{width:16px}.aside-tip{border-top:1px solid var(--line);margin-top:8px;padding:20px 0}.aside-tip>span{font-size:9px;letter-spacing:1.5px;font-weight:650;color:var(--muted)}.aside-tip p{font-size:12px;line-height:1.8;color:var(--muted);margin:6px 0 0}.below-practice{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:41px;padding-top:26px;gap:24px}.below-practice h3{font-family:var(--heading);font-size:14px;letter-spacing:-.2px;font-weight:600;margin:7px 0 0}.feature-links{display:flex;gap:27px}.feature-links button{display:flex;align-items:center;gap:11px;background:none;border:0;text-align:left;color:var(--muted);padding:3px}.feature-links button>span{font-size:12px;font-weight:600;white-space:nowrap}.feature-links small{display:block;font-weight:400;font-size:10px;color:var(--muted);margin-top:4px}.feature-links button>.icon:first-child{width:18px;color:var(--muted)}.feature-links button>.icon:last-child{width:14px;margin-left:5px;color:var(--muted)}.main-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:18px 44px;font-size:10px;color:var(--muted);gap:15px}.main-footer button{background:none;border:0;color:var(--muted);font-size:10px;display:flex;align-items:center;gap:8px}.main-footer .icon{width:12px}.feedback{margin-top:24px;background:var(--green-bg);border:1px solid #d3e9dc;border-radius:7px;padding:18px;outline:0;animation:feedback-in .2s ease-out}.feedback.incorrect{background:#fff8e9;border-color:#eadcba}.feedback-title{display:flex;align-items:center;gap:8px;color:var(--green);font-size:15px;margin-bottom:10px}.incorrect .feedback-title{color:#8a642a}.feedback p{font-size:14px;line-height:1.7;color:#476256;margin:8px 0}.incorrect p{color:#78613b}.feedback-rule{font-size:11px;color:#5c7b6b;border-top:1px solid #d5e8dd;padding-top:11px;margin-top:13px;display:flex;align-items:center;gap:7px}.incorrect .feedback-rule{border-color:#e8deca;color:#94774b}.feedback-rule .icon{width:14px}.correction{font-size:14px;display:flex;flex-direction:column;gap:4px;color:#756954;margin:12px 0}.correction s{color:#997666}.feedback .small-feedback{font-size:12px}.typed-answer{margin-top:26px}.typed-answer label{font-size:12px;color:var(--muted);display:block;margin-bottom:8px}.typed-answer input,.search-input{width:100%;border:1px solid var(--border-strong);border-radius:7px;background:#ffffff;color:var(--ink);padding:14px;font-size:17px}.typed-answer input:disabled{background:var(--surface-soft)}.typed-answer input::placeholder,.search-input::placeholder{color:var(--muted)}.special-keys{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.special-keys button{border:1px solid var(--line);background:#ffffff;color:var(--muted);border-radius:4px;width:30px;height:31px;font-size:14px}.special-keys span{font-size:10px;color:var(--muted);margin-left:5px}.sentence-answer{display:flex;flex-wrap:wrap;gap:7px;min-height:75px;border:1px solid var(--border-strong);border-radius:7px;padding:13px;background:var(--surface-soft);margin:22px 0 14px;align-items:center}.word-bank{display:flex;flex-wrap:wrap;gap:8px}.word{border:1px solid var(--line);border-bottom-width:3px;background:#ffffff;padding:9px 13px;border-radius:6px;font-size:15px;color:var(--muted)}.selected-word{color:var(--brand);background:#dceeeb;border-color:var(--border-strong)}.selected-word>span{color:var(--muted);margin-left:4px}.word.used{opacity:.3}.builder-placeholder{font-size:14px;color:var(--muted)}.path-summary{display:flex;align-items:center;gap:28px;background:var(--tint);padding:21px 25px;margin-bottom:24px;border-radius:8px}.path-summary>span{font-size:13px;color:var(--muted)}.path-summary strong{font-size:20px;font-family:var(--heading);margin-right:5px;color:var(--brand)}.path-summary .track{flex:1;margin-left:auto;max-width:240px;background:var(--tint)}.topic-list{border-top:1px solid var(--line)}.topic-row{display:flex;align-items:center;text-align:left;gap:22px;width:100%;border:0;border-bottom:1px solid var(--line);padding:22px 12px;background:transparent;color:var(--ink)}.topic-row:hover{background:var(--surface-soft)}.topic-number{font-family:var(--heading);font-size:18px;font-weight:650;color:var(--muted);width:42px;flex-shrink:0}.topic-done{color:var(--green)}.topic-info{flex:1}.topic-info>strong{display:block;font-family:var(--heading);font-size:16px;font-weight:650}.topic-info>span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.topic-progress{width:90px;color:var(--muted);font-size:11px;text-align:right;margin-right:20px}.topic-progress .track{display:block;margin-top:7px;height:3px}.topic-go{font-size:12px;color:var(--brand);display:flex;align-items:center;gap:17px;width:133px;justify-content:flex-end}.topic-go .icon{width:16px}.course-note{font-size:12px;color:var(--muted);margin-top:22px}.search-label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}.search-input{max-width:560px;margin-bottom:26px;font-size:15px}.grammar-library{display:grid;gap:12px}.grammar-entry{background:#ffffff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.grammar-entry summary{padding:20px 23px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px}.grammar-entry summary::-webkit-details-marker{display:none}.grammar-entry summary span{display:flex;flex-direction:column;gap:4px}.grammar-entry summary small{font-size:11px;color:var(--muted)}.grammar-entry summary strong{font-family:var(--heading);font-size:16px;font-weight:650}.grammar-entry[open] summary .icon{transform:rotate(90deg)}.grammar-entry-body{padding:0 23px 24px;max-width:820px}.grammar-entry-body>p{font-size:16px;color:var(--muted)}.grammar-entry-body .grammar-pattern{background:var(--tint)}.about-course{margin-top:34px;padding:20px;background:var(--tint);border-radius:8px;font-size:14px;color:var(--muted)}.about-course summary{cursor:pointer;font-weight:600}.about-course p{margin:16px 0 0;max-width:850px}.mistake-item{padding:26px 0;border-top:1px solid var(--line)}.mistake-item h3{font-size:20px;font-weight:550;margin:10px 0}.mistake-item p{font-size:14px;color:var(--muted);margin-bottom:10px}.mistake-item summary{font-size:13px;color:var(--brand);cursor:pointer}.mistake-item details{background:var(--tint);border-radius:6px;padding:14px 18px;margin-top:15px}.mistake-item .model-answer{font-size:18px;font-weight:600;color:var(--green);margin-top:16px}.empty-state{text-align:center;padding:70px 20px;background:#ffffff;border:1px solid var(--line);border-radius:10px}.empty-state>span{display:inline-flex;padding:16px;background:var(--tint);color:var(--brand);border-radius:50%;margin-bottom:20px}.empty-state .icon{width:26px;height:26px}.empty-state h2{font-family:var(--heading);font-size:28px;letter-spacing:-1px}.empty-state p{color:var(--muted);font-size:15px;line-height:1.9;margin-bottom:25px}.completion{text-align:center;border:1px solid var(--line);background:#ffffff;border-radius:12px;padding:55px 25px}.completion-symbol{background:var(--tint);border-radius:50%;width:62px;height:62px;display:grid;place-items:center;color:var(--brand);margin:0 auto 25px}.completion-symbol .icon{width:30px;height:30px}.completion h2{font-family:var(--heading);font-size:27px;letter-spacing:-.7px}.completion p{color:var(--muted);font-size:16px}.completion-bar{display:flex;gap:16px;align-items:center;max-width:350px;margin:26px auto;color:var(--brand);font-size:14px}.completion-bar .track{flex:1;height:8px}.completion-actions{display:flex;justify-content:center;gap:14px;margin-top:30px}.reading-passage{white-space:pre-line;background:var(--surface-soft);border-radius:6px;padding:20px 23px;margin-bottom:25px;font-size:16px;line-height:1.9;color:var(--muted)}.listening-control{display:flex;align-items:center;gap:15px;margin-bottom:6px}.listen-btn{border:1px solid var(--border-strong);border-radius:6px;background:var(--tint);color:var(--brand);display:flex;align-items:center;gap:10px;padding:12px 16px;font-size:14px}.audio-status{font-size:12px;color:var(--muted);min-height:20px;margin:9px 0}.transcript{font-size:13px;color:var(--muted);margin:12px 0 25px}.transcript summary{cursor:pointer}.transcript p{background:var(--surface-soft);padding:14px;border-radius:4px;font-size:16px;margin:10px 0}.sr-only{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;padding:0;border:0;margin:-1px}.icon-btn{background:none;border:0;padding:7px;color:var(--ink)}@keyframes feedback-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1550px){main{padding-top:55px}.exercise-content{padding:42px 34px 30px}.exercise-top{padding-left:34px;padding-right:34px}.segmented-progress{margin:0 34px}.exercise-bottom{padding:20px 34px}.grammar-aside{padding:25px 25px 0}.study-layout{grid-template-columns:minmax(0,1fr) 300px}.grammar-aside>p{font-size:14px}.sidebar{width:272px}.main-shell{margin-left:272px}}
@media(max-width:1220px){.sidebar{width:225px;padding-left:14px;padding-right:14px}.main-shell{margin-left:225px}.brand{font-size:17px}.brand small{font-size:7px}.topbar{padding:0 28px}main{padding:35px 28px}.study-layout{grid-template-columns:minmax(0,1fr) 230px;gap:21px}.grammar-aside{padding-left:18px;padding-right:18px}.page-heading>.quiet-btn{display:none}.lesson-meta{display:none}.below-practice{align-items:flex-start;flex-direction:column;gap:18px}.feature-links{width:100%;justify-content:space-between}.main-footer{padding:18px 28px}.keyboard-note{display:none}.practice-note>span{display:none}.exercise-content{padding:28px 23px}.exercise-bottom{padding:18px 23px}.grammar-aside h2{font-size:18px}}
@media(max-width:1000px){.study-layout{grid-template-columns:1fr}.grammar-aside{margin-top:3px;padding:24px;display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.aside-heading{grid-column:1/-1;margin-bottom:12px}.grammar-aside h2{grid-column:1/-1;margin-bottom:8px}.grammar-aside>p{font-size:14px;grid-column:1/2;grid-row:auto/span 3;margin-bottom:4px}.grammar-aside .grammar-pattern{margin:0 0 15px;grid-column:2}.grammar-aside .example-label{grid-column:2;margin:0}.grammar-aside .grammar-example{grid-column:2;grid-row:auto;font-size:13px}.grammar-aside .grammar-link{grid-column:1/-1;padding-bottom:0}.aside-tip{display:none}.practice-note>span{display:block}.topic-progress{margin-right:0;width:65px}.topic-go{width:auto;font-size:0;gap:0}.main-footer{flex-wrap:wrap}.topbar-right>span:not(.avatar){display:none}.answer-options{gap:10px}}
@media(max-width:730px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:255px;box-shadow:15px 0 40px #1c433b18}.sidebar.open{transform:translateX(0);top:62px}.main-shell{margin-left:0}.topbar{height:62px;padding:0 18px;position:sticky;top:0;z-index:25;background:#ffffff}.mobile-menu{display:block}.breadcrumb{margin-right:auto;font-size:11px;gap:9px}.topbar-right{gap:0}.topbar-right>.avatar{margin-left:0}.topbar-right>span.level-pill{display:block;margin-right:10px}.topbar-right>.avatar{width:28px;height:28px;font-size:11px}main{padding:28px 20px 34px}.page-heading{margin-bottom:25px}h1{font-size:28px;letter-spacing:-1px}.page-heading p{font-size:14px;max-width:330px;line-height:1.7}.eyebrow{font-size:9px}.exercise-top{padding:19px 20px 16px}.segmented-progress{margin:0 20px;gap:3px}.exercise-content{padding:26px 20px 23px}#exercise-heading{font-size:28px;line-height:1.55}.gap{min-width:72px}.question-context{font-size:12px}.translation{font-size:14px;margin-bottom:24px}.answer-options{gap:10px}.answer-option{padding:12px 11px;font-size:16px;gap:10px}.option-key{width:23px;height:23px}.exercise-bottom{padding:17px 20px}.primary-btn{padding:11px 15px;font-size:13px;gap:13px}.exercise-bottom .text-btn{font-size:12px}.lesson-select-row{gap:9px}.lesson-select-row select{font-size:14px}.practice-note{font-size:10px}.practice-note>span{display:none}.grammar-aside{padding:20px;display:block}.grammar-aside .grammar-pattern{margin:18px 0}.grammar-aside>p{font-size:14px}.grammar-aside h2{font-size:20px}.grammar-aside .grammar-example{font-size:14px;margin-top:8px}.aside-heading{margin-bottom:16px}.grammar-link{margin-top:7px}.below-practice{margin-top:30px;padding-top:25px}.below-practice h3{font-size:15px}.feature-links{gap:18px;flex-wrap:wrap}.feature-links small{font-size:11px}.main-footer{padding:18px 20px;font-size:10px;gap:10px}.main-footer button{font-size:11px}.path-summary{padding:17px 15px;gap:15px;flex-wrap:wrap}.path-summary>span{font-size:11px}.path-summary strong{font-size:17px;margin-right:2px}.path-summary .track{max-width:none;flex-basis:100%;margin-top:3px}.topic-row{padding:20px 3px;gap:10px}.topic-number{font-size:16px;width:28px}.topic-info>strong{font-size:14px}.topic-info>span{font-size:11px}.topic-progress{width:49px;font-size:10px;margin-left:7px}.topic-go{margin-left:4px}.page-heading{flex-wrap:wrap}.grammar-entry summary{padding:17px}.grammar-entry-body{padding:0 17px 22px}.grammar-entry summary strong{font-size:15px}.completion{padding:36px 18px}.completion h2{font-size:23px}.completion p{font-size:14px}.completion-actions{flex-direction:column;align-items:stretch}.reading-passage{padding:17px;font-size:15px}.listening-control{gap:12px;flex-wrap:wrap}.answer-option>span[lang]{overflow-wrap:anywhere}.special-keys span{width:100%;margin:4px 0}.word{padding:8px 10px;font-size:14px}.feedback{padding:15px}.feedback-title{font-size:14px}.feedback p{font-size:14px}.brand small{font-size:8px}.sidebar-label{font-size:11px}.level-btn small{font-size:12px}.sidebar-foot{font-size:11px}.sidebar-bottom p,.sidebar-bottom small{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep explanations and controls comfortable at normal and enlarged text sizes. */
.brand small{font-size:9px;letter-spacing:.65px}.sidebar-label{font-size:12px;letter-spacing:1.1px}.level-btn small{font-size:12px}.sidebar-foot{font-size:11px}.sidebar-bottom p,.sidebar-bottom small{font-size:12px}.eyebrow,.section-eyebrow{font-size:12px;letter-spacing:1.2px}.aside-heading .section-eyebrow,.example-label,.aside-tip>span{font-size:11px;letter-spacing:1px}.page-heading p{font-size:16px}.question-context,.exercise-type,.exercise-number{font-size:14px}.translation{font-size:16px}.text-btn,.quiet-btn,.primary-btn{font-size:14px}.grammar-aside>p{font-size:14px;line-height:1.8}.grammar-example{font-size:14px}.grammar-link{font-size:14px}.aside-tip p{font-size:14px}.hint-row .keyboard-note{font-size:12px}.practice-note{font-size:12px}.practice-note>span{display:none}.lesson-meta{font-size:12px}.breadcrumb,.topbar-right{font-size:12px}.typed-answer label,.typed-answer .special-keys span{font-size:12px}.topic-info>span,.topic-progress,.topic-go{font-size:14px}.feature-links button>span{font-size:14px}.feature-links small{font-size:12px}.feature-links{gap:20px}.feature-links button>span{white-space:normal}.feature-links button{min-width:145px}.main-footer,.main-footer button{font-size:12px}.grammar-entry summary small{font-size:12px}.audio-status,.transcript{font-size:14px}.sidebar{overflow-y:auto}.lesson-select-row select{min-height:34px}.answer-options:has(.answer-option span[lang]:not(:empty)){align-items:stretch}.grammar-aside .grammar-pattern{line-height:1.8}.feedback-rule{font-size:12px}.special-keys button{width:35px;height:35px}.reading-passage{font-size:16px}.course-note{font-size:14px}
@media(max-width:1220px){.below-practice{align-items:flex-start;flex-direction:column}.feature-links{justify-content:flex-start;gap:35px}.brand{font-size:16px}.brand small{font-size:8px;letter-spacing:.6px}.sidebar-label{font-size:11px}.level-btn{padding-left:9px;padding-right:9px;gap:9px}.level-btn small{font-size:11px}.grammar-aside .grammar-pattern{font-size:14px}.topic-go{font-size:13px}}
@media(max-width:1000px){.topic-go{font-size:0}.grammar-aside .grammar-example{font-size:14px}.main-footer{line-height:1.6}.lesson-select-row{margin-bottom:13px}}
@media(max-width:730px){.eyebrow,.section-eyebrow{font-size:11px}.question-context,.exercise-type,.exercise-number{font-size:12px}.exercise-bottom .text-btn{font-size:14px}.exercise-bottom .primary-btn{font-size:14px}.grammar-aside>p,.grammar-aside .grammar-example{font-size:16px}.topic-info>strong{font-size:16px}.topic-info>span{font-size:13px}.topic-progress{font-size:12px}.feature-links{gap:20px}.main-footer,.main-footer button{font-size:12px}.special-keys span{font-size:12px}.path-summary>span{font-size:13px}.topic-row{gap:9px}.topic-info{min-width:0}.grammar-entry summary strong{font-size:16px}.level-btn small{font-size:12px}.level-btn{padding-left:12px;padding-right:12px}.brand{font-size:18px}.brand small{font-size:9px}.sidebar-label{font-size:12px}.exercise-bottom{gap:10px}.check-wrap{min-width:0}.primary-btn{gap:9px}.answer-option{min-width:0}.listen-btn{font-size:14px}.grammar-entry-body>p{font-size:16px}}
.audio-answer-status{display:block;font-size:12px;max-width:220px;color:var(--muted);line-height:1.5}.audio-answer-status:empty{display:none}.feedback:focus-visible{outline:3px solid #a6cbb5;outline-offset:3px}@media(max-width:730px){.sidebar:not(.open){visibility:hidden}.sidebar.open{visibility:visible}.audio-answer-status{max-width:150px}.answer-options .answer-option{overflow-wrap:anywhere}}

h1,h2,h3{color:var(--brand-dark)}
.sponsor-bar{display:flex;justify-content:flex-end;align-items:center;background:var(--brand);padding:9px 44px;min-height:40px}.sponsor-link{display:inline-flex;align-items:center;gap:6px;color:#dceeeb;text-decoration:none;font-size:12px;line-height:1.5}.sponsor-link strong{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:3px}.sponsor-link .icon{width:14px;height:14px;margin-left:3px;color:var(--accent);transform:rotate(-45deg)}.sponsor-link:hover strong{text-decoration-thickness:2px}.sponsor-link:focus-visible{outline-color:var(--accent)}
@media(max-width:1220px){.sponsor-bar{padding-inline:28px}}
@media(max-width:730px){.sponsor-bar{justify-content:center;padding:9px 20px}}

.footer-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.privacy-open{overflow:hidden}
.privacy-notice{width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:34px;border:1px solid var(--line);border-radius:16px;background:#ffffff;color:var(--ink);box-shadow:0 24px 90px #11282338;overflow-y:auto;overscroll-behavior:contain}
.privacy-notice::backdrop{background:#11282380}
.privacy-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:6px}
.privacy-close:hover{background:var(--tint)}
.privacy-notice>.eyebrow{padding-right:24px;margin-bottom:13px}
.privacy-notice h2{font-family:var(--heading);font-size:clamp(25px,4vw,30px);font-weight:750;letter-spacing:-.8px;line-height:1.25;margin-bottom:15px}
.privacy-notice p{font-size:15px;line-height:1.7;color:var(--muted);margin-bottom:20px}
.privacy-local{display:flex;gap:14px;background:var(--tint);border-radius:9px;padding:18px;margin:22px 0}
.privacy-local>.icon{width:24px;height:24px;color:var(--brand);margin-top:3px}
.privacy-local p{margin:0;color:var(--brand-dark);font-size:14px}
.privacy-details{font-size:14px;margin:0 0 24px}
.privacy-details summary{cursor:pointer;color:var(--brand);font-weight:650;line-height:1.6;padding:5px 0}
.privacy-details>div{padding-top:13px}
.privacy-details p{font-size:13px;line-height:1.7;margin-bottom:13px}
.privacy-details a{text-underline-offset:3px}
.privacy-acknowledge{width:100%;min-height:46px;font-weight:650}
.privacy-notice .privacy-footnote{font-size:12px;text-align:center;margin:14px 0 0;line-height:1.6}
.privacy-notice .privacy-storage-warning{font-size:13px;background:var(--yellow);color:#78613b;padding:12px;border-radius:6px}
@media(max-width:730px){.privacy-notice{padding:28px 22px}.privacy-notice h2{max-width:270px}.privacy-notice p{font-size:14px}.privacy-local{padding:15px;gap:11px;margin:18px 0}.privacy-local p{font-size:13px}.privacy-details{margin-bottom:18px}.privacy-notice .privacy-footnote{font-size:12px}.privacy-details p{font-size:13px}.footer-actions{gap:16px}}
