:root{--bg: #faf7f2;--panel: #ffffff;--ink: #2b2420;--muted: #857a6f;--accent: #c1543c;--accent-soft: #f3ded7;--border: #e7ddd1;--ok-ink: #2f6b3b;--bad-ink: #8f2f2b;--glow: #f6ead2;color-scheme:light}:root[data-theme=dark]{--bg: #1b1815;--panel: #25211d;--ink: #ebe3d8;--muted: #a3978a;--accent: #d9694f;--accent-soft: #462b23;--border: #39322b;--ok-ink: #93d39e;--bad-ink: #f0a39c;--glow: #2a221a;--lv-unknown: #6b625a;--lv-unknown-bg: #2d2824;--lv-unknown-ink: #7d746b;--lv-red: #e06b66;--lv-red-bg: #45231f;--lv-yellow: #d9b148;--lv-yellow-bg: #3f3519;--lv-green: #5fb46f;--lv-green-bg: #1d3623;--lv-purple: #a382d8;--lv-purple-bg: #312747;color-scheme:dark}:root[data-theme=dark] .lesson-view__page-image img,:root[data-theme=dark] .lesson-view__thumb img{filter:brightness(.82) contrast(1.05)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:Hiragino Sans,Yu Gothic,Segoe UI,system-ui,sans-serif}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--muted)}.app{display:grid;grid-template-columns:320px 1fr;height:100vh}.app__sidebar{background:var(--panel);border-right:1px solid var(--border);overflow-y:auto;display:flex;flex-direction:column}.app__brand{padding:20px 20px 12px;border-bottom:1px solid var(--border)}.app__brand h1{margin:0;font-size:28px;color:var(--accent)}.app__brand p{margin:4px 0 0;font-size:13px;color:var(--muted)}.app__overall-progress{font-weight:600;color:var(--ink)!important}.lesson-list{display:flex;flex-direction:column;padding:8px;gap:4px}.lesson-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:10px 12px;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer;font:inherit;color:inherit}.lesson-item:hover{background:var(--accent-soft)}.lesson-item--active{background:var(--accent-soft);border-color:var(--accent)}.lesson-item__number{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.02em}.lesson-item__title{font-size:14px;font-weight:600}.lesson-item__topic{font-size:11px;color:var(--muted)}.lesson-item__progress{margin-top:6px;width:100%;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.lesson-item__progress-bar{display:block;height:100%;background:var(--accent)}.app__main{overflow-y:auto;padding:24px 32px 48px}.lesson-view__header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:16px}.lesson-view__header h2{margin:0}.lesson-view__topic{margin:2px 0 0;color:var(--muted);font-size:13px}.lesson-view__pager{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.lesson-view__pager button{padding:6px 12px;border:1px solid var(--border);background:var(--panel);border-radius:6px;cursor:pointer;font:inherit}.lesson-view__pager button:disabled{opacity:.4;cursor:default}.lesson-view__body{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}.lesson-view__page-image{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:8px;max-width:720px;flex:2 1 480px}.lesson-view__page-image img{width:100%;display:block;border-radius:4px}.lesson-view__section-badge{position:absolute;top:18px;left:18px;background:var(--accent);color:#fff;font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;z-index:1}.audio-panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:16px;flex:1 1 260px;min-width:240px;position:sticky;top:0}.audio-panel__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.audio-panel__heading{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.audio-panel__play-all{padding:4px 10px;border:1px solid var(--accent);border-radius:999px;background:transparent;color:var(--accent);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.audio-panel__play-all:hover{background:var(--accent-soft)}.audio-panel__tracks{display:flex;flex-direction:column;gap:6px}.audio-track{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:8px;background:var(--bg);overflow:hidden}.audio-track--current{background:var(--accent-soft);border-color:var(--accent)}.audio-track--hidden{opacity:.45;border-style:dashed}.audio-track__main{flex:1;display:flex;align-items:center;gap:8px;padding:8px 10px;border:0;background:transparent;cursor:pointer;font:inherit;color:inherit;text-align:left;min-height:40px}.audio-track__main:disabled{cursor:default}.audio-track__icon{color:var(--accent);width:1em;text-align:center}.audio-track__label{flex:1;font-size:13px}.audio-track__original{color:var(--muted);font-size:11px}.audio-track__code{font-size:11px;color:var(--muted)}.audio-track__edit{display:flex;border-left:1px solid var(--border)}.audio-track__edit button{border:0;background:transparent;padding:0 10px;cursor:pointer;color:var(--muted);font:inherit}.audio-track__edit button:hover{color:var(--accent);background:var(--panel)}.audio-track__editor{flex:1;display:flex;gap:6px;padding:6px}.audio-track__editor input{flex:1;min-width:0;padding:4px 8px;border:1px solid var(--accent);border-radius:6px;font:inherit;font-size:13px}.audio-track__editor button{padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font:inherit;font-size:12px;cursor:pointer}.transport{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.transport__now{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transport--active .transport__now{color:var(--ink)}.transport__seek{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.transport__seek input{flex:1;min-width:0;accent-color:var(--accent)}.transport__controls{display:flex;align-items:center;justify-content:center;gap:6px}.transport__controls button{min-width:40px;height:36px;padding:0 8px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit;font-size:14px;cursor:pointer}.transport__controls button:disabled{opacity:.4;cursor:default}.transport__controls .transport__play{min-width:52px;background:var(--accent);border-color:var(--accent);color:#fff}.transport__rate{font-variant-numeric:tabular-nums;font-size:12px!important;font-weight:600}.transport__repeat{font-size:12px!important;color:var(--muted)!important;white-space:nowrap}.transport__repeat--on{color:var(--accent)!important;font-weight:600;border-color:var(--accent)!important;background:var(--accent-soft)!important}.lesson-view__thumbs{position:relative;margin-top:20px;display:flex;flex-wrap:wrap;gap:6px}.lesson-view__thumb{width:32px;height:32px;border-radius:6px;border:1px solid var(--border);background:var(--panel);cursor:pointer;font-size:12px;color:var(--muted)}.lesson-view__thumb--active{background:var(--accent);color:#fff;border-color:var(--accent)}.edit-bar{margin-bottom:16px;padding:10px 14px;border:1px dashed var(--accent);border-radius:10px;background:var(--accent-soft);font-size:13px}.edit-bar__row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.edit-bar__stats{color:var(--muted)}.edit-bar__actions{display:flex;gap:6px;margin-left:auto}.edit-bar button{padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font:inherit;cursor:pointer}.edit-bar .edit-bar__danger{border-color:var(--accent);color:var(--accent);font-weight:600}.edit-bar__export p{margin:10px 0 6px}.edit-bar__export textarea{display:block;width:100%;margin-bottom:6px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.app{transition:grid-template-columns .15s ease}.app--sidebar-collapsed{grid-template-columns:64px 1fr}.app__brand-row{display:flex;align-items:center;justify-content:space-between}.app__brand--compact{padding:14px 8px 10px;display:flex;justify-content:center}.sidebar-toggle{width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--muted);font-size:16px;line-height:1;cursor:pointer}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--muted);cursor:pointer}.theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.app__brand-actions{display:flex;gap:6px}.sidebar-toggle:hover{color:var(--accent);border-color:var(--accent)}.lesson-item__row{display:flex;width:100%;justify-content:space-between;align-items:baseline}.lesson-item__count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.lesson-item--complete .lesson-item__count{color:var(--accent);font-weight:600}.lesson-list--compact{padding:6px}.lesson-list--compact .lesson-item{align-items:center;padding:8px 4px 6px}.lesson-list--compact .lesson-item__number{font-size:14px}.lesson-list--compact .lesson-item__progress{margin-top:4px;height:3px}.account{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12px}.account__status{color:var(--muted);flex-basis:100%}.account__status strong{color:var(--ink)}.account__link{padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.sync-error{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:8px 12px;border:1px solid var(--accent);border-radius:8px;background:var(--accent-soft);font-size:13px}.sync-error span{flex:1}.sync-error button{border:0;background:none;cursor:pointer;color:var(--muted)}.auth-dialog{width:min(360px,calc(100vw - 32px));padding:0;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--ink);box-shadow:0 12px 40px #0003}.auth-dialog::backdrop{background:#00000059}.auth-dialog__body{display:flex;flex-direction:column;gap:12px;padding:18px}.auth-dialog__tabs{display:flex;border-bottom:1px solid var(--border);margin:-4px 0 4px}.auth-dialog__tabs button{flex:1;padding:8px;border:0;border-bottom:2px solid transparent;background:none;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}.auth-dialog__tabs .is-active{color:var(--accent);border-bottom-color:var(--accent)}.auth-dialog__actions{display:flex;justify-content:flex-end;gap:8px}.auth-dialog__actions button:not(.btn-primary){padding:8px 14px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font:inherit;cursor:pointer}.auth-form{display:flex;flex-direction:column;gap:12px}.auth-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--muted)}.auth-form input{padding:9px 10px;border:1px solid var(--border);border-radius:6px;font:inherit;font-size:15px;color:var(--ink);background:var(--panel)}.auth-form input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.auth-form__note{margin:0;font-size:12px;color:var(--muted)}.auth-form__error{margin:0;padding:6px 10px;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:13px}.btn-primary,.btn-secondary,.btn-ghost{padding:9px 16px;border-radius:8px;font:inherit;font-weight:600;cursor:pointer}.btn-primary{border:1px solid var(--accent);background:var(--accent);color:#fff}.btn-primary:disabled{opacity:.6;cursor:default}.btn-secondary{border:1px solid var(--accent);background:var(--panel);color:var(--accent)}.btn-secondary:hover:not(:disabled){background:var(--accent-soft)}.btn-secondary:disabled{border-color:var(--border);color:var(--muted);cursor:default}.btn-ghost{border:1px solid var(--border);background:transparent;color:var(--ink)}.btn-ghost:hover{background:var(--bg)}.welcome{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(circle at 15% 10%,var(--accent-soft),transparent 45%),radial-gradient(circle at 90% 95%,var(--glow),transparent 40%),var(--bg)}.welcome__card{width:min(400px,100%);padding:28px 28px 22px;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:0 12px 40px #3c281414}.welcome__brand{text-align:center;margin-bottom:18px}.welcome__brand h1{margin:0;font-size:40px;color:var(--accent);letter-spacing:.04em}.welcome__brand p{margin:4px 0 0;font-size:13px;color:var(--muted)}.welcome__heading{margin:0 0 12px;font-size:18px}.welcome__submit{margin-top:4px;width:100%;padding:11px}.welcome__divider{display:flex;align-items:center;gap:10px;margin:18px 0 14px;color:var(--muted);font-size:12px}.welcome__divider:before,.welcome__divider:after{content:"";flex:1;height:1px;background:var(--border)}.welcome__alt{display:grid;grid-template-columns:1fr 1fr;gap:8px}.welcome__hint{margin:14px 0 0;text-align:center;font-size:12px;color:var(--muted)}.home{max-width:1100px}.home__header h2{margin:0;font-size:26px}.home__header p{margin:4px 0 0;color:var(--muted)}.home__guest-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding:10px 14px;border:1px dashed var(--accent);border-radius:10px;background:var(--accent-soft);font-size:13px}.home__guest-actions{display:flex;gap:6px}.home__guest-actions button{padding:5px 12px;font-size:13px}.home__summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:20px}.home__resume,.home__overall{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.home__resume{border-color:var(--accent)}.home__resume .btn-primary{align-self:flex-start;margin-top:8px}.home__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.home__resume-title{font-size:18px}.home__resume-page,.home__pct{font-size:13px;color:var(--muted)}.home__overall-number{font-size:28px;font-variant-numeric:tabular-nums}.home__overall-number small{font-size:14px;font-weight:400;color:var(--muted)}.home__bar,.lesson-card__bar{display:block;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.home__bar>span,.lesson-card__bar>span{display:block;height:100%;background:var(--accent)}.home__section-title{margin:28px 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.home__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.lesson-card{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--panel);font:inherit;color:inherit;text-align:left;cursor:pointer}.lesson-card:hover{border-color:var(--accent);box-shadow:0 4px 14px #3c28140f}.lesson-card__number{display:flex;gap:6px;font-size:12px;font-weight:700;color:var(--accent)}.lesson-card__check{color:#fff;background:var(--accent);border-radius:999px;padding:0 6px;font-size:11px}.lesson-card__title{font-weight:600}.lesson-card__topic{font-size:12px;color:var(--muted)}.lesson-card__footer{display:flex;align-items:center;gap:8px;width:100%;margin-top:auto;padding-top:10px}.lesson-card__bar{flex:1}.lesson-card__count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.app__home-link{padding:0;border:0;background:none;font:inherit;color:inherit;cursor:pointer}.app__brand--compact{flex-direction:column;align-items:center;gap:8px}.sidebar-home{width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--muted);font-size:16px;cursor:pointer}.sidebar-home--active,.sidebar-home:hover{color:var(--accent);border-color:var(--accent)}.lesson-view__pager .done-toggle{border-color:var(--accent);color:var(--accent);font-weight:600}.lesson-view__pager .done-toggle--done{background:var(--accent);color:#fff}.lesson-view__thumb--done:not(.lesson-view__thumb--active){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}:root{--lv-unknown: #c9c2b8;--lv-unknown-bg: #f1ede7;--lv-red: #d9534f;--lv-red-bg: #f9dcd8;--lv-yellow: #d4a72c;--lv-yellow-bg: #fbf0c9;--lv-green: #4a9d5b;--lv-green-bg: #d8f0dc;--lv-purple: #8a5cc7;--lv-purple-bg: #e9ddf7;--lv-unknown-ink: #a59d92}.kana-level--unknown{--lv: var(--lv-unknown);--lv-bg: var(--lv-unknown-bg)}.kana-level--red{--lv: var(--lv-red);--lv-bg: var(--lv-red-bg)}.kana-level--yellow{--lv: var(--lv-yellow);--lv-bg: var(--lv-yellow-bg)}.kana-level--green{--lv: var(--lv-green);--lv-bg: var(--lv-green-bg)}.kana-level--purple{--lv: var(--lv-purple);--lv-bg: var(--lv-purple-bg)}.kana-home{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.kana-home__card{display:flex;align-items:center;gap:16px;padding:16px 18px;border:1px solid var(--border);border-radius:12px;background:var(--panel);font:inherit;color:inherit;text-align:left;cursor:pointer}.kana-home__card:hover{border-color:var(--accent);box-shadow:0 4px 14px #3c28140f}.kana-home__sample{display:grid;place-items:center;width:56px;height:56px;flex-shrink:0;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-size:30px;font-weight:700}.kana-home__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.kana-home__title{font-size:17px;font-weight:700}.kana-home__title small{font-size:12px;font-weight:400;color:var(--muted)}.kana-home__meta{font-size:12px;color:var(--muted)}.kana-home__go{color:var(--accent);font-weight:600;font-size:13px;white-space:nowrap}.kana-levelbar{display:flex;height:6px;margin-top:4px;border-radius:3px;overflow:hidden;background:var(--lv-unknown-bg)}.kana-levelbar>span{background:var(--lv)}.kana-module{max-width:900px}.kana-module__header{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px}.kana-module__header h2{margin:0;font-size:26px}.kana-module__header h2 span{font-size:15px;font-weight:400;color:var(--muted)}.kana-module__header p{margin:0;color:var(--muted);font-size:13px}.kana-back{flex-basis:100%;align-self:flex-start;text-align:left;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-size:13px;font-weight:600;cursor:pointer;margin-bottom:6px}.kana-start{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:18px 0;padding:16px 18px;border:1px solid var(--accent);border-radius:12px;background:var(--panel)}.kana-start--review{margin-top:-6px;border-color:var(--border)}.kana-start__text{display:flex;flex-direction:column;gap:4px;flex:1 1 260px}.kana-start__text span{font-size:13px;color:var(--muted)}.kana-start__options{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.kana-start__options label{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:600;color:var(--muted)}.kana-start__options select{padding:7px 8px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font:inherit;font-size:13px;color:var(--ink)}.kana-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 16px;padding:0;list-style:none;font-size:12px;color:var(--muted)}.kana-legend li{display:flex;align-items:center;gap:6px}.kana-legend strong{color:var(--ink);font-variant-numeric:tabular-nums}.kana-swatch{width:12px;height:12px;border-radius:3px;background:var(--lv)}.kana-chart{display:flex;flex-direction:column;gap:20px}.kana-chart__group h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.kana-chart__grid{display:grid;gap:6px;max-width:520px}.kana-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;border:1px solid var(--lv);border-radius:8px;background:var(--lv-bg)}.kana-cell--empty{border:0;background:none}.kana-cell__char{font-size:22px;line-height:1.2}.kana-cell__romaji{font-size:10px;color:var(--muted)}.kana-level--unknown .kana-cell__char{color:var(--lv-unknown-ink)}.kana-session{max-width:560px;margin:0 auto}.kana-session__bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:13px;color:var(--muted)}.kana-session__phase{font-weight:600}.kana-session__quit{padding:4px 10px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font:inherit;font-size:12px;color:var(--muted);cursor:pointer}.kana-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 24px;border:1px solid var(--border);border-radius:16px;background:var(--panel);text-align:center;transition:border-color .15s,background .15s}.kana-big{font-size:104px;line-height:1.1;font-weight:500}.kana-intro__tag{position:absolute;top:14px;left:14px;padding:2px 10px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;font-weight:700}.kana-intro__romaji{font-size:28px;font-weight:700;color:var(--accent)}.kana-intro__alts{font-size:12px;color:var(--muted)}.kana-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px}.kana-question form,.kana-speed form{display:flex;gap:8px;width:min(320px,100%)}.kana-input{flex:1;min-width:0;padding:10px 14px;border:2px solid var(--border);border-radius:10px;font:inherit;font-size:22px;text-align:center;color:var(--ink);background:var(--panel)}.kana-input:focus{outline:none;border-color:var(--accent)}.kana-question--correct{border-color:var(--lv-green);background:var(--lv-green-bg)}.kana-question--correct .kana-input{border-color:var(--lv-green)}.kana-question--wrong{border-color:var(--lv-red);background:var(--lv-red-bg)}.kana-question--wrong .kana-input{border-color:var(--lv-red)}.kana-feedback{margin:0;font-weight:600}.kana-feedback p{margin:0 0 10px}.kana-feedback--correct{color:var(--lv-green)}.kana-feedback--wrong{color:var(--lv-red)}.kana-feedback--wrong strong{font-size:20px}.kana-speed-ready p{margin:0;color:var(--muted);max-width:380px}.kana-speed-ready h3{margin:0;font-size:22px}.kana-speed__top{display:flex;justify-content:space-between;width:100%;font-weight:700;font-variant-numeric:tabular-nums}.kana-speed__timer{font-size:22px}.kana-speed__timer[data-low=true]{color:var(--lv-red)}.kana-speed__score{color:var(--lv-green)}.kana-speed__track{display:block;width:100%;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.kana-speed__track span{display:block;height:100%;background:var(--accent);transition:width .2s linear}.kana-results h3{margin:0;font-size:24px}.kana-results h4{align-self:stretch;margin:8px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);text-align:left}.kana-results__stats{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 32px}.kana-results__stats div{display:flex;flex-direction:column}.kana-results__stats strong{font-size:30px;font-variant-numeric:tabular-nums}.kana-results__stats span{font-size:12px;color:var(--muted)}.kana-changes{align-self:stretch;display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;text-align:left;font-size:13px}.kana-changes li{display:flex;align-items:center;gap:10px}.kana-changes li>span:nth-child(2){flex:1}.kana-chip{display:inline-flex;align-items:baseline;gap:4px;padding:3px 10px;border:1px solid var(--lv);border-radius:8px;background:var(--lv-bg);font-size:18px}.kana-chip small{font-size:11px;color:var(--muted)}.kana-up{color:var(--lv-green)}.kana-down{color:var(--lv-red)}.kana-missed{align-self:stretch;display:flex;flex-wrap:wrap;gap:6px}.kana-empty{text-align:center;color:var(--muted)}.quiz{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--accent);border-radius:12px;background:var(--panel)}.quiz--page{flex:1 1 300px;min-width:260px;position:sticky;top:0}.quiz--chapter{max-width:640px;margin:0 auto;padding:22px}.quiz__head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.quiz__head span{display:flex;align-items:center;gap:10px;color:var(--muted);font-variant-numeric:tabular-nums}.quiz__close{border:0;background:none;color:var(--muted);font-size:14px;cursor:pointer}.quiz__track{display:block;height:4px;border-radius:2px;background:var(--border);overflow:hidden}.quiz__track span{display:block;height:100%;background:var(--accent);transition:width .2s}.quiz__body{display:flex;flex-direction:column;gap:10px}.quiz__prompt{margin:0;font-weight:600;line-height:1.45}.quiz__jp{margin:0;font-size:24px;text-align:center;padding:8px;border-radius:8px;background:var(--bg)}.quiz__audio{align-self:flex-start;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--bg);font:inherit;font-size:13px;cursor:pointer}.quiz__options{display:flex;flex-direction:column;gap:6px}.quiz__option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg);font:inherit;font-size:15px;color:var(--ink);text-align:left;cursor:pointer}.quiz__option:hover:not(:disabled){border-color:var(--accent)}.quiz__option:disabled{cursor:default}.quiz__option.is-correct{border-color:var(--lv-green);background:var(--lv-green-bg)}.quiz__option.is-wrong{border-color:var(--lv-red);background:var(--lv-red-bg)}.quiz__option.is-dim{opacity:.5}.quiz__key{display:grid;place-items:center;width:22px;height:22px;flex-shrink:0;border-radius:6px;background:var(--panel);border:1px solid var(--border);font-size:11px;color:var(--muted)}.quiz__feedback{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:8px}.quiz__feedback p{margin:0}.quiz__feedback.is-correct{background:var(--lv-green-bg);color:var(--ok-ink)}.quiz__feedback.is-wrong{background:var(--lv-red-bg);color:var(--bad-ink)}.quiz__explain{font-size:13px;color:var(--ink)}.quiz__feedback .btn-primary{align-self:flex-end}.quiz__results{display:flex;flex-direction:column;gap:12px}.quiz__score{display:flex;flex-direction:column;align-items:center;padding:14px;border-radius:10px}.quiz__score strong{font-size:34px;font-variant-numeric:tabular-nums}.quiz__score.is-pass{background:var(--lv-green-bg);color:var(--ok-ink)}.quiz__score.is-fail{background:var(--lv-red-bg);color:var(--bad-ink)}.quiz__missed{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;font-size:13px}.quiz__missed li{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--bg)}.quiz__missed strong{color:var(--ok-ink)}.quiz__actions{display:flex;justify-content:flex-end;gap:8px}.chapter-quiz-btn{margin-top:8px;padding:6px 12px;border:1px solid var(--accent);border-radius:999px;background:var(--panel);color:var(--accent);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.chapter-quiz-btn:disabled{border-color:var(--border);color:var(--muted);cursor:default}.chapter-quiz-btn--done{border-color:var(--lv-green);background:var(--lv-green-bg);color:var(--ok-ink)}.vocab-big{font-size:44px;line-height:1.2;font-weight:500}.vocab-kana{font-size:18px;color:var(--muted)}.vocab-romaji{font-size:20px;font-weight:700;color:var(--accent)}.vocab-en{font-size:18px}.vocab-instruction{margin:0;font-size:13px;color:var(--muted)}.vocab-prompt-en{font-size:26px;font-weight:600}.vocab-options{display:flex;flex-direction:column;gap:6px;width:min(380px,100%)}.vocab-option--jp{font-size:18px}.vocab-missed{align-self:stretch;margin:0;padding:0;list-style:none;text-align:left;font-size:13px;display:flex;flex-direction:column;gap:4px}.vocab-missed span{color:var(--muted)}.vocab-gate{border-color:var(--border)}.vocab-gate__bar{display:block;height:6px;margin-top:4px;border-radius:3px;background:var(--border);overflow:hidden}.vocab-gate__bar span{display:block;height:100%;background:var(--lv-yellow)}.vocab-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:8px}.vocab-toolbar .kana-legend{margin:0}.vocab-hide{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);cursor:pointer}.vocab-group{margin-top:18px}.vocab-group h3{margin:0 0 8px;font-size:14px}.vocab-group h3 small{color:var(--muted);font-weight:400}.vocab-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.vocab-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid var(--lv);border-left-width:4px;border-radius:8px;background:var(--panel);font:inherit;color:inherit;text-align:left;cursor:pointer}.vocab-card__jp{font-size:17px;font-weight:600}.vocab-card__kana{font-size:11px;color:var(--muted)}.vocab-card__en{font-size:13px;margin-top:4px}.vocab-card__romaji{font-size:11px;color:var(--muted)}.vocab-locked{margin:8px 0 0;font-size:13px;color:var(--muted)}ruby{ruby-align:center}rt{ruby-align:center;font-size:max(.5em,7px);font-weight:400;letter-spacing:-.04em;margin-inline:-1em;opacity:.85}.topbar__title{padding-top:.45em;line-height:1.3}.kana-prompt-romaji{font-size:56px;font-weight:700;line-height:1.2;letter-spacing:.02em}.kana-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:min(420px,100%)}.kana-option{display:flex;align-items:center;justify-content:center;position:relative;min-height:60px;padding:10px 12px;border:2px solid var(--border);border-radius:12px;background:var(--panel);color:var(--ink);font:inherit;font-size:22px;font-weight:600;cursor:pointer;touch-action:manipulation}.kana-options--kana .kana-option{font-size:34px;font-weight:500;min-height:76px}.kana-option:hover:not(:disabled){border-color:var(--accent)}.kana-option:disabled{cursor:default}.kana-option .quiz__key{position:absolute;top:6px;left:6px}.kana-option.is-correct{border-color:var(--lv-green);background:var(--lv-green-bg)}.kana-option.is-wrong{border-color:var(--lv-red);background:var(--lv-red-bg)}.kana-option.is-dim{opacity:.45}.kana-feedback__aside{font-weight:400;font-size:13px}.kana-review-row{display:flex;justify-content:center;margin-top:12px}.kana-review-btn{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:min(320px,100%);padding:12px 24px;border:1px solid var(--accent);border-radius:12px;background:var(--accent);color:#fff;font:inherit;cursor:pointer}.kana-review-btn:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 4px 14px #3c28141f}.kana-review-btn:disabled{background:var(--panel);border-color:var(--border);color:var(--muted);cursor:default}.kana-review-btn__title{font-size:16px;font-weight:700}.kana-review-btn__meta{font-size:12px;opacity:.9}.account__profile{margin:4px 0 2px;padding:5px 12px;border:1px solid var(--accent);border-radius:8px;background:var(--panel);color:var(--accent);font:inherit;font-weight:600;cursor:pointer;flex-basis:100%;text-align:center}.account__profile:hover,.account__profile--active{background:var(--accent-soft)}.profile{max-width:1100px;--act-reading: #5b8fd9;--act-quiz: var(--accent);--act-kana: #d4a72c;--act-vocab: #4a9d5b}.profile__guest{max-width:520px;padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.profile__guest h2{margin:0 0 6px}.profile__guest p{color:var(--muted)}.profile__header{display:flex;align-items:center;gap:16px}.profile__header h2{margin:0;font-size:26px}.profile__header p{margin:2px 0 0;color:var(--muted)}.profile__avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;font-size:24px;font-weight:700}.profile__card{padding:16px 18px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.profile__link{padding:0;border:0;background:none;color:var(--accent);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.profile__link:hover{text-decoration:underline}.profile__muted{font-size:13px;color:var(--muted)}.profile__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:20px}.profile__stat{display:flex;flex-direction:column;gap:2px}.profile__stat strong{font-size:26px}.profile__stat small{font-size:14px;font-weight:500;color:var(--muted)}.profile__stat span{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.profile__section{margin-top:8px}.profile__time{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:12px}.profile__time-total strong{display:block;font-size:30px}.profile__time-total span{font-size:13px;color:var(--muted)}.profile__time-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:14px 0}.profile__time-facts dt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.profile__time-facts dd{margin:2px 0 0;font-weight:700}.profile__activities{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.profile__activities li{display:grid;grid-template-columns:150px 1fr 80px;align-items:center;gap:10px;font-size:13px}.profile__activity-label{display:flex;align-items:center;gap:6px}.profile__activity-bar{height:8px;border-radius:4px;background:var(--bg);overflow:hidden}.profile__activity-bar span{display:block;height:100%;border-radius:4px}.profile__activity-time{text-align:right;color:var(--muted)}.profile__dot{width:10px;height:10px;border-radius:50%}.profile__dot--reading,.profile__fill--reading{background:var(--act-reading)}.profile__dot--quiz,.profile__fill--quiz{background:var(--act-quiz)}.profile__dot--kana,.profile__fill--kana{background:var(--act-kana)}.profile__dot--vocab,.profile__fill--vocab{background:var(--act-vocab)}.profile__week{display:flex;flex-direction:column;gap:10px}.profile__week-chart{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;height:150px}.profile__week-day{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.profile__week-col{display:flex;flex-direction:column-reverse;flex:1;width:100%;max-width:34px;border-radius:6px;background:var(--bg);overflow:hidden}.profile__week-label{font-size:11px;color:var(--muted)}.profile__kana{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.profile__kana-card{display:flex;flex-direction:column;gap:8px}.profile__card-head{display:flex;align-items:baseline;justify-content:space-between}.profile__card-head small{font-weight:500;color:var(--muted)}.profile__kana-card .kana-levelbar{max-width:none}.profile__legend{margin-top:10px}.kana-chart--mini{gap:10px;margin-top:4px}.kana-chart--mini .kana-chart__group h3{margin-bottom:4px;font-size:10px}.kana-chart--mini .kana-chart__grid{gap:3px;max-width:300px}.kana-chart--mini .kana-cell{min-height:26px;border-radius:5px}.kana-chart--mini .kana-cell__char{font-size:14px}.profile__vocab-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.profile__filters{display:flex;flex-wrap:wrap;gap:6px}.profile__filter{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--bg);color:var(--ink);font:inherit;font-size:12px;cursor:pointer}.profile__filter small{color:var(--muted)}.profile__filter--on{border-color:var(--accent);background:var(--accent-soft)}.profile__vocab-group h4{margin:16px 0 6px;font-size:13px;color:var(--accent)}.profile__vocab-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:2px 18px;margin:0;padding:0;list-style:none}.profile__vocab-list li{display:grid;grid-template-columns:10px auto 1fr;align-items:baseline;gap:8px;padding:5px 0;border-bottom:1px solid var(--border)}.profile__vocab-jp{font-size:16px;white-space:nowrap}.profile__vocab-jp small{font-size:11px;color:var(--muted)}.profile__vocab-en{overflow:hidden;font-size:13px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.profile__empty{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:var(--muted)}.profile__empty-icon{font-size:24px;filter:grayscale(1);opacity:.6}.profile__header{align-items:flex-start}.profile__identity{flex:1;min-width:0}.profile__identity h2{word-break:break-word}.profile__username{margin:2px 0 6px!important;font-size:13px}.profile__name-form{display:flex;flex-direction:column;gap:8px;max-width:560px}.profile__name-form p{margin:0}.profile__name-fields{display:flex;flex-wrap:wrap;gap:10px}.profile__name-fields label{display:flex;flex:1 1 200px;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--muted)}.profile__name-fields input{padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit;font-size:16px}.profile__name-fields input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.profile__name-actions{display:flex;gap:8px}.profile__error{font-size:13px;color:var(--bad-ink)}.profile__fill--ach{background:linear-gradient(90deg,#d4a72c,#e0b84a)}.profile__ach-summary{display:flex;align-items:center;gap:14px;margin-bottom:6px}.profile__ach-summary strong{flex:0 0 auto;font-size:22px}.profile__ach-summary small{font-size:13px;font-weight:500;color:var(--muted)}.profile__ach-summary .profile__activity-bar{flex:1;max-width:360px}.profile__ach-group h4{margin:16px 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.profile__ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.ach{display:flex;gap:12px;padding:12px 14px;border:1px dashed var(--border);border-radius:12px;background:var(--panel)}.ach__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:var(--bg);font-size:22px;filter:grayscale(1);opacity:.45}.ach__body{display:flex;flex-direction:column;gap:2px;min-width:0}.ach__body strong{font-size:14px;color:var(--muted)}.ach__body>span{font-size:12px;color:var(--muted)}.ach__date{font-size:11px;color:var(--muted)}.ach__progress{display:flex;align-items:center;gap:8px;margin-top:4px}.ach__progress .profile__activity-bar{flex:1;height:6px}.ach__progress small{flex:0 0 auto;font-size:11px;color:var(--muted)}.ach--earned{border:1px solid var(--lv-yellow);background:linear-gradient(135deg,var(--lv-yellow-bg),var(--panel) 70%)}.ach--earned .ach__icon{background:var(--panel);box-shadow:0 0 0 2px var(--lv-yellow);filter:none;opacity:1}.ach--earned .ach__body strong{color:var(--ink)}.ach--earned .ach__date{color:var(--lv-yellow);font-weight:600}.ach-toasts{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.ach-toast{display:flex;align-items:center;gap:12px;width:min(340px,calc(100vw - 32px));padding:12px 14px;border:1px solid var(--lv-yellow);border-radius:12px;background:var(--panel);color:var(--ink);font:inherit;text-align:left;box-shadow:0 10px 30px #0000002e;cursor:pointer;pointer-events:auto;animation:ach-in .35s ease-out}.ach-toast--more{width:auto;padding:6px 12px;font-size:12px;color:var(--muted);cursor:default}.ach-toast__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--lv-yellow-bg);font-size:22px}.ach-toast__body{display:flex;flex-direction:column;min-width:0}.ach-toast__body small{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--lv-yellow)}.ach-toast__body span{font-size:12px;color:var(--muted)}@keyframes ach-in{0%{opacity:0;transform:translateY(12px) scale(.97)}}@media (prefers-reduced-motion: reduce){.ach-toast{animation:none}}@media (max-width: 800px){.profile__time{grid-template-columns:1fr}.profile__activities li{grid-template-columns:120px 1fr 64px}}.account__profile+.account__profile{margin-top:0}.classmates{max-width:1100px}.classmates__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-top:20px}.classmate{display:flex;align-items:flex-start;gap:14px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--ink);font:inherit;text-align:left;cursor:pointer}.classmate:hover{border-color:var(--accent);box-shadow:0 4px 14px #3c281414}.classmate--you{border-style:dashed}.classmate__avatar{width:46px;height:46px;font-size:20px}.classmate__body{display:flex;flex-direction:column;gap:3px;min-width:0}.classmate__name{display:flex;align-items:center;gap:8px;font-size:17px}.classmate__name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.classmate__you{padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:700}.classmate__meta{font-size:12px;color:var(--muted)}.classmate__stats{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px}.profile__back{margin-bottom:14px}.lesson-view__zoomable{cursor:zoom-in}.page-zoom-btn{position:absolute;top:16px;right:16px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:999px;background:var(--panel);color:var(--ink);font:inherit;font-size:13px;font-weight:600;box-shadow:0 4px 14px #00000026;cursor:pointer;opacity:0;transform:translateY(-4px);transition:opacity .15s,transform .15s}.lesson-view__page-image:hover .page-zoom-btn,.page-zoom-btn:focus-visible{opacity:1;transform:none}.page-zoom-btn:hover{border-color:var(--accent);color:var(--accent)}@media (hover: none){.page-zoom-btn{opacity:.92;transform:none}}.page-zoom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;flex-direction:column;background:#15110e}.page-zoom__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:calc(8px + env(safe-area-inset-top,0px)) 14px 8px;background:#1f1a15;border-bottom:1px solid rgba(255,255,255,.08);color:#f2ebe2}.page-zoom__label{font-weight:600}.page-zoom__controls{display:flex;align-items:center;gap:6px}.page-zoom__controls button{min-width:38px;height:38px;padding:0 10px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#ffffff14;color:#f2ebe2;font:inherit;font-size:17px;cursor:pointer}.page-zoom__controls button:hover:not(:disabled){background:#ffffff2e}.page-zoom__controls button:disabled{opacity:.35;cursor:default}.page-zoom__controls .page-zoom__level{min-width:64px;font-size:13px;font-weight:600}.page-zoom__sep{width:1px;height:22px;margin:0 4px;background:#fff3}.page-zoom__scroll{flex:1;overflow:auto;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));cursor:grab;overscroll-behavior:contain}.page-zoom__scroll:active{cursor:grabbing}.page-zoom__scroll--fit{cursor:zoom-in}.page-zoom__scroll img{display:block;max-width:none;margin:0 auto;border-radius:4px;-webkit-user-select:none;user-select:none}:root[data-theme=dark] .page-zoom__scroll img{filter:brightness(.85) contrast(1.05)}.topbar,.app__scrim{display:none}@media (max-width: 800px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:100dvh}.topbar{display:flex;align-items:center;gap:10px;padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top,0px));background:var(--panel);border-bottom:1px solid var(--border);min-width:0}.topbar__menu{width:40px;height:40px;border:1px solid var(--border);border-radius:8px;background:var(--bg);font-size:18px;cursor:pointer;flex-shrink:0}.topbar__title{flex:1;min-width:0;font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__page{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.app__sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,85vw);z-index:30;transform:translate(-100%);transition:transform .2s ease;padding-top:env(safe-area-inset-top,0px)}.app--drawer-open .app__sidebar{transform:none;box-shadow:0 0 24px #0003}.app--drawer-open .app__scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#00000059}.app__main{padding:12px 12px 140px}.lesson-view__titles{display:none}.lesson-view__header{margin-bottom:10px}.lesson-view__pager{width:100%;justify-content:space-between}.lesson-view__pager button{padding:10px 16px}.lesson-view__body{gap:12px}.lesson-view__page-image{flex-basis:100%;padding:4px}.lesson-view__section-badge{top:10px;left:10px}.audio-panel{position:static;flex-basis:100%;min-width:0;padding:12px}.audio-track__main{min-height:44px}.transport--active{position:fixed;left:0;right:0;bottom:0;z-index:10;margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:var(--panel);border-top:1px solid var(--border);box-shadow:0 -4px 16px #00000014}.transport__controls button{height:40px;min-width:44px}.lesson-view__thumbs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.lesson-view__thumb{flex-shrink:0;width:36px;height:36px}.sidebar-toggle{display:none}.lesson-view__pager{flex-wrap:wrap}.done-toggle{order:4;flex:1 0 100%;padding:10px!important}.home__grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.lesson-card{padding:12px}.home__header h2{font-size:22px}.kana-big{font-size:84px}.kana-card{padding:22px 16px}.kana-cell{min-height:50px}.kana-start__options{width:100%}.kana-start__options .btn-primary,.kana-start__options .btn-secondary{flex:1}.quiz--page{position:static;flex-basis:100%;min-width:0}.quiz--chapter{padding:16px}.vocab-big{font-size:36px}.vocab-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
