:root{color-scheme:light;font-family:Avenir Next,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.5;font-weight:400;--color-bg: #f3eee2;--color-bg-accent: #e4dccb;--color-surface: rgba(255, 252, 246, .88);--color-surface-strong: #fffdf7;--color-border: rgba(53, 45, 36, .12);--color-ink: #221d17;--color-ink-muted: #63584c;--color-accent: #245446;--color-accent-soft: #dce9e2;--color-shadow: rgba(24, 20, 16, .08);--radius-sm: 14px;--radius-md: 22px;--radius-lg: 30px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--shell-max-width: 1120px;--mobile-nav-height: 88px;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{min-height:100%;background:radial-gradient(circle at top,rgba(255,255,255,.85),transparent 35%),linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-accent) 100%)}body{margin:0;min-height:100vh;color:var(--color-ink);background:transparent}body,button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}#root{min-height:100vh}.app-frame{min-height:100vh;padding:var(--space-4);padding-bottom:calc(var(--mobile-nav-height) + var(--space-5))}.app-shell{display:grid;max-width:var(--shell-max-width);margin:0 auto;gap:var(--space-5)}.app-shell__sidebar{display:none}.brand-mark,.app-header,.surface-card,.app-nav--mobile,.page-shell__aside{border:1px solid var(--color-border);background:var(--color-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 18px 40px var(--color-shadow)}.brand-mark,.app-header,.surface-card{border-radius:var(--radius-md)}.brand-mark{padding:var(--space-5)}.brand-mark__eyebrow,.app-header__eyebrow,.page-shell__eyebrow,.status-chip{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.brand-mark__eyebrow,.app-header__eyebrow,.page-shell__eyebrow{margin:0 0 var(--space-2);color:var(--color-ink-muted)}.brand-mark__title,.app-header__title,.page-shell__title{margin:0;line-height:1.05}.brand-mark__title{max-width:14ch;font-size:clamp(2rem,2vw + 1.5rem,3rem)}.brand-mark__body,.app-header__body,.page-shell__description,.surface-card__description{margin:var(--space-3) 0 0;color:var(--color-ink-muted)}.app-shell__main{display:grid;gap:var(--space-4)}.app-header{position:sticky;top:var(--space-4);z-index:5;padding:var(--space-4) var(--space-5)}.app-header__title{font-size:clamp(1.8rem,3vw,2.4rem)}.app-header__body{max-width:34rem}.app-content{min-width:0}.page-shell{display:grid;gap:var(--space-4)}.page-shell__hero{display:grid;gap:var(--space-4);align-items:start}.page-shell__title{font-size:clamp(2.25rem,7vw,3.75rem)}.page-shell__description{max-width:40rem}.page-shell__aside{display:inline-flex;justify-self:start;padding:var(--space-2) var(--space-3);border-radius:999px}.status-chip{color:var(--color-accent)}.page-shell__grid{display:grid;gap:var(--space-4)}.page-shell__grid>.session-summary{min-width:0}.surface-card{padding:var(--space-5)}.surface-card__header{display:grid;gap:var(--space-2)}.surface-card__title{margin:0;font-size:1.25rem}.surface-card__description{margin-top:0}.surface-card__body{margin-top:var(--space-4)}.simple-list{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.simple-list li{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-surface-strong);border:1px solid rgba(36,84,70,.08)}.list-meta{margin-top:var(--space-1);color:var(--color-ink-muted);font-size:.88rem}.session-summary{display:grid;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid rgba(36,84,70,.12);background:linear-gradient(135deg,#fffdf7eb,#dce9e2e6),var(--color-surface);box-shadow:0 18px 40px var(--color-shadow)}.session-summary__eyebrow,.mission-card__skill-label{margin:0;color:var(--color-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.session-summary__title{margin:var(--space-2) 0 0;font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.05}.session-summary__body{margin:var(--space-3) 0 0;max-width:34rem;color:var(--color-ink-muted)}.session-summary__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3);margin:0}.session-summary__stat{padding:var(--space-4);border-radius:var(--radius-md);background:#fffdf7e0;border:1px solid rgba(36,84,70,.08)}.session-summary__stat dt{margin:0;color:var(--color-ink-muted);font-size:.82rem}.session-summary__stat dd{margin:var(--space-2) 0 0;font-size:1.4rem;font-weight:700}.mission-list{display:grid;gap:var(--space-3)}.mission-card{display:grid;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-strong);border:1px solid rgba(36,84,70,.08)}.mission-card--recommended{background:linear-gradient(135deg,#fffdf7f5,#dce9e2a8),var(--color-surface-strong);border-color:#2454461f}.mission-card--continue{background:linear-gradient(135deg,#fff8ebf5,#e0eee5b8),var(--color-surface-strong);border-color:#24544624}.mission-card--locked{background:#fffdf7b8;border-color:#2454461a}.mission-card__header,.mission-card__details{display:grid;gap:var(--space-2)}.mission-card__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.mission-badge{display:inline-flex;align-items:center;min-height:2rem;padding:0 var(--space-3);border-radius:999px;background:var(--color-accent-soft);color:var(--color-accent);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mission-card__minutes,.mission-card__skill-value{margin:0;color:var(--color-ink);font-weight:600}.mission-card__progress{margin:var(--space-2) 0 0;color:var(--color-accent);font-size:.92rem;font-weight:600}.mission-card__title{margin:0;font-size:1.2rem;line-height:1.2}.mission-card__cta,.inline-link{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 var(--space-4);border-radius:999px;border:1px solid transparent;background:var(--color-accent);color:#f7f5ee;font-weight:700}.mission-card__cta{width:100%}.mission-card__cta--disabled{border-color:#2454461f;background:#24544614;color:var(--color-ink-muted)}.inline-link{width:fit-content}.mission-library-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.mission-library-page__section{grid-column:1 / -1}.mission-library-summary__stat{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.mission-library-summary__stat dt{margin:0;color:var(--color-ink-muted);font-size:.82rem}.mission-library-summary__stat dd{margin:var(--space-2) 0 0;font-size:1.4rem;font-weight:700}.mission-library-card__state-row,.mission-library-card__stats{display:flex;flex-wrap:wrap;gap:var(--space-2)}.mission-state-pill{display:inline-flex;align-items:center;min-height:1.9rem;padding:0 var(--space-3);border-radius:999px;border:1px solid rgba(36,84,70,.1);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mission-state-pill--ready,.mission-state-pill--completed{background:#dce9e2b3;color:var(--color-accent)}.mission-state-pill--locked{background:#24544614;color:var(--color-ink-muted)}.mission-state-pill--recommended{background:#fff8ebf5;color:#9c5f20}.mission-state-pill--review{background:#c58b4d24;color:#9c5f20}.mission-library-card__reason,.mission-library-card__lock-note,.mission-library-card__content-note{margin:0;color:var(--color-ink-muted)}.mission-library-card__reason{color:var(--color-accent);font-weight:600}.mission-library-card__lock-note{font-weight:600}.mission-library-card__stats{margin:0;padding:0;list-style:none}.mission-library-card__stats li{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:#fffdf7e0;border:1px solid rgba(36,84,70,.08);color:var(--color-ink);font-size:.9rem}.path-summary,.mission-chapter-list,.mission-library-switcher,.mission-library-switcher__active,.mission-library-switcher__toolbar,.mission-library-switcher__toolbar-copy{display:grid;gap:var(--space-3)}.mission-library-switcher__track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:var(--space-3);overflow-x:auto;padding-bottom:var(--space-2);scrollbar-width:thin}.mission-library-switcher__tab{display:grid;gap:var(--space-1);min-height:7rem;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.1);background:var(--color-surface-strong);color:var(--color-ink);text-align:left}.mission-library-switcher__tab--active{border-color:#24544638;background:linear-gradient(135deg,#fffdf7f5,#dce9e2a8),var(--color-surface-strong)}.mission-library-switcher__tab-label,.mission-library-switcher__eyebrow{margin:0;color:var(--color-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.mission-library-switcher__tab-title,.mission-library-switcher__title{margin:0;line-height:1.15}.mission-library-switcher__tab-title{font-size:1rem}.mission-library-switcher__tab-meta,.mission-library-switcher__body{margin:0;color:var(--color-ink-muted)}.mission-library-switcher__actions{display:grid;gap:var(--space-3)}.path-summary__card,.mission-chapter{border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.1);background:var(--color-surface-strong)}.path-summary__card{display:grid;gap:var(--space-2);padding:var(--space-4)}.path-summary__label,.mission-chapter__eyebrow{margin:0;color:var(--color-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.path-summary__title,.mission-chapter__title{margin:0;line-height:1.15}.path-summary__body,.path-summary__meta,.mission-chapter__description,.mission-chapter__packs{margin:0;color:var(--color-ink-muted)}.mission-chapter{overflow:clip}.mission-chapter__summary{display:grid;gap:var(--space-4);padding:var(--space-4)}.mission-chapter__copy{display:grid;gap:var(--space-2)}.mission-chapter__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.mission-chapter__stats div{padding:var(--space-3);border-radius:var(--radius-sm);background:#fffdf7e0;border:1px solid rgba(36,84,70,.08)}.mission-chapter__stats dt{margin:0;color:var(--color-ink-muted);font-size:.8rem}.mission-chapter__stats dd{margin:var(--space-2) 0 0;font-size:1.15rem;font-weight:700}.mission-chapter__body{display:grid;gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}.mission-chapter__state-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.settings-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.settings-summary-grid__stat,.settings-action-card{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.settings-summary-grid__stat dt{margin:0;color:var(--color-ink-muted);font-size:.82rem}.settings-summary-grid__stat dd{margin:var(--space-2) 0 0;font-size:1.2rem;font-weight:700}.settings-feedback,.settings-action-card__description,.settings-action-card__summary,.settings-confirmation__copy,.settings-audio-missing__copy{margin:0;color:var(--color-ink-muted)}.settings-feedback{margin-top:var(--space-4);color:var(--color-accent);font-weight:600}.settings-action-list,.settings-action-card,.settings-confirmation,.settings-confirmation__actions,.settings-audio-missing{display:grid;gap:var(--space-3)}.settings-action-card__title{margin:0;font-size:1.05rem}.settings-action-card__copy{display:grid;gap:var(--space-2)}.settings-action-card__button{width:100%}.settings-action-card__button--danger{background:#9c5f20}.settings-audio-missing .simple-list li{display:grid;gap:var(--space-1)}.mission-player-shell{display:grid;grid-column:1 / -1;gap:var(--space-4)}.mission-overview,.mission-overview__lesson,.mission-progress,.mission-step-panel,.mission-copy-stack,.mission-drill-list,.mission-drill-card,.mission-drill-card__header,.mission-drill-card__body,.mission-reorder{display:grid;gap:var(--space-4)}.mission-overview__eyebrow,.mission-progress__label,.mission-copy-block__eyebrow,.mission-drill-card__eyebrow,.mission-input-group__label{margin:0;color:var(--color-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.mission-overview__lesson-title,.mission-progress__step,.mission-drill-card__prompt,.mission-feedback__title{margin:0}.mission-overview__objective,.mission-copy-block__body,.mission-drill-card__support,.mission-feedback__body{margin:0;color:var(--color-ink-muted)}.mission-overview__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.mission-overview__stat{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.mission-overview__stat dt{margin:0;color:var(--color-ink-muted);font-size:.82rem}.mission-overview__stat dd{margin:var(--space-2) 0 0;font-size:1rem;font-weight:700;text-transform:capitalize}.mission-progress__meta{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.mission-progress__track{position:relative;overflow:hidden;height:.75rem;border-radius:999px;background:#2454461f}.mission-progress__fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#245446,#4b826b)}.mission-step-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.mission-step-tab{display:grid;gap:var(--space-1);min-height:4.5rem;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.1);background:var(--color-surface-strong);color:var(--color-ink);text-align:left}.mission-step-tab--active{border-color:#24544638;background:var(--color-accent-soft)}.mission-step-tab__index{color:var(--color-ink-muted);font-size:.8rem}.mission-step-tab__label{font-weight:700}.mission-copy-block,.mission-example-card,.mission-mistake-card,.mission-drill-card{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.mission-example-list,.mission-mistakes-list{display:grid;gap:var(--space-3);margin:0;padding:0}.mission-example-card__japanese,.mission-example-card__reading,.mission-example-card__english{margin:0}.mission-example-card__japanese{font-size:1.2rem;font-weight:700}.mission-example-card__reading,.mission-example-card__english{color:var(--color-ink-muted)}.mission-mistakes-list{list-style:none}.mission-mistake-card{position:relative;padding-left:calc(var(--space-5) + var(--space-2))}.mission-mistake-card:before{content:"";position:absolute;left:var(--space-4);top:1.1rem;width:.6rem;height:.6rem;border-radius:999px;background:#c58b4d}.mission-choice-grid,.mission-drill-card__actions,.mission-step-actions{display:grid;gap:var(--space-3)}.mission-choice,.mission-button,.mission-token{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 var(--space-4);border-radius:999px;border:1px solid rgba(36,84,70,.12);background:var(--color-surface);color:var(--color-ink);font-weight:600}.mission-choice,.mission-token{justify-content:flex-start;text-align:left}.mission-choice--selected,.mission-token--answer,.mission-button,.mission-button--link{border-color:transparent;background:var(--color-accent);color:#f7f5ee}.mission-button--secondary{border-color:#2454461f;background:var(--color-surface);color:var(--color-ink)}.mission-button--link{text-decoration:none}.mission-button:disabled,.mission-choice:disabled,.mission-token:disabled{cursor:not-allowed;opacity:.48}.mission-input-group{display:grid;gap:var(--space-2)}.kana-assist__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.kana-assist__toggle{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-ink-muted);font-size:.88rem}.kana-assist__note{margin:0;color:var(--color-ink-muted);font-size:.88rem}.mission-input{min-height:3.25rem;width:100%;padding:0 var(--space-4);border:1px solid rgba(36,84,70,.12);border-radius:var(--radius-md);background:#fff;color:var(--color-ink)}.mission-textarea{min-height:7.5rem;width:100%;padding:var(--space-4);border:1px solid rgba(36,84,70,.12);border-radius:var(--radius-md);background:#fff;color:var(--color-ink);resize:vertical}.mission-input:focus-visible,.mission-textarea:focus-visible,.mission-button:focus-visible,.mission-choice:focus-visible,.mission-token:focus-visible,.mission-step-tab:focus-visible{outline:2px solid rgba(36,84,70,.36);outline-offset:2px}.mission-reorder__answer{display:flex;flex-wrap:wrap;gap:var(--space-2);min-height:3.5rem;padding:var(--space-3);border-radius:var(--radius-md);border:1px dashed rgba(36,84,70,.18);background:#ffffff8c}.mission-reorder__placeholder{color:var(--color-ink-muted)}.mission-choice-grid--tokens{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-token--answer{min-height:2.25rem}.mission-feedback{display:grid;gap:var(--space-1);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md)}.mission-feedback--correct{background:#2454461a;color:var(--color-accent)}.mission-feedback--close{background:#e9be6c2e;color:#8c5a1d}.mission-feedback--incorrect{background:#c58b4d1f;color:#7f4f21}.listening-item-panel,.listening-support,.listening-reveal-stack,.listening-hint-panel,.listening-hint-panel__copy{display:grid;gap:var(--space-4)}.listening-audio-card,.listening-prompt-card,.listening-reveal-card{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.listening-audio-card,.listening-audio-card__copy{display:grid;gap:var(--space-3)}.listening-audio-card__player{width:100%}.listening-audio-card__fallback,.listening-audio-card__fallback-title,.listening-audio-card__fallback-body{margin:0}.listening-audio-card__fallback{display:grid;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-sm);background:#c58b4d1f;color:#7f4f21}.listening-audio-card__fallback-title{font-weight:700}.listening-reveal-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.listening-reveal-button{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.12);background:var(--color-surface);color:var(--color-ink);font-weight:700;text-align:center}.listening-reveal-button--complete{border-color:#24544629;background:var(--color-accent-soft);color:var(--color-accent)}.listening-reveal-button:disabled{cursor:not-allowed;opacity:.48}.listening-reveal-card{min-height:6rem}.listening-reveal-card--visible{background:linear-gradient(135deg,#fffdf7eb,#dce9e2a6),var(--color-surface-strong)}.listening-reveal-card__value,.listening-reveal-card__hidden,.listening-support__title{margin:0}.listening-reveal-card__value{font-size:1.1rem;line-height:1.45}.listening-reveal-card__hidden{color:var(--color-ink-muted)}.output-task-card,.reading-check-card,.output-support-grid,.output-support-grid__column,.output-vocab-strip{display:grid;gap:var(--space-4)}.output-task-card__prompt,.reading-check-card__sentence,.output-vocab-chip__kana,.output-vocab-chip__meaning{margin:0}.output-task-card__prompt{font-size:1.05rem;line-height:1.5}.output-task-card__hint,.reading-check-card__prompt,.reading-check-card__question,.reading-reveal-card__section,.output-vocab-chip{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.reading-check-card__sentence{font-size:clamp(1.4rem,4vw,1.8rem);line-height:1.5}.reading-reveal-card{display:grid;gap:var(--space-3)}.output-vocab-strip{margin-top:var(--space-4)}.output-vocab-chip__kana{font-weight:700}.output-vocab-chip__meaning{color:var(--color-ink-muted)}.mission-completion-card{display:grid;gap:var(--space-4)}.mission-completion-card__summary{display:grid;gap:var(--space-2)}.mission-completion-card__status,.mission-completion-card__meta{margin:0}.mission-completion-card__status{color:var(--color-ink);font-weight:700}.mission-completion-card__meta{color:var(--color-ink-muted)}.review-group-list,.review-group,.review-item-list{display:grid;gap:var(--space-4)}.review-group__header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.review-group__title,.review-group__meta,.review-item-card__eyebrow,.review-item-card__title,.review-item-card__body,.review-item-card__meta{margin:0}.review-group__title{font-size:1rem}.review-group__meta,.review-item-card__eyebrow,.review-item-card__meta{color:var(--color-ink-muted)}.review-item-card__eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.review-item-card{display:grid;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.review-launch-card,.review-launch-card__summary,.review-batch-player,.review-current-item,.review-retry-card,.review-listening-stack{display:grid;gap:var(--space-4)}.review-launch-card__title,.review-launch-card__body,.review-launch-card__meta,.review-current-item__body,.review-current-item__meta{margin:0}.review-launch-card__title{font-size:1.05rem;font-weight:700}.review-launch-card__body,.review-launch-card__meta,.review-current-item__meta{color:var(--color-ink-muted)}.review-current-item__body{color:var(--color-ink)}.skill-map-list{display:grid;gap:var(--space-4)}.skill-card{display:grid;gap:var(--space-4);min-width:0;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(36,84,70,.08);background:var(--color-surface-strong)}.skill-card--solid{background:linear-gradient(135deg,#dce9e2b8,#fffdf7eb),var(--color-surface-strong)}.skill-card--okay{background:linear-gradient(135deg,#fff7dee6,#fffdf7eb),var(--color-surface-strong)}.skill-card--shaky{background:linear-gradient(135deg,#ffecdeeb,#fffdf7eb),var(--color-surface-strong)}.skill-card__header{display:flex;align-items:start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.skill-card__header-content{min-width:0}.skill-card__eyebrow,.skill-card__note,.skill-card__tier,.skill-card__stat dt,.skill-card__stat dd{margin:0}.skill-card__eyebrow{color:var(--color-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.skill-card__title{margin:var(--space-1) 0 0;font-size:1.1rem;overflow-wrap:anywhere}.skill-card__tier{display:inline-flex;align-items:center;min-height:2rem;padding:0 var(--space-3);border-radius:999px;font-size:.8rem;font-weight:700;white-space:nowrap}.skill-card__tier--solid{background:#2454461f;color:var(--color-accent)}.skill-card__tier--okay{background:#c58b4d29;color:#8a5b24}.skill-card__tier--shaky{background:#a8523024;color:#8b3b23}.skill-card__tier--not-enough-data{background:#63584c1f;color:var(--color-ink-muted)}.skill-card__note{color:var(--color-ink-muted);overflow-wrap:anywhere}.skill-card__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:var(--space-3);margin:0}.skill-card__stat{min-width:0;padding:var(--space-3);border-radius:var(--radius-sm);background:#fff9;border:1px solid rgba(36,84,70,.06)}.skill-card__stat dt{color:var(--color-ink-muted);font-size:.76rem;overflow-wrap:anywhere}.skill-card__stat dd{margin-top:var(--space-1);font-size:1.05rem;font-weight:700}.progress-page__skill-map-card{grid-column:1 / -1}.progress-page__skill-map-list{grid-template-columns:minmax(0,1fr)}@media(hover:hover){.mission-card__cta:hover,.inline-link:hover,.mission-button:hover,.mission-choice:hover,.mission-token:hover,.mission-step-tab:hover,.listening-reveal-button:hover{filter:brightness(1.06)}}.app-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;padding:0 var(--space-4) max(env(safe-area-inset-bottom),var(--space-3))}.app-nav{display:grid;gap:var(--space-2)}.app-nav--mobile{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;padding:var(--space-2);border-radius:calc(var(--radius-md) + 4px)}.app-nav--desktop{margin-top:var(--space-4)}.app-nav__link{display:grid;gap:var(--space-1);min-width:0;padding:var(--space-3);border-radius:18px;color:var(--color-ink-muted);transition:background-color .14s ease,color .14s ease,transform .14s ease}.app-nav__label,.app-nav__caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-nav__label{font-size:.9rem;font-weight:600}.app-nav__caption{font-size:.75rem}.app-nav__link--active{background:var(--color-accent-soft);color:var(--color-accent)}@media(hover:hover){.app-nav__link:hover{background:#24544614;color:var(--color-ink);transform:translateY(-1px)}}@media(min-width:760px){.app-frame{padding:var(--space-5);padding-bottom:var(--space-5)}.app-shell{grid-template-columns:260px minmax(0,1fr);align-items:start}.app-shell__sidebar{position:sticky;top:var(--space-5);display:block}.app-header{top:var(--space-5)}.app-mobile-nav{display:none}.page-shell__hero,.page-shell__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-shell__grid>.session-summary{grid-column:1 / -1}.page-shell__hero>:first-child{grid-column:1 / 2}.page-shell__aside{justify-self:end;align-self:start}.mission-step-tabs,.mission-choice-grid,.mission-drill-card__actions,.mission-step-actions,.path-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-library-switcher__toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end}.mission-library-switcher__actions{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-chapter__summary{grid-template-columns:minmax(0,1.6fr) minmax(240px,.9fr);align-items:start}.mission-choice-grid--tokens{grid-template-columns:repeat(3,minmax(0,1fr))}.listening-reveal-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.output-support-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.output-vocab-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.mission-completion-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.review-item-list{grid-template-columns:repeat(2,minmax(0,1fr))}.review-launch-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.progress-page__skill-map-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1120px){.progress-page__skill-map-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
