:root{scrollbar-gutter:stable;color:var(--text);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--canvas:#f8f7f4;--surface:#fff;--surface-soft:#f2f0ec;--accent-border:#cbc7f7;--success-border:#bad8c7;--warning-border:#e0c89c;--error-border:#efc2cb;--text:#242738;--muted:#626579;--border:#e5e3eb;--control-border:#858392;--brand-wort:#4f46e5;--brand-fox:#b44916;--brand-fox-soft:#fff0e6;--accent:#4f46e5;--accent-hover:#4036c9;--accent-soft:#eeecff;--success:#23704c;--success-soft:#edf7f0;--warning:#85540f;--warning-soft:#fff4df;--error:#ab3042;--error-soft:#fff0f1;--focus:#6155e8;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-sm:.5rem;--radius-control:.625rem;--radius-card:1rem;--shadow:0 4px 16px #24273805;--shadow-hover:0 8px 24px #2427380c;--sidebar-width:248px;--content-width:1240px;--focus-width:760px;--motion:.16s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}*{box-sizing:border-box}body{min-width:320px;margin:0}html{scroll-padding-block:var(--space-6)}:where(input,select,textarea,[tabindex="-1"]){scroll-margin-block:var(--space-6)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-hover)}:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{overflow-wrap:anywhere;letter-spacing:-.035em;margin-bottom:var(--space-3);font-size:clamp(1.9rem,3vw,2.5rem);line-height:1.2}h2{overflow-wrap:anywhere;letter-spacing:-.025em;font-size:1.4rem;line-height:1.3}h3{overflow-wrap:anywhere;font-size:1.1rem;line-height:1.4}p{margin-bottom:var(--space-4)}.icon{flex-shrink:0;width:22px;height:22px}.skip-link{z-index:20;background:var(--surface);padding:var(--space-3);border-radius:var(--radius-sm);position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.app-shell{min-height:100vh;padding-left:var(--sidebar-width)}.sidebar{width:var(--sidebar-width);padding:var(--space-8) var(--space-4) var(--space-4);background:var(--surface);border-right:1px solid var(--border);z-index:10;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{align-items:center;gap:var(--space-3);color:var(--text);font-size:1.1rem;font-weight:750;line-height:1.3;text-decoration:none;display:flex}.brand-mark{background:var(--brand-fox-soft);width:40px;height:40px;color:var(--brand-fox);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.wordmark{white-space:nowrap}.wordmark-wort{color:var(--brand-wort)}.wordmark-fox{color:var(--brand-fox)}.brand-caption{color:var(--muted);margin-top:5px;font-size:.75rem;font-weight:400;display:block}.sidebar-brand{padding-inline:var(--space-2)}.nav-label{color:var(--muted);letter-spacing:.13em;margin:var(--space-12) var(--space-3) var(--space-3);font-size:.75rem;font-weight:700}.sidebar nav{gap:var(--space-2);display:grid}.sidebar nav a{gap:var(--space-3);min-height:48px;padding:var(--space-3);border-radius:var(--radius-control);color:var(--muted);transition:background var(--motion);align-items:center;font-size:.85rem;font-weight:550;text-decoration:none;display:flex}.sidebar nav a:hover{background:var(--surface-soft);color:var(--text)}.sidebar nav a[aria-current]{background:var(--accent-soft);color:var(--accent);font-weight:700}.sidebar .account-navigation{padding-top:var(--space-8);padding-bottom:var(--space-4);margin-top:auto}.account{align-items:center;gap:var(--space-3);border-top:1px solid var(--border);padding:var(--space-6) var(--space-2) var(--space-3);display:flex}.avatar{background:var(--warning-soft);color:var(--warning);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-weight:700;display:grid}.account-name{min-width:0;font-size:.8rem}.account-name strong{overflow-wrap:anywhere;display:block}.account-name span{color:var(--muted);font-size:.75rem}.logout{justify-content:flex-start!important}.mobile-header{display:none}.main-content{max-width:var(--content-width);padding:var(--space-12) clamp(24px, 4vw, 64px) var(--space-16);margin:0 auto}.main-content:focus{outline:none}.page-title{justify-content:space-between;align-items:flex-start;gap:var(--space-6);margin-bottom:var(--space-8);display:flex}.page-title>div{min-width:0}.page-title .intro{max-width:55ch;margin:0}.eyebrow{letter-spacing:.13em;color:var(--accent);margin-bottom:var(--space-3);font-size:.75rem;font-weight:700}.intro,.hint{color:var(--muted)}.hint,.error{margin:var(--space-2) 0 0;font-size:.85rem}.error{color:var(--error)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-8);box-shadow:var(--shadow);min-width:0}.button{overflow-wrap:anywhere;justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-control);cursor:pointer;max-width:100%;min-height:44px;transition:background var(--motion), box-shadow var(--motion);border:1px solid #0000;padding:.65rem 1rem;font-size:.9375rem;font-weight:650;line-height:1.4;text-decoration:none;display:inline-flex}.button-primary{background:var(--accent);color:var(--surface)}.button-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--surface);box-shadow:var(--shadow-hover)}.button-secondary{border-color:var(--control-border);background:var(--surface);color:var(--text)}.button-secondary:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent)}.button-ghost{color:var(--accent);background:0 0}.button-ghost:hover:not(:disabled){background:var(--accent-soft)}.button:disabled{opacity:.55;cursor:default}.badge{border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--muted);align-items:center;padding:.25rem .6rem;font-size:.75rem;font-weight:650;line-height:1.4;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent)}.badge-success{background:var(--success-soft);color:var(--success)}.badge-warning{background:var(--warning-soft);color:var(--warning)}fieldset{border:0;min-width:0;margin:0;padding:0}legend,label,.field-label{font-size:.85rem;font-weight:600}label,.field-label{margin-bottom:var(--space-2);display:block}.field{margin-bottom:var(--space-6);min-width:0}.field:last-child{margin-bottom:0}.error-summary{scroll-margin-block:var(--space-6)}.error-summary:focus{outline:3px solid var(--focus);outline-offset:4px}.error-summary ul{margin:var(--space-3) 0 0;padding-left:var(--space-6)}.error-summary a{min-height:44px;color:var(--error);align-items:center;display:inline-flex}.button:active:not(:disabled){filter:brightness(.95)}.input{border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--surface);width:100%;min-height:46px;color:var(--text);padding:.7rem .85rem;font-size:1rem}.input:hover{border-color:var(--text)}.input::placeholder{color:var(--muted)}.input:disabled{background:var(--surface-soft)}.input[aria-invalid=true]{border-color:var(--error)}.alert{border-radius:var(--radius-control);padding:var(--space-4);margin-block:var(--space-4);border:1px solid #0000;font-size:.9375rem}.alert p:last-of-type{margin-bottom:var(--space-3)}.alert-error{color:var(--error);background:var(--error-soft);border-color:var(--error-border)}.alert-success{color:var(--success);background:var(--success-soft)}.alert-info{color:var(--accent);background:var(--accent-soft)}.loading-state{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-12);color:var(--muted);display:flex}.loading-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.25}}.empty-state{text-align:center;padding:var(--space-12)}.empty-state>.icon{color:var(--accent);width:36px;height:36px;margin-bottom:var(--space-4)}.filters{gap:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-6);margin-block:var(--space-6);grid-template-columns:minmax(0,1.2fr) minmax(0,2fr);display:grid}.filters .field{margin:0}.filters label{font-size:.875rem}.filter-extras{gap:var(--space-4);grid-template-columns:1.2fr 1fr .7fr;min-width:0;display:grid}.filter-toggle{display:none}.results-count{align-items:center;gap:var(--space-3);margin-block:var(--space-6);color:var(--muted);flex-wrap:wrap;font-size:.85rem;display:flex}.word-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));display:grid}.card.word-card{padding:var(--space-4);transition:border-color var(--motion), box-shadow var(--motion);overflow-wrap:anywhere;flex-direction:column;display:flex}.word-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-hover)}.word-meta{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);text-transform:capitalize;display:flex}.word-card h2{margin-bottom:var(--space-2);font-size:1.2rem}.word-card h2 a{color:var(--text);text-decoration:none}.word-card h2 a:hover{color:var(--accent)}.word-card>p{margin-bottom:var(--space-2);font-size:.9rem}.word-card>.word-topics{color:var(--muted);padding-top:var(--space-2);margin-top:auto;margin-bottom:0;font-size:.75rem}.word-card:has(.review-skills) .word-topics{margin-top:0}.review-skills{border-top:1px solid var(--border);margin-top:var(--space-3);padding-top:var(--space-3)}.review-skill+.review-skill{margin-top:var(--space-4)}.review-skill p{margin-bottom:var(--space-2);font-size:.75rem}.progress{appearance:none;background:var(--surface-soft);width:100%;height:8px;accent-color:var(--accent);border:0;border-radius:8px;display:block;overflow:hidden}.progress::-webkit-progress-bar{background:var(--surface-soft);border-radius:8px}.progress::-webkit-progress-value{background:var(--accent);border-radius:8px}.progress::-moz-progress-bar{background:var(--accent);border-radius:8px}.pagination,.actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.pagination{margin-top:var(--space-8);color:var(--muted);justify-content:center;font-size:.8rem}.actions{margin-block:var(--space-6)}.home-lessons{gap:var(--space-4);display:grid}.home-lessons>.button{justify-self:start}.home-lesson{justify-content:space-between;align-items:center;gap:var(--space-8);border-color:var(--accent-border);background:linear-gradient(120deg, var(--surface), var(--accent-soft));display:flex}.home-lesson h2{margin:var(--space-4) 0 var(--space-2);overflow-wrap:anywhere;font-size:clamp(1.5rem,2.4vw,2rem)}.home-lesson .intro{margin:0}.home-lesson>div{min-width:0}.home-lesson>.button{flex-shrink:0}.lesson-meta{align-items:center;gap:var(--space-3);color:var(--muted);flex-wrap:wrap;font-size:.875rem;display:flex}.section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin:var(--space-12) 0 var(--space-6);display:flex}.section-heading h2,.section-heading p{margin:0}.feature-grid{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.feature-card{padding:var(--space-6);flex-direction:column;display:flex}.feature-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);margin-bottom:var(--space-6);border-radius:12px;place-items:center;display:grid}.feature-card p{font-size:.9375rem}.feature-card .button{text-align:left;align-self:flex-start;margin-top:auto;padding-inline:0}.future-note{gap:var(--space-3);color:var(--muted);margin-top:var(--space-8);font-size:.8rem;display:flex}.public-header{max-width:1200px;padding:var(--space-8);justify-content:space-between;align-items:center;margin:auto;display:flex}.public-header>span{color:var(--muted);font-size:.8rem}.public-shell .main-content{padding-top:var(--space-8)}.auth-layout{gap:var(--space-12);grid-template-columns:1fr 1fr;align-items:center;max-width:960px;margin:auto;display:grid}.auth-story{padding:var(--space-8) 0}.auth-story h2{letter-spacing:-.035em;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15}.auth-story>p:not(.eyebrow){color:var(--muted)}.auth-card h1{overflow-wrap:anywhere;font-size:1.8rem}.auth-card .intro{margin-bottom:var(--space-8);font-size:.9rem}.auth-card form .button{width:100%}.switch{text-align:center;margin:var(--space-6) 0 0;color:var(--muted);font-size:.85rem}.practice-session{max-width:var(--focus-width);margin:auto}.practice-panel .filters{background:var(--canvas);grid-template-columns:minmax(0,1fr)}.mode-options{gap:var(--space-3);margin-block:var(--space-3) var(--space-8);grid-template-columns:repeat(3,1fr);display:grid}.choice{align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--control-border);border-radius:var(--radius-control);cursor:pointer;min-height:48px;transition:background var(--motion), border-color var(--motion);margin:0;font-size:1rem;display:flex}.choice:hover:not(:has(:disabled)){background:var(--surface-soft)}.choice.selected{background:var(--accent-soft);border-color:var(--accent)}.choice:has(:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.choice:has(:disabled){cursor:default}.choice input{accent-color:var(--accent);flex-shrink:0;margin-top:.35rem}.choice>span{overflow-wrap:anywhere;min-width:0}.dialog-backdrop{z-index:30;padding:var(--space-4);background:#24273899;place-items:center;display:grid;position:fixed;inset:0}.dialog{width:min(100%,32rem);max-height:calc(100vh - 2 * var(--space-4));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-6);box-shadow:var(--shadow-hover);overflow-y:auto}.dialog:focus{outline:none}.dialog h2{margin-bottom:var(--space-2)}.dialog .mode-options{margin-block:var(--space-4);grid-template-columns:minmax(0,1fr)}.dialog-actions{justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.mode-description{color:var(--muted);margin-top:4px;font-size:.75rem;font-weight:400;display:block}.practice-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.practice-toolbar p{color:var(--muted);margin:0;font-size:.8rem}.practice-toolbar .button{flex-shrink:0;width:8rem}.practice-session h1{overflow-wrap:anywhere;margin-top:var(--space-8);text-align:center;font-size:1.35rem}.question-word{text-align:center;margin:var(--space-8) 0 var(--space-2);letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(2rem,5vw,3rem);font-weight:700}.question-hint{text-align:center;color:var(--muted)}.answer-options{gap:var(--space-3);margin-block:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.answer-options .button{overflow-wrap:anywhere;min-height:64px;font-size:1rem}.answer-options .selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);opacity:1}.answer-options [data-outcome=correct]{background:var(--success-soft);color:var(--success);border-color:var(--success);opacity:1}.answer-options [data-outcome=incorrect]{background:var(--error-soft);color:var(--error);border-color:var(--error);opacity:1}.feedback{padding:var(--space-6);border-radius:var(--radius-control);margin-block:var(--space-6);border:1px solid}.feedback.correct{background:var(--success-soft);border-color:var(--success-border)}.feedback.incorrect{background:var(--warning-soft);border-color:var(--warning-border)}.feedback h2{align-items:center;gap:var(--space-2);font-size:1.2rem;display:flex}.practice-next{margin-top:var(--space-6);justify-content:flex-end;display:flex}.practice-next .button{min-width:128px}.actions>a{align-items:center;min-height:44px;display:inline-flex}.grammar-facts{gap:var(--space-6) var(--space-8);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--canvas);flex-wrap:wrap;display:flex}.practice-results{max-width:1040px;margin-inline:auto;container-type:inline-size}.results-header{margin-bottom:var(--space-8)}.results-heading{align-items:center;gap:var(--space-4);display:flex}.results-icon{border-radius:var(--radius-control);background:var(--accent-soft);width:48px;height:48px;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.results-heading .eyebrow{margin-bottom:var(--space-1)}.results-heading h1{margin-bottom:0;font-size:clamp(1.6rem,3vw,2rem)}#results-heading:focus{outline:none}.results-overview{justify-content:space-between;align-items:center;gap:var(--space-8);margin-top:var(--space-6);display:flex}.results-score{flex:1;min-width:0;max-width:380px}.results-score>p{margin-bottom:var(--space-2);color:var(--muted);font-size:1rem}.results-score strong{color:var(--accent);margin-right:var(--space-1);font-size:2rem;font-weight:750;line-height:1}.results-score .progress{height:6px;display:block}.results-skills{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.results-next{text-align:center;flex-shrink:0}.results-next>p{color:var(--muted);margin:var(--space-2) 0 0;font-size:.8rem}.results-content{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 300px;align-items:start;display:grid}.results-section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.results-section-heading h2{margin:0;font-size:1.2rem}.results-section-heading>.icon{color:var(--accent)}.ai-feedback{min-width:0}.ai-summary{color:var(--muted);max-width:65ch;margin-bottom:var(--space-6);overflow-wrap:anywhere;font-size:.95rem}.ai-tips{gap:var(--space-4);display:grid}.ai-tip,.ai-feedback-state{padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.ai-tip h3{margin-bottom:var(--space-3)}.ai-tip>p{overflow-wrap:anywhere;max-width:65ch;font-size:.95rem}.ai-tip-action{background:var(--accent-soft);border-radius:var(--radius-sm);padding:var(--space-4)}.ai-tip-action>span{color:var(--accent);margin-bottom:var(--space-1);font-size:.75rem;font-weight:700;display:block}.ai-tip-action>p{overflow-wrap:anywhere;margin:0;font-size:.9rem}.ai-feedback-words{gap:var(--space-2);margin:var(--space-4) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.ai-feedback-words a{min-height:44px;padding:var(--space-1) var(--space-3);background:var(--surface-soft);border-radius:var(--radius-sm);overflow-wrap:anywhere;align-items:center;font-size:.8rem;text-decoration:none;display:inline-flex}.ai-feedback-words a:hover{background:var(--accent-soft)}.ai-feedback-state .loading-state{padding:var(--space-4) 0;justify-content:flex-start}.ai-feedback-state>.hint{margin-bottom:0}.results-review.card{padding:var(--space-6)}.results-review>.hint{font-size:.8rem}.results-words{margin:0;padding:0;list-style:none}.results-words li{padding-block:var(--space-4);border-top:1px solid var(--border)}.results-words li:last-child{padding-bottom:0}.results-word{padding-right:var(--space-6);color:var(--text);overflow-wrap:anywhere;font-size:1.1rem;font-weight:650;text-decoration:none;display:block;position:relative}.results-word>span{color:var(--accent);font-weight:500}.results-word>.icon{width:16px;height:16px;color:var(--muted);position:absolute;top:5px;right:0}.results-words li>p{color:var(--muted);margin:var(--space-1) 0 var(--space-2);overflow-wrap:anywhere;font-size:.85rem}.results-word-skills{gap:var(--space-1);flex-wrap:wrap;display:flex}.results-word-skills .badge{font-size:.75rem}.results-navigation{gap:var(--space-3) var(--space-6);padding-top:var(--space-6);margin-top:var(--space-6);border-top:1px solid var(--border);flex-wrap:wrap;font-size:.85rem;display:flex}.results-navigation a{align-items:center;min-height:44px;display:inline-flex}.results-perfect{text-align:center;padding-block:var(--space-8)}.results-perfect .results-icon{margin:0 auto var(--space-4);background:var(--success-soft);color:var(--success)}.results-perfect>p:last-child{margin-bottom:0}@container (width<=799px){.results-content{grid-template-columns:minmax(0,1fr)}}@container (width<=479px){.results-heading{align-items:flex-start}.results-heading>.results-icon{display:none}.results-overview{align-items:stretch;gap:var(--space-6);flex-direction:column}.results-score{max-width:none}.results-next .button{width:100%}.ai-tip,.ai-feedback-state{padding:var(--space-4)}}dt{text-transform:capitalize;font-size:.85rem;font-weight:600}dd{color:var(--muted);margin:0}.word-detail{max-width:960px;margin:auto}.word-detail .back-link{font-size:.85rem;text-decoration:none}.word-header{padding-block:var(--space-6);border-bottom:1px solid var(--border)}.word-detail-meta{align-items:center;gap:var(--space-3);color:var(--muted);margin-bottom:var(--space-3);flex-wrap:wrap;font-size:.8rem;display:flex}.word-detail-meta .badge{text-transform:capitalize}.word-detail h1{font-size:clamp(2.5rem,5vw,3.5rem)}.word-article{color:var(--accent);font-weight:500}.word-meanings{gap:var(--space-3);margin:0;padding-left:1.6rem;display:grid}.word-meaning{padding-left:var(--space-1)}.word-meaning::marker{color:var(--muted);font-size:.9rem;font-weight:600}.word-meaning p{margin:0}.word-meaning strong{font-size:1.15rem;font-weight:550}.noun-metadata{align-items:baseline;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);color:var(--muted);flex-wrap:wrap;font-size:1rem;display:flex}.noun-metadata>span{overflow-wrap:anywhere}.noun-metadata>span:first-letter{text-transform:uppercase}.noun-metadata strong{color:var(--text);font-size:1.1rem;font-weight:650}.word-meaning .meaning-explanation{margin-top:var(--space-1);color:var(--muted);max-width:65ch;font-size:.9rem}.word-levels{margin-top:var(--space-2);padding-inline:0}.word-study-layout{gap:var(--space-8);padding-top:var(--space-6);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);display:grid}.word-study-layout>:only-child{grid-column:1/-1}.word-detail h2{margin-bottom:var(--space-4);font-size:.85rem;font-weight:700}.word-examples blockquote{margin:0 0 var(--space-4);padding:0 0 0 var(--space-4);border-left:2px solid var(--accent-border)}.word-examples blockquote:last-child{margin-bottom:0}.word-examples blockquote p{margin:0}.word-examples blockquote p[lang]{font-weight:550}.word-examples blockquote .hint{margin-top:var(--space-1)}.study-forms{gap:var(--space-3) var(--space-6);margin:0 0 var(--space-4);flex-wrap:wrap;display:flex}.verb-study-forms{gap:var(--space-1) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.verb-study-forms>div{grid-template-rows:subgrid;min-width:0;padding-bottom:var(--space-3);grid-row:span 3;display:grid}.verb-study-forms dt,.verb-study-forms dd{overflow-wrap:anywhere}.study-forms dt{color:var(--muted);text-transform:none;font-size:.75rem;font-weight:400}.study-forms dd{color:var(--text);overflow-wrap:anywhere;font-size:1.05rem;font-weight:650}.learning-cues{gap:var(--space-2);color:var(--muted);margin:0;padding:0;font-size:.85rem;list-style:none;display:grid}.learning-cues li{overflow-wrap:anywhere}.learning-cues li:first-letter{text-transform:uppercase}.noun-declension{margin-top:var(--space-4);font-size:.85rem}.word-essentials>.noun-declension{margin-top:0}.noun-declension dl{gap:var(--space-3);margin:0;display:grid}.noun-declension dt{color:var(--muted);font-size:.75rem}.noun-declension dd{color:var(--text);overflow-wrap:anywhere}.noun-case-change,.noun-case-scope{display:block}.noun-case-change>span{text-transform:capitalize}.noun-case-scope,.noun-declension .hint{color:var(--muted);font-size:.75rem}.word-note{margin-top:var(--space-6);padding:var(--space-4);border-radius:var(--radius-sm);background:var(--accent-soft)}.word-note h2{color:var(--accent);margin-bottom:var(--space-1)}.word-note p{overflow-wrap:anywhere;margin:0;font-size:.85rem}.word-reference{margin-top:var(--space-6);border-top:1px solid var(--border)}.reference-count{color:var(--muted);margin-left:var(--space-2);font-size:.75rem;font-weight:400}.reference-groups{gap:0 var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.reference-group{border-top:1px solid var(--border);min-width:0}.reference-group>summary{overflow-wrap:anywhere;font-size:.85rem}.reference-pattern{color:var(--muted);font-size:.75rem;font-weight:400;display:block}.reference-case+.reference-case{margin-top:var(--space-4)}.reference-case h3{color:var(--accent);text-transform:capitalize;margin-bottom:var(--space-2);font-size:.75rem}.reference-forms{gap:var(--space-2);margin:0;display:grid}.reference-forms>div{gap:var(--space-1) var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);font-size:.85rem;display:grid}.reference-forms dt{color:var(--muted);text-transform:none;overflow-wrap:anywhere;font-size:.75rem;font-weight:400}.reference-forms dd{color:var(--text);overflow-wrap:anywhere}.word-detail .form-note{color:var(--muted);grid-column:1/-1;max-width:45ch;font-size:.75rem;font-weight:400}@media (width<=639px){.word-study-layout,.reference-groups{grid-template-columns:minmax(0,1fr)}.word-study-layout{gap:var(--space-6)}}.form-list{padding-left:var(--space-6)}.form-list li{margin-bottom:var(--space-2)}.grammar{margin-top:var(--space-8);border-top:1px solid var(--border)}details{padding-block:var(--space-3)}summary{cursor:pointer;min-height:44px;padding-block:var(--space-2);font-weight:600}.table-scroll{max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{text-align:left;padding:var(--space-3);border-bottom:1px solid var(--border)}th{background:var(--canvas)}@media (width>=640px) and (width<=1150px){.filters{grid-template-columns:minmax(0,1fr)}.feature-grid{gap:var(--space-4)}}@media (width<=959px){.app-shell{padding-left:0}.mobile-header{padding:var(--space-4) var(--space-6);background:var(--surface);border-bottom:1px solid var(--border);z-index:11;justify-content:space-between;align-items:center;display:flex;position:relative}.sidebar{border-right:0;border-bottom:1px solid var(--border);width:100%;padding:var(--space-4) var(--space-6);box-shadow:var(--shadow-hover);display:none;position:static;inset:auto}.sidebar.is-open{display:flex}.sidebar-brand,.nav-label{display:none}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar .account-navigation{margin-top:var(--space-4);padding-block:0}.account{padding-top:var(--space-4);margin-top:var(--space-4)}.sidebar .logout{align-self:flex-start}.main-content{padding:var(--space-8) var(--space-6) var(--space-12)}.auth-layout{gap:var(--space-8)}}@media (width<=639px){.main-content,.public-shell .main-content{padding:var(--space-6) var(--space-4) var(--space-8)}.page-title{align-items:flex-start;gap:var(--space-4);flex-direction:column}.page-title .button{width:100%}.card{padding:var(--space-6)}.home-lesson{align-items:stretch;gap:var(--space-6);flex-direction:column}.feature-grid,.auth-layout{grid-template-columns:1fr}.feature-card .button{min-height:44px}.section-heading{margin-top:var(--space-8);flex-wrap:wrap}.filters,.practice-panel .filters{padding:var(--space-4);grid-template-columns:minmax(0,1fr)}.filter-toggle{justify-content:space-between;display:inline-flex}.filter-extras{grid-template-columns:minmax(0,1fr);display:none}.filter-extras.is-expanded{display:grid}.sidebar nav{grid-template-columns:minmax(0,1fr)}.lesson-generation-card>.button,.lesson-history .button{width:100%}.sidebar .brand-caption{font-size:.75rem}.public-header{padding:var(--space-6) var(--space-4)}.public-header>span{display:none}.auth-story{padding:0}.auth-story h2{font-size:1.9rem}.auth-story>p:not(.eyebrow){margin-bottom:0}.mode-options{grid-template-columns:1fr}.mode-options .choice{align-items:center}.dialog{padding:var(--space-4)}.dialog-actions .button{flex:1}.answer-options{grid-template-columns:1fr}.pagination{gap:var(--space-2)}.pagination .button{padding-inline:var(--space-3);font-size:.75rem}.empty-state{padding-block:var(--space-8)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.back-link,.switch a{align-items:center;min-height:44px;display:inline-flex}.settings-card{max-width:var(--focus-width)}.settings-card form{gap:var(--space-6);display:grid}.settings-group+.settings-group{border-top:1px solid var(--border);padding-top:var(--space-6)}.settings-group legend{margin-bottom:var(--space-4);font-size:1.125rem;font-weight:700}textarea.input{resize:vertical;width:100%;line-height:1.6}.checkbox-label{align-items:center;gap:var(--space-3);cursor:pointer;min-height:44px;display:flex}.checkbox-label input{width:20px;height:20px;accent-color:var(--accent);flex-shrink:0}.lesson-actions{align-items:center;gap:var(--space-4);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.lesson-actions>a{align-items:center;min-height:44px;display:inline-flex}.lesson-generation-card,.lesson-history .card{justify-content:space-between;align-items:center;gap:var(--space-6);display:flex}.lesson-generation-card>div,.lesson-history .card>div{min-width:0}.lesson-generation-card>.button,.lesson-history .button{flex-shrink:0}.lesson-generation-card h2{margin-bottom:var(--space-3)}.lesson-generation-card .eyebrow{margin-bottom:var(--space-2)}.lesson-generation-card p:last-child{margin-bottom:0}.lesson-history{gap:var(--space-4);display:grid}.lesson-history h3{margin:var(--space-3) 0;overflow-wrap:anywhere}.lesson-history h3 a{color:var(--text);text-decoration:none}.lesson-history h3 a:hover{color:var(--accent)}.lesson-history .hint{margin-bottom:0}.daily-lesson>.card{margin-bottom:var(--space-6)}.daily-lesson .page-title{margin-top:var(--space-4)}.daily-lesson>.card ul{margin-bottom:0}.view-navigation{gap:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-1);background:var(--surface-soft);margin-bottom:var(--space-6);flex-wrap:wrap;display:inline-flex}.view-navigation .button{color:var(--muted)}.view-navigation .button[aria-current]{color:var(--accent);background:var(--surface);box-shadow:var(--shadow)}.lesson-view-heading{scroll-margin-top:var(--space-6);margin-bottom:var(--space-6);font-size:1.125rem}.lesson-view-heading:focus{outline:none}.lesson-view-heading:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.workbook-progress{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-6)}.workbook-progress>div{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;font-size:.875rem;display:flex}.workbook-progress .hint{margin:0}.lesson-document{gap:var(--space-6);margin:var(--space-6) 0;grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.lesson-contents{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);padding:var(--space-2) var(--space-4)}.lesson-contents summary{font-size:.9375rem}.lesson-contents nav{gap:var(--space-1);padding-block:var(--space-2);display:grid}.lesson-contents a{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--muted);overflow-wrap:anywhere;font-size:.875rem;line-height:1.5;text-decoration:none;display:flex}.lesson-contents a:hover{background:var(--accent-soft);color:var(--accent)}.lesson-contents a span{flex-shrink:0;font-size:.75rem}.lesson-sections{gap:var(--space-6);min-width:0;display:grid}.lesson-section,.lesson-exercise,.lesson-submit{scroll-margin-top:var(--space-6)}.lesson-section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.lesson-section-heading h2,.lesson-section-heading .hint{margin:0}.lesson-markdown{overflow-wrap:anywhere;font-size:1.0625rem;line-height:1.75}.lesson-markdown>:where(p,ul,ol,blockquote){max-width:68ch}.lesson-markdown>:last-child{margin-bottom:0}.lesson-markdown pre{padding:var(--space-4);background:var(--surface-soft);border-radius:var(--radius-sm);overflow-x:auto}.lesson-markdown table{border-collapse:collapse;display:block;overflow-x:auto}.lesson-markdown td,.lesson-markdown th{border:1px solid var(--border);padding:var(--space-2) var(--space-3)}.lesson-markdown blockquote{padding:var(--space-4) var(--space-6);border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:var(--radius-sm);margin-inline:0}.lesson-table-scroll{overflow-x:auto}.lesson-vocabulary{border-collapse:collapse;width:100%;margin:var(--space-4) 0 var(--space-6);text-align:left;font-size:.9375rem}.lesson-vocabulary td,.lesson-vocabulary th{padding:var(--space-3);border-bottom:1px solid var(--border);vertical-align:top;overflow-wrap:anywhere}.lesson-vocabulary small{margin-top:var(--space-2);color:var(--muted);font-size:.8125rem;display:block}.lesson-exercise{padding:var(--space-6) 0;border-top:1px solid var(--border)}.lesson-exercise:last-child{padding-bottom:0}.lesson-exercise .field{margin-top:var(--space-4);margin-bottom:0}.exercise-label{align-items:center;gap:var(--space-3);text-transform:capitalize;color:var(--muted);margin-bottom:var(--space-3);flex-wrap:wrap;font-size:.75rem;font-weight:650;display:flex}.exercise-number{color:var(--accent);background:var(--accent-soft);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.lesson-options{gap:var(--space-3);margin-top:var(--space-4);display:grid}.exercise-hints{margin:var(--space-3) 0}.exercise-hints summary{color:var(--accent);font-size:.875rem}.lesson-blanks{line-height:3}.blank-input{width:145px;min-width:80px;max-width:100%;margin:0 var(--space-2);display:inline-block}.exercise-missing{outline:2px solid var(--error);outline-offset:-2px;border-radius:var(--radius-sm);margin-block:var(--space-2)}.exercise-feedback{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-control);background:var(--warning-soft);border:1px solid var(--warning-border)}.feedback-correct{background:var(--success-soft);border-color:var(--success-border)}.feedback-incorrect{background:var(--error-soft);border-color:var(--error-border)}.lesson-results{border-color:var(--accent-border)}.lesson-results h2{color:var(--accent)}.lesson-submit{margin-top:var(--space-6)}.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}@media (width>=1200px){.lesson-document{grid-template-columns:184px minmax(0,1fr)}.lesson-contents{top:var(--space-6);max-height:calc(100dvh - 48px);position:sticky;overflow-y:auto}}@media (width<=767px){.lesson-generation-card,.lesson-history .card{flex-direction:column;align-items:stretch}.lesson-vocabulary td,.lesson-vocabulary th{padding:var(--space-2);font-size:.875rem}.workbook-progress{padding:var(--space-4)}}.preview-bar{justify-content:space-between;align-items:flex-start;gap:var(--space-6);background:var(--surface-soft);box-shadow:none;display:flex}.preview-bar>div:first-child{min-width:0;max-width:60ch}.preview-bar .eyebrow{margin-bottom:var(--space-2)}.preview-bar .hint{margin:0}.preview-controls{gap:var(--space-3);flex-shrink:0;justify-items:end;max-width:100%;display:grid}.button.chip{border-color:var(--control-border);background:var(--surface);color:var(--text);padding:.4rem .8rem;font-size:.85rem;font-weight:600}.button.chip:hover:not(:disabled){background:var(--surface-soft);border-color:var(--text);color:var(--text)}.button.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent)}.chip-group{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip-count{margin-left:var(--space-1);color:var(--muted);font-size:.75rem;font-weight:500}.button.chip[aria-pressed=true] .chip-count{color:var(--accent)}.hub-section{margin-top:var(--space-8)}.hub-section>.section-heading{margin-top:0}.hub-focus-heading{align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);flex-direction:column;display:flex}.hub-focus-heading h2{margin:0}.hub-focus-heading .field{align-items:center;gap:var(--space-3);max-width:100%;margin:0;display:flex}.hub-focus-heading .field label{flex-shrink:0;margin:0}.hub-focus-heading .field select{width:250px;max-width:100%}.hub-filters{margin-bottom:var(--space-6)}.concern-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));display:grid}.concern-card{gap:var(--space-2);padding:var(--space-6);transition:border-color var(--motion), box-shadow var(--motion);flex-direction:column;display:flex}.concern-card:hover{border-color:var(--accent-border);box-shadow:var(--shadow-hover)}.concern-card.is-recommended{border-color:var(--accent-border);background:linear-gradient(150deg, var(--surface), var(--accent-soft))}.concern-meta{gap:var(--space-1);margin-bottom:var(--space-1);flex-wrap:wrap;display:flex}.concern-card h3{margin:0;font-size:1.15rem}.concern-card h3 a{color:var(--text);text-decoration:none}.concern-card h3 a:hover{color:var(--accent)}.concern-subtitle{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.9rem}.concern-reason{margin:0}.concern-card-actions{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-4);flex-wrap:wrap;margin-top:auto;display:flex}.concern-card-actions .hint{margin:0}.check-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));display:grid}.check-card{padding:var(--space-6);flex-direction:column;display:flex}.check-card h3{margin-bottom:var(--space-2)}.check-card .intro{margin-bottom:var(--space-4);font-size:.9rem}.check-card .button{align-self:flex-start;margin-top:auto}.concern-detail{max-width:1040px;margin-inline:auto}.concern-detail .page-title{margin-bottom:var(--space-6)}.detail-badges{gap:var(--space-2);flex-wrap:wrap;display:flex}.concern-layout{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 300px;align-items:start;display:grid}.concern-main,.concern-side{gap:var(--space-6);min-width:0;display:grid}.concern-focus{gap:var(--space-2);margin:0;padding-left:1.4rem;display:grid}.concern-examples{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.concern-examples li{border-left:3px solid var(--accent-border);padding-left:var(--space-4)}.concern-examples p{margin:0}.concern-examples p[lang]{font-weight:550}.concern-examples .hint{margin-top:var(--space-1)}.related-concerns{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.related-concerns li{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.related-concerns a{overflow-wrap:anywhere;align-items:center;min-height:44px;display:inline-flex}.question-content{margin-block:var(--space-8) var(--space-4);text-align:center}.question-instructions,.question-context{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:400;line-height:1.5}.question-content .question-sentence{margin-block:var(--space-4)}.question-sentence{text-align:center;margin:var(--space-8) 0 var(--space-2);overflow-wrap:anywhere;font-size:clamp(1.35rem,3vw,1.75rem);font-weight:650;line-height:1.4}.fill-blank{align-items:flex-end;gap:var(--space-3);margin-block:var(--space-8);flex-wrap:wrap;display:flex}.fill-blank .field{flex:260px;margin:0}.feedback-rule{margin-top:var(--space-2);max-width:68ch}.results-status{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.results-status .icon{width:16px;height:16px;color:var(--muted)}.concern-mistakes{margin:0;padding:0;list-style:none}.concern-mistakes li{padding-block:var(--space-4);border-top:1px solid var(--border)}.concern-mistakes li:first-child{border-top:0;padding-top:0}.concern-mistakes li:last-child{padding-bottom:0}.concern-mistakes p{margin-bottom:var(--space-2);overflow-wrap:anywhere}.concern-mistakes p:last-child{margin-bottom:0}.mistake-prompt{color:var(--text);font-weight:550}@media (width<=959px){.preview-bar{flex-direction:column}.preview-controls{justify-items:start}.concern-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=639px){.hub-focus-heading{flex-direction:column;align-items:stretch}.hub-focus-heading .field{flex-direction:column;align-items:stretch;width:100%}.hub-focus-heading .field select{width:100%}.hub-section{margin-top:var(--space-8)}.concern-card,.check-card,.preview-bar{padding:var(--space-4)}.concern-card-actions .button,.check-card .button{width:100%}}.feedback.partial{background:var(--warning-soft);border-color:var(--warning-border)}.saved-session-list{gap:var(--space-3);display:grid}.saved-session-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);box-shadow:none;display:flex}.saved-session-content{min-width:0}.saved-session-content h3{overflow-wrap:anywhere;margin:0;font-size:1rem}.saved-session-meta{margin:var(--space-1) 0 0}.saved-session-action{flex-shrink:0}.concern-card-actions{align-items:flex-start;gap:var(--space-2);flex-direction:column}.check-card{padding:var(--space-4)}.check-card .intro{margin-bottom:var(--space-3)}.practice-setup{padding:var(--space-6)}.practice-difficulty{min-width:0;margin:var(--space-4) 0 var(--space-6);border:0;padding:0}.practice-difficulty label{padding:0;font-weight:600}.practice-difficulty input[type=range]{width:100%;min-height:44px;accent-color:var(--accent);cursor:pointer;margin:0}.practice-difficulty-labels{gap:var(--space-2);color:var(--muted);grid-template-columns:repeat(3,minmax(0,1fr));font-size:.85rem;display:grid}.practice-difficulty-labels>:nth-child(2){text-align:center}.practice-difficulty-labels>:last-child{text-align:right}.practice-difficulty-labels .is-selected{color:var(--accent);font-weight:650}.practice-difficulty-labels>span{overflow-wrap:anywhere;min-width:0}.practice-difficulty .hint{margin:var(--space-3) 0 0;color:var(--muted);font-size:.9rem}.practice-ai-option{border-top:1px solid var(--border);padding-top:var(--space-4)}.practice-ai-control{justify-content:space-between;align-items:center;gap:var(--space-3);cursor:pointer;min-height:44px;font-size:1rem;font-weight:600;display:flex}.practice-ai-control input{appearance:none;border:1px solid var(--control-border);background:var(--surface-soft);cursor:pointer;border-radius:16px;flex:0 0 44px;width:44px;height:26px;margin:0;position:relative}.practice-ai-control input:before{content:"";background:var(--muted);width:18px;height:18px;transition:transform var(--motion);border-radius:50%;position:absolute;top:3px;left:3px}.practice-ai-control input:checked{background:var(--accent);border-color:var(--accent)}.practice-ai-control input:checked:before{background:var(--surface);transform:translate(18px)}.practice-ai-control input:disabled{cursor:default}.practice-ai-control:has(:disabled){cursor:default}.practice-ai-control input:disabled{opacity:.55}.practice-ai-control>span{min-width:0}.practice-ai-allowance{color:var(--muted);margin:var(--space-1) 0;font-size:.85rem;font-weight:400;display:block}.practice-ai-option>p{margin:var(--space-2) 0 0;font-size:.9rem}.practice-setup-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.practice-progress-help summary{min-height:44px;padding-block:var(--space-2);cursor:pointer;font-weight:600}.practice-setup>.results-section-heading{flex-wrap:wrap;align-items:center}.practice-setup>.results-section-heading .hint{margin:0}.concern-side .results-section-heading{flex-wrap:wrap}.concern-side .results-section-heading h2{flex:10rem}.focus-player{padding:var(--space-6)}.focus-player .practice-toolbar{flex-wrap:wrap}.focus-player .practice-toolbar .badge{white-space:normal;overflow-wrap:anywhere}.focus-player h1{margin-top:var(--space-6)}.focus-player h1:focus-visible{outline:3px solid var(--focus);outline-offset:4px;border-radius:var(--radius-sm)}.focus-player .question-content{margin-block:var(--space-6)}.focus-player .question-sentence{margin-block:var(--space-3)}.focus-player .fill-blank{margin-block:var(--space-6)}.focus-player .fill-blank.is-word-answer .field{flex:0 24rem}.focus-player textarea.input{display:block}.focus-player .answer-options{margin-block:var(--space-6)}.focus-player .actions{margin-block:var(--space-4) 0;gap:var(--space-2) var(--space-4)}.focus-player .actions .hint{margin:0}.focus-results .results-next{gap:var(--space-3);flex-wrap:wrap;display:flex}@media (width<=639px){.saved-session-row{padding:var(--space-4);flex-wrap:wrap}.saved-session-content{flex:150px}.practice-setup,.focus-player{padding:var(--space-4)}.practice-setup-actions .button,.focus-player .fill-blank .button,.focus-results .results-next .button{width:100%}.focus-player .fill-blank{flex-direction:column;align-items:stretch}.focus-player .fill-blank .field,.focus-player .fill-blank.is-word-answer .field{flex:auto}}@media (prefers-reduced-motion:reduce){.practice-ai-control input:before{transition:none}}.your-progress{gap:var(--space-6);display:grid}.your-progress .page-title{margin-bottom:0}.your-progress h2,.your-progress h3{margin-top:0}.progress-section-heading,.objective-heading{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.progress-section-heading .field{min-width:160px}.progress-section-heading h2,.objective-heading h3{margin-bottom:0}.curriculum-meters{gap:var(--space-6);margin-block:var(--space-6);display:grid}.progress-value{margin-block:var(--space-3);font-size:2rem;font-weight:700;line-height:1.2}.progress-stat-grid{gap:var(--space-4);margin-block:var(--space-4);display:grid}.progress-stat-grid>.card{min-width:0}.accuracy-stat{gap:var(--space-2);display:grid}.accuracy-stat>strong{font-size:1.5rem}.accuracy-stat>span{color:var(--muted)}.progress-explanation{border-block:1px solid var(--border);padding-block:var(--space-4)}.progress-explanation summary{cursor:pointer;min-height:44px;padding-block:var(--space-2);font-weight:600}.curriculum-objectives{padding-left:var(--space-6);margin-block:var(--space-6)}.curriculum-objectives li{padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.curriculum-objectives li p{margin-block:var(--space-2)}.progress-details{gap:var(--space-6);margin-block:var(--space-6);flex-wrap:wrap;display:flex}.progress-details dt{color:var(--muted)}.progress-details dd{margin:0;font-size:1.25rem;font-weight:600}.practice-skill-stats{gap:var(--space-6);margin-block:var(--space-6);display:grid}.activity-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));max-width:680px;display:grid}.activity-day{min-width:44px;min-height:56px;padding:var(--space-1);border:1px solid var(--control-border);border-radius:var(--radius-sm);color:var(--text);background:var(--surface);font:inherit;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;display:flex}.activity-day.is-active{background:var(--accent-soft);color:var(--accent)}.activity-day:hover{border-color:var(--accent)}.activity-day[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--accent)}.activity-day-detail{background:var(--surface-soft);border-radius:var(--radius-sm);padding:var(--space-4);margin-top:var(--space-4)}.activity-day-detail p{margin-bottom:0}@media (width>=640px){.activity-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.curriculum-meters,.practice-skill-stats,.progress-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1200px){.progress-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
