@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_48b81b{font-family:Inter,Inter Fallback;font-style:normal}.__variable_48b81b{--font-sans:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_e896d9{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_e896d9{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */:root{--paper:#fff;--paper-deep:#f5f6ff;--paper-deeper:#eaecfd;--ink:#0f1117;--ink-soft:#3d4152;--ink-muted:#8b90a7;--rule:#e4e6f0;--rule-soft:#f0f1f8;--accent:#4e59ed;--accent-deep:#3b44c4;--accent-soft:#eef0fd;--good:#16a34a;--good-soft:#dcfce7;--bad:#dc2626;--bad-soft:#fee2e2;--warn:#d97706;--warn-soft:#fef3c7;--serif:var(--font-sans),-apple-system,system-ui,"Segoe UI",sans-serif;--sans:var(--font-sans),-apple-system,system-ui,"Segoe UI",sans-serif;--mono:var(--font-mono),ui-monospace,SFMono-Regular,monospace;--max-w:1200px;--radius:4px;--radius-sm:4px;--ease-fast:.12s ease;--ease-smooth:.25s cubic-bezier(.4,0,.2,1)}[data-theme=dark]{--paper:#1e2030;--paper-deep:#262840;--paper-deeper:#2e3050;--ink:#e2e4f0;--ink-soft:#b0b4cc;--ink-muted:#727694;--rule:#363956;--rule-soft:#2c2f48;--accent:#7b85f5;--accent-deep:#9da5ff;--accent-soft:#7b85f51f;--good:#4ade80;--good-soft:#4ade801a;--bad:#f87171;--bad-soft:#f871711a;--warn:#fbbf24;--warn-soft:#fbbf241a}*,:after,:before{box-sizing:border-box}body,html{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;font-size:16px;line-height:1.6}a{color:inherit}button{font:inherit;cursor:pointer}.lesson-nav{z-index:100;background:var(--paper);border-bottom:1px solid var(--rule);gap:16px;height:56px;padding:0 32px;position:sticky;top:0}.lesson-nav,.lesson-nav-logo{align-items:center;display:flex}.lesson-nav-logo{color:var(--ink);letter-spacing:-.01em;gap:10px;font-size:15px;font-weight:700;text-decoration:none}.lesson-nav-logo img{border-radius:50%;width:28px;height:28px}.lesson-nav-divider{background:var(--rule);width:1px;height:20px}.lesson-nav-title{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;max-width:400px;font-size:14px;font-weight:500;overflow:hidden}.lesson-nav-actions{gap:2px;margin-left:auto}.lesson-nav-actions,.nav-btn{align-items:center;display:flex}.nav-btn{width:36px;height:36px;color:var(--ink-muted);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-fast);background:0 0;border:none;justify-content:center;position:relative}.nav-btn:hover{background:var(--paper-deep);color:var(--ink)}.nav-btn svg{width:20px;height:20px}.user-menu-wrap{margin-left:4px;position:relative}.user-avatar-btn{padding:0}.user-avatar{object-fit:cover}.user-avatar,.user-avatar-fallback{border-radius:50%;width:28px;height:28px}.user-avatar-fallback{background:var(--accent);color:#fff;justify-content:center;align-items:center;font-size:13px;font-weight:700;line-height:1;display:flex}.user-dropdown{background:var(--paper);border:1px solid var(--rule);z-index:200;border-radius:10px;min-width:220px;animation:fadeUp .15s both;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 8px 24px -4px #0000001f}.user-dropdown-header{flex-direction:column;gap:2px;padding:12px 16px;display:flex}.user-dropdown-name{color:var(--ink);font-size:13px;font-weight:600}.user-dropdown-email{color:var(--ink-muted);font-size:11px}.user-dropdown-divider{background:var(--rule);height:1px}.user-dropdown-item{width:100%;color:var(--ink);text-align:left;cursor:pointer;transition:background var(--ease-fast);background:0 0;border:none;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;display:block}.user-dropdown-item:hover{background:var(--paper-deep)}.user-dropdown-upgrade{color:var(--accent);font-weight:600}.width-dropdown{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);z-index:200;min-width:140px;padding:4px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px -4px #0000001f}.width-option{width:100%;color:var(--ink-soft);text-align:left;border-radius:var(--radius);cursor:pointer;transition:all var(--ease-fast);background:0 0;border:none;padding:8px 14px;font-size:13px;font-weight:500;display:block}.width-option:hover{background:var(--paper-deep);color:var(--ink)}.width-option.active{color:var(--accent);font-weight:600}.share-toast{background:var(--ink);color:var(--paper);border-radius:var(--radius);z-index:300;opacity:0;pointer-events:none;padding:10px 20px;font-size:13px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(80px);box-shadow:0 8px 24px #00000026}.share-toast.show{opacity:1;transform:translate(-50%)translateY(0)}main.lesson.width-compact{--max-w:720px}main.lesson.width-standard{--max-w:960px}main.lesson.width-wide{--max-w:1200px}.progress-wrap{flex:1;justify-content:flex-end;align-items:center;gap:12px;display:flex}.progress-bar{background:var(--rule);border-radius:var(--radius);flex-shrink:0;width:120px;height:4px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:var(--radius);width:0;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.progress-text{color:var(--ink-muted);letter-spacing:.02em;white-space:nowrap;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}main.lesson{max-width:var(--max-w);margin:0 auto;padding:48px 32px 100px}@media (max-width:640px){main.lesson{padding:32px 20px 80px}.lesson-nav{padding:0 20px}.lesson-nav-title{display:none}}.lesson-header{border-bottom:1px solid var(--rule);margin-bottom:48px;padding-bottom:32px}.eyebrow{background:var(--accent-soft);color:var(--accent);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius);align-items:center;gap:6px;margin-bottom:20px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.lesson-title-row{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.lesson-title{letter-spacing:-.03em;color:var(--ink);flex:1;margin:0;font-size:clamp(28px,5vw,40px);font-weight:800;line-height:1.15}.fav-btn{width:40px;height:40px;color:var(--ink-muted);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.fav-btn svg{width:24px;height:24px}.fav-btn:hover{background:var(--warn-soft)}.fav-btn.is-fav,.fav-btn:hover{color:var(--warn)}.fav-btn.is-fav:hover{color:var(--warn);background:var(--warn-soft)}.fav-btn.fav-loading{opacity:.5;cursor:not-allowed}@keyframes favPop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.fav-btn.is-fav svg{animation:favPop .3s}.lesson-subtitle{color:var(--ink-soft);margin:0 0 24px;font-size:17px;font-weight:400;line-height:1.55}.lesson-meta{flex-wrap:wrap;gap:8px}.lesson-meta,.meta-item{align-items:center;display:flex}.meta-item{gap:5px}.meta-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:500}.meta-value{color:var(--ink-soft);border:1px solid var(--rule);letter-spacing:.02em;font-size:12px;font-weight:600}.meta-badge,.meta-value{border-radius:100px;padding:4px 12px}.meta-badge{text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.meta-free{color:var(--good);border:1px solid var(--good)}.meta-premium{color:var(--warn);border:1px solid var(--warn)}.block{background:var(--paper-deep);border-radius:var(--radius);margin:0 0 20px;padding:24px 28px;scroll-margin-top:80px}.block-header{margin-bottom:18px}.block-header-top{align-items:center;gap:12px;margin-bottom:8px;display:flex}.block-num{background:var(--accent);color:#fff;border-radius:var(--radius);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.block-instruction-inline,.block-title{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:17px;font-weight:600;line-height:1.3}.block-instruction-inline{flex:1}.block-instruction-sub{color:var(--ink-soft);margin:0 0 12px;font-size:14px;font-weight:500;line-height:1.5}.block-intro{color:var(--ink-muted);margin:4px 0 0;font-size:14px;line-height:1.6}.block-heading,.block-instruction{display:none}.block-footer{flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;display:flex}.btn-check{background:var(--accent);color:#fff;border-radius:var(--radius);letter-spacing:.01em;cursor:pointer;transition:all var(--ease-fast);border:none;padding:8px 20px;font-size:13px;font-weight:600}.btn-check:hover{background:var(--accent-deep)}.btn-reveal{color:var(--ink-soft);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-fast);background:0 0;padding:8px 16px;font-size:13px;font-weight:600}.btn-reveal:hover{border-color:var(--accent);color:var(--accent)}.score-pill{background:var(--good-soft);color:var(--good);border-radius:var(--radius);align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.score-pill.partial{background:var(--paper-deep);color:var(--ink)}.prompt-list{counter-reset:prompt-counter;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.prompt-item{counter-increment:prompt-counter;background:var(--paper);border-radius:var(--radius);color:var(--ink);gap:10px;padding:14px 16px;font-size:15px;font-weight:400;line-height:1.55;display:flex;position:relative}.prompt-item:before{content:counter(prompt-counter,decimal-leading-zero);color:var(--ink-muted);flex-shrink:0;min-width:20px;font-size:13px;font-weight:600}.prompt-list.no-counter .prompt-item{padding-left:16px}.prompt-list.no-counter .prompt-item:before{display:none}.quote-card{background:var(--paper);border-radius:var(--radius);border-left:3px solid var(--accent);padding:24px 24px 24px 28px;position:relative}.quote-text{color:var(--ink);margin:0 0 12px;font-size:20px;font-weight:500;line-height:1.5}.quote-attribution{color:var(--ink-muted);letter-spacing:.04em;font-size:13px;font-weight:600}.quote-attribution:before{content:"— "}.video-embed{margin:0}.video-container{aspect-ratio:16/9;background:var(--ink);border-radius:var(--radius);margin:0 0 16px;overflow:hidden;box-shadow:0 4px 16px -4px #00000014}.video-container iframe{border:0;width:100%;height:100%}.video-container video{width:100%;height:100%}.audio-container{margin:0 0 16px}.audio-container audio{width:100%}.transcript{border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden}.transcript,.transcript[open]{background:var(--paper)}.transcript summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--paper-deep);transition:background var(--ease-fast);align-items:center;gap:10px;padding:12px 16px;list-style:none;display:flex}.transcript summary::-webkit-details-marker{display:none}.transcript summary:hover{background:var(--paper-deeper)}.transcript[open] summary{border-bottom:1px solid var(--rule)}.transcript-summary-label{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.transcript-summary-meta{color:var(--ink-muted);flex:1;font-size:13px}.transcript-chevron{color:var(--ink-muted);transition:transform var(--ease-smooth);flex-shrink:0}.transcript[open] .transcript-chevron{transform:rotate(180deg)}.transcript-body{max-height:380px;padding:4px 0;overflow-y:auto}.transcript-segment{transition:background var(--ease-fast);align-items:flex-start;gap:14px;padding:10px 16px;display:flex}.transcript-segment:hover{background:var(--paper-deep)}.transcript-time{border:1px solid var(--rule);color:var(--accent);font-family:var(--mono);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-fast);background:0 0;flex-shrink:0;margin-top:2px;padding:3px 8px;font-size:11px;font-weight:600}.transcript-time:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.transcript-text{color:var(--ink);flex:1;margin:0;font-size:15px;line-height:1.5}.explanation-card{background:0 0;padding:0;position:relative}.explanation-tag{background:var(--accent);color:#fff;letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius);align-items:center;margin-bottom:16px;padding:3px 10px;font-size:10px;font-weight:700;display:inline-flex}.explanation-body{color:var(--ink);margin:0 0 20px;font-size:16px;line-height:1.65}.explanation-body strong{color:var(--accent-deep);font-weight:700}.explanation-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:20px 0 10px;font-size:10px;font-weight:700}.explanation-examples{flex-direction:column;gap:10px;display:flex}.explanation-example{background:var(--paper);border-radius:var(--radius);padding:14px 16px}.explanation-example-text{color:var(--ink);font-size:15px;line-height:1.5}.explanation-example-text strong{font-weight:700}.explanation-example-note{color:var(--ink-muted);margin-top:4px;font-size:13px;font-style:italic}.explanation-points{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.explanation-points li{color:var(--ink);padding:8px 0 8px 22px;font-size:15px;line-height:1.5;position:relative}.explanation-points li:before{content:"→";color:var(--accent);font-weight:700;position:absolute;top:8px;left:0}.explanation-points li strong{color:var(--accent-deep);font-weight:700}.question{border-top:1px solid var(--rule-soft);padding:20px 0}.question:first-child{border-top:none;padding-top:4px}.question:last-child{border-bottom:1px solid var(--rule-soft)}.q-stem{color:var(--ink);gap:12px;margin:0 0 14px;font-size:16px;line-height:1.55;display:flex}.q-num{color:var(--accent);letter-spacing:.05em;min-width:22px;font-size:11px;font-weight:700;font-family:var(--mono);flex-shrink:0;padding-top:4px}.q-stem-text{flex:1}.blank,.gap{border-bottom:2px solid var(--accent);background:var(--accent-soft);min-width:80px;min-height:28px;transition:background var(--ease-fast);vertical-align:baseline;border-radius:4px 4px 0 0;justify-content:center;align-items:center;margin:0 2px;padding:0 8px;display:inline-flex}.blank.correct,.gap.correct{border-color:var(--good);background:var(--good-soft)}.blank.correct .filled-word,.gap.correct .filled-word{color:var(--good)}.blank.incorrect,.gap.incorrect{border-color:var(--bad);background:var(--bad-soft)}.blank.incorrect .filled-word,.gap.incorrect .filled-word{color:var(--bad)}.blank.drag-over,.gap.drag-over{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#4e59ed2e;transition:all .15s;transform:scale(1.05)}.filled-word{color:var(--accent);cursor:pointer;-webkit-user-select:none;user-select:none;padding:0 4px;font-size:16px;font-weight:600}.filled-word:hover{opacity:.75}.word-bank{background:var(--paper);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px;min-height:52px;margin:0 0 20px;padding:14px 18px;display:flex}.word-bank-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-right:4px;font-size:10px;font-weight:700}.chip{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--ease-fast);align-items:center;padding:5px 12px;font-size:14px;font-weight:500;display:inline-flex}.chip:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.chip.used{opacity:.3;pointer-events:none;border-style:dashed;text-decoration:line-through}.options{gap:6px;margin:0;padding:0;list-style:none;display:grid}.option{background:var(--paper);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-fast);color:var(--ink);text-align:left;border:1px solid #0000;align-items:flex-start;gap:12px;width:100%;padding:12px 16px;font-size:15px;line-height:1.4;display:flex}.option:hover:not(.option-correct):not(.option-incorrect){border-color:var(--accent);background:var(--accent-soft)}.option-letter{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:700;font-family:var(--mono);flex-shrink:0;width:18px;padding-top:2px}.option.selected{border-color:var(--accent);background:var(--accent-soft)}.option.selected .option-letter{color:var(--accent)}.option.option-correct{background:var(--good-soft);border-color:var(--good);color:var(--good)}.option.option-correct .option-letter{color:var(--good)}.option.option-incorrect{background:var(--bad-soft);border-color:var(--bad);text-decoration:line-through;-webkit-text-decoration-color:var(--bad);text-decoration-color:var(--bad)}.tf-buttons{gap:8px;display:flex}.tf-btn{background:var(--paper);border-radius:var(--radius);color:var(--ink-soft);cursor:pointer;transition:all var(--ease-fast);border:none;padding:8px 20px;font-size:13px;font-weight:600}.tf-btn:hover{border-color:var(--accent);color:var(--accent)}.tf-btn.selected{background:var(--accent);color:#fff;border-color:var(--accent)}.tf-btn.tf-correct{background:var(--good-soft);color:var(--good);border-color:var(--good)}.tf-btn.tf-incorrect{background:var(--bad-soft);color:var(--bad);border-color:var(--bad);text-decoration:line-through}.tf-correction{background:var(--good-soft);border-left:3px solid var(--good);border-radius:0 var(--radius) var(--radius) 0;color:var(--ink);margin:10px 0 0;padding:12px 16px;font-size:14px;display:none}.tf-correction.show{display:block}.tf-correction strong{color:var(--good);font-weight:700}.suggested-answer{background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:0 var(--radius) var(--radius) 0;color:var(--ink-soft);margin:10px 0 0;padding:12px 16px;font-size:14px;display:none}.suggested-answer.show{display:block}.suggested-answer strong{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;font-size:10px;font-weight:700;display:block}.ec-correction{background:var(--good-soft);border-left:3px solid var(--good);border-radius:0 var(--radius) var(--radius) 0;margin:10px 0 0;padding:14px 16px;display:none}.ec-correction.show{display:block}.ec-correction strong{letter-spacing:.1em;text-transform:uppercase;color:var(--good);margin-bottom:6px;font-size:10px;font-weight:700;display:block}.ec-diff{color:var(--ink);font-size:16px;line-height:1.55}.ec-diff del.ec-del{color:var(--bad);opacity:.7;margin-right:2px;text-decoration:line-through;text-decoration-thickness:2px}.ec-diff ins.ec-ins{color:var(--good);background:#16a34a1f;border-radius:3px;padding:0 3px;font-weight:700;text-decoration:none}.cloze-passage{color:var(--ink);margin:0 0 20px;padding:20px 24px;font-size:17px;line-height:2}.cloze-passage,.explanation-toggle{background:var(--paper);border-radius:var(--radius)}.explanation-toggle{color:var(--ink-soft);margin:8px 0 0;padding:10px 14px;font-size:13px;font-style:italic;display:none}.explanation-toggle.show{display:block}.reading-passage{background:var(--paper);border-left:3px solid var(--accent);border-radius:var(--radius);color:var(--ink);margin-bottom:24px;padding:20px 24px;font-size:15px;line-height:1.75}.reading-passage p{margin:0 0 12px}.reading-passage p:last-child{margin-bottom:0}.reading-questions{flex-direction:column;gap:16px;display:flex}.matching-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.matching-col-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);text-align:center;margin-bottom:10px;font-size:10px;font-weight:700}.matching-list{flex-direction:column;gap:6px;display:flex}.match-item{background:var(--paper);border-radius:var(--radius);color:var(--ink);cursor:pointer;transition:all var(--ease-fast);text-align:left;border:1px solid #0000;padding:12px 16px;font-size:15px;font-weight:500;line-height:1.4;position:relative}.match-item:hover:not(.matched):not(.matched-wrong){border-color:var(--accent);background:var(--accent-soft)}.match-item.selected{background:var(--accent);color:#fff;border-color:var(--accent)}.match-item.matched{background:var(--good-soft);border-color:var(--good);color:var(--good);cursor:default}.match-item.matched-wrong{background:var(--bad-soft);border-color:var(--bad)}.match-drag-handle{color:var(--ink-muted);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;margin-right:4px;font-size:14px}.match-item.selected .match-drag-handle,.match-item:hover .match-drag-handle{color:var(--accent)}.match-item.drag-over{border-color:var(--accent);background:var(--accent-soft);transform:scale(1.01)}.match-pair-num{color:var(--good);font-size:10px;font-weight:700;font-family:var(--mono);position:absolute;top:6px;right:10px}.odd-row{border-top:1px solid var(--rule-soft);padding:18px 0}.odd-row:first-child{border-top:none;padding-top:4px}.odd-row:last-child{border-bottom:1px solid var(--rule-soft)}.odd-row-header{color:var(--ink);align-items:baseline;gap:8px;margin-bottom:12px;font-size:15px;display:flex}.odd-row-num{color:var(--accent);letter-spacing:.05em;font-size:11px;font-weight:700;font-family:var(--mono);flex-shrink:0}.odd-row-label{color:var(--ink-muted);font-size:13px}.odd-row-noun{color:var(--ink);border-bottom:2px solid var(--accent);padding-bottom:1px;font-weight:700}.odd-options{flex-wrap:wrap;gap:8px;display:flex}.odd-chip{background:var(--paper);border-radius:var(--radius);color:var(--ink);cursor:pointer;transition:all var(--ease-fast);border:1px solid #0000;padding:7px 16px;font-size:15px;font-weight:500}.odd-chip:hover:not(.odd-correct):not(.odd-wrong){border-color:var(--accent);color:var(--accent)}.odd-chip.selected{background:var(--accent);color:#fff;border-color:var(--accent)}.odd-chip.odd-correct{background:var(--good);color:#fff;border-color:var(--good)}.odd-chip.odd-wrong{background:var(--bad-soft);border-color:var(--bad);text-decoration:line-through}.rank-wrapper{grid-template-columns:32px 1fr;gap:8px;display:grid}.rank-rail{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rank-rail-num{color:var(--accent);min-height:54px;font-size:14px;font-weight:700;font-family:var(--mono);flex:1;justify-content:center;align-items:center;display:flex}.rank-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rank-card{background:var(--paper-deep);border-radius:var(--radius-sm);color:var(--ink);transition:all var(--ease-smooth);-webkit-user-select:none;user-select:none;border:1.5px solid #0000;align-items:center;gap:14px;min-height:54px;padding:14px 16px;font-size:15px;font-weight:500;line-height:1.4;display:flex}.rank-card:hover{background:var(--paper);border-color:var(--rule)}.rank-card.dragging{opacity:.4}.rank-handle{color:var(--ink-muted);cursor:grab;flex-shrink:0;padding:2px;line-height:0}.rank-handle:hover{color:var(--accent)}.rank-handle svg{width:16px;height:16px}.rank-text{flex:1}.rank-mobile-controls{flex-shrink:0;gap:4px;display:none}.rank-mobile-btn{border:1.5px solid var(--rule);color:var(--ink-soft);cursor:pointer;width:30px;height:30px;transition:all var(--ease-fast);background:0 0;border-radius:6px;justify-content:center;align-items:center;display:flex}.rank-mobile-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.rank-mobile-btn:disabled{opacity:.3;cursor:not-allowed}.rank-mobile-btn svg{width:14px;height:14px}.not-found{text-align:center;max-width:480px;margin:100px auto;padding:0 32px}.not-found h1{letter-spacing:-.03em;margin:0 0 16px;font-size:48px;font-weight:800}.not-found p{color:var(--ink-soft);font-size:17px;line-height:1.6}@media (max-width:640px){.matching-grid{grid-template-columns:1fr;gap:20px}.rank-handle{display:none}.rank-mobile-controls{display:flex}.cloze-passage{padding:20px;font-size:16px}}.lesson-content{animation:fadeUp .4s both}.gate-blur{filter:blur(8px);pointer-events:none;-webkit-user-select:none;user-select:none}.gate-overlay{z-index:500;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f111759;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.gate-card{background:var(--paper);border-radius:16px;width:100%;max-width:400px;padding:40px 36px 32px;animation:gateIn .3s both;box-shadow:0 24px 64px -12px #0003}@keyframes gateIn{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.gate-logo{justify-content:center;margin-bottom:20px;display:flex}.gate-logo img{border-radius:12px;width:48px;height:48px}.gate-heading{text-align:center;color:var(--ink);letter-spacing:-.02em;margin:0 0 6px;font-size:20px;font-weight:700}.gate-sub{text-align:center;color:var(--ink-muted);margin:0 0 24px;font-size:14px;line-height:1.5}.gate-google{background:var(--paper);border:1px solid var(--rule);width:100%;color:var(--ink);cursor:pointer;transition:all var(--ease-fast);border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:500;display:flex}.gate-google:hover{background:var(--paper-deep);border-color:var(--ink-muted)}.gate-divider{color:var(--ink-muted);align-items:center;gap:14px;margin:20px 0;font-size:12px;display:flex}.gate-divider:after,.gate-divider:before{content:"";background:var(--rule);flex:1;height:1px}.gate-field{margin-bottom:14px}.gate-field label{color:var(--ink);margin-bottom:5px;font-size:13px;font-weight:600;display:block}.gate-field input{border:1px solid var(--rule);width:100%;color:var(--ink);background:var(--paper);transition:border-color var(--ease-fast);border-radius:8px;outline:none;padding:10px 14px;font-family:inherit;font-size:14px}.gate-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4e59ed14}.gate-field input::placeholder{color:var(--ink-muted)}.gate-forgot-row{justify-content:flex-end;margin:-6px 0 16px;display:flex}.gate-link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none}.gate-link:hover{text-decoration:underline}.gate-submit{background:var(--ink);width:100%;color:var(--paper);cursor:pointer;transition:opacity var(--ease-fast);border:none;border-radius:8px;margin-top:4px;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:600}.gate-submit:hover{opacity:.85}.gate-submit:disabled{opacity:.5;cursor:not-allowed}.gate-switch{text-align:center;color:var(--ink-muted);margin-top:20px;font-size:13px}.gate-features{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.gate-feature{color:var(--ink);align-items:center;gap:10px;font-size:14px;display:flex}.gate-feature-icon{color:var(--accent);flex-shrink:0;font-size:12px}.gate-upgrade-btn{text-align:center;background:var(--accent);color:#fff;font-weight:600;text-decoration:none;display:block}.gate-upgrade-btn:hover{opacity:.9}.gate-plan-toggle{border:1px solid var(--rule);border-radius:8px;gap:0;margin-bottom:16px;display:flex;overflow:hidden}.gate-plan-btn{background:var(--paper);color:var(--ink-soft);cursor:pointer;transition:all var(--ease-fast);border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.gate-plan-btn:first-child{border-right:1px solid var(--rule)}.gate-plan-btn:hover{background:var(--paper-deep)}.gate-plan-btn.active{background:var(--accent-soft);color:var(--accent)}.gate-plan-save{text-transform:uppercase;letter-spacing:.05em;background:var(--good);color:#fff;border-radius:4px;margin-top:2px;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.3}.gate-plan-price{color:var(--ink-muted);font-size:12px;font-weight:500}.gate-error{background:var(--bad-soft);color:var(--bad)}.gate-error,.gate-message{border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:13px;font-weight:500}.gate-message{background:var(--good-soft);color:var(--good)}.gate-newsletter{color:var(--ink-soft);cursor:pointer;align-items:flex-start;gap:8px;margin:6px 0 10px;font-size:13px;line-height:1.4;display:flex}.gate-newsletter input[type=checkbox]{accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:2px}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.st-block{flex-direction:column;gap:8px;display:flex}.st-question{border-bottom:1px solid var(--rule);padding:16px 0}.st-question:last-child{border-bottom:none}.st-original{align-items:baseline;gap:10px;margin-bottom:6px;display:flex}.st-num{font-family:var(--font-mono,"DM Mono",monospace);color:var(--accent);flex-shrink:0;width:20px;font-size:13px;font-weight:600}.st-text{color:var(--ink);font-size:15px;font-weight:500;line-height:1.5}.st-prompt{color:var(--accent);margin-bottom:8px;padding-left:30px;font-size:13px;font-style:italic}.st-hint{color:var(--ink-muted);margin-bottom:6px;padding-left:30px;font-size:12px}.st-input{border:1.5px solid var(--rule);border-radius:var(--radius);width:calc(100% - 30px);color:var(--ink);background:var(--paper);margin-left:30px;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s}.st-input:focus{border-color:var(--accent);outline:none}.st-input.st-correct{border-color:var(--good);background:var(--good-soft)}.st-input.st-wrong{border-color:var(--bad);background:var(--bad-soft)}.st-correction{color:var(--bad);margin-top:6px;padding-left:30px;font-size:13px}.st-correction-ok{color:var(--good)}.st-correction-label{font-weight:600}.st-answers-reveal{background:var(--paper-deep);border-radius:var(--radius);flex-direction:column;gap:6px;margin-top:12px;padding:14px;display:flex}.st-answer-item{color:var(--ink-soft);gap:10px;font-size:14px;display:flex}.cat-block{flex-direction:column;gap:16px;display:flex}.cat-buckets{gap:12px;display:grid}.cat-bucket{background:var(--paper-deep);border:1.5px dashed var(--rule);border-radius:var(--radius);min-height:100px;padding:14px;transition:border-color .15s,background .15s}.cat-bucket-droppable{border-color:var(--accent);background:var(--accent-soft,#4e59ed0a)}.cat-bucket-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);margin-bottom:10px;font-size:12px;font-weight:700}.cat-bucket-items{flex-wrap:wrap;gap:6px;display:flex}.cat-pool{border:1px solid var(--rule);border-radius:var(--radius);flex-wrap:wrap;gap:8px;padding:14px;display:flex}.cat-chip,.cat-pool{background:var(--paper)}.cat-chip{border:1.5px solid var(--rule);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-block}.cat-chip:hover{border-color:var(--accent);background:var(--accent-soft,#4e59ed0f)}.cat-chip-active{border-color:var(--accent);background:var(--accent-soft,#4e59ed14);box-shadow:0 0 0 2px var(--accent-soft,#4e59ed26)}.cat-chip.placed{background:var(--paper-deep);border-style:solid}.cat-chip.cat-correct{border-color:var(--good);background:var(--good-soft);color:var(--good)}.cat-chip.cat-wrong{border-color:var(--bad);background:var(--bad-soft);color:var(--bad)}.cat-chip-fix{color:var(--ink-muted);margin-left:4px;font-size:11px;font-weight:400}.wo-block{flex-direction:column;gap:4px;display:flex}.wo-question{border-bottom:1px solid var(--rule);padding:16px 0}.wo-question:last-of-type{border-bottom:none}.wo-question.wo-correct{background:var(--good-soft)}.wo-question.wo-correct,.wo-question.wo-wrong{border-radius:var(--radius);border-bottom:none;padding:16px}.wo-question.wo-wrong{background:var(--bad-soft)}.wo-num{font-family:var(--font-mono,"DM Mono",monospace);color:var(--accent);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.wo-sentence{background:var(--paper-deep);border:1.5px dashed var(--rule);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:6px;min-height:40px;margin-bottom:8px;padding:10px;display:flex}.wo-placeholder{color:var(--ink-muted);font-size:13px;font-style:italic}.wo-pool{flex-wrap:wrap;gap:6px;display:flex}.wo-chip{background:var(--paper);border:1.5px solid var(--rule);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:20px;padding:6px 14px;font-size:14px;font-weight:500;transition:all .15s;display:inline-block}.wo-chip:hover{border-color:var(--accent);background:var(--accent-soft,#4e59ed0f)}.wo-chip-placed{background:var(--accent-soft,#4e59ed14);border-color:var(--accent);color:var(--accent)}.wo-correction{color:var(--bad);margin-top:8px;font-size:13px}.wo-correction-label{font-weight:600}.wf-block{flex-direction:column;gap:4px;display:flex}.wf-question{border-bottom:1px solid var(--rule);padding:14px 0}.wf-question:last-of-type{border-bottom:none}.wf-num{font-family:var(--font-mono,"DM Mono",monospace);color:var(--accent);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.wf-sentence-wrap{flex-direction:column;gap:6px;display:flex}.wf-sentence,.wf-sentence-inline{color:var(--ink);font-size:15px;line-height:1.6}.wf-sentence-inline{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.wf-input-row{align-items:center;gap:10px;display:flex}.wf-base{color:var(--accent);font-size:13px;font-style:italic;font-weight:600}.wf-input,.wf-input-inline{border:1.5px solid var(--rule);border-radius:var(--radius);color:var(--ink);background:var(--paper);padding:6px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.wf-input{width:100%;max-width:300px}.wf-input-inline{min-width:100px}.wf-input-inline:focus,.wf-input:focus{border-color:var(--accent);outline:none}.wf-correct{border-color:var(--good)!important;background:var(--good-soft)!important}.wf-wrong{border-color:var(--bad)!important;background:var(--bad-soft)!important}.wf-correction{color:var(--bad);margin-top:4px;font-size:13px}.wf-correction-ok{color:var(--good)}.wf-correction-label{font-weight:600}.wf-pos{color:var(--ink-muted);margin-left:6px;font-size:11px;font-style:italic}.print-video-card{display:none}@media print{:root,[data-theme=dark]{--ink:#0f1117!important;--ink-soft:#3d4152!important;--ink-muted:#8b90a7!important;--paper:#fff!important;--paper-deep:#f5f6fa!important;--rule:#e4e6f0!important;--accent:#4e59ed!important}.audio-container,.block-footer,.btn-check,.btn-reveal,.fav-btn,.gate-overlay,.lesson-nav,.match-drag-handle,.matching-col-label,.score-pill,.share-toast,.transcript,.user-avatar-btn,.user-menu-wrap,.video-container,.video-embed,.width-dropdown,.word-bank-label{display:none!important}body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important}.lesson,body{margin:0!important;padding:0!important}.lesson{max-width:100%!important}.lesson-content{max-width:680px!important;margin:0 auto!important;padding:0!important}.lesson-header{border-bottom:2px solid var(--accent)!important;margin-bottom:20px!important;padding-bottom:14px!important}.lesson-title{font-size:22pt!important;line-height:1.2!important}.lesson-subtitle{font-size:11pt!important}.lesson-meta{margin-top:6px!important}.block-section{page-break-inside:avoid;break-inside:avoid;margin-bottom:12px!important;padding:14px 16px!important}.match-item,.option,.option-btn,.tf-btn{background:var(--paper)!important}.chip,.match-item,.option,.option-btn,.tf-btn{border:1px solid var(--rule)!important;box-shadow:none!important;cursor:default!important;pointer-events:none!important}.chip{background:var(--paper-deep)!important}.blank,.gap{border-bottom:1px solid var(--ink-muted)!important;background:0 0!important;min-width:80px!important;display:inline-block!important}.block-section input[type=text]{border:none!important;border-bottom:1px solid var(--ink-muted)!important;box-shadow:none!important;background:0 0!important}.audioscript-block,.reading-block{border:1px solid var(--rule)!important;box-shadow:none!important}.ec-correction,.explanation-toggle,.suggested-answer,.tf-correction{display:none!important}.print-video-card{page-break-inside:avoid;break-inside:avoid;border-radius:10px;margin-bottom:20px;position:relative;overflow:hidden;display:block!important}.print-video-thumb{border-radius:10px;width:100%;height:auto;display:block}.print-video-overlay{background:#00000073;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.print-video-qr{background:#fff;border-radius:8px;width:100px;height:100px;padding:4px;box-shadow:0 2px 12px #0000004d}.print-video-label{color:#fff;letter-spacing:.02em;text-shadow:0 1px 4px #00000080;margin-top:8px;font-size:11pt;font-weight:600}.lesson-content:after{content:"lessonpills.com"!important;text-align:center!important;color:var(--ink-muted)!important;border-top:1px solid var(--rule)!important;margin-top:24px!important;padding-top:10px!important;font-size:9pt!important;display:block!important}@page{margin:1.5cm 1.8cm;size:A4}}.watch-excerpt-note{background:var(--paper-deep);border-left:3px solid var(--accent);border-radius:var(--radius);color:var(--ink);align-items:center;gap:8px;margin-bottom:12px;padding:10px 14px;font-size:14px;display:flex}.watch-excerpt-icon{color:var(--accent);font-size:12px}.user-dropdown-tier{border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-deep);letter-spacing:.05em;text-transform:uppercase;align-self:flex-start;margin-top:6px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.gate-card-wide{max-width:720px}.gate-plans{text-align:left;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 4px;display:grid}.gate-plans:has(.gate-plan-card:only-child){grid-template-columns:1fr}@media (max-width:620px){.gate-plans{grid-template-columns:1fr}}.gate-plan-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);flex-direction:column;padding:18px 18px 16px;display:flex;position:relative}.gate-plan-card-featured{border:1.5px solid var(--accent);background:var(--paper-deep)}.gate-plan-card-badge{background:var(--accent);color:#fff;letter-spacing:.05em;text-transform:uppercase;border-radius:99px;padding:2px 9px;font-size:10px;font-weight:700;position:absolute;top:-9px;left:16px}.gate-plan-card-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.gate-plan-card-name{color:var(--ink);font-size:15px;font-weight:700}.gate-plan-card-price{color:var(--ink);letter-spacing:-.02em;white-space:nowrap;font-size:18px;font-weight:800}.gate-plan-card-per{color:var(--ink-muted);margin-left:1px;font-size:12px;font-weight:600}.gate-plan-card-lead{color:var(--ink-soft);margin-bottom:12px;font-size:13px;line-height:1.5}.gate-plan-card-list{flex:1 0 auto;margin:0 0 16px;padding:0;list-style:none}.gate-plan-card-list li{color:var(--ink-soft);margin-bottom:7px;padding-left:18px;font-size:13px;line-height:1.45;position:relative}.gate-plan-card-list li:before{content:"";border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);width:10px;height:6px;position:absolute;top:6px;left:0;transform:rotate(-45deg)}.gate-plan-card .gate-upgrade-btn{margin-top:auto;padding:11px 16px;font-size:14px}.gate-plans-foot{color:var(--ink-muted);text-align:center;margin-top:14px;font-size:12px}.gate-plans-polar{justify-content:center;align-items:center;gap:7px;margin-bottom:6px;display:flex}.gate-plans-polar img{opacity:.7;width:auto;height:15px;display:block}.gate-cycle{justify-content:center;align-items:center;gap:10px;margin:4px 0 2px;display:flex}.gate-cycle-label{font:inherit;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600;transition:color .2s}.gate-cycle-label.active{color:var(--ink)}.gate-cycle-save{background:var(--good,#16a34a);color:#fff;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;border-radius:99px;margin-left:6px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.gate-cycle-switch{background:var(--rule);cursor:pointer;border:0;border-radius:99px;flex-shrink:0;width:40px;height:22px;padding:0;transition:background-color .2s;position:relative}.gate-cycle-switch[aria-checked=true]{background:var(--accent)}.gate-cycle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:2px;left:0;box-shadow:0 1px 3px #0003}