:root{color-scheme:light;--canvas:#f5f5ef;--surface:#ffffff;--surface-soft:#f3f4ec;--text:#18241d;--muted:#536258;--line:#d9dfd5;--brand:#245b49;--brand-strong:#174235;--brand-text:#ffffff;--focus:#cf6b2c;--good-bg:#e8f5eb;--good-text:#1d5933;--note-bg:#fff1dc;--note-text:#69450c;--shadow:0 18px 42px rgba(20,48,35,.08)}:root[data-theme=dark]{color-scheme:dark;--canvas:#111a17;--surface:#1b2722;--surface-soft:#25342d;--text:#edf5ee;--muted:#bfd0c2;--line:#40544a;--brand:#a5dfbf;--brand-strong:#c2f2d4;--brand-text:#10251b;--focus:#ffbc75;--good-bg:#204832;--good-text:#d2f4dc;--note-bg:#513c23;--note-text:#ffe7be;--shadow:0 18px 42px rgba(0,0,0,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--text);font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,input,select,textarea{border-radius:12px}button{border:1px solid transparent}input,select,textarea{color:var(--text);background:var(--surface);border:1px solid var(--line);padding:.72rem .85rem;min-height:46px}textarea{display:block;width:100%;resize:vertical}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.95rem,4.7vw,3.25rem);line-height:1.15;letter-spacing:-.035em}h2{font-size:clamp(1.45rem,3.2vw,2rem);line-height:1.2;letter-spacing:-.02em}h3{font-size:1.05rem}p{max-width:65ch}.muted,small{color:var(--muted)}.shell{min-height:100vh}.topbar{max-width:1120px;margin:auto;padding:1rem 1.25rem;display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.brand{color:var(--text);text-decoration:none;font-weight:800;font-size:1.15rem;letter-spacing:-.02em}.brand-mark{display:inline-grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:10px;margin-right:.45rem;color:var(--brand-text);background:var(--brand)}.topnav{display:flex;gap:.15rem;flex-wrap:wrap;margin-left:auto}.control,.topnav button{color:var(--text);background:transparent;padding:.5rem .72rem}.control:hover,.topnav button:hover{background:var(--surface-soft)}.topnav button[aria-current=page]{font-weight:700}.controls{display:flex;gap:.35rem;align-items:center}.control{border:1px solid var(--line);min-width:48px}.page{max-width:1120px;margin:0 auto;padding:1.1rem 1.25rem 5rem}.eyebrow{color:var(--brand);font-weight:800;letter-spacing:.11em;text-transform:uppercase;font-size:.73rem}.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(275px,.65fr);grid-gap:1.25rem;gap:1.25rem;align-items:stretch;padding-top:3rem}.hero-copy{padding:1rem .2rem}.hero-copy p{font-size:1.13rem;color:var(--muted)}.hero-panel{background:var(--surface);border:1px solid var(--line);border-radius:26px;padding:1.45rem;box-shadow:var(--shadow)}.hero-panel .step-pill{margin-top:.4rem}.hero-panel p{min-height:3.3rem}.home-intro{padding:2rem 0 .7rem}.home-intro p{color:var(--muted);font-size:1.12rem}.continue-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0 1.5rem}.continue-banner h2{font-size:1.15rem;margin:.35rem 0}.continue-banner p{margin:0;color:var(--muted)}.continue-banner .btn{flex:none}.grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem;margin-top:1.3rem}.module-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,.7fr)}.callout,.card,.lesson-shell{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:1.35rem}.interactive-card{color:var(--text);text-decoration:none;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.interactive-card:focus-visible,.interactive-card:hover{border-color:var(--brand)}.interactive-card:active{transform:translateY(0)}.card h3{margin-bottom:.35rem}.card p{color:var(--muted)}.card.locked{opacity:.82}.card .btn{margin-top:.5rem}.course-card{display:flex;flex-direction:column}.start-card{display:block;margin:1.25rem 0}.start-card h2{font-size:1.45rem;margin:.8rem 0 .4rem}.reading-route{margin:3rem 0 2rem;padding:1.4rem;border:1px solid var(--line);border-radius:22px;background:var(--surface-soft)}.reading-route-heading h2{margin:.2rem 0 .3rem}.reading-route-heading p{margin:0;color:var(--muted);max-width:62ch}.reading-route .start-card{margin:1rem 0 0;background:var(--surface)}.card-cta{display:inline-block;margin-top:.85rem;color:var(--brand)}.start-card p{margin-bottom:.6rem}.start-card .course-progress{margin-bottom:0}.start-preview{margin:1rem 0 1.5rem}.start-draft{margin-top:1.25rem;font-size:.85rem}.alphabet-entry{display:flex;align-items:center;gap:1rem;padding:1rem 1.15rem;margin:1.15rem 0;border:1px solid var(--line);border-radius:18px;background:linear-gradient(125deg,var(--surface),var(--good-bg))}.alphabet-entry-icon{display:grid;place-items:center;flex:0 0 3.5rem;height:3.5rem;border-radius:14px;background:var(--brand);color:var(--brand-text);font-size:1.25rem;font-weight:800}.alphabet-entry small,.alphabet-entry strong{display:block}.alphabet-entry strong{font-size:1.08rem}.alphabet-entry small{margin-top:.2rem;line-height:1.4}.alphabet-entry-arrow{margin-left:auto;color:var(--brand);font-size:1.45rem}.course-card h3{font-size:1.35rem;margin:1rem 0 .5rem}.course-card p{flex:1 1}.course-card .course-progress{margin-top:.4rem}.catalog-preview{margin-top:1.2rem}.catalog-preview h2{margin-bottom:.3rem}.module-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.9rem;gap:.9rem;margin-top:1.5rem}.module-item h2{font-size:1.25rem;margin:.8rem 0 .35rem}.module-item .progress-track{margin:.65rem 0}.lesson-list{display:grid;grid-gap:.8rem;gap:.8rem;margin-top:1.5rem}.lesson-item{display:flex;justify-content:space-between;align-items:center;gap:1rem}.lesson-item h2{font-size:1.25rem;margin:.25rem 0}.lesson-item p{margin:0}.lesson-item .btn{flex:none}.lesson-item-main{flex:1 1;min-width:0}.lesson-item .progress-track{margin:.45rem 0 0;height:7px}.lesson-progress-label{margin-top:.75rem}.lesson-item.is-locked{opacity:.68}.lock-mark{display:inline-grid;place-items:center;min-width:46px;min-height:46px}.badge{font-size:.8rem;border-radius:999px;padding:.25rem .6rem;font-weight:700}.badge.free{color:var(--good-text);background:var(--good-bg)}.badge.locked{color:var(--muted);background:var(--surface-soft)}.offer-teaser{margin-top:1.5rem}.offer-teaser p{margin:.5rem 0}.offer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);grid-gap:1rem;gap:1rem;align-items:start;margin-top:1.5rem}.offer-grid .callout{margin:0}.feature-list{display:grid;grid-gap:.85rem;gap:.85rem;padding-left:1.4rem}.price-slot{padding:1rem;background:var(--surface-soft);border-radius:14px;font-weight:700;margin:1.2rem 0}.lead{font-size:1.14rem;color:var(--muted)}.stack{flex-direction:column;gap:1rem}.row,.stack{display:flex}.row{align-items:center;gap:.65rem;flex-wrap:wrap}.between{justify-content:space-between}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1rem;border-radius:12px;font-weight:700;text-align:center}.btn.primary{color:var(--brand-text);background:var(--brand)}.btn.primary:hover:not(:disabled){background:var(--brand-strong)}.btn.secondary{background:var(--surface);color:var(--text)}.btn.secondary:hover:not(:disabled){background:var(--surface-soft)}.btn.quiet{color:var(--brand);background:transparent}.btn.quiet:hover:not(:disabled){background:var(--surface-soft)}.btn.danger{color:#9b2c24;border-color:#bd746d;font-size:.86rem}.btn.danger:hover:not(:disabled){background:#fff0ee}:root[data-theme=dark] .btn.danger{color:#ffafa5;border-color:#bd746d}:root[data-theme=dark] .btn.danger:hover:not(:disabled){background:#4b2926}.btn-link{color:var(--brand);background:transparent;padding:0;text-decoration:underline;text-underline-offset:3px}.action-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.25rem}.step-pill{display:inline-block;padding:.24rem .65rem;border-radius:999px;color:var(--brand);font-size:.85rem;font-weight:700}.breadcrumbs{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center;font-size:.9rem;margin-bottom:1rem;color:var(--muted)}.breadcrumbs button{padding:0;background:transparent;color:var(--brand);text-decoration:underline}.lesson-layout{grid-template-columns:minmax(215px,270px) minmax(0,1fr);align-items:start}.lesson-layout,.lesson-sidebar{display:grid;grid-gap:1rem;gap:1rem}.desktop-sections{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:1rem}.desktop-sections h2{font-size:1.08rem;margin-bottom:.8rem}.desktop-sections h2:not(:first-child){border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}.mobile-sections{display:none}.section-nav{list-style:none;padding:0;margin:0;display:grid;grid-gap:.35rem;gap:.35rem}.section-nav button{width:100%;display:flex;align-items:flex-start;gap:.6rem;text-align:left;background:transparent;color:var(--text);padding:.65rem;border-radius:12px}.section-nav button:hover{background:var(--surface-soft)}.section-nav button:disabled{cursor:not-allowed;opacity:.55}.section-nav button:disabled:hover{background:transparent}.section-nav button[aria-current=page],.section-nav button[aria-current=step]{background:var(--surface-soft);outline:1px solid var(--brand)}.section-number{display:grid;place-items:center;min-width:1.55rem;height:1.55rem;border-radius:999px;background:var(--brand);color:var(--brand-text);font-size:.78rem;font-weight:800}.section-number.is-done{background:var(--good-bg);color:var(--good-text)}.section-number.is-skipped{background:var(--note-bg);color:var(--note-text)}.section-label{font-size:.9rem;font-weight:700;line-height:1.3}.section-label small{display:block;font-size:.75rem;font-weight:400;margin-top:.2rem}.nav-hint{font-size:.77rem;line-height:1.4;margin:1rem .3rem 0}.course-progress{margin:1.25rem 0;max-width:600px}.course-progress.compact{margin:.75rem 0 0}.course-progress h2{font-size:1.12rem;margin:0}.course-progress .progress-track{margin:.7rem 0}.course-progress p{margin-bottom:.35rem;font-size:.86rem}.course-progress strong{white-space:nowrap;font-size:.85rem}.lesson-sidebar .course-progress{margin:0;padding:1rem}.lesson-sidebar .course-progress .row{align-items:flex-start}.lesson-sidebar .course-progress strong{white-space:normal}.lesson-shell{padding:clamp(1.2rem,4vw,2rem)}.progress-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.9rem;margin-bottom:.6rem}.progress-track{background:var(--surface-soft);height:9px;border-radius:999px;overflow:hidden;margin-bottom:1.8rem}.progress-fill{height:100%;border-radius:999px;transition:width .2s ease}.page-strip{display:grid;grid-template-columns:repeat(var(--step-columns),minmax(0,1fr));grid-gap:.4rem;gap:.4rem;margin:-.65rem 0 1.4rem}.page-step{display:grid;justify-items:center;grid-gap:.32rem;gap:.32rem;padding:.55rem .2rem;border-radius:11px;color:var(--muted);font-size:.73rem;text-align:center}.page-step:not(:disabled):hover,.page-step[aria-current=step]{color:var(--text);outline:1px solid var(--brand)}.page-step:disabled{opacity:.5}.page-step-number{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--surface);border:1px solid var(--line);font-size:.82rem;font-weight:800}.page-step.is-done .page-step-number{color:var(--good-text);background:var(--good-bg);border-color:transparent}.page-step.is-practice{color:var(--brand);background:var(--good-bg);font-weight:800}.page-step.is-practice .page-step-number{color:var(--brand-text);background:var(--brand);border-color:transparent}.page-step.is-practice.is-done .page-step-number{color:var(--good-text);background:var(--surface)}.page-step.needs-review .page-step-number{color:var(--note-text);background:var(--note-bg);border-color:transparent}.reading-help{margin:1.2rem 0;padding:1rem 1.15rem;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft)}.reading-help p{margin:.3rem 0 .55rem;color:var(--muted)}.reading-help a{color:var(--brand);font-weight:700;text-underline-offset:.2em}.reading-help a:hover{color:var(--brand-strong)}.lesson-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.8rem;border-top:1px solid var(--line);margin-top:2rem;padding-top:1.2rem}.lesson-action-side{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.6rem;margin-left:auto}.lesson-actions .btn:disabled{opacity:.5;cursor:not-allowed}.confirm-dialog{width:min(92vw,460px);padding:1.5rem;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.confirm-dialog::-webkit-backdrop{background:rgba(0,0,0,.62)}.confirm-dialog::backdrop{background:rgba(0,0,0,.62)}.confirm-dialog h2{margin:0 0 .6rem}.confirm-dialog p{color:var(--muted);line-height:1.5}.confirm-actions{display:flex;justify-content:flex-end;gap:.6rem;flex-wrap:wrap;margin-top:1.25rem}.lesson-shell h1{font-size:clamp(1.75rem,3vw,2.45rem)}.chapter-banner{border:1px solid var(--line);border-radius:16px;padding:1rem 1.15rem;margin-bottom:1.3rem;background:var(--surface)}.chapter-banner small,.chapter-banner strong{display:block}.chapter-banner strong{font-size:1.2rem;margin:.3rem 0}.chapter-banner p{margin:.6rem 0 0}.chapter-banner small{line-height:1.45}.scene-card{border-left:4px solid var(--brand);background:var(--surface-soft);border-radius:0 14px 14px 0;padding:.85rem 1rem;margin:1.15rem 0}.scene-card p{margin:.4rem 0 0}.learning-flow{display:grid;grid-gap:1rem;gap:1rem;margin-top:1.2rem}.learning-flow .scene-card,.practice-intro .scene-card{margin:0}.explanation{padding:1rem 0;border-bottom:1px solid var(--line)}.explanation p{margin:.55rem 0 0;line-height:1.75}.explanation p+p{margin-top:.9rem}.alphabet-explorer{padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--line);border-radius:20px;background:var(--surface-soft)}.alphabet-heading h2{font-size:clamp(1.35rem,2.5vw,1.8rem);margin:.35rem 0 .45rem}#alphabet-title{scroll-margin-top:1.5rem}.alphabet-heading p{color:var(--muted);margin:0}.alphabet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));grid-gap:.58rem;gap:.58rem;margin:1.3rem 0}.alphabet-tile{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;align-items:center;text-align:left;min-height:77px;padding:.6rem .7rem;background:var(--surface);border:1px solid var(--line);border-radius:14px;color:var(--text);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.alphabet-tile:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:var(--shadow)}.alphabet-tile[aria-pressed=true]{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand)}.alphabet-tile.is-marked{background:var(--good-bg)}.alphabet-glyph{grid-column:1/-1;line-height:1;font-size:2rem;font-weight:800}.alphabet-lower{color:var(--muted);font-size:.9rem}.alphabet-tile svg{width:1.08rem;height:1.08rem;fill:none;stroke:var(--brand);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.alphabet-player{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:86px;padding:.9rem 1rem;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.alphabet-player p{margin:.3rem 0 0;font-weight:700}.alphabet-player audio{width:min(100%,260px);flex:0 1 260px}.alphabet-player audio[hidden]{display:none}.alphabet-draft{color:var(--muted);font-size:.78rem;margin:.8rem 0 0}.language-example{margin:0;padding:1.1rem 1.25rem;border-radius:15px;border:1px solid var(--line)}.language-example figcaption{color:var(--muted);font-size:.8rem;font-weight:700;margin-bottom:.55rem}.sample-lines{color:var(--text);white-space:pre-line;overflow-wrap:anywhere;font-size:1.13rem;line-height:1.8;font-weight:650}.chat-dialogue{display:grid;grid-gap:.75rem;gap:.75rem;min-width:0}.chat-message{width:-moz-fit-content;width:fit-content;max-width:min(85%,34rem);padding:.65rem .95rem .75rem;border:1px solid var(--line);overflow-wrap:anywhere}.chat-left{justify-self:start;border-radius:18px 18px 18px 5px}.chat-right{justify-self:end;border-color:var(--brand);border-radius:18px 18px 5px 18px}.chat-speaker{display:block;color:var(--brand);font-size:.78rem;font-weight:800;margin-bottom:.15rem}.chat-message p{color:var(--text);margin:0;line-height:1.55;font-size:1.04rem;font-weight:550}.chat-note{justify-self:center;padding:.2rem .65rem;color:var(--muted);background:var(--surface-soft);border-radius:999px;text-align:center;font-size:.8rem}.practice-shell{border-top:4px solid var(--brand)}.practice-intro{margin:1.1rem 0}.practice-summary{margin:1.1rem 0 1.5rem}.practice-summary strong{display:block;font-size:.88rem}.practice-summary .progress-track{margin:.5rem 0 0}.practice-summary p{font-size:.84rem;margin:.75rem 0 0}.practice-reset{border-top:1px solid var(--line);margin-top:2rem;padding-top:.85rem}.practice-reset summary{width:-moz-fit-content;width:fit-content;cursor:pointer;color:var(--muted);font-size:.88rem}.practice-reset p{color:var(--muted);font-size:.85rem;margin:.7rem 0}.practice-stack{display:grid;grid-gap:1rem;gap:1rem}.task-card{border:1px solid var(--line);border-radius:16px;padding:1.2rem;background:var(--surface)}.task-card-head{display:flex;justify-content:space-between;color:var(--brand);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.task-card h2{font-size:1.2rem;margin:.45rem 0 .85rem}.task-card.task-complete{border-color:var(--brand)}.task-card .question{margin-top:1rem}.task-card .feedback{margin-bottom:0}.auto-hint{font-size:.8rem;margin:.5rem 0 0}.task-material{margin:1rem 0;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:14px}.task-material figcaption{color:var(--muted);font-size:.8rem;font-weight:750;margin-bottom:.6rem}.task-material-text{white-space:pre-line;line-height:1.75;font-size:1.05rem}.shared-audio{font-size:.86rem;margin:.7rem 0}.shared-audio a{color:var(--brand);font-weight:700}.theory-block p+p{margin-top:.9rem}.your-turn{margin-top:1.5rem}.feedback-detail{font-size:.9rem;opacity:.9}.lesson-footer-progress{border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.block{background:var(--surface-soft);border-radius:16px;padding:1.15rem 1.2rem;margin:1.2rem 0}.block p:last-child{margin-bottom:0}.example{font-size:clamp(1.45rem,3vw,1.8rem);font-weight:750;letter-spacing:-.02em;white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;margin:0}.question{margin-top:1.65rem;font-size:1.18rem;font-weight:700}.options{display:grid;grid-gap:.6rem;gap:.6rem;margin:1rem 0}.option{display:flex;align-items:center;gap:.75rem;border:1px solid var(--line);padding:.8rem .95rem;border-radius:12px;cursor:pointer}.option:has(input:checked){background:var(--surface-soft)}.option input{min-height:auto;accent-color:var(--brand)}.answer-fieldset{border:0;padding:0;margin:0}.audio-block audio{display:block;width:100%;margin:.7rem 0}.audio-block details{margin:.8rem 0}.audio-block summary{cursor:pointer}.transcript-hint{font-size:.85rem;margin-top:.9rem}.transcript{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;margin:1rem 0 0;padding:.9rem;border:1px solid var(--line);border-radius:10px}.transcript-dialogue{white-space:normal;padding:.85rem;background:var(--surface-soft)}@media (max-width:420px){.chat-message{max-width:93%}}.match-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:.65rem;gap:.65rem;align-items:center;margin:1rem 0}.match-grid span{font-weight:700}.order-exercise{margin-top:1rem}.order-label{color:var(--muted);font-size:.85rem;font-weight:750;margin:.8rem 0 .45rem}.assembled-phrase,.word-bank{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.assembled-phrase{min-height:78px;padding:.7rem;border:1px dashed var(--brand);border-radius:14px}.phrase-placeholder{color:var(--muted);font-size:.9rem}.word-tile{min-height:44px;padding:.45rem .8rem;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;font-weight:700}.word-tile:hover:not(:disabled){background:var(--good-bg)}.word-tile.selected-word{color:var(--brand-text);background:var(--brand);border-color:var(--brand)}.word-tile.selected-word:hover{background:var(--brand-strong)}.word-bank .word-tile:disabled{display:none}.order-hint{font-size:.82rem;margin:.75rem 0 0}.input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.8rem;gap:.8rem;margin:1rem 0}.input-grid label{display:grid;grid-gap:.35rem;gap:.35rem;font-weight:700}.feedback{padding:1rem 1.15rem;margin:1rem 0}.feedback.good{background:var(--good-bg);color:var(--good-text)}.feedback.note{background:var(--note-bg);color:var(--note-text)}.feedback p:last-child{margin-bottom:0}.phase-list{list-style:none;padding:0;margin:1rem 0;display:grid;grid-gap:.6rem;gap:.6rem}.phase-list li{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;background:var(--surface-soft);border-radius:12px}.phase-list button{padding:0;background:none;color:var(--brand);text-decoration:underline;font-weight:700}.callout{margin-top:1rem}.callout.note{background:var(--note-bg);color:var(--note-text)}.illustration{display:grid;place-items:center;width:88px;height:88px;background:var(--surface-soft);color:var(--brand);font-size:3rem;border-radius:24px;margin-bottom:1rem}.prototype-tag{display:block;width:max-content;margin:0 auto 1rem;padding:.25rem .55rem;border:1px solid var(--line);color:var(--muted);font-size:.7rem}.prototype-tag,.skip-link{border-radius:8px;background:var(--surface)}.skip-link{position:absolute;left:.75rem;top:-4rem;z-index:10;color:var(--text);padding:.5rem .8rem}.skip-link:focus{top:.65rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}footer{max-width:1120px;margin:0 auto;padding:0 1.25rem 2rem;color:var(--muted);font-size:.85rem}@media (max-width:760px){.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.55rem;gap:.55rem}.brand{font-size:1rem;white-space:nowrap}.brand-mark{width:1.9rem;height:1.9rem}.controls{grid-column:2;grid-row:1;gap:.2rem}.control{min-width:38px;padding:.35rem}.topnav{grid-column:1/-1;grid-row:2;width:100%;margin-left:0;border-top:1px solid var(--line);padding-top:.35rem;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.1rem;gap:.1rem}.topnav button{font-size:.89rem;padding:.5rem .15rem;white-space:nowrap}.hero{grid-template-columns:1fr;padding-top:1rem}.home-intro{padding-top:1.2rem}.continue-banner{display:block}.continue-banner .btn{margin-top:.8rem}.grid,.module-grid,.module-list,.offer-grid{grid-template-columns:1fr}.hero-panel{box-shadow:none}.lesson-layout{grid-template-columns:1fr}.lesson-sidebar{gap:.65rem}.desktop-sections{display:none}.mobile-sections{display:block;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:.75rem}.mobile-sections>.disclosure-head{cursor:pointer;font-weight:750}.mobile-sections .section-nav{margin-top:.65rem}.lesson-sidebar .course-progress p{display:none}.lesson-item{align-items:flex-start}}@media (max-width:420px){.page,.topbar{padding-left:1rem;padding-right:1rem}.lesson-shell{padding:1.1rem}.lesson-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.lesson-actions .btn{width:100%}.lesson-action-side{display:grid;margin:0}.action-row .btn{flex:1 1 100%}.input-grid{grid-template-columns:1fr}.alphabet-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.alphabet-tile{min-height:70px;padding:.5rem .55rem}.alphabet-glyph{font-size:1.72rem}.alphabet-player{align-items:stretch;flex-direction:column}.alphabet-player audio{flex:none;width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--canvas:#f6f4ee;--surface:#fffefa;--surface-soft:#f0f4ee;--text:#1e2923;--muted:#52635a;--line:#d5dfd5;--brand:#1d684c;--brand-strong:#15513b;--brand-text:#fff;--focus:#975007;--good-bg:#e6f4e9;--good-text:#1b5737;--note-bg:#fff1d7;--note-text:#70470a;--error-bg:#fff0eb;--error-text:#973b30;--practice:#8f561b;--practice-bg:#fff5e7;--start-bg:#edf2fa;--start-line:#cad8e9;--shadow:0 20px 50px rgba(33,56,41,.07);--shadow-small:0 5px 20px rgba(33,56,41,.045);--radius-card:22px;--radius-control:12px}:root[data-theme=dark]{--canvas:#101a17;--surface:#1b2923;--surface-soft:#25362d;--text:#f1f5ef;--muted:#bed0c3;--line:#40594a;--brand:#a1e3bd;--brand-strong:#c5f4d8;--brand-text:#10271b;--focus:#ffd18e;--good-bg:#234a34;--good-text:#d9f7e2;--note-bg:#4c3b23;--note-text:#ffebc6;--error-bg:#4a302c;--error-text:#ffd0c5;--practice:#ffd08e;--practice-bg:#3d3327;--start-bg:#222e3b;--start-line:#4a5a71;--shadow:0 22px 54px rgba(0,0,0,.18);--shadow-small:0 6px 22px rgba(0,0,0,.11)}html{scroll-padding-top:1rem}body{background-color:var(--canvas);background-image:radial-gradient(circle at 89% -15%,rgba(102,159,122,.1),transparent 34rem);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.62;-webkit-font-smoothing:antialiased}:root[data-theme=dark] body{background-image:radial-gradient(circle at 88% -12%,rgba(110,181,138,.08),transparent 38rem)}h1,h2,h3{line-height:1.18;text-wrap:balance}h1{font-size:clamp(2.1rem,4.7vw,3.45rem);letter-spacing:-.042em}h2{letter-spacing:-.028em}p{line-height:1.68}small{line-height:1.45}.page{padding-top:1.7rem}.page,.topbar{max-width:1180px}.topbar{padding-top:1.15rem;padding-bottom:1.15rem}.brand{display:inline-flex;align-items:center;gap:.55rem;font-size:1.16rem;letter-spacing:-.025em}.brand-mark{margin-right:0;width:2.35rem;height:2.35rem;border-radius:12px;box-shadow:var(--shadow-small);font-size:1.3rem}.topnav{padding:.25rem;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.topnav button{min-height:40px;padding:.5rem .85rem;border-radius:10px;font-weight:650}.topnav button[aria-current=page]{background:var(--surface-soft);color:var(--brand);box-shadow:inset 0 0 0 1px var(--line)}.control{min-width:44px;min-height:44px;background:var(--surface);border-radius:var(--radius-control)}.control:hover{border-color:var(--brand)}.eyebrow{font-size:.74rem;letter-spacing:.105em}.lead{font-size:clamp(1.05rem,1.5vw,1.18rem);max-width:68ch}.home-intro{position:relative;overflow:hidden;min-height:275px;margin-bottom:1.6rem;padding:clamp(1.5rem,4vw,3.1rem);border:1px solid var(--line);border-radius:30px;background:linear-gradient(115deg,var(--surface) 17%,var(--surface-soft));box-shadow:var(--shadow-small)}.home-intro:after{content:"ą ć ł";position:absolute;top:-3.1rem;right:-1rem;color:var(--brand);opacity:.075;font-size:clamp(7rem,17vw,14rem);font-weight:800;line-height:1.15;white-space:nowrap;pointer-events:none}.home-intro>*{position:relative;z-index:1}.home-intro h1{max-width:16ch;margin:.45rem 0 .85rem}.home-intro p{max-width:57ch;font-size:1.08rem}.catalog-preview>h2{margin-bottom:.35rem}.grid{gap:1.05rem}.callout,.card,.lesson-shell{border-radius:var(--radius-card);box-shadow:var(--shadow-small)}.interactive-card{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.interactive-card:focus-visible,.interactive-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.course-card{min-height:260px;border-top:5px solid var(--brand)}.course-card:nth-child(2){border-top-color:#7465a3}.course-card:nth-child(3){border-top-color:#ad6c39}.course-card h3{font-size:clamp(1.22rem,2vw,1.45rem)}.course-card .step-pill{font-size:.9rem}.continue-banner{padding:1.35rem 1.55rem;border-left:5px solid var(--brand);background:var(--surface)}.continue-banner h2{font-size:1.25rem}.reading-route{margin-top:3.4rem;padding:clamp(1.15rem,3vw,1.7rem);border-color:var(--start-line);border-radius:26px;background:var(--start-bg)}.reading-route-heading h2{margin-top:.3rem}.reading-route .start-card{margin-top:1.25rem;border-color:var(--start-line);border-left:5px solid #5c7797}:root[data-theme=dark] .reading-route .start-card{border-left-color:#a9c5e6}.reading-route .card-cta{display:inline-flex;align-items:center;min-height:38px}.lesson-item,.module-item{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.lesson-item h2,.module-item h2{letter-spacing:-.02em}.lesson-item{min-height:155px}.lesson-item.is-locked{background:var(--surface-soft);opacity:.84}.badge{padding:.32rem .7rem;border:1px solid transparent}.badge.free{border-color:var(--line)}.step-pill{background:var(--surface-soft)}.alphabet-entry{box-shadow:var(--shadow-small)}.btn{min-height:46px;padding:.68rem 1.08rem;border-radius:var(--radius-control);font-weight:750;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.btn:not(:disabled):active{transform:translateY(1px)}.btn.secondary{border-color:var(--line);box-shadow:var(--shadow-small)}.btn.secondary:hover:not(:disabled){border-color:var(--brand)}.btn.danger{color:var(--error-text);border-color:var(--error-text);background:transparent}.btn.danger:hover:not(:disabled){background:var(--error-bg)}:root[data-theme=dark] .btn.danger{color:var(--error-text);border-color:var(--error-text)}:root[data-theme=dark] .btn.danger:hover:not(:disabled){background:var(--error-bg)}.btn:disabled{box-shadow:none;opacity:.52}.breadcrumbs button,.btn-link{text-underline-offset:.23em}.progress-track{height:10px;background:var(--line)}.progress-fill{background:var(--brand)}.course-progress strong,.progress-meta span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lesson-layout{grid-template-columns:minmax(225px,258px) minmax(0,1fr);gap:1.2rem}.desktop-sections{box-shadow:var(--shadow-small)}.section-nav{gap:.27rem}.section-nav button{border:1px solid transparent}.section-nav button:hover{border-color:var(--line)}.section-nav button[aria-current=page],.section-nav button[aria-current=step]{outline:none;border-color:var(--brand);background:var(--surface-soft)}.section-number{flex:0 0 auto}.section-label{font-size:.91rem}.lesson-shell{min-width:0;padding:clamp(1.2rem,3.1vw,2.35rem);box-shadow:var(--shadow)}.lesson-shell h1{max-width:23ch;line-height:1.13}.page-strip{gap:.52rem;margin-top:-.6rem}.page-step{min-height:68px;padding:.6rem .35rem;border:1px solid transparent;background:var(--surface-soft)}.page-step[aria-current=step]{background:var(--surface);box-shadow:var(--shadow-small)}.page-step:not(:disabled):hover,.page-step[aria-current=step]{outline:none;border-color:var(--brand)}.page-step.is-practice{color:var(--practice);background:var(--practice-bg)}.page-step.is-practice .page-step-number{background:var(--practice);color:var(--canvas)}.page-step.is-practice[aria-current=step]{border-color:var(--practice)}.chapter-banner{padding:1.1rem 1.3rem;background:var(--surface-soft)}.chapter-banner strong{line-height:1.3}.scene-card{border-left-color:var(--brand);padding:1.05rem 1.2rem}.explanation{padding:1.1rem .15rem 1.3rem}.explanation p{max-width:68ch;font-size:1.035rem;line-height:1.78}.language-example{padding:1.25rem 1.35rem;background:var(--surface-soft);border-radius:18px}.sample-lines{font-size:1.2rem}.chat-message{padding:.8rem 1rem;box-shadow:var(--shadow-small)}.chat-left{background:var(--surface)}.chat-right{background:var(--good-bg);border-color:var(--line)}.reading-help{border-left:4px solid var(--brand)}.practice-shell{border-top:5px solid var(--practice)}.practice-shell>.progress-track .progress-fill,.practice-summary .progress-fill{background:var(--practice)}.practice-intro .scene-card{border-left-color:var(--practice);background:var(--practice-bg)}.practice-summary strong{font-size:.95rem}.task-card{padding:clamp(1.05rem,2vw,1.4rem);border-radius:18px;box-shadow:var(--shadow-small)}.task-card-head{color:var(--practice)}.task-card h2{font-size:1.27rem;line-height:1.28}.task-card.task-complete{border-color:var(--good-text)}.task-material{background:var(--surface-soft)}.question{font-size:clamp(1.07rem,1.7vw,1.2rem);line-height:1.5}.option{min-height:54px;padding:.78rem 1rem;background:var(--surface);transition:border-color .15s ease,background-color .15s ease}.option:hover{border-color:var(--brand);background:var(--surface-soft)}.option:has(input:checked){border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.option input{width:1.1rem;height:1.1rem;flex:0 0 auto;padding:0}.word-tile{box-shadow:var(--shadow-small)}.word-tile:hover:not(:disabled){border-color:var(--brand)}.assembled-phrase,.audio-block{background:var(--surface-soft)}.audio-block{margin:1rem 0;padding:1.1rem 1.2rem;border:1px solid var(--line);border-radius:16px}.audio-block p{margin:.35rem 0 .55rem}.audio-block audio{margin:.75rem 0}.feedback{border:1px solid transparent;border-radius:14px}.feedback.good{border-color:var(--good-text)}.feedback.note{border-color:var(--note-text)}.feedback.error{color:var(--error-text);background:var(--error-bg);border-color:var(--error-text)}.lesson-actions{padding-top:1.35rem}.confirm-dialog{padding:1.7rem;box-shadow:0 24px 80px rgba(0,0,0,.24)}.offer-grid>.card{border-top:5px solid var(--brand)}.price-slot{border:1px dashed var(--line);font-size:1.05rem}.offer-free-card{background:var(--start-bg);border-color:var(--start-line)}@media (max-width:760px){.page{padding-top:.9rem}.topbar{padding-bottom:.7rem}.topnav{margin-left:0;padding:.2rem}.topnav button{font-size:.86rem}.home-intro{min-height:0;padding:1.45rem;border-radius:23px}.home-intro:after{top:-.4rem;right:-.65rem;font-size:7rem}.course-card{min-height:0}.lesson-layout{grid-template-columns:1fr}.mobile-sections{border-radius:16px;box-shadow:var(--shadow-small)}.lesson-shell{border-radius:19px}.page-step{min-height:62px}.reading-route{margin-top:2.3rem}}@media (max-width:420px){.page,.topbar{padding-left:.8rem;padding-right:.8rem}.home-intro{padding:1.3rem}.home-intro:after{opacity:.045}.page-step{font-size:.7rem}.lesson-shell{padding:1.05rem}.task-card{padding:1rem}.question{font-size:1.07rem}.confirm-actions .btn{flex:1 1 100%}}@media (prefers-reduced-motion:reduce){.btn,.interactive-card,.option{transition:none}.btn:not(:disabled):active,.interactive-card:focus-visible,.interactive-card:hover{transform:none}}:root{--control-line:#677e9c;--track:#8aa0bb}:root[data-theme=dark]{--control-line:#737b8e;--track:#4b5160}.btn.secondary,.match-tile,.option,.pl-key,.sound-table,.study-audio-speed summary,.study-audio-stop,.study-select-options,.study-speed-options,.tile,.word-tile,select{border-color:var(--control-line)}.cloze input,.input-grid input,.practice-task textarea,.study-select summary{border-bottom-color:var(--control-line)}.audio-block .transcript,.option-key,.study-audio,.task-card{border-color:var(--control-line)}.study-audio-seek::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--brand) var(--seek-progress,0),var(--track) var(--seek-progress,0))}.study-audio-seek::-moz-range-track{background:var(--track)}.option:hover,.study-audio-speed summary:hover,.study-audio-stop:hover:not(:disabled),.study-select summary:hover,.word-tile:hover:not(:disabled){border-color:var(--brand)}.block-label,.card-progress,.chat-speaker,.lesson-sidebar .lesson-nav .section-label small,.lesson-sidebar .nav-hint,.lesson-sidebar .side-kicker,.page-nav .step,.page-nav .step small,.page-nav .step-status,.scene .chat-speaker,.showcase-tag,.study-audio-name small,.study-audio-time,.topbar .language-menu summary,.topbar .language-options button small{font-size:12px}@media (max-width:760px){.page-nav .step,.page-nav .step small,.page-nav .step-status{font-size:12px}}.study-audio-play{min-height:44px}.study-audio-mark{width:44px;height:44px;font-size:16px}.study-audio-stop{width:44px;height:44px;font-size:14px}.study-audio-speed summary{height:44px;min-width:64px;font-size:13px}.study-speed-options{width:96px}.study-speed-options button{min-height:44px;font-size:13px}.study-audio-seek{height:32px;min-height:32px}.study-audio-time{font-size:12px}.study-audio-play[aria-disabled=true]{cursor:default}.study-audio-play[aria-disabled=true] .study-audio-mark{opacity:.55}.study-audio-play[aria-disabled=true]:hover .study-audio-mark{background:var(--brand);color:var(--brand-text)}