.learn-shell{background:radial-gradient(ellipse 80% 50% at 10% -10%,var(--learn-shell-glow),transparent 55%),linear-gradient(to bottom,var(--learn-shell-from),var(--learn-shell-to));--focus-ring:var(--learn-accent);font-family:Literata,Georgia,Times New Roman,serif;overflow:visible}.learn-shell :is(h1,h2){overflow:visible}.learn-shell :is(h1,h2).learn-title,.learn-shell :is(h1,h2).text-2xl{letter-spacing:normal;padding-block:.12em .08em;line-height:1.35;overflow:visible}.learn-shell .text-3xl{line-height:1.3;overflow:visible}.vocab-flashcard{border:1px solid var(--border);background:linear-gradient(145deg,var(--surface-muted) 0,var(--surface) 42%,color-mix(in srgb,var(--brand-soft) 72%,var(--surface)) 100%);box-shadow:0 1px 2px color-mix(in srgb,var(--shadow-color) 65%,transparent);transition:border-color .16s,box-shadow .16s}.vocab-flashcard:hover{border-color:color-mix(in srgb,var(--brand-ink) 38%,var(--border))}.vocab-flashcard:focus-within{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--learn-accent);outline:none}.vocab-panel{border:1px solid var(--border);background:var(--surface)}.toeic-graphic{border-collapse:collapse;width:100%;max-width:28rem;color:var(--ink,#1e293b);margin:.25rem 0 .5rem;font-size:.875rem}.toeic-graphic td,.toeic-graphic th{border:1px solid var(--border,#cbd5e1);text-align:left;vertical-align:top;padding:.375rem .625rem}.toeic-graphic th{background:color-mix(in srgb,var(--surface-muted,#f1f5f9) 90%,transparent);font-weight:600}.vocab-panel--dashed{background:color-mix(in srgb,var(--surface-muted) 88%,transparent);border-style:dashed}.vocab-pos-chip{background:var(--surface-raised);color:var(--ink-muted);border-radius:.375rem;padding:.125rem .375rem;font-size:.75rem;font-weight:500}.vocab-btn-muted{color:var(--ink-tertiary);--tw-ring-color:var(--ring)}.vocab-btn-muted:hover:not(:disabled){background-color:var(--surface-hover)}.vocab-btn-play{background-color:var(--learn-accent);color:#fff}.vocab-btn-play:hover:not(:disabled){background-color:color-mix(in srgb,var(--learn-accent) 88%,#000)}.vocab-abstract-fallback{border:1px solid var(--border);background:linear-gradient(145deg,var(--surface-muted) 0,color-mix(in srgb,var(--brand-soft) 55%,var(--surface)) 100%)}.vocab-word-image-skeleton{background:linear-gradient(110deg,var(--surface-muted) 0,color-mix(in srgb,var(--surface) 70%,var(--surface-muted)) 45%,var(--surface-muted) 90%);background-size:200% 100%;animation:1.1s ease-in-out infinite vocab-image-shimmer}.vocab-word-image-ready{opacity:0;animation:.18s forwards vocab-image-fade-in}@keyframes vocab-image-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes vocab-image-fade-in{0%{opacity:0}to{opacity:1}}.vocab-link{color:var(--brand-ink-strong)}.vocab-link:hover{color:var(--brand-ink-deep)}.grammar-prose p{margin-bottom:.75rem}.grammar-prose h2{color:var(--learn-title,inherit);margin:1.25rem 0 .5rem;scroll-margin-top:4.5rem;font-size:.95rem;font-weight:600}.grammar-prose ul{list-style:outside}.grammar-prose ol,.grammar-prose ul{margin:.5rem 0 .75rem;padding-left:1.25rem}.grammar-prose ol{list-style:decimal}.grammar-prose .learn-course-figure{border:1px solid var(--brand-border,#e2e8f0);background:var(--surface-muted,#f8fafc);border-radius:.75rem;margin:1.25rem 0;padding:.75rem}.grammar-prose .learn-course-figure img{cursor:zoom-in;width:100%;max-width:100%;height:auto;display:block}.learn-course-lesson .grammar-prose{max-width:68ch;color:var(--ink-secondary);font-size:1.03rem;line-height:1.75}@media (width>=640px){.learn-course-lesson .grammar-prose{font-size:1.0625rem}}.learn-course-lesson .grammar-prose h2{border-top:1px solid var(--border);color:var(--ink);margin:2.75rem 0 .75rem;padding-top:1.5rem;font-size:1.4375rem;line-height:1.3}.learn-course-lesson .grammar-prose>h2:first-child{border-top:0;margin-top:0;padding-top:0}.learn-course-lesson .grammar-prose h3{color:var(--ink);margin:2rem 0 .5rem;scroll-margin-top:5rem;font-size:1.15rem;font-weight:600;line-height:1.4}.learn-course-lesson .grammar-prose li::marker{color:var(--ink-faint)}.learn-course-lesson .grammar-prose strong{color:var(--ink)}.learn-course-lesson .grammar-prose hr{display:none}.learn-course-lesson .grammar-prose .md-table-wrap{overflow-x:auto}.learn-course-lesson .grammar-prose .katex-display{padding-block:.25rem;overflow:auto hidden}.learn-course-zoom{z-index:80;background:#0f172ae0;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1rem;display:flex;position:fixed;inset:0}.learn-course-zoom-img{-o-object-fit:contain;object-fit:contain;max-width:min(100%,72rem);max-height:calc(100vh - 5rem)}.learn-course-zoom-close{color:#0f172a;background:#fff;border-radius:.75rem;align-self:flex-end;padding:.4rem .85rem;font-size:.875rem;font-weight:600}.grammar-prose .learn-course-figure figcaption{color:var(--ink-muted,#64748b);margin-top:.5rem;font-size:.75rem;line-height:1.5}html[data-theme=dark] .grammar-prose .learn-course-figure[data-kind=diagram] img{filter:invert(.92)hue-rotate(180deg)}.grammar-prose li{margin-bottom:.25rem}.grammar-prose strong{font-weight:600}.grammar-prose table{border-collapse:collapse;width:100%;margin:.75rem 0 1rem;font-size:.875rem}.grammar-prose td,.grammar-prose th{border-bottom:1px solid var(--brand-border,#e2e8f0);text-align:left;padding:.4rem .5rem}.learn-nav-card{transition:border-color .16s,background-color .16s}.learn-nav-card:hover{border-color:var(--brand-border);background-color:var(--brand-soft-40)}.learn-nav-icon{background-color:var(--brand-soft-strong);color:var(--brand-ink-deep)}.learn-today-hero{background:linear-gradient(160deg,var(--surface) 0,color-mix(in srgb,var(--brand-soft) 55%,var(--surface)) 100%)}.learn-session-tick{vertical-align:middle;margin-right:.5rem}.learn-session-tick--on{animation:1.2s ease-in-out infinite learn-session-pulse}@keyframes learn-session-pulse{0%,to{opacity:1}50%{opacity:.4}}.learn-shell .ielts-passage{font-size:1rem;line-height:1.75}.learn-shell .ielts-passage table{border-collapse:collapse;width:100%;font-size:.9375rem}.learn-shell .ielts-passage td,.learn-shell .ielts-passage th{border:1px solid var(--color-slate-200,#e2e8f0);text-align:left;padding:.4rem .55rem}.learn-back-to-hub{white-space:nowrap;flex-shrink:0}.learn-study-week{max-width:22rem}.learn-study-week__list{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.learn-study-week__day{flex-direction:column;align-items:center;gap:.3rem;display:flex}.learn-study-week__label{letter-spacing:.02em;color:var(--ink-muted,#64748b);font-size:.625rem;font-weight:600}.learn-study-week__dot{background:color-mix(in srgb,var(--border) 80%,var(--surface));border-radius:999px;width:.7rem;height:.7rem;display:block}.learn-study-week__day--studied .learn-study-week__dot{background:var(--learn-accent)}.learn-study-week__day--today .learn-study-week__dot{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--learn-accent)}.learn-study-week__day--today .learn-study-week__label{color:var(--learn-accent)}.reading-reader.reading-theme-light{color:#1c1917;background:#f8f4ec}.reading-reader.reading-theme-dark{color:#f5f0e8;background:#1c1917}.reading-reader.reading-theme-sepia{color:#4a3728;background:#f3e6c9}.reading-toolbar{background:inherit}.reading-reader.reading-theme-light .reading-toolbar{background:#f8f4ec}.reading-reader.reading-theme-dark .reading-toolbar{background:#1c1917}.reading-reader.reading-theme-sepia .reading-toolbar{background:#f3e6c9}.reading-article{-webkit-user-select:text;user-select:text;line-height:1.7}.reading-body p{margin:0 0 1em}.reading-body h1,.reading-body h2,.reading-body h3{margin:1.4em 0 .6em;font-weight:650;line-height:1.35}.reading-word{color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;-webkit-touch-callout:none;background:0 0;border:0;border-radius:.15em;margin:0;padding:0;display:inline}.reading-word:focus-visible,.reading-word:hover{background:0 0;outline:none}.reading-body.is-lookup .reading-word:focus-visible,.reading-body.is-lookup .reading-word:hover{background:color-mix(in srgb,var(--learn-accent) 22%,transparent)}.reading-sentence{-webkit-touch-callout:none;cursor:pointer;border-radius:.2em}.reading-sentence.is-playing{background:color-mix(in srgb,var(--learn-accent) 28%,transparent);-webkit-box-decoration-break:clone;box-decoration-break:clone}.reading-para{align-items:flex-start;gap:.35rem;margin:0 0 1em;display:flex}.reading-para p{flex:1;min-width:0;margin:0}.reading-play-para{background:color-mix(in srgb,var(--learn-accent) 16%,transparent);min-width:44px;min-height:44px;color:inherit;cursor:pointer;border:0;border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;margin-top:.1em;display:inline-flex}.reading-play-para:focus-visible,.reading-play-para:hover{background:color-mix(in srgb,var(--learn-accent) 32%,transparent);outline:none}.reading-script{flex-direction:column;gap:.85rem;display:flex}.reading-turn{align-items:flex-start;gap:.35rem;display:flex}.reading-turn__body{flex:1;min-width:0}.reading-turn.is-character .reading-turn__text{background:color-mix(in srgb,var(--reading-speaker-soft,#e8eef6) 88%,transparent);border-left:3px solid var(--reading-speaker,#3b6ea8);border-radius:0 .9rem .9rem;padding:.55rem .75rem .65rem}.reading-turn.is-narrator .reading-turn__text{opacity:.92;padding:.15rem .15rem .25rem;font-style:italic}.reading-turn__meta{align-items:center;gap:.45rem;margin-bottom:.35rem;display:flex}.reading-turn__avatar{background:var(--reading-speaker,#3b6ea8);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:.65rem;font-style:normal;font-weight:700;display:inline-flex}.reading-turn__name{color:var(--reading-speaker,#3b6ea8);letter-spacing:.01em;font-size:.75rem;font-weight:700}.reading-turn__narrator{letter-spacing:.04em;text-transform:uppercase;opacity:.55;margin:0 0 .2rem;font-size:.7rem;font-style:normal;font-weight:650}.reading-turn__text{margin:0}.reading-turn__text .reading-sentence+.reading-sentence:before{content:" "}.reading-art{margin:0 0 1.25rem}.reading-art img{-o-object-fit:cover;object-fit:cover;border-radius:1rem;width:100%;max-height:18rem;display:block}.reading-art figcaption{opacity:.7;margin-top:.35rem;font-size:.7rem;line-height:1.4}.reading-player{color:inherit}@media (prefers-reduced-motion:no-preference){.reading-sentence{transition:background .18s}}.grammar-prose .lc-model{border:1px solid var(--brand-border-soft,#e0e7ff);background:var(--surface-muted,#f8fafc);border-radius:.75rem;margin:1.25rem 0;padding:.85rem .9rem}.grammar-prose .lc-model-title{color:var(--brand-ink-deep,#3730a3);margin:0 0 .65rem;font-size:.875rem;font-weight:600}.grammar-prose .lc-model figcaption{color:var(--ink-muted,#64748b);margin-top:.65rem;font-size:.75rem;line-height:1.5}.grammar-prose .lc-model-label{color:var(--ink,#0f172a);font-weight:600;line-height:1.45;display:block}.grammar-prose .lc-model-note{color:var(--ink-muted,#64748b);margin-top:.15rem;font-size:.8125rem;line-height:1.5;display:block}.grammar-prose .lc-model-steps{flex-direction:column;gap:1.1rem;margin:0;padding:0;list-style:none;display:flex}.grammar-prose .lc-model-step{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);border-radius:.65rem;align-items:flex-start;gap:.6rem;margin:0;padding:.6rem .7rem;display:flex;position:relative}.grammar-prose .lc-model--flow .lc-model-step:not(:last-child):after{content:"↓";color:var(--brand-ink,#4f46e5);font-size:1rem;line-height:1.1rem;position:absolute;bottom:-1.15rem;left:50%;transform:translate(-50%)}.grammar-prose .lc-model-n{background:var(--brand-soft-strong,#e0e7ff);width:1.5rem;height:1.5rem;color:var(--brand-ink-strong,#4338ca);font-variant-numeric:tabular-nums;border-radius:9999px;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.grammar-prose .lc-model-body{min-width:0}.grammar-prose .lc-model-loop{text-align:center;color:var(--brand-ink,#4f46e5);margin:0;font-size:.8125rem;font-weight:600}@media (width>=640px){.grammar-prose .lc-model-steps--row{flex-direction:row;gap:1.25rem}.grammar-prose .lc-model-steps--row .lc-model-step{flex-direction:column;flex:1 1 0}.grammar-prose .lc-model--flow .lc-model-steps--row .lc-model-step:not(:last-child):after{content:"→";inset:50% -1.05rem auto auto;transform:translateY(-50%)}.grammar-prose .lc-model--cycle .lc-model-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.grammar-prose .lc-model--cycle .lc-model-loop{grid-column:1/-1}}.grammar-prose .lc-model-compare{background:var(--surface,#fff);margin:0}.grammar-prose .lc-model-compare th[scope=row]{white-space:nowrap;font-weight:600}.grammar-prose .lc-model-tree,.grammar-prose .lc-model-tree ul{margin:0;padding:0;list-style:none}.grammar-prose .lc-model-tree ul{border-left:2px solid var(--brand-border,#c7d2fe);margin-left:.6rem;padding-left:.9rem}.grammar-prose .lc-model-tree li{margin:.45rem 0 0;position:relative}.grammar-prose .lc-model-tree ul>li:before{content:"";border-top:2px solid var(--brand-border,#c7d2fe);width:.65rem;position:absolute;top:.75rem;left:-.9rem}.grammar-prose .lc-model-map,.grammar-prose .lc-model-map ul{margin:0;padding:0;list-style:none}.grammar-prose .lc-model-map>li{margin:0 0 .75rem}.grammar-prose .lc-model-map>li:last-child{margin-bottom:0}.grammar-prose .lc-model-map ul{margin-top:.35rem;padding-left:1rem}.grammar-prose .lc-model-map ul li{margin:.3rem 0 0}.grammar-prose .lc-model-node{background:var(--brand-soft,#eef2ff);border:1px solid var(--brand-border,#c7d2fe);color:var(--brand-ink-deep,#3730a3);border-radius:9999px;padding:.15rem .6rem;font-size:.8125rem;font-weight:600;display:inline-block}.grammar-prose .lc-model-edge{color:var(--ink-muted,#64748b);font-size:.8125rem;font-style:italic}.grammar-prose .lc-model-map--in ul{margin:0 0 .35rem}.grammar-prose .lc-model-map--in .lc-model-edge:after{content:" ↓"}.grammar-prose .lc-model-edge:after{content:" →";color:var(--brand-ink,#4f46e5);font-style:normal}.learn-shell.lc-page{color:var(--ink);--lc-fill:var(--color-brand-600);--lc-fill-hover:var(--color-brand-700);--lc-fill-done:#059669;--lc-fill-wrong:#e11d48;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.lc-page .grammar-prose,.lc-page :is(.lc-h1,.lc-part-title,.lc-course-title,.lc-block-head h2){font-family:Literata,Georgia,Times New Roman,serif}.lc-crumbs{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.8125rem;display:flex}.lc-crumbs a{color:var(--brand-ink-strong);font-weight:500}.lc-crumbs a:hover{text-decoration:underline}.learn-shell .lc-h1{letter-spacing:-.01em;color:var(--ink);margin:.5rem 0 0;font-size:1.75rem;font-weight:600;line-height:1.25}@media (width>=640px){.learn-shell .lc-h1--lg{font-size:2rem}}.lc-lede{max-width:42rem;color:var(--ink-muted);margin:.5rem 0 0;font-size:.9375rem;line-height:1.6}.lc-section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .75rem;font-size:.75rem;font-weight:600}.lc-card{border:1px solid var(--border);background:var(--surface);box-shadow:0 1px 2px var(--shadow-color);border-radius:1rem}.lc-btn{text-align:center;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem 1.125rem;font-size:.875rem;font-weight:600;line-height:1.35;transition:background-color .15s,border-color .15s;display:inline-flex}.lc-btn:disabled{opacity:.55;cursor:default}.lc-btn--primary{background:var(--lc-fill);color:#fff}.lc-btn--primary:hover:not(:disabled){background:var(--lc-fill-hover)}.lc-btn--ghost{border-color:var(--border);background:var(--surface);color:var(--ink-tertiary)}.lc-btn--ghost:hover{background:var(--surface-hover)}.lc-meter{background:var(--border-muted);border-radius:9999px;height:.375rem;overflow:hidden}.lc-meter--thin{height:.25rem}.lc-meter>span{border-radius:inherit;background:var(--brand-ink);height:100%;transition:width .3s;display:block}.lc-meter--done>span{background:var(--tint-emerald-ink)}.lc-icon-tile{border-radius:.75rem;flex-shrink:0;place-items:center;width:2.75rem;height:2.75rem;display:inline-grid}.lc-icon-tile--lg{border-radius:.875rem;width:3.25rem;height:3.25rem}.lc-icon-tile--sm{border-radius:.625rem;width:2.25rem;height:2.25rem}.lc-accent-indigo{background:var(--tint-indigo-strong);color:var(--tint-indigo-ink)}.lc-accent-sky{background:var(--tint-sky-strong);color:var(--tint-sky-ink)}.lc-accent-emerald{background:var(--tint-emerald-strong);color:var(--tint-emerald-ink-strong)}.lc-chev{color:var(--ink-faint);flex-shrink:0;margin-left:auto}.lc-done-badge{background:var(--tint-emerald-soft);color:var(--tint-emerald-ink-strong)}.lc-catalog-grid{grid-template-columns:minmax(0,1fr);gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.lc-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.lc-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.lc-course-card{flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.lc-course-card:hover{border-color:var(--brand-border);box-shadow:0 6px 20px -8px var(--shadow-color)}.lc-course-main{flex:1;padding:1.25rem 1.25rem 1rem;display:block}.lc-course-title{color:var(--ink);margin:1rem 0 0;font-size:1.1875rem;font-weight:600;line-height:1.3}.lc-course-hint{color:var(--ink-muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:.375rem 0 0;font-size:.875rem;line-height:1.55;display:-webkit-box;overflow:hidden}.lc-course-meta{color:var(--ink-muted);flex-wrap:wrap;gap:.75rem;margin-top:1rem;font-size:.8125rem;display:flex}.lc-course-meta b,.lc-prog-row b{color:var(--ink-tertiary);font-weight:600}.lc-course-foot{border-top:1px solid var(--border-muted);background:var(--surface-muted);padding:.875rem 1.25rem 1rem}.lc-course-foot .lc-btn{width:100%;margin-top:.875rem}.lc-prog-row{justify-content:space-between;gap:.75rem;margin-bottom:.375rem;display:flex}.lc-course-next,.lc-prog-row{color:var(--ink-muted);font-size:.78rem}.lc-course-next{text-overflow:ellipsis;white-space:nowrap;margin:.5rem 0 0;overflow:hidden}.lc-row-grid{grid-template-columns:minmax(0,1fr);gap:.625rem;margin:0;padding:0;list-style:none;display:grid}.lc-row-link{align-items:center;gap:.75rem;height:100%;padding:.875rem 1rem;transition:border-color .15s;display:flex}.lc-row-link:hover{border-color:var(--brand-border)}.lc-hero{margin-top:1rem;padding:1.25rem 1rem}@media (width>=640px){.lc-row-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lc-hero{padding:1.5rem}}.lc-hero .lc-h1{margin-top:0}.lc-stats{border:1px solid var(--border-muted);border-radius:.75rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.25rem;display:grid;overflow:hidden}.lc-stat{background:var(--surface-muted);flex-direction:column-reverse;justify-content:flex-end;padding:.75rem .875rem;display:flex}.lc-stat+.lc-stat{border-left:1px solid var(--border-muted)}.lc-stat-n{color:var(--ink);font-size:1.25rem;font-weight:700}.lc-stat-n small{color:var(--ink-faint);font-size:.8125rem;font-weight:600}.lc-stat-l{color:var(--ink-muted);margin-top:.125rem;font-size:.75rem}.lc-hero-cta{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1.25rem;display:flex}.lc-hero-next{flex:15rem;min-width:0}.lc-hero-next-k{color:var(--ink-muted);font-size:.75rem}.lc-hero-next-v{color:var(--ink-secondary);margin-top:.125rem;font-size:.875rem;font-weight:600;line-height:1.4}@media (width<=639px){.lc-hero-cta .lc-btn{width:100%}}.lc-part{margin-top:1.75rem;overflow:hidden}.lc-part-head{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:flex-end;gap:1rem;padding:.875rem 1rem .75rem;display:flex}@media (width>=640px){.lc-part-head{padding:1rem 1.25rem .875rem}}.lc-part-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--brand-ink-strong);font-size:.75rem;font-weight:600}.lc-part-title{color:var(--ink);margin:.25rem 0 0;font-size:1.125rem;font-weight:600;line-height:1.35}.lc-part-prog{text-align:right;width:6rem;color:var(--ink-muted);flex-shrink:0;font-size:.78rem}.lc-part-prog .lc-meter{margin-top:.375rem}.lc-lessons{margin:0;padding:0;list-style:none}.lc-lesson-row{border-top:1px solid var(--border-muted);align-items:flex-start;gap:.75rem;padding:.875rem 1rem;transition:background-color .15s;display:flex}.lc-lessons>li:first-child .lc-lesson-row{border-top:0}.lc-lesson-row:hover{background:var(--surface-muted)}.lc-lesson-row:focus-visible{outline:2px solid var(--brand-ink);outline-offset:-2px}.lc-lesson-row.is-next{background:color-mix(in srgb,var(--brand-soft) 60%,var(--surface))}@media (width>=640px){.lc-lesson-row{gap:.875rem;padding:.875rem 1.25rem}}.lc-state{border-radius:9999px;flex-shrink:0;place-items:center;width:1.875rem;height:1.875rem;margin-top:.0625rem;font-size:.78rem;font-weight:700;display:inline-grid}.lc-state--sm{width:1.625rem;height:1.625rem;margin-top:0;font-size:.72rem}.lc-state.is-todo{border:1.5px solid var(--border-strong);background:var(--surface);color:var(--ink-muted)}.lc-state.is-active{border:1.5px solid var(--brand-ink);background:var(--surface);color:var(--brand-ink-strong)}.lc-state.is-next{background:var(--lc-fill);color:#fff;box-shadow:0 0 0 4px var(--brand-soft-strong)}.lc-state.is-done{background:var(--lc-fill-done);color:#fff}.lc-lesson-body{flex:1;min-width:0}.lc-lesson-title{color:var(--ink);font-size:.9375rem;font-weight:600;line-height:1.4;display:block}.lc-lesson-sum{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:.1875rem;font-size:.84rem;line-height:1.5;display:none;overflow:hidden}.lc-lesson-meta{color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin-top:.375rem;font-size:.78rem;display:flex}.lc-lesson-warn{color:var(--tint-amber-ink-strong);font-weight:500}.lc-lesson-side{flex-shrink:0;padding-top:.25rem;display:none}@media (width>=640px){.lc-lesson-side,.lc-lesson-sum{display:block}.lc-lesson-meta .lc-pill{display:none}}.lc-pill{white-space:nowrap;border-radius:9999px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.lc-pill--done{background:var(--tint-emerald-soft);color:var(--tint-emerald-ink-strong)}.lc-pill--active{background:var(--brand-soft);color:var(--brand-ink-strong)}.lc-pill--next{background:var(--lc-fill);color:#fff}.lc-pill--todo{color:var(--ink-faint);font-weight:500}.lc-read-progress{top:calc(3.5rem + env(safe-area-inset-top,0px));z-index:15;background:var(--brand-ink);transform-origin:0;will-change:transform;height:3px;margin-bottom:-3px;position:sticky}.lc-lesson-layout{max-width:48rem}.lc-lesson-meta-row{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:.375rem .875rem;margin:.875rem 0 0;padding:0;font-size:.84rem;list-style:none;display:flex}.lc-lesson-meta-row>li{align-items:center;gap:.375rem;display:inline-flex}.lc-lesson-meta-row svg{color:var(--ink-faint)}.lc-icon-btn{border:1px solid var(--border);background:var(--surface);width:2rem;height:2rem;color:var(--ink-tertiary);border-radius:.5625rem;flex-shrink:0;place-items:center;transition:background-color .15s;display:inline-grid}.lc-icon-btn:hover,.lc-outline-item:hover{background:var(--surface-hover)}.lc-icon-btn[aria-disabled=true]{opacity:.4;pointer-events:none}.lc-lesson-nav{padding:.75rem .875rem}.lc-lesson-nav-label{color:var(--ink-muted);font-size:.78rem;font-weight:600}.lc-outline-details>summary{color:var(--brand-ink-strong);font-size:.8125rem;font-weight:600;list-style:none}.lc-outline-details>summary::-webkit-details-marker{display:none}.lc-outline{margin:0;padding:0;list-style:none}.lc-outline-item{border-left:2px solid var(--border);text-align:left;width:100%;color:var(--ink-muted);padding:.375rem .625rem;font-size:.84rem;line-height:1.4;transition:background-color .15s,color .15s;display:block}.lc-outline-item--sub{padding-left:1.375rem;font-size:.8125rem}.lc-outline-item:hover{color:var(--ink)}.lc-outline-item--active{border-left-color:var(--brand-ink);background:var(--brand-soft);color:var(--brand-ink-strong);font-weight:600}.lc-prereq{border-color:var(--brand-border-soft);background:color-mix(in srgb,var(--brand-soft) 45%,var(--surface));padding:.875rem 1rem}.lc-link-row{border:1px solid var(--border);background:var(--surface);color:var(--ink-secondary);border-radius:.625rem;align-items:center;gap:.625rem;padding:.625rem .75rem;font-size:.875rem;font-weight:500;transition:border-color .15s;display:flex}.lc-link-row:hover{border-color:var(--brand-border-hover)}.lc-block{margin-top:3rem}.lc-block-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.lc-block-head h2{color:var(--ink);margin:0;font-size:1.375rem;font-weight:600;line-height:1.3}.lc-block-aside{color:var(--ink-muted);flex-shrink:0;font-size:.8125rem}.lc-term{padding:.875rem 1rem}.lc-q{padding:1rem}@media (width>=640px){.lc-q{padding:1.25rem}}.lc-q-head{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);font-size:.75rem;font-weight:600}.lc-q-prompt{color:var(--ink);margin:.375rem 0 .875rem;font-size:1rem;font-weight:600;line-height:1.5}.lc-opt{border:1px solid var(--border);background:var(--surface);text-align:left;width:100%;min-height:2.75rem;color:var(--ink-secondary);border-radius:.75rem;align-items:flex-start;gap:.75rem;padding:.75rem .875rem;font-size:.9rem;line-height:1.5;transition:background-color .15s,border-color .15s;display:flex}.lc-opt+.lc-opt{margin-top:.5rem}.lc-opt:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-muted)}.lc-opt:disabled{cursor:default}.lc-opt-key{border:1.5px solid var(--border-strong);width:1.625rem;height:1.625rem;color:var(--ink-muted);border-radius:9999px;flex-shrink:0;place-items:center;font-size:.75rem;font-weight:700;display:inline-grid}.lc-opt.is-sel{border-color:var(--brand-ink);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand-ink)}.lc-opt.is-sel .lc-opt-key{border-color:var(--lc-fill);background:var(--lc-fill);color:#fff}.lc-opt.is-right{border-color:var(--tint-emerald-ink);background:var(--tint-emerald-soft)}.lc-opt.is-right .lc-opt-key{border-color:var(--lc-fill-done);background:var(--lc-fill-done);color:#fff}.lc-opt.is-wrong{border-color:var(--tint-rose-ink-mid);background:var(--tint-rose-soft)}.lc-opt.is-wrong .lc-opt-key{border-color:var(--lc-fill-wrong);background:var(--lc-fill-wrong);color:#fff}.lc-opt.is-dim{opacity:.6}.lc-input{border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:2.875rem;color:var(--ink);border-radius:.75rem;padding:0 .875rem;font-size:.9375rem}.lc-input:focus{border-color:var(--brand-ink);box-shadow:0 0 0 3px var(--brand-soft-strong);outline:none}.lc-input:disabled{background:var(--surface-muted)}.lc-feedback{border-radius:.625rem;margin-top:.75rem;padding:.625rem .75rem;font-size:.84rem;line-height:1.5}.lc-feedback--ok{background:var(--tint-emerald-soft);color:var(--tint-emerald-ink-strong)}.lc-feedback--bad{background:var(--tint-rose-soft);color:var(--tint-rose-ink-deep)}.lc-feedback-note{color:var(--ink-tertiary);margin-top:.25rem}.lc-submit-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.875rem 1rem;display:flex}.lc-submit-count{color:var(--ink-muted);font-size:.84rem}.lc-submit-count.is-alert{color:var(--tint-rose-ink-strong);font-weight:500}@media (width<=639px){.lc-submit-bar .lc-btn{width:100%}}.lc-result{flex-wrap:wrap;align-items:center;gap:1rem 1.125rem;padding:1.25rem;display:flex}.lc-result.is-pass{border-color:var(--tint-emerald-strong);background:color-mix(in srgb,var(--tint-emerald-soft) 70%,var(--surface))}.lc-score-ring{--lc-ring:var(--brand-ink);--lc-ring-track:var(--brand-soft-strong);background:conic-gradient(var(--lc-ring) 0 var(--lc-pct),var(--lc-ring-track) var(--lc-pct) 100%);width:4.5rem;height:4.5rem;color:var(--ink);border-radius:9999px;flex-shrink:0;place-items:center;font-size:1.0625rem;font-weight:700;display:grid;position:relative}.lc-result.is-pass .lc-score-ring{--lc-ring:var(--tint-emerald-ink);--lc-ring-track:var(--tint-emerald-strong);color:var(--tint-emerald-ink-strong)}.lc-score-ring:before{content:"";background:var(--surface);border-radius:9999px;position:absolute;inset:.4375rem}.lc-score-ring>span{position:relative}.lc-result-text{flex:12rem;min-width:0}.lc-result-title{color:var(--ink);font-size:1.0625rem;font-weight:700}.lc-result-detail{color:var(--ink-muted);margin-top:.125rem;font-size:.84rem}.lc-result-actions{flex-wrap:wrap;gap:.5rem;width:100%;display:flex}.lc-pager{grid-template-columns:minmax(0,1fr);gap:.75rem;margin-top:3rem;display:grid}@media (width>=640px){.lc-pager{grid-template-columns:repeat(2,minmax(0,1fr))}.lc-pager-link--next{grid-column:2}}.lc-pager-link{padding:1rem 1.125rem;transition:border-color .15s;display:block}.lc-pager-link:hover{border-color:var(--brand-border)}.lc-pager-link--next{text-align:right}.lc-pager-k{color:var(--ink-muted);align-items:center;gap:.375rem;font-size:.78rem;display:flex}.lc-pager-link--next .lc-pager-k{justify-content:flex-end}.lc-pager-v{color:var(--ink);margin-top:.25rem;font-size:.9375rem;font-weight:600;line-height:1.4}.learn-course-lesson .grammar-prose h2{scroll-margin-top:5rem}@media (width>=1024px){.lc-lesson-layout{max-width:72rem}.lc-lesson-grid{grid-template-columns:minmax(0,46rem) 17rem;justify-content:center;gap:2.5rem;display:grid}.lc-lesson-rail>nav{top:calc(4.5rem + env(safe-area-inset-top,0px));max-height:calc(100vh - 6rem);position:sticky;overflow-y:auto}}@media (prefers-reduced-motion:reduce){.learn-session-tick--on{animation:none}.lc-btn,.lc-course-card,.lc-lesson-row,.lc-meter>span,.lc-opt{transition:none}}
