@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/f4b234103afdc32a-s.11x_mcju407z-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/0b60d5f95c5f3f76-s.p.456c9vb2_utt8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/8056169c9d560660-s.p.2fl0vhx7oyatw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}._4_zrja_className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}._4_zrja_variable{--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/ffc7b595a48b6846-s.2k_u76ydap2io.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/276a8f4fe816cb6b-s.31_i6ngnt52xa.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/82b67ad56d243b47-s.2p5l8hwveaaiz.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/33ee198db9637ef4-s.1_g-53zz09yvy.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/fbb7028efdf70529-s.p.2gp_y-cmv6-ey.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/82450a180bcad83c-s.p.2ywnh8m32q6p0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.kukAba_className{font-family:Manrope,Manrope Fallback;font-style:normal}.kukAba_variable{--font-body:"Manrope", "Manrope Fallback"}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/c4e2269020e149a1-s.1i31pqskun3om.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/a36fc876a7ff883e-s.2tf78tohaw2ta.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/17126404bbb2fdbc-s.1o1rwbwcd1il6.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/66c483d8cfa7d5fd-s.2zjf5q-8tbk0-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/3e6a0adbe18de75c-s.412k-l0vbrw4v.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(../media/75334fc536fdfffd-s.3yajkaw9ed9d3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/6481e8356700f25f-s.2_7u3qf8hb00l.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/3a41be36334ec777-s.3qp6y754qyij-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/6aca2b2dd1e73eb2-s.437wgy8nypf_z.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/f0ca9ca26c218c3f-s.36f255hs6fere.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/53184f85607312d4-s.3ffd3kh1ay1yu.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/7c42b85337e0c4bb-s.0xq4un9mlaiqb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Fallback";src:local(Times New Roman);ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.0%;size-adjust:117.91%}.Znmd2a_className{font-family:"Source Serif 4","Source Serif 4 Fallback"}.Znmd2a_variable{--font-serif:"Source Serif 4", "Source Serif 4 Fallback"}
:root{--accent:var(--brand);--accent-on:var(--brand-on);--accent-ink:var(--brand);--accent-strong:var(--brand-strong);--accent-soft:var(--brand-soft);--accent-tint:color-mix(in srgb, var(--brand) 16%, #fff);--accent-line:var(--brand-line);--accent-ring:var(--brand-ring)}.course-scope{--accent:var(--course,var(--brand));--accent-on:var(--course-on,var(--brand-on));--accent-ink:var(--course-ink,var(--brand));--accent-strong:color-mix(in srgb, var(--course-ink,var(--brand)) 82%, #000);--accent-soft:var(--course-soft,var(--brand-soft));--accent-tint:color-mix(in srgb, var(--course,var(--brand)) 16%, #fff);--accent-line:var(--course-line,var(--brand-line));--accent-ring:var(--course-ring,var(--brand-ring))}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font-body-stack);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:16px;line-height:1.5}a{color:var(--accent-ink)}a:hover{color:var(--accent-strong)}button,input,select,textarea{font:inherit}h1,h2,h3,h4{line-height:1.25;font-family:var(--font-display-stack);letter-spacing:-.005em;margin:0 0 8px;font-weight:700}p{margin:0 0 12px}:focus-visible{outline:3px solid var(--accent-ink);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portal-header{background:var(--surface);border-bottom:1px solid var(--line)}.portal-header__inner{justify-content:space-between;align-items:center;gap:16px;max-width:1120px;margin:0 auto;padding:14px 24px;display:flex}.portal-header--student .portal-header__inner{max-width:calc(var(--page-width) + 2 * 64px);padding:14px 64px}.portal-header__brand{min-width:0;min-height:48px;color:var(--text);align-items:center;gap:12px;font-weight:700;text-decoration:none;display:flex}.portal-header__logo{object-fit:contain;object-position:left center;width:auto;max-width:220px;height:48px;display:block}.portal-header__name{font-family:var(--font-display-stack);font-size:19px;font-weight:700;line-height:1.2}.portal-header__actions{align-items:center;gap:12px;display:flex}.page{flex-direction:column;gap:28px;max-width:1120px;margin:0 auto;padding:28px 24px 72px;display:flex}.page h1{font-size:26px}.home-page,.outline-page,.player-page{max-width:calc(var(--page-width) + 2 * 64px);gap:32px;padding:32px 64px 80px}.home-page{gap:40px;padding-top:44px}.player-page{gap:24px}.outline-page{max-width:1248px}body:has(.outline-page) .portal-header--student .portal-header__inner{max-width:1248px}.section h2{margin-bottom:14px;font-size:20px}.section .section__title{margin-bottom:20px;font-size:26px}.btn{border-radius:var(--radius-sm);border:1px solid var(--accent);background:var(--accent);min-height:44px;color:var(--accent-on);text-align:center;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--accent-on)}.btn--outline{background:var(--surface);border-color:var(--accent-ink);color:var(--accent-ink)}.btn--outline:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.btn--ghost{color:var(--accent-ink);background:0 0;border-color:#0000;padding:6px 10px}.btn--ghost:hover{background:var(--accent-soft);color:var(--accent-strong);border-color:#0000}.btn:disabled,.btn:disabled:hover{opacity:.55;cursor:default;background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.btn--outline:disabled,.btn--outline:disabled:hover{background:var(--surface);border-color:var(--accent-ink);color:var(--accent-ink)}.btn--block{width:100%}.btn--small{min-height:34px;padding:0 12px;font-size:14px}.chip{background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;line-height:1.4;display:inline-block}.chip--level{background:var(--bg);color:var(--text);border:1px solid var(--line)}.chip--enrolled{background:var(--enrolled-soft);color:var(--enrolled)}.chip--preview{background:var(--preview-soft);color:var(--preview)}.chip--role,.chip--soon{background:var(--bg);color:var(--text-muted);border:1px solid var(--line)}.chip--muted{background:var(--surface-raised);color:var(--text-muted)}.chip--pending{background:var(--warning-soft);color:var(--warning)}.chip--on-dark{color:inherit;background:#ffffff2e}.hint{color:var(--text-muted);font-size:14px}.progress{background:var(--line-soft);border-radius:999px;height:8px;overflow:hidden}.progress__bar{background:var(--accent);border-radius:999px;height:100%}.card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:18px;display:flex}.card__title{font-size:17px;font-weight:700}.card__text{color:var(--text-muted);font-size:14px}.card__actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;display:flex}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow);padding:28px 28px 24px}.auth-card h1{font-size:26px}.form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field label{font-size:14px;font-weight:700}.field input,.field select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:44px;color:var(--text);padding:8px 12px}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius-sm);padding:10px 12px;font-size:14px}.form-success{background:var(--success-soft);color:var(--success);border-radius:var(--radius-sm);padding:10px 12px;font-size:14px}.form-links{justify-content:space-between;font-size:14px;display:flex}.locale-form{align-items:center;gap:6px;display:inline-flex}.locale-form select{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;min-height:40px;padding:6px 8px}.user-menu{position:relative}.user-menu__trigger{background:var(--brand);width:44px;height:44px;color:var(--brand-on);cursor:pointer;border:0;border-radius:50%;font-size:15px;font-weight:700}.user-menu__trigger:hover,.user-menu__trigger[aria-expanded=true]{background:var(--brand-strong)}.user-menu__trigger:focus-visible{outline-color:var(--brand)}.user-menu__panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);min-width:220px;box-shadow:var(--shadow-pop);z-index:60;flex-direction:column;align-items:stretch;gap:10px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.user-menu__panel form{display:flex}.user-menu__panel .btn{flex:1;justify-content:flex-start}.user-menu__panel .locale-form{width:100%;display:flex}.user-menu__panel .locale-form select{flex:1}.user-menu__name{border-bottom:1px solid var(--line-soft);padding:0 4px 6px;font-size:14px;font-weight:700}.my-courses{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:36px;display:grid}.course-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);grid-template-columns:minmax(160px,42%) 1fr;display:grid;overflow:hidden}.course-card__body{flex-direction:column;justify-content:center;gap:9px;padding:16px;display:flex}.page .course-card__title,.page .lib-card__title{font-family:var(--font-body-stack);letter-spacing:0;margin:0;font-size:16px;font-weight:700}.course-card__next{color:var(--text-muted);margin:0;font-size:14px}.course-card__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.course-card__percent{color:var(--text-muted);font-size:13px}.course-art{background:var(--accent);height:112px;color:var(--accent-on);position:relative;overflow:hidden}.course-art--wide{height:100%;min-height:128px}.course-art__img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.course-art__shade{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 94%, transparent) 0%, color-mix(in srgb, var(--accent) 80%, transparent) 38%, transparent 72%);position:absolute;inset:0}.course-art__text{flex-direction:column;justify-content:space-between;height:100%;padding:12px;display:flex;position:relative}.course-art__top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.course-art__line{letter-spacing:.08em;text-transform:uppercase;max-width:60%;font-size:11px;font-weight:700}.course-art__lock{color:#fff;background:#00000073;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.course-art__level{font-family:var(--font-display-stack);font-size:42px;font-weight:800;line-height:1}.course-art--wide .course-art__level{font-size:38px}.filter-row{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.filter{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:999px;padding:0 16px;font-weight:600}.filter:hover{border-color:var(--accent-ink)}.filter[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.lib-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:36px;display:grid}.test-section .card-grid{grid-template-columns:repeat(auto-fill,minmax(225px,260px))}.lib-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.lib-card__body{flex-direction:column;flex:1;align-items:flex-start;gap:8px;padding:14px;display:flex}.page .lib-card__title{font-size:15px}.lib-card__text{color:var(--text-muted);flex:1;margin:0;font-size:13px;line-height:1.45}.lib-card__actions{flex-direction:column;align-self:stretch;gap:8px;display:flex}.lib-card__actions .btn{font-size:14px}.lib-card__ask{margin:0;font-size:13px}.back-link{min-height:32px;color:var(--text-muted);align-self:flex-start;align-items:center;gap:6px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text)}.course-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.course-hero__banner{background:var(--accent);min-height:190px;color:var(--accent-on);display:flex;position:relative}.course-hero__banner :focus-visible{outline-color:var(--accent-on)}.course-hero__cover{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.course-hero__banner:after{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 96%, transparent) 0%, color-mix(in srgb, var(--accent) 86%, transparent) 45%, transparent 80%);position:absolute;inset:0}.course-hero__text{z-index:1;flex-direction:column;align-items:flex-start;gap:14px;max-width:460px;padding:28px;display:flex;position:relative}.course-hero__level{font-family:var(--font-display-stack);font-size:48px;font-weight:800;line-height:1}.page .course-hero h1{color:inherit;margin:0;font-size:26px}.btn--light,.btn--light:hover{min-height:44px;color:var(--accent-ink);background:#fff;border-color:#fff}.btn--light:hover{background:var(--accent-soft)}.course-hero__stats{flex-wrap:wrap;align-items:center;gap:12px 28px;padding:14px 20px;display:flex}.course-hero__stats .hint{margin:0}.stat{align-items:center;gap:10px;display:flex}.stat__track{stroke:var(--accent-tint)}.stat__ring{stroke:var(--accent)}.stat__text{flex-direction:column;display:flex}.stat__value{font-family:var(--font-display-stack);font-size:20px;font-weight:800;line-height:1.1}.stat__label{color:var(--text-muted);font-size:12px}.outline__units{--unit-gap:34px;gap:var(--unit-gap);flex-direction:column;margin:0;padding:18px 0 0;list-style:none;display:flex}.unit{--node-size:36px;--node-top:68px;--next-node-top:68px;padding-left:56px;scroll-margin-top:40px;position:relative}.module{scroll-margin-top:24px}.unit--welcome,.unit--extra{--node-top:18px}.unit--before-end{--next-node-top:18px}.unit__rail{left:calc(var(--node-size) / 2 - 1px);top:calc(var(--node-top) + var(--node-size));bottom:calc(-1 * (var(--unit-gap) + var(--next-node-top)));background:var(--brand-edge);border-radius:2px;width:3px;position:absolute}.unit--done .unit__rail{background:var(--accent)}.unit--last .unit__rail{display:none}.unit__node{z-index:1;left:0;top:var(--node-top);width:var(--node-size);height:var(--node-size);box-sizing:border-box;background:var(--surface);color:#8a8f97;font-family:var(--font-display-stack);border:2px solid #d9d6cf;border-radius:50%;place-items:center;font-size:15px;font-weight:800;display:grid;position:absolute}.unit--current .unit__node,.unit--extra .unit__node{border-color:var(--accent);color:var(--accent-ink)}.unit--done .unit__node{border-color:var(--accent);background:var(--accent);color:var(--accent-on)}.unit__card{background:var(--surface);border:1px solid var(--line);border-radius:18px;transition:background-color .15s,border-color .15s,box-shadow .15s;position:relative}details.unit__card:hover{background:var(--surface-sunk);border-color:#d9d2c8;box-shadow:0 4px 14px #1b1d2112}details.unit__card[open]{border-color:#d9c2b4}.unit__head{cursor:pointer;box-sizing:border-box;border-radius:18px;align-items:center;gap:28px;min-height:172px;padding:16px 22px 16px 16px;list-style:none;display:flex}.unit__card--static .unit__head,.unit__card--empty .unit__head{cursor:default}.unit--welcome .unit__head{min-height:72px;padding:12px 22px 12px 18px}.unit__photo{object-fit:cover;object-position:center;background:var(--surface-warm);border-radius:14px;flex:none;width:240px;height:140px;display:block}.unit--soon .unit__photo{opacity:.55;filter:grayscale(.4)}.unit--soon .unit__title{color:var(--text-muted)}.unit__soon{display:flex}.unit__soon .chip{white-space:nowrap}.unit--extra .unit__card{background:var(--accent-soft,var(--brand-soft));border:1px dashed var(--accent-line,var(--line-strong))}.unit--extra .unit__head{min-height:72px;padding:14px 18px}.unit--extra .unit__title{color:var(--accent-ink);font-size:20px;font-weight:800}.unit__head::-webkit-details-marker{display:none}.module__head::-webkit-details-marker{display:none}.section-block__head::-webkit-details-marker{display:none}.unit__heading{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.unit__title{font-family:var(--font-display-stack);font-size:22px;font-weight:700;line-height:1.25}.unit__progress{align-items:center;gap:10px;display:flex}.mini-bar{background:#e9e7e1;border-radius:99px;width:120px;height:6px;display:block;overflow:hidden}.mini-bar__fill{background:var(--accent);border-radius:99px;height:100%;display:block}.unit__score{align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.unit__tick{background:var(--accent);width:22px;height:22px;color:var(--accent-on);border-radius:50%;flex:none;place-items:center;display:grid}.unit__tick svg{width:12px;height:12px}.chevron-slot{flex:none;width:16px}.chevron{color:var(--text-muted);flex:none;transition:transform .25s cubic-bezier(.2,.8,.2,1)}details[open]>summary>.chevron{transform:rotate(180deg)}.unit__modules{border-top:1px solid var(--line-soft);margin:0;padding:6px 10px 10px;list-style:none}.module__head{cursor:pointer;box-sizing:border-box;border-radius:12px;align-items:center;gap:14px;min-height:58px;padding:10px 12px 10px 56px;font-size:16px;list-style:none;display:flex;position:relative}.module__head:hover{background:var(--surface-sunk)}.module__head--next,.module__head--next:hover{background:var(--accent-soft)}.module__title{flex:1;min-width:0;font-weight:500}details[open]>.module__head .module__title,.module__head--next .module__title{font-weight:700}.module__focus{z-index:30;background:var(--text);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;border-radius:8px;padding:7px 11px;font-size:12px;font-style:italic;font-weight:600;position:absolute;top:calc(100% - 4px);left:56px;box-shadow:0 6px 16px #0000002e}@media (hover:hover){.module__head:hover .module__focus{opacity:1}}.module__head:focus-visible .module__focus{opacity:1}.module__body{border-left:2px solid #eee3da;flex-direction:column;gap:1px;margin:4px 0 12px 66px;padding-left:8px;display:flex}.up-next{color:var(--accent-ink);white-space:nowrap;font-size:12px;font-weight:700}.section-block+.section-block{border-top:1px solid #eee3da;margin-top:6px}.section-block__head{cursor:pointer;box-sizing:border-box;align-items:center;gap:8px;min-height:46px;padding:8px 12px 8px 10px;list-style:none;display:flex}.section-block__head .chevron{color:var(--text-muted);margin-left:auto}.section-block__label{letter-spacing:.07em;text-transform:uppercase;color:var(--accent-ink);font-size:12.5px;font-weight:800}.rows{flex-direction:column;gap:1px;margin:0 0 6px;padding:0;list-style:none;display:flex}.row{box-sizing:border-box;min-height:46px;color:var(--text);border-radius:10px;align-items:center;gap:12px;padding:6px 12px 6px 10px;font-size:15px;font-weight:500;text-decoration:none;display:flex}a.row:hover{background:var(--surface-sunk);color:var(--text)}.row--next,a.row--next:hover{background:var(--accent-soft);font-weight:700}.row--locked{color:var(--text-muted)}.row__type{width:18px;height:18px;color:var(--accent-ink);flex:none;place-items:center;display:grid}.row--locked .row__type{color:var(--text-muted)}.row__title{flex:1;min-width:0}.row__status{flex:none;align-items:center;display:flex}@keyframes outline-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.unit__card[open]>.unit__modules>.module,.module>details[open]>.module__body>.section-block,.section-block[open]>.rows>li{animation:outline-in .26s cubic-bezier(.2, .8, .2, 1) var(--stagger,0s) both}@keyframes unit-node-fill{0%{background:var(--surface);color:#8a8f97;border-color:#d9d6cf;transform:scale(.85)}60%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes unit-tick-pop{0%{opacity:0;transform:scale(0)}70%{opacity:1;transform:scale(1.2)}to{transform:scale(1)}}@keyframes unit-rail-draw{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes unit-node-ring{0%{color:#8a8f97;box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent);border-color:#d9d6cf}60%{box-shadow:0 0 0 10px color-mix(in srgb, var(--accent) 0%, transparent)}to{box-shadow:0 0 #0000}}.unit--celebrate .unit__node{animation:.6s cubic-bezier(.2,.8,.2,1) both unit-node-fill}.unit--celebrate .unit__tick{animation:.4s cubic-bezier(.2,.8,.2,1) .45s both unit-tick-pop}.unit--celebrate .unit__rail{transform-origin:top;animation:.5s cubic-bezier(.2,.8,.2,1) .7s both unit-rail-draw}.unit--pulse .unit__node{animation:.7s ease-out 1.15s both unit-node-ring}@keyframes unit-bar-fill{0%{width:0}}.mini-bar__fill{animation:.9s cubic-bezier(.2,.8,.2,1) .2s both unit-bar-fill}@property --count{syntax:"<integer>";inherits:false;initial-value:0}@keyframes count-up{0%{--count:0}}.count-up{--count:var(--count-to);counter-reset:count var(--count);animation:.9s cubic-bezier(.33,1,.68,1) both count-up}.count-up:after{content:counter(count) "%"}@media (prefers-reduced-motion:reduce){.outline *,.outline :before,.outline :after,.course-hero .count-up{transition:none!important;animation:none!important}}.status{border-radius:50%;flex:none;place-items:center;width:16px;height:16px;display:inline-grid}.status--done{background:var(--accent);color:var(--accent-on)}.status--todo{border:2px solid var(--line-strong)}.status--half{border:2px solid var(--accent);background:linear-gradient(90deg, var(--accent) 50%, var(--surface) 50%)}.status--lock{width:auto;height:auto;color:var(--text-muted);border-radius:0}.module__head .status{width:22px;height:22px}.stars{gap:2px;display:inline-flex}.star{fill:var(--star-off);stroke:var(--star-off)}.star--on{fill:var(--star);stroke:var(--star)}.star-half{width:16px;height:16px;display:inline-block;position:relative}.star-half>svg,.star-half__fill{position:absolute;top:0;left:0}.star-half__fill{width:50%;height:100%;overflow:hidden}.star-half__fill svg{display:block}.player-crumb{min-height:32px;font-size:var(--fs-ui);color:var(--text-soft);flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.player-crumb__back{width:32px;height:32px;color:inherit;border-radius:8px;justify-content:center;align-items:center;margin-left:-8px;display:inline-flex}.player-crumb__back:hover{background:var(--accent-soft);color:var(--accent-ink)}.player-crumb__sep{color:var(--line-strong)}.player-crumb__link{color:inherit;border-radius:6px;text-decoration:none}.player-crumb__link:hover{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline}.player{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.player__top{flex-direction:column;gap:12px;padding:24px 28px 0;display:flex}.player__top--quiet{padding-top:28px}.player__title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.player__title-row:empty{display:none}.page .player__item-title{font-family:var(--font-body-stack);letter-spacing:0;color:var(--text-muted);margin:0;font-size:15px;font-weight:700}.player__top--quiet .player__title-row{justify-content:flex-end;margin-bottom:-6px}.player__top--quiet .player__title-row:not(:has(.chip)){position:absolute}.player__attempt{color:var(--text-muted);margin:-4px 0 0;font-size:13px;font-weight:700}.player__kicker{letter-spacing:.07em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 -4px;font-size:12px;font-weight:800}.player__kicker-note{letter-spacing:0;text-transform:none;color:var(--text-muted);font-weight:600}.player__dots{justify-content:space-between;margin:0;padding:0;list-style:none;display:flex;position:relative}.player__dots:before{content:"";background:var(--accent-line);height:1.5px;position:absolute;top:50%;left:11px;right:11px}.player__dots li{position:relative}.player__dot{cursor:pointer;background:0 0;border:0;border-radius:50%;width:22px;height:22px;padding:0;display:block;position:relative}.player__dot:after{content:"";background:var(--surface);border:1.5px solid var(--accent-ring);border-radius:50%;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.player__dot--seen:after{background:var(--accent-line);border-color:var(--accent-ring)}.player__dot--current:after{background:var(--accent);border-color:var(--accent);width:11px;height:11px;box-shadow:0 0 0 4px var(--accent-soft)}.player__step{outline:none;min-height:260px;padding:28px 28px 36px}.page .player__step>.player__item-title{font-family:var(--font-display-stack);color:var(--text);margin-bottom:12px;font-size:26px}.player__footer{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 28px;display:flex}.player__footer .btn{min-height:44px;font-size:var(--fs-ui);padding:0 18px}.player__footer .btn--outline{border-color:var(--line);color:var(--text-soft)}.player__footer .btn--outline:hover{background:var(--surface-sunk);border-color:var(--line-strong);color:var(--text)}.player__footer>.btn:not(.btn--outline),.player__footer-right>.btn:not(.btn--outline){padding:0 28px}.player__footer-left,.player__footer-right{flex-wrap:wrap;gap:10px;display:flex}.player__footer-right{justify-content:flex-end}.player__error{margin:0 28px 12px}.player__end{text-align:center;outline:none;flex-direction:column;align-items:center;gap:10px;padding:56px 28px 44px;display:flex}.page .player__end h1{margin:4px 0 0;font-size:30px}.player__tick{background:var(--success-fill);color:#fff;border-radius:50%;place-items:center;width:60px;height:60px;display:grid}.player__next-title{text-align:right;margin:0;padding:0 28px 16px}.player__audio{width:100%;margin-bottom:14px}.player__toggle{margin-bottom:12px}.player__transcript{background:var(--surface-sunk);border-radius:var(--radius);padding:18px 22px;line-height:1.7}.slide--source-text{max-width:680px}.slide--source-text .check__eyebrow{margin-bottom:14px}.source-text{border-radius:var(--radius);background:var(--surface-sunk);padding:22px 26px;font-size:17px;line-height:1.7}.source-text p{margin:0 0 14px}.source-text p:last-child{margin-bottom:0}.player__placeholder{border:1px dashed var(--line-strong);border-radius:var(--radius);color:var(--text-muted);padding:16px}.slide{max-width:720px}.slide__title{margin-bottom:12px;font-size:26px}.slide--intro .slide__title{font-size:32px;line-height:1.2}.slide__lead{font-size:17px;line-height:1.6}.slide__body{font-size:17px;line-height:1.65}.slide__image{aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:14px;width:100%;max-width:640px;height:auto;margin-bottom:22px;display:block}.slide__image--card{aspect-ratio:4/5;max-width:360px}.slide__image--family{aspect-ratio:4/3}.slide__image--banner{aspect-ratio:2}.slide__image--poster{aspect-ratio:16/9}.slide__image--missing{background:var(--surface-sunk);border:1px dashed var(--line-strong);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;place-items:center;font-size:13px;font-weight:700;display:grid}.slide__video{background:var(--text);border-radius:14px;margin-bottom:18px;overflow:hidden}.source-panel__body .slide__video{margin-bottom:0}.slide__video-pending{aspect-ratio:16/9;background:var(--text);color:#fff;text-align:center;border-radius:14px;place-items:center;margin-bottom:18px;padding:16px;display:grid}.slide__media-actions{justify-content:flex-end;margin:-8px 0 16px;display:flex}.slide__audio{border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:12px 16px}.slide__audio .player__audio{margin-bottom:8px}.transcript-button{align-items:center;gap:6px;display:inline-flex}.player__step:has(.slide--context){padding-bottom:32px}.slide--context{flex-direction:column;gap:24px;max-width:none;display:flex}.context{gap:var(--space-7);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.context--picture{grid-template-columns:minmax(0,1fr) 300px}.slide--context .slide__title{font-size:var(--fs-h3);margin:0;line-height:1.25}.slide--context .slide__body{max-width:640px;font-size:var(--fs-body);margin:10px 0 0;line-height:1.6}.context__image{aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:var(--radius-md);background:var(--surface-warm);width:100%;height:auto;display:block}.audio{gap:var(--space-4);flex-direction:column;display:flex}.audio__bar{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:center;gap:14px;padding:12px 16px;display:flex}.audio__play{background:var(--accent);width:44px;height:44px;color:var(--accent-on);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.audio__play:hover{background:var(--accent-strong)}.audio__track{cursor:pointer;appearance:none;background:0 0;flex:1;min-width:40px;height:22px;margin:0}.audio__track::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent) var(--audio-progress,0%), var(--line-soft) var(--audio-progress,0%));border-radius:2px;height:4px}.audio__track::-moz-range-track{background:linear-gradient(to right, var(--accent) var(--audio-progress,0%), var(--line-soft) var(--audio-progress,0%));border-radius:2px;height:4px}.audio__track::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);opacity:0;border:0;border-radius:50%;width:12px;height:12px;margin-top:-4px}.audio__track::-moz-range-thumb{background:var(--accent);opacity:0;border:0;border-radius:50%;width:12px;height:12px}.audio__track:hover::-webkit-slider-thumb{opacity:1}.audio__track:focus-visible::-webkit-slider-thumb{opacity:1}.audio__track:hover::-moz-range-thumb{opacity:1}.audio__track:focus-visible::-moz-range-thumb{opacity:1}.audio__time{font-size:var(--fs-sm);color:var(--text-faint);font-variant-numeric:tabular-nums;flex:none}.audio__transcript-toggle{border-radius:var(--radius-xs);border:1px solid var(--line);background:var(--surface);min-height:34px;font-family:inherit;font-size:var(--fs-sm);color:var(--text);cursor:pointer;flex:none;align-items:center;gap:6px;padding:0 12px;font-weight:700;display:inline-flex}.audio__transcript-toggle:hover{border-color:var(--line-strong)}.audio__transcript-toggle[aria-expanded=true]{background:var(--accent-soft)}.audio__transcript-toggle svg{transition:transform .15s}.audio__transcript-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.audio__transcript{background:var(--surface-sunk);border-radius:var(--radius);font-size:var(--fs-body);flex-direction:column;gap:12px;padding:20px 22px;line-height:1.7;display:flex}.audio__transcript[hidden]{display:none}.audio__transcript p{margin:0}.audio__labelled{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.audio__label{font-size:var(--fs-ui);font-weight:700}.audio__labelled .audio__track{width:100%}.speak-stem{border-radius:var(--radius-md);background:var(--surface-sunk);font-family:var(--font-display-stack);font-size:var(--fs-h4);margin:0;padding:22px 26px;font-weight:600;line-height:1.45}.speak-stem p{margin:0}.speak-stem--line{font-size:19px}.speak-stem .examiner-line__name{font-family:var(--font-body-stack);margin-bottom:6px}.record__button{background:var(--accent);width:72px;height:72px;color:var(--accent-on);box-shadow:var(--shadow-float);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.record__button:hover:not(:disabled){background:var(--accent-strong)}.record__button:disabled{background:var(--disabled);box-shadow:none;cursor:default}.record__button--stop{background:var(--text);box-shadow:none}.record__button--stop:hover:not(:disabled){background:#000}.record__label{font-size:var(--fs-ui);color:var(--text-faint);margin:0}.record__status--live{font-family:var(--font-display-stack);font-size:28px;font-weight:800}.record__playback{align-self:stretch}.result__attempt--saved{text-align:left}.player__top--quiet+.player__step:has(.check,.slide--opening){padding-top:20px}.player__top--quiet+.player__step:has(.slide--word_card,.slide--word_family_card){padding-top:24px}.player__step:has(.check,.slide--opening,.slide--word_card,.slide--word_family_card,.slide--video){padding-bottom:28px}.player__step:has(.slide--source-text){padding-bottom:40px}.slide__head{flex-direction:column;gap:6px;display:flex}.slide__title-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.slide__head .slide__title{margin:0}.slide__meta{font-size:var(--fs-md);color:var(--text-faint);margin:0}.slide--cover{max-width:none}.slide--cover>.slide__image{aspect-ratio:2;max-width:none;margin-bottom:28px}.slide--cover>.slide__head,.slide--cover>.slide__lead{max-width:720px}.slide--cover .slide__title{font-size:var(--fs-h1);line-height:1.2}.slide--cover>.slide__lead{font-size:var(--fs-lead);margin:12px 0 0;line-height:1.6}.slide--opening{flex-direction:column;gap:22px;max-width:none;display:flex}.slide--opening>.slide__head{order:0}.slide--opening>.slide__image{aspect-ratio:2;order:1;max-width:none;margin:0}.slide--opening>.slide__lead{max-width:820px;font-size:var(--fs-lead);white-space:pre-line;order:2;margin:0;font-weight:400;line-height:1.6}.slide--opening .slide__title{font-size:var(--fs-h3)}.slide--opening .slide__meta{font-size:var(--fs-sm);font-weight:700}.exam-badge{background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 22%, #fff);width:34px;height:34px;color:var(--accent-ink);cursor:default;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.exam-badge__tip{z-index:20;white-space:nowrap;background:var(--text);color:#fff;font-size:var(--fs-xs);border-radius:8px;padding:6px 10px;font-weight:700;display:none;position:absolute;top:40px;right:0}.exam-badge:hover .exam-badge__tip,.exam-badge:focus-visible .exam-badge__tip{display:block}.slide--word_card,.slide--word_family_card{max-width:none}.wcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.wcard--picture{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.wcard__image{aspect-ratio:4/5;object-fit:cover;object-position:center;background:var(--surface-warm);align-self:start;width:100%;height:auto;display:block}.wcard__image--family{aspect-ratio:4/3}.wcard__body{flex-direction:column;gap:12px;min-width:0;padding:22px 24px;display:flex}.wcard--family .wcard__body{gap:4px}.wcard__word{font-family:var(--font-display-stack);font-size:var(--fs-h2);overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.2}.wcard--family .wcard__word{padding-bottom:8px}.wcard__meta{font-size:var(--fs-sm);color:var(--text-faint);margin:-4px 0 0}.wcard__row{align-items:flex-start;gap:12px;display:flex}.wcard__row--first{border-top:1px solid var(--line-soft);padding-top:14px}.wcard__icon{width:30px;height:30px;color:var(--accent-ink);flex:none;place-items:center;display:grid}.wcard__meaning,.wcard__pattern,.wcard__example{margin:0;padding-top:3px}.wcard__meaning{font-size:var(--fs-lead);font-weight:600;line-height:1.5}.wcard__pattern{font-size:var(--fs-md);line-height:1.5}.wcard__label{color:var(--text-soft);font-weight:700}.wcard__example{font-size:var(--fs-body);line-height:1.55}.wcard__example strong{color:var(--accent-ink);font-weight:700}.wcard__forms{margin:0;padding:0;list-style:none}.wcard__forms li{border-top:1px solid var(--line-soft);flex-direction:column;gap:3px;padding:10px 0;display:flex}.wcard__form-head{flex-wrap:wrap;align-items:center;gap:10px;margin:0;display:flex}.wcard__form{font-size:var(--fs-lead);font-weight:700}.wcard__pos{font-size:var(--fs-sm);color:var(--text-faint)}.wcard__form-example{font-size:var(--fs-md);color:var(--text-soft);margin:0;line-height:1.55}.slide--source-text{justify-content:center;max-width:none;display:flex}.article{width:100%;max-width:680px;font-size:17px;line-height:1.6}.article--newspaper,.article--story{max-width:620px}.article__photo{aspect-ratio:16/9;object-fit:cover;object-position:center;border-radius:var(--radius-md);background:var(--surface-warm);width:100%;height:auto;margin:0 0 26px;display:block}.article__photo--empty{color:var(--text-muted);font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase;place-items:center;font-weight:700;display:grid}.article__head{flex-direction:column;display:flex}.article__label{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink,var(--brand));margin:0 0 10px;font-size:12px;font-weight:800}.page .article__title{font-family:var(--font-serif-stack);letter-spacing:-.01em;margin:0;font-size:36px;font-weight:700;line-height:1.15}.article__standfirst{color:var(--text-muted);margin:12px 0 0;font-size:20px;font-weight:400;line-height:1.45}.article__byline{font-size:var(--fs-sm);color:var(--text-soft);margin:14px 0 0;font-weight:600}.article__rule{background:var(--accent);border-radius:2px;width:40px;height:3px;margin:22px 0}.article__body{flex-direction:column;gap:18px;max-width:70ch;display:flex}.article__body p{margin:0}.article__para--tagged{padding-left:30px;position:relative}.article__para-tag{color:var(--accent-ink,var(--brand));font-weight:800;position:absolute;top:0;left:0}.page .article__subhead{margin:8px 0 -6px;font-size:19px;font-weight:700;line-height:1.35}.article--magazine .article__body>.article__para:first-child:first-letter{float:left;font-family:var(--font-serif-stack);color:var(--accent-ink,var(--brand));margin:6px 10px 0 0;font-size:3.4em;font-weight:700;line-height:.8}.article__pull{border-left:3px solid var(--accent);font-family:var(--font-serif-stack);color:var(--text);margin:6px 0;padding:14px 0 14px 20px;font-size:23px;font-style:italic;line-height:1.35}.page .article--newspaper .article__title{font-size:30px;line-height:1.2}.article--newspaper .article__standfirst{font-size:18px}.article--newspaper .article__byline{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:14px;padding:8px 0}.article--newspaper .article__head{margin-bottom:20px}.article--newspaper .article__subhead{border-top:1px solid var(--line);padding-top:14px}.article--story{font-family:var(--font-serif-stack);padding:0 clamp(0px,4vw,28px);font-size:18px;line-height:1.65}.article--story .article__head{text-align:center;align-items:center;margin-bottom:26px}.page .article--story .article__title{letter-spacing:.01em;font-size:28px;font-weight:600}.article--story .article__title:after{content:"";background:var(--line-strong);width:36px;height:1px;margin:16px auto 0;display:block}.article--story .article__standfirst{font-style:italic}.article--story .article__body{gap:0}.article--story .article__para+.article__para{text-indent:1.5em}.article__letterhead{text-align:right;color:var(--text-soft);margin-bottom:22px;font-size:15px}.article__letterhead p{white-space:pre-line;margin:0}.article__sender{color:var(--text);font-weight:700}.page .article--letter .article__title{font-family:var(--font-display-stack);font-size:20px}.article--letter .article__head{margin-bottom:16px}.article__email{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-sunk);margin:0 0 22px;padding:12px 16px;font-size:15px}.article__email div{gap:10px;padding:3px 0;display:flex}.article__email dt{width:70px;color:var(--text-muted);flex:none}.article__email dd{overflow-wrap:anywhere;min-width:0;margin:0}.page .article--blog .article__title,.page .article--academic .article__title{font-family:var(--font-display-stack);font-size:30px}.article__author{align-items:center;gap:12px;margin-top:16px;display:flex}.article__avatar{object-fit:cover;border-radius:50%;flex:none;width:40px;height:40px}.article__avatar--initial{background:var(--accent-soft,var(--brand-soft));color:var(--accent-ink,var(--brand));place-items:center;font-weight:800;display:grid}.article__author-text{font-size:var(--fs-sm);flex-direction:column;line-height:1.35;display:flex}.article__author-name{font-weight:700}.article__author-date{color:var(--text-muted)}.article--blog .article__head,.article--academic .article__head{margin-bottom:22px}.article--panel{font-size:15px}.page .article--panel .article__title{font-size:24px}.article--panel .article__standfirst{font-size:16px}.article--panel .article__photo{margin-bottom:16px}.article--panel .article__pull{font-size:18px}.source-panel__body .article__body p{margin:0}.slide--video{flex-direction:column;gap:16px;max-width:none;display:flex}.slide--video>.slide__head{padding-bottom:8px}.slide--video .slide__video,.slide--video .slide__video-pending{margin:0}.audio--transcript-only{align-items:flex-start}.audio--transcript-only>.audio__transcript{align-self:stretch}.check{flex-direction:column;gap:18px;display:flex}.check__eyebrow{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:13px;font-weight:800}.check__prompt{border-radius:var(--radius);background:var(--surface-sunk);font-size:20px;font-weight:var(--question-weight,500);text-wrap:pretty;margin:0;padding:20px 22px;line-height:1.55}.check__options{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.check__options--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check__options--row{grid-template-columns:repeat(3,minmax(0,1fr))}.check__option{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);min-height:56px;color:var(--text);text-align:left;font-size:var(--fs-lead);font-weight:var(--option-weight,700);overflow-wrap:anywhere;cursor:pointer;align-items:center;gap:10px;padding:10px 18px;line-height:1.35;display:flex}.check__options--long .check__option{font-size:var(--fs-md)}.check__option:hover:not(:disabled){border-color:var(--accent-ink)}.check__option:disabled{cursor:default}.check__option--chosen{border:2px solid var(--accent);background:var(--accent-soft);padding:9px 17px}.check__option--right{border-color:var(--success-fill);background:var(--success-soft)}.check__option--wrong{border-color:var(--danger);background:var(--danger-soft)}.check__option--right:after,.check__option--wrong:after{margin-left:auto;font-size:14px;font-weight:800}.check__option--right:after{content:"✓" / "";color:var(--success)}.check__option--wrong:after{content:"✕" / "";color:var(--danger)}.check__typed{flex-wrap:wrap;gap:10px;display:flex}.check__input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);max-width:520px;min-height:56px;color:var(--text);flex:260px;padding:0 18px;font-size:17px;font-weight:700}.check__input:focus{border-color:var(--accent)}.check__input--right{border:2px solid var(--success-fill);background:var(--success-soft)}.check__input--wrong{border:2px solid var(--danger);background:var(--danger-soft)}.check__typed .btn{min-height:56px}.check__result:empty{display:none}.check__feedback{border-radius:var(--radius);padding:14px 16px}.check__feedback p:last-child{margin-bottom:0}.check__feedback--right{background:var(--success-soft)}.check__feedback--wrong{background:var(--danger-soft)}.check__verdict{margin-bottom:4px;font-weight:800}.check__feedback--right .check__verdict{color:var(--success)}.check__feedback--wrong .check__verdict{color:var(--danger)}.match{flex-direction:column;gap:10px;display:flex}.match__row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px;display:grid}.match__item{font-weight:700}.match__select{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:48px;color:var(--text);padding:8px 10px;font-size:16px}.match__select:focus{border-color:var(--accent)}.order{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.order__line,.order__pool{flex-wrap:wrap;gap:8px;width:100%;display:flex}.order__line{border:1.5px dashed var(--line-strong);border-radius:var(--radius);align-items:center;min-height:60px;padding:8px}.order__empty{color:var(--text-muted);padding:0 6px}.order__piece{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;padding:6px 14px;font-size:16px;font-weight:600}.order__piece:hover:not(:disabled){border-color:var(--accent-ink)}.order__piece--placed{border:2px solid var(--accent);background:var(--accent-soft)}.order__piece--gone{visibility:hidden}.order__clear{align-self:flex-start}.task__kept{color:var(--success);margin:0;font-size:14px;font-weight:700}.result{flex-direction:column;gap:12px;display:flex}.page .result>.result__title{margin:0;font-size:26px}.result__hero{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:28px 0 20px;display:flex}.page .result__hero .result__title{font-family:var(--font-body-stack);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:13px;font-weight:800}.result__hero .stars{gap:8px}.result__hero .star,.result__hero .star-half,.result__hero .star-half svg{width:40px;height:40px}.result__attempt{font-size:var(--fs-sm);color:var(--text-faint);margin:0;font-weight:700}.result__big{font-family:var(--font-display-stack);margin:4px 0 0;font-size:30px;font-weight:700;line-height:1.2}.result__pct{color:var(--text-muted);margin:-4px 0 0;font-size:15px}.result__hero .hint{margin:0}.result__list{flex-direction:column;gap:10px;margin:8px 0 0;padding:0;list-style:none;display:flex}.result__item{border-radius:var(--radius);border:1px solid var(--panel-border);background:var(--surface);padding:14px 16px}.result__item p,.result__answer{margin:0 0 4px}.result__head{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.result__mark{color:var(--danger);font-size:15px}.result__item--right .result__mark{color:var(--success)}.result__item--part .result__mark,.result__points{color:var(--warning)}.result__points{text-transform:none;letter-spacing:0;margin-left:auto}.result__prompt{font-weight:600}.result__label{color:var(--text-muted)}.result__pairs{margin:4px 0 0;padding-left:18px}.result__feedback{font-size:15px}.result__attempts{margin:4px 0 0}.result__answer--key{background:var(--surface);border-radius:8px;margin-top:6px;padding:8px 10px}.result__answer--key .result__label{color:var(--success);font-weight:700}.result__accept{margin:4px 0 0;font-size:14px}.pending-mark{border-radius:var(--radius);border:1px solid var(--accent-tint);background:var(--accent-soft);flex-direction:column;gap:6px;padding:16px 18px;display:flex}.pending-mark p{margin:0}.pending-mark__badge{background:var(--accent);color:var(--accent-on);border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:13px;font-weight:700}.saved-essay summary{cursor:pointer;padding:6px 0;font-weight:700}.saved-essay__text{border-radius:var(--radius);background:var(--surface-sunk);white-space:pre-wrap;margin-top:10px;padding:14px 16px;line-height:1.6}.saved-essay__text p{margin:0 0 10px}.exam-task:not(.round){max-width:800px;font-size:var(--fs-lead);border-radius:var(--radius);background:var(--accent-soft);border:1px solid var(--panel-border);padding:20px 24px}.page .exam-task:not(.round)>.slide__title{font-family:var(--font-body-stack);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);align-items:center;gap:8px;margin:0 0 10px;font-size:13px;font-weight:800;display:flex}.exam-task .slide__body{font-weight:500}.exam-task__prompt{font-weight:700}.exam-task__prompts{margin:0 0 12px;padding-left:20px}.exam-task__meta{color:var(--text-muted);margin:0;font-size:14px;font-weight:700}.essay{flex-direction:column;gap:8px;display:flex}.essay__label{font-weight:700}.essay__area{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:320px;font:inherit;resize:vertical;background:var(--surface);color:var(--text);padding:12px 14px;font-size:16px;line-height:1.6}.essay__area:focus{border-color:var(--accent)}.essay__count{color:var(--text-muted);align-self:flex-end;margin:0;font-size:14px;font-weight:800}.essay__count--ok{color:var(--success)}.confirm-submit{border:1px solid var(--accent-tint);border-radius:var(--radius);background:var(--accent-soft);margin:0 28px 12px;padding:14px 16px}.confirm-submit p{margin:0 0 10px}.confirm-submit__buttons{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.record{flex-direction:column;gap:16px;display:flex}.record__panel{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;align-items:center;gap:12px;padding:24px 16px;display:flex}.record__panel--live{border-color:var(--accent)}.record__panel--live .record__time{font-size:18px}.record__panel .btn{border-radius:999px;min-width:160px;min-height:52px}.record__time{font-family:var(--font-display-stack);font-variant-numeric:tabular-nums;margin:0;font-size:28px;font-weight:800}.record__max{font-family:var(--font-body-stack);color:var(--text-muted);font-size:16px;font-weight:500}.record__status{align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.record__status--done{color:var(--success)}.record__dot{background:var(--accent);border-radius:50%;width:12px;height:12px;animation:1s infinite record-pulse}@keyframes record-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.record__dot{animation:none}}.record__panel .player__audio{width:100%;max-width:420px}.record__meter{background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;width:100%;max-width:260px;height:8px;overflow:hidden}.record__meter-fill{background:var(--success-fill);height:100%;transition:width .1s linear;display:block}@media (prefers-reduced-motion:reduce){.record__meter-fill{transition:none}}.record__silent{text-align:center;margin:0}.player-page:has(.source-button){padding-bottom:96px}.source-button{z-index:50;background:var(--accent);width:56px;height:56px;color:var(--accent-on);box-shadow:var(--shadow-float);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;bottom:32px;right:32px}.source-button:hover{background:var(--accent-strong)}.source-panel{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);width:min(440px,100vw - 32px);max-height:min(72vh,600px);box-shadow:var(--shadow-pop);outline:none;flex-direction:column;display:flex;position:fixed;bottom:100px;right:32px}.source-panel__close{background:var(--surface-raised);width:32px;height:32px;color:var(--text-soft);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;margin-left:auto;padding:0;display:grid}.source-panel__close:hover{background:var(--line);color:var(--text)}.source-panel[hidden]{display:none}.source-panel__head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:8px;padding:12px 12px 10px 20px;display:flex}.page .source-panel__title{font-family:var(--font-display-stack);margin:0;font-size:18px;font-weight:700}.source-panel__body{padding:14px 20px 18px;font-size:15px;line-height:1.65;overflow-y:auto}.source-panel__body p{margin:0 0 12px}.extract{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;gap:16px;padding:18px 20px;display:flex}.extract+.extract{margin-top:14px}.extract__head{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.extract__text{flex-direction:column;flex:200px;gap:6px;min-width:0;display:flex}.page .extract__title{font-family:var(--font-display-stack);font-size:var(--fs-h4);margin:0;font-weight:700;line-height:1.15}.source-panel__body .extract__context{font-size:var(--fs-body);color:var(--text-soft);margin:0;line-height:1.5}.extract__image{object-fit:cover;border-radius:var(--radius);flex:none;width:120px;height:80px;margin:0;font-size:11px;display:block}.counted-audio{grid-template-columns:auto 1fr;align-items:center;gap:8px 16px;display:grid}.counted-audio__button{background:var(--accent);width:56px;height:56px;color:var(--accent-on);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.counted-audio__button:hover:not(:disabled){background:var(--accent-strong)}.counted-audio__button:disabled{background:var(--disabled);cursor:default}.counted-audio__bar{background:var(--brand-edge);border-radius:999px;height:6px;overflow:hidden}.counted-audio__bar span{background:var(--accent);height:100%;display:block}.counted-audio__plays,.source-panel__body .counted-audio__plays{font-size:var(--fs-sm);color:var(--text-soft);grid-column:1/-1;margin:0;font-weight:600}.counted-audio--done .counted-audio__bar span{background:var(--text-muted)}.writing-plan{border-radius:var(--radius);background:var(--surface-sunk);margin-top:18px;padding:16px 20px}.page .writing-plan__title{margin:0 0 8px;font-size:17px}.writing-plan__list{margin:0;padding-left:20px}.writing-plan__list>li+li{margin-top:8px}.writing-plan__name{margin:0 0 2px;font-weight:700}.writing-plan__phrases{color:var(--text-muted);margin:0;padding-left:18px}.writing-plan__details .writing-plan{margin-top:10px}.examiner-line{border:1px solid var(--panel-border);border-radius:var(--radius);background:var(--accent-soft);margin:0 0 14px;padding:14px 18px}.examiner-line p{margin:0}.examiner-line .check__prompt{font-family:var(--font-display-stack);background:0 0;padding:0;font-size:20px;font-weight:600;line-height:1.45}.examiner-line__name{letter-spacing:.05em;text-transform:uppercase;color:var(--accent-ink);font-size:13px;font-weight:800;margin-bottom:4px!important}.saved-recordings{flex-direction:column;gap:12px;margin:0;padding-left:20px;display:flex}.saved-recordings__q{margin:0 0 4px;font-weight:700}.saved-recordings__who{color:var(--text-muted)}.saved-recordings__heard{margin-top:4px}.saved-recordings__heard summary{cursor:pointer;color:var(--accent-ink);padding:6px 0;font-weight:700}.saved-recordings__transcript{border-radius:var(--radius-sm);border:1px solid var(--panel-border);background:var(--surface-sunk);white-space:pre-wrap;margin:6px 0 0;padding:10px 14px}.saved-recordings__note{margin-left:-20px;list-style:none}.speaking-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;margin:14px 0;padding:16px 18px}.speaking-card__questions{margin:0 0 12px;padding-left:20px;font-weight:700}.speaking-card__central{font-family:var(--font-display-stack);text-align:center;margin:0 0 12px;font-size:20px;font-weight:700}.speaking-card__prompts{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.speaking-card__prompts li{background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;padding:6px 12px;font-weight:600}.speaking-card__photos{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.speaking-card__photo.slide__image{border-radius:10px;max-width:none;margin:0}.partner-turn{grid-template-columns:120px 1fr;align-items:start;gap:14px;display:grid}.partner-turn__picture.slide__image{border-radius:12px;width:120px;max-width:120px;margin:0}.partner-turn__line{margin-bottom:0}.marking__now{align-items:center;gap:10px;font-weight:700;display:flex}.marking__spinner{border:2px solid var(--accent-tint);border-top-color:var(--accent);border-radius:50%;flex:none;width:16px;height:16px;animation:.9s linear infinite marking-spin}@keyframes marking-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.marking__spinner{animation:none}}.marking__retry{align-self:flex-start}.feedback{flex-direction:column;gap:16px;display:flex}.feedback__head{background:var(--accent-soft);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;display:flex}.page .feedback__title{margin:0;font-size:20px}.feedback__total{font-family:var(--font-display-stack);color:var(--accent-ink);margin:0;font-size:34px;font-weight:800;line-height:1}.feedback__teacher{margin:0;font-weight:700}.feedback__overall{margin:0;font-size:16px;line-height:1.65}.feedback__criteria{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.feedback__criterion,.feedback__part{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px 18px}.feedback__criterion p,.feedback__part p{margin:6px 0 0;line-height:1.6}.feedback__part>p:first-of-type{margin-top:0}.feedback__criterion-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.page .feedback__criterion-head h4{margin:0;font-size:17px}.feedback__band{background:var(--accent-soft);color:var(--accent-ink);font-family:var(--font-display-stack);border-radius:999px;flex:none;padding:3px 12px;font-weight:800}.page .feedback__label{font-family:var(--font-body-stack);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin:10px 0 4px;font-size:12px;font-weight:800}.page .feedback__part>.feedback__label{color:var(--accent-ink);margin-top:0}.feedback__fixes ul,.feedback__phrases ul,.feedback__changes{margin:0;padding-left:20px}.feedback__fixes li,.feedback__phrases li,.feedback__changes li{margin:3px 0;line-height:1.55}.feedback__next{border-radius:var(--radius);background:var(--success-soft);padding:16px 18px}.feedback__next p{margin:0}.page .feedback__next .feedback__label{color:var(--success);margin-top:0}.feedback__phrases{border-radius:var(--radius);background:var(--surface-sunk);padding:16px 18px}.page .feedback__phrases .feedback__label{margin-top:0}.feedback__changes s{color:var(--danger)}.feedback__estimate{margin:0}.feedback__part ul,.feedback__improve{flex-direction:column;gap:10px;margin:0;padding-left:20px;display:flex}.feedback__improve li p+p{margin-top:4px}.feedback__said-label{color:var(--text-muted);font-size:13px;font-weight:700}.feedback__said q{color:var(--text-muted);font-style:italic}.feedback__better strong{color:var(--success)}.test-banner{border-radius:var(--radius);background:var(--accent-soft);color:var(--text);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;padding:10px 14px;font-size:14px;display:flex}.test-banner--pending{background:var(--warning-soft);color:var(--warning)}.test-editions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.test-editions a.chip{text-decoration:none}.test-section h2{margin:0 0 4px;font-size:18px}.test-section .card-grid{margin-top:8px}.test-pending{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.test-pending li{flex-wrap:wrap;align-items:baseline;gap:2px 10px;display:flex}.row__badges{flex-wrap:wrap;flex:none;gap:4px;display:inline-flex}.test-courses{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.test-courses__course{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.test-courses__head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.test-courses__title{font-weight:700}.test-courses__editions{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.test-courses__editions li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:900px){.portal-header--student .portal-header__inner{padding:12px 24px}.home-page,.outline-page,.player-page{padding-left:24px;padding-right:24px}.course-card{grid-template-columns:minmax(0,1fr)}.course-art--wide{height:132px;min-height:0}.course-hero__banner:after{display:none}.course-hero__text{background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 94%, transparent) 0%, color-mix(in srgb, var(--accent) 90%, transparent) calc(100% - 76px), transparent 100%);max-width:none;padding-right:76px}}@media (max-width:640px){.portal-header__inner,.portal-header--student .portal-header__inner{gap:12px;padding:12px 16px}.portal-header__logo{max-width:180px;height:40px}.page{gap:20px;padding:20px 16px 64px}.home-page,.outline-page{gap:20px;padding:20px 16px 72px}.player-page{gap:16px;padding:20px 12px 72px}.page h1,.section .section__title{font-size:22px}.section .section__title{margin-bottom:14px}.auth-card{padding:22px 18px}.my-courses,.lib-grid{grid-template-columns:minmax(0,1fr);gap:20px}.course-card{grid-template-columns:minmax(0,1fr)}.course-art--wide{height:112px;min-height:0}.filter-row{margin-bottom:20px}.course-hero__banner{min-height:0;display:block}.course-hero__cover{aspect-ratio:2;height:auto;display:block;position:static}.course-hero__text{background:0 0;padding:18px 18px 20px}.course-hero__level{font-size:36px}.page .course-hero h1{font-size:22px}.course-hero__text .btn--light{align-self:stretch}.course-hero__stats{gap:12px 20px;padding:12px 16px}.outline__units{--unit-gap:20px;padding-top:0}.unit{--node-size:28px;--node-top:28px;--next-node-top:28px;padding-left:40px}.unit--welcome,.unit--extra{--node-top:22px}.unit--before-end{--next-node-top:22px}.unit__node{font-size:12px}.unit__head,.unit--welcome .unit__head{gap:14px;min-height:96px;padding:12px}.unit--welcome .unit__head,.unit--extra .unit__head{min-height:72px}.unit__photo{border-radius:10px;width:96px;height:72px}.unit__title{font-size:16px}.unit--extra .unit__title{font-size:18px}.unit__heading{gap:8px}.mini-bar{width:100%;max-width:120px}.unit__modules{padding:4px 4px 8px}.module__head{padding-left:12px}.module__focus{display:none}.module__body{margin-left:20px}.row__badges{flex-direction:column;align-items:flex-end}.row__badges .chip{padding:1px 6px;font-size:11px}.player{border-radius:14px}.player__top{padding:18px 16px 0}.player__top--quiet{padding:28px 16px 0}.player__step{min-height:0;padding:20px 16px 24px}.player__top--quiet+.player__step{padding-top:28px}.player__step:has(.slide--context){padding-bottom:32px}.player__footer{padding:16px}.player__footer:has(.player__footer-right){flex-direction:column-reverse;align-items:stretch}.player__footer-left,.player__footer-left .btn{width:100%}.player__footer:has(.player__footer-right)>.btn{width:100%}.player__footer-left{flex-direction:column}.player__footer-right .btn{flex:1 1 0}.player__error{margin:0 16px 12px}.player__next-title{text-align:left;padding:0 16px 12px}.confirm-submit{margin:0 16px 12px}.slide__title{font-size:22px}.slide--intro .slide__title{font-size:26px}.slide__lead,.slide__body{font-size:16px}.slide--opening>.slide__image{aspect-ratio:2}.slide--opening .slide__title{font-size:22px}.slide--cover .slide__title{font-size:26px}.wcard--picture{grid-template-columns:minmax(0,1fr)}.wcard__image{border-radius:var(--radius-md);width:min(100%,260px);margin:20px auto 0}.wcard__image--family{border-radius:0;width:100%;margin:0}.wcard__body{padding:18px 18px 20px}.wcard__word{font-size:26px}.check__prompt{padding:16px 18px;font-size:20px}.page .article__title{font-size:28px}.page .article--newspaper .article__title,.page .article--story .article__title,.page .article--blog .article__title,.page .article--academic .article__title{font-size:24px}.article__standfirst{font-size:17px}.article__pull{font-size:19px}.article--story{padding:0}.article__photo{margin-bottom:18px}.context--picture{grid-template-columns:minmax(0,1fr);gap:20px}.context__image{order:-1}.slide--context{gap:24px}.slide--context .slide__title{font-size:22px}.slide__image{aspect-ratio:4/3;margin-bottom:18px}.slide__image--card{aspect-ratio:4/5;max-width:280px}.slide__image--banner{aspect-ratio:2}.slide__image--poster{aspect-ratio:16/9}.check__prompt{padding:16px 18px}.extract__head{flex-direction:column;align-items:stretch}.extract__text{flex:none}.extract__image{aspect-ratio:4/3;width:100%;height:auto}.page .extract__title{font-size:22px}.source-text{padding:16px;font-size:16px}.check__options--grid,.check__options--row{grid-template-columns:minmax(0,1fr)}.check__option{min-height:52px}.match__row{grid-template-columns:minmax(0,1fr);gap:8px}.result__big{font-size:26px}.result__hero .star,.result__hero .star-half,.result__hero .star-half svg{width:34px;height:34px}.exam-task:not(.round){padding:16px}.feedback__head{padding:14px 16px}.feedback__total{font-size:30px}.feedback__criterion,.feedback__part,.feedback__next,.feedback__phrases{padding:14px}.source-button{bottom:16px;right:16px}.source-panel{width:auto;bottom:80px;left:16px;right:16px}.partner-turn{grid-template-columns:88px 1fr}.partner-turn__picture.slide__image{width:88px;max-width:88px}.speaking-card__photos{grid-template-columns:minmax(0,1fr)}}.md-block{display:block}.md-block+.md-block{margin-top:var(--para-gap)}.word-mark{background:var(--accent-soft,var(--brand-soft));color:var(--accent-ink,var(--brand));-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;margin:0 -3px;padding:0 3px;font-weight:800}.listen-for{margin-top:12px}.listen-for__label,.missed__label{font-size:var(--fs-md);color:var(--text-faint);margin:0 0 8px}.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chips--centre{justify-content:center}.chips__chip{border-radius:var(--radius-pill);background:var(--accent-soft,var(--brand-soft));color:var(--accent-ink,var(--brand));font-size:var(--fs-sm);padding:4px 12px;font-weight:700}.missed{text-align:center;margin-top:8px}.wcard__word-row{align-items:center;gap:12px;display:flex}.speak-button{border:1px solid var(--brand-edge);background:var(--surface);width:32px;height:32px;color:var(--accent-ink,var(--brand));cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.speak-button:hover,.speak-button--playing{background:var(--accent-soft,var(--brand-soft))}.wcard__meta{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.tone-tag{border-radius:var(--radius-pill);font-size:var(--fs-xs);padding:2px 10px;font-weight:700}.tone-tag--positive{background:var(--success-soft);color:var(--success)}.tone-tag--negative{background:var(--danger-soft);color:var(--danger)}.word-list{margin:0;padding:0;list-style:none}.word-list__entry{border-top:1px solid var(--line-soft);padding:10px 0}.word-list__entry:first-child{border-top:0;padding-top:0}.source-panel__body .word-list__head{align-items:center;gap:8px;margin:0;display:flex}.word-list__word{font-weight:800;font-size:var(--fs-body)}.word-list .speak-button{width:26px;height:26px}.source-panel__body .word-list__meaning{font-size:var(--fs-sm);color:var(--text-faint);margin:2px 0 0;line-height:1.5}.extract-step .extract{padding:16px 18px}.extract-step .extract__context{font-size:var(--fs-body);color:var(--text-soft);margin:0;line-height:1.5}.extract-step__questions{flex-direction:column;gap:22px;margin:18px 0 0;padding:0;list-style:none;display:flex}.check__prompt--numbered{gap:10px;display:flex}.check__number{color:var(--accent-ink,var(--brand));flex:none;font-weight:800}.gap-mark{color:var(--accent-ink,var(--brand));font-weight:700}.check__typed-label{font-size:var(--fs-sm);color:var(--text-soft);flex:1 0 100%;margin-bottom:-4px;font-weight:700}.kwt p{margin:0}.kwt__key{background:var(--accent-soft,var(--brand-soft));color:var(--accent-ink,var(--brand));letter-spacing:.08em;border-radius:6px;margin:14px 0;padding:2px 12px;font-weight:800;display:inline-block}.kwt__gap{vertical-align:baseline;border-bottom:3px solid var(--text);width:min(270px,40%);height:1em;margin:0 6px;display:inline-block}.writing-task{gap:var(--para-gap);flex-direction:column;max-width:820px;margin-top:22px;display:flex}.writing-task__para{font-size:var(--fs-body);margin:0;line-height:1.65}.writing-task__prompt{font-weight:700}.source-panel .writing-task{margin-top:0}.sections{flex-direction:column;gap:18px;max-width:704px;display:flex}.phrase-box{border-radius:var(--radius);background:var(--bg);border:1px solid var(--panel-border);padding:16px 20px}.phrase-box__label{font-size:var(--fs-md);margin:0 0 8px;font-weight:700}.phrase-box ul{font-size:var(--fs-md);flex-direction:column;gap:4px;margin:0;padding-left:20px;line-height:1.5;display:flex}.sections__box{flex-direction:column;gap:8px;display:flex}.sections__label{font-size:var(--fs-sm);font-weight:700}.sections__area{min-height:0}.review{flex-direction:column;gap:16px;max-width:760px;display:flex}.review__text{border-radius:var(--radius);background:var(--surface-sunk);font-size:var(--fs-body);padding:20px 22px;line-height:1.7}.review__text p{margin:0 0 12px}.review__text p:last-child{margin-bottom:0}.review__empty{color:var(--text-faint);margin:0}.fab-stack{z-index:50;flex-direction:column-reverse;gap:12px;display:flex;position:fixed;bottom:32px;right:32px}.fab-stack .source-button{position:static}.fab-stack .source-button~.source-button{background:var(--surface);color:var(--accent-ink,var(--brand));border:1.5px solid var(--accent,var(--brand))}.fab-stack .source-panel{bottom:168px}.round>.slide__image,.round>.audio,.round>.hint{order:1}.round>.slide__lead{order:2}.round>.speaking-card{order:3}.record>:not(.slide__head){max-width:704px}@media (max-width:640px){.fab-stack{bottom:16px;right:16px}.fab-stack .source-panel{bottom:140px}}.btn:not(.btn--outline):disabled,.btn:not(.btn--outline):disabled:hover,.btn--off,.btn--off:hover{background:var(--disabled);border-color:var(--disabled);color:#fff;opacity:1}.section-block__count{color:var(--text-soft);white-space:nowrap;font-size:12px;font-weight:600}.row__type--exam{color:var(--accent)}.check__mine{color:var(--accent-ink);margin-top:4px;font-size:12px;font-weight:700;display:block}.check__input--mine{border:2px solid var(--accent);background:var(--accent-soft)}.result__end{text-align:center;margin-top:14px}.submitted{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:260px;display:flex}.feedback__retry{justify-content:flex-end;margin-top:24px;display:flex}.submit-wrap{display:inline-flex;position:relative}.submit-tip{background:var(--text);color:#fff;z-index:30;border-radius:8px;width:max-content;max-width:260px;padding:8px 12px;font-size:13px;font-weight:600;line-height:1.35;position:absolute;bottom:calc(100% + 8px);right:0}.feedback-pop__backdrop{z-index:60;background:#1b1d2173;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.feedback-pop{background:var(--surface);border-radius:16px;outline:none;flex-direction:column;width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;box-shadow:0 18px 48px #00000038}.feedback-pop__head{justify-content:space-between;align-items:center;padding:18px 24px 10px;display:flex}.feedback-pop__title{letter-spacing:.07em;text-transform:uppercase;color:var(--accent-ink);margin:0;font-size:13px;font-weight:800}.feedback-pop__close{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;width:36px;height:36px;font-size:20px;line-height:1}.feedback-pop__bar{gap:4px;padding:0 24px 8px;display:flex}.feedback-pop__seg{background:var(--line-soft);border-radius:2px;flex:1;height:4px}.feedback-pop__seg--on{background:var(--accent)}.feedback-pop__body{padding:8px 24px 16px;overflow-y:auto}.feedback-pop__question{font-family:var(--font-display-stack);margin:0 0 14px;font-size:19px;font-weight:700;line-height:1.4}.feedback-pop__rows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.feedback-pop__row{border:1px solid var(--line-soft);border-radius:10px;gap:12px;padding:12px 14px;display:flex}.feedback-pop__row--right{background:var(--success-softer);border-color:var(--success-soft)}.feedback-pop__row--mine{background:var(--danger-softer);border-color:var(--danger-soft)}.feedback-pop__sym{color:var(--danger-fill);flex:none;font-weight:800}.feedback-pop__row--right .feedback-pop__sym{color:var(--success-fill)}.feedback-pop__option{margin:0;font-weight:700}.feedback-pop__tag{background:var(--danger-soft);color:var(--danger);border-radius:999px;margin-left:8px;padding:1px 8px;font-size:12px;font-weight:700}.feedback-pop__why{color:var(--text-soft);margin:4px 0 0;font-size:15px}.feedback-pop__accept{font-weight:500}.mark-step{text-align:center;padding:12px 0 4px}.mark-stars{justify-content:center;display:flex}.mark-stars .stars{gap:8px}.mark-stars .star,.mark-stars .star-half,.mark-stars .star-half svg{width:40px;height:40px}.mark-step__standard{color:var(--text-soft);margin:6px 0 14px;font-size:15px}.mark-step__summary{text-align:left;max-width:52ch;margin:0 auto;font-size:17px;line-height:1.55}.mark-step__count{margin:0 0 4px}.mark-step__comment{margin:14px 0 12px;font-size:16px;line-height:1.55}.mark-part{border:1px solid var(--panel-border);background:var(--surface-sunk);border-radius:10px;margin:12px 0 0;padding:10px 14px}.mark-part__label{letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft);margin:0 0 6px;font-size:13px;font-weight:800}.mark-part ul,.mark-part ol{margin:0;padding-left:20px}.mark-part li+li{margin-top:6px}.mark-card{text-align:center;justify-items:center;gap:8px;display:grid}.feedback-pop__foot{border-top:1px solid var(--line-soft);justify-content:space-between;gap:12px;padding:14px 24px 18px;display:flex}@media (max-width:640px){.feedback-pop__backdrop{align-items:end;padding:8px}.feedback-pop__head,.feedback-pop__bar,.feedback-pop__body,.feedback-pop__foot{padding-left:16px;padding-right:16px}}.player{overflow:clip}.player__dock{z-index:5;background:var(--surface);position:sticky;bottom:0}.fab-stack--docked{flex-direction:row-reverse;position:absolute;bottom:calc(100% + 12px);right:16px}.fab-stack--docked .source-panel{bottom:168px}@media (max-width:640px){.fab-stack--docked{bottom:calc(100% + 10px);right:12px}.fab-stack--docked .source-panel{bottom:150px}}.source-button__icon{place-items:center;display:grid}.source-button__label{display:none}@media (min-width:641px){.fab-stack .source-button--pill{width:auto;height:44px;font:inherit;white-space:nowrap;border-radius:999px;padding:0 20px;font-size:15px;font-weight:600}.source-button--pill .source-button__icon{display:none}.source-button--pill .source-button__label{display:inline}.fab-stack--docked{flex-direction:column-reverse;align-items:flex-end;bottom:calc(100% + 16px)}.fab-stack--docked .source-button--pill{align-self:stretch}.fab-stack--docked .source-button--pill-outline{order:1}.player:has(.fab-stack--docked .source-button) .player__step{padding-bottom:84px}.player:has(.fab-stack--docked .source-button~.source-button) .player__step{padding-bottom:140px}.player:has(.fab-stack--docked .source-button:not(.source-button--pill)~.source-button,.fab-stack--docked .source-button~.source-button:not(.source-button--pill)) .player__step{padding-bottom:152px}}.fab-stack .source-button.source-button--pill-solid{background:var(--accent);color:var(--accent-on);border:1.5px solid var(--accent)}.fab-stack .source-button.source-button--pill-solid:hover{background:var(--accent-strong);border-color:var(--accent-strong)}.fab-stack .source-button.source-button--pill-outline{background:var(--surface);color:var(--accent-ink,var(--brand));border:1.5px solid var(--accent,var(--brand))}.fab-stack .source-button.source-button--pill-outline:hover{background:var(--accent-soft,var(--surface))}.fab-stack--docked .source-panel{max-height:min(60vh,520px);position:absolute;inset:auto 0 calc(100% + 12px) auto}@media (max-width:640px){.fab-stack--docked .source-panel{width:calc(100vw - 48px);bottom:calc(100% + 10px)}}.new-version{z-index:1000;background:var(--surface);border:1px solid var(--panel-border,var(--line));border-radius:var(--radius-lg);align-items:center;gap:12px 16px;width:min(560px,100% - 32px);padding:12px 16px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000024}.new-version p{flex:1;margin:0;font-size:14px}.new-version .btn{flex:none}.report-problem{justify-content:flex-end;margin-top:-12px;display:flex}.report-problem__link{color:var(--text-muted);font-size:var(--fs-sm,14px);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);cursor:pointer;background:0 0;border:0;padding:4px 2px}.report-problem__link:hover,.report-problem__link:focus-visible{color:var(--text);text-decoration-color:currentColor}.report-pop{width:min(480px,100%)}.report-pop__body{flex-direction:column;gap:12px;padding-bottom:20px;display:flex}.report-pop__kinds{border:0;flex-direction:column;gap:8px;margin:0;padding:0;display:flex}.report-pop__legend{color:var(--text);margin-bottom:4px;padding:0;font-size:15px;font-weight:700}.report-pop__kind{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:8px 14px;display:flex}.report-pop__kind input{accent-color:var(--accent);margin:0}.report-pop__kind--on{border-color:var(--accent);background:var(--accent-tint)}.report-pop__message{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:96px;color:var(--text);resize:vertical;padding:10px 12px}.report-pop__actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.report-pop__thanks{font-size:var(--fs-body,16px);margin:0}.problems-filters{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.problems-filters .field{min-width:160px}.problems-table{border-collapse:collapse;width:100%;font-size:14px}.problems-table th,.problems-table td{border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;padding:10px 8px}.problems-table th{color:var(--text-muted);white-space:nowrap;font-weight:700}.problems-table__message{max-width:360px;color:var(--text-soft);overflow-wrap:anywhere}.problems-scroll{overflow-x:auto}.problem-detail{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:14px;display:grid}.problem-detail dt{color:var(--text-muted);font-weight:700}.problem-detail dd{overflow-wrap:anywhere;margin:0}.problem-message{white-space:pre-wrap;border-radius:var(--radius-sm);background:var(--surface-sunk);margin:0;padding:12px 14px}.problem-reply textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:120px;color:var(--text);padding:10px 12px}.problem-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}@media (max-width:600px){.problem-detail{grid-template-columns:1fr}}.terms-card{flex-direction:column;gap:16px;max-width:720px;display:flex}.terms-card__top{justify-content:flex-end;display:flex}.terms-card__signout{justify-content:center;display:flex}.terms-text{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-sunk);max-height:46vh;padding:4px 18px 14px;overflow-y:auto}.terms-text:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.legal-text h2{margin:14px 0 6px;font-size:20px}.legal-text h3{margin:14px 0 4px;font-size:16px}.legal-text p,.legal-text li{margin:6px 0;font-size:15px;line-height:1.55}.legal-text ul{margin:6px 0;padding-left:20px}.terms-check{align-items:flex-start;gap:10px;font-size:15px;line-height:1.45;display:flex}.terms-check input{width:20px;height:20px;accent-color:var(--brand);flex:none;margin-top:1px}.account-page{max-width:640px}.account-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:20px;display:flex}.account-section h2{font-size:18px}.account-readonly{color:var(--text-muted);font-size:15px}.user-menu__link{color:var(--text);border-radius:8px;padding:8px 12px;font-size:15px;text-decoration:none;display:block}.user-menu__link:hover{background:var(--surface-raised)}.privacy-results{flex-direction:column;gap:12px;display:flex}.danger-zone{border-color:var(--danger)}.btn--danger{background:var(--danger);color:#fff}.field__label{font-size:14px;font-weight:700}.btn--danger:hover{background:var(--danger);filter:brightness(.92)}