:root{--accent: #C83E22;--accent-dark: #E0603F;--bg: #F3F5F9;--surface: #FFFFFF;--surface-2: #F3F5F9;--border: #E3E7EF;--text: #14213D;--muted: #5A6478;--side-bg: #14213D;--side-card: #1E2E50;--side-hover: #24345A;--side-text: #FFFFFF;--side-muted: #AEB9CC;--seg-bg: #0B1528;--r1-bg: #FBE3DC;--r1-fg: #7A2412;--r2-bg: #FCEFD2;--r2-fg: #4A3A12;--r3-bg: #DDF1E7;--r3-fg: #0F4D36;--r4-bg: #14213D;--r4-fg: #FFFFFF;--shadow: 0 18px 40px rgba(20, 33, 61, .08);--font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0E1626;--surface: #172238;--surface-2: #1E2A42;--border: #26324A;--text: #EEF2F8;--muted: #A3AEC2;--side-bg: #0A1120;--side-card: #141E33;--side-hover: #1D2A45;--seg-bg: #141E33;--r1-bg: #4A2A22;--r1-fg: #FFD9CC;--r2-bg: #4A3C1C;--r2-fg: #FBE7B8;--r3-bg: #1C4232;--r3-fg: #CFEFE0;--r4-bg: #EEF2F8;--r4-fg: #0E1626;--shadow: none;color-scheme:dark}}:root[data-theme=dark]{--bg: #0E1626;--surface: #172238;--surface-2: #1E2A42;--border: #26324A;--text: #EEF2F8;--muted: #A3AEC2;--side-bg: #0A1120;--side-card: #141E33;--side-hover: #1D2A45;--seg-bg: #141E33;--r1-bg: #4A2A22;--r1-fg: #FFD9CC;--r2-bg: #4A3C1C;--r2-fg: #FBE7B8;--r3-bg: #1C4232;--r3-fg: #CFEFE0;--r4-bg: #EEF2F8;--r4-fg: #0E1626;--shadow: none;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-text-size-adjust:100%}body{min-height:100dvh;-webkit-tap-highlight-color:transparent}button,input,select{font:inherit;color:inherit}a{color:inherit}h1{margin:4px 0 0;font-size:clamp(26px,4vw,34px);font-weight:800;letter-spacing:-.02em;line-height:1.15}h2{margin:0 0 12px;font-size:18px;font-weight:800}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.muted,.tile-sub,.eyebrow{color:var(--muted)}.eyebrow{font-size:14px;font-weight:600}.grow{flex:1;min-width:0}.accent-ink{color:var(--accent);display:inline-flex}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.shell{display:flex;min-height:100dvh}.content{flex:1;min-width:0;display:flex;flex-direction:column}main{flex:1}.page{max-width:1040px;width:100%;margin:0 auto;padding:32px 40px 48px;display:flex;flex-direction:column;gap:24px}.page.narrow{max-width:720px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.head-actions{display:flex;gap:10px;flex-wrap:wrap}.head-actions.center{justify-content:center}.sidebar{width:260px;flex-shrink:0;background:var(--side-bg);color:var(--side-text);display:flex;flex-direction:column;gap:22px;padding:26px 18px;position:sticky;top:0;height:100dvh;overflow-y:auto;padding-top:max(26px,env(safe-area-inset-top));padding-bottom:max(22px,env(safe-area-inset-bottom))}.brand{display:flex;align-items:center;gap:10px;padding:0 8px}.brand-center{justify-content:center}.brand-mark{width:36px;height:36px;border-radius:10px;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center}.brand-name{font-size:20px;font-weight:800;letter-spacing:-.02em}.brand .close{margin-left:auto}.me{background:var(--side-card);border-radius:16px;padding:12px;display:flex;align-items:center;gap:12px}.me-text{flex:1;min-width:0}.me-name{font-weight:700;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me-sub{font-size:12px;color:var(--side-muted)}.avatar{width:42px;height:42px;flex-shrink:0;border-radius:50%;color:#14213d;font-weight:800;font-size:18px;display:inline-flex;align-items:center;justify-content:center}.avatar.xl{width:84px;height:84px;font-size:34px}.side-group{display:flex;flex-direction:column;gap:4px}.side-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--side-muted);padding:0 10px 4px}.lang-item{display:flex;align-items:center;gap:12px;padding:9px 10px;min-height:48px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--side-text);text-align:left;cursor:pointer;font-weight:600;font-size:14px}.lang-item.on{background:var(--side-hover);border-color:#3a4c76}.lang-level{font-size:12px;color:var(--side-muted)}.lang-badge{width:30px;height:30px;flex-shrink:0;border-radius:8px;color:#fff;font-size:12px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 10px;min-height:46px;border-radius:12px;color:var(--side-text);text-decoration:none;font-weight:600;font-size:14px}.nav-item:hover{background:var(--side-hover)}.nav-item.on{background:#fff;color:#14213d;font-weight:700}:root[data-theme=dark] .nav-item.on{background:#26375a;color:#fff}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .nav-item.on{background:#26375a;color:#fff}}.nav-item.soon{color:var(--side-muted);cursor:default}.nav-item.soon:hover{background:transparent}.badge{background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px}.pill-soon{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid #3A4C76;color:var(--side-muted)}.pill-soon.light{border-color:var(--border);color:var(--muted)}.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px}.sync-note{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--side-muted);background:var(--side-card);border-radius:10px;padding:8px 10px;margin-bottom:6px}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:4px}.segmented.dark{background:var(--seg-bg);border-color:transparent}.seg{min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:700;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.segmented.dark .seg{color:#d5dce8}.seg.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #00000014}.segmented.dark .seg.on{background:#fff;color:#14213d}.topbar,.scrim{display:none}@media(max-width:899px){.sidebar{position:fixed;z-index:30;left:0;top:0;bottom:0;width:min(304px,86vw);border-radius:0 28px 28px 0;transform:translate(-105%);transition:transform .22s ease}.drawer-open .sidebar{transform:none}.drawer-open .scrim{display:block;position:fixed;inset:0;z-index:20;background:#14213d8c}.topbar{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:10;background:var(--bg);padding:max(12px,env(safe-area-inset-top)) 16px 12px}.topbar-title{flex:1;font-weight:800;font-size:17px}.page{padding:12px 16px calc(32px + env(safe-area-inset-bottom));gap:18px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 18px;border-radius:12px;border:1px solid transparent;font-weight:700;font-size:14px;text-decoration:none;cursor:pointer}.btn:disabled{opacity:.6;cursor:progress}.btn.primary{background:var(--accent);color:#fff}.btn.dark{background:var(--text);color:var(--bg)}.btn.light{background:#fff;color:#14213d}.btn.soft{background:var(--surface-2);border-color:var(--border);color:var(--text)}.btn.ghost{background:transparent;color:var(--muted);padding-left:4px}.btn.danger{background:transparent;border-color:var(--border);color:#b3261e}:root[data-theme=dark] .btn.danger{color:#ff9c94}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .btn.danger{color:#ff9c94}}.btn.wide{width:100%}.btn.back{align-self:flex-start;min-height:40px}.icon-btn{width:44px;height:44px;flex-shrink:0;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn.dark{background:var(--side-hover);border:0;color:#fff}.icon-btn.soft{border-radius:50%}.icon-btn.ghost{border:0;background:transparent;color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:8px 16px 8px 12px;font-weight:700;font-size:14px}.card,.tile,.topic{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:22px}.tile{display:flex;flex-direction:column;gap:10px;min-height:170px}.tile .btn{margin-top:auto;align-self:flex-start}.tile.accent{background:var(--accent);border-color:transparent;color:#fff}.tile.accent .tile-sub,.tile.accent .tile-label{color:#ffffffeb}.tile-label{font-size:13px;font-weight:700;color:var(--muted)}.tile-title{font-size:20px;font-weight:800;line-height:1.3}.tile-head{font-weight:800;font-size:15px}.tile-sub{font-size:13px;line-height:1.45}.tile-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.big-num{font-size:52px;font-weight:800;line-height:1;letter-spacing:-.03em}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}@media(max-width:1100px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3>:first-child{grid-column:1 / -1}}@media(max-width:640px){.grid3,.grid2{grid-template-columns:minmax(0,1fr)}.tile{min-height:0}}.bars{display:flex;align-items:flex-end;gap:10px;height:96px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px}.bar{width:100%;border-radius:6px;background:var(--surface-2)}.bar.some{background:#c9d1e0}:root[data-theme=dark] .bar.some{background:#3a4a68}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .bar.some{background:#3a4a68}}.bar.today{background:var(--accent)}.bar-label{font-size:11px;color:var(--muted);font-weight:600}.progress{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.progress>div{height:100%;background:var(--accent);border-radius:999px;transition:width .3s}.progress.thick{height:10px}.progress.warn>div{background:#d98e04}.empty{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 16px}.hint{font-size:13px;color:var(--muted);background:var(--surface-2);border-radius:12px;padding:10px 14px;margin:0}.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.topic{text-decoration:none;display:flex;flex-direction:column;gap:8px;padding:18px}.topic-title{font-weight:800;font-size:16px}.word-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.word{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:10px 12px}.word-front{font-weight:700;font-size:17px}.mini-list{margin:4px 0;padding-left:18px;line-height:1.7}.form{display:flex;flex-direction:column;gap:12px}label,.label{font-size:13px;font-weight:700;color:var(--muted)}input:not([type=checkbox]),select{width:100%;min-height:48px;border:1px solid var(--border);background:var(--surface-2);border-radius:12px;padding:10px 14px;font-size:16px}.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.row2>div{display:flex;flex-direction:column;gap:6px}@media(max-width:480px){.row2{grid-template-columns:minmax(0,1fr)}}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip-btn{min-height:40px;border:1px solid var(--border);background:var(--surface-2);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:600;cursor:pointer}.chip-btn.on{background:var(--accent);border-color:var(--accent);color:#fff}.lang-picker{display:flex;flex-direction:column;gap:8px}.lang-row{display:flex;align-items:center;gap:12px}.lang-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent)}.lang-row label{flex:1;display:flex;align-items:center;gap:10px;color:var(--text);font-size:15px;font-weight:600}.lang-row select{width:150px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.done{border-color:var(--accent);display:flex;flex-direction:column;gap:10px}.learn{max-width:760px}.learn-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.flash{background:var(--surface);border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow);padding:32px 28px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.tag{background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px}.flash-front{font-size:clamp(36px,7vw,56px);font-weight:800;letter-spacing:-.02em;line-height:1.1;overflow-wrap:anywhere}.flash-pron{font-size:15px;color:var(--muted);font-weight:600}.listen{display:flex;align-items:center;gap:14px;margin-top:6px}.listen-big{width:84px;height:84px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.listen-big:active{transform:scale(.96)}.reveal{width:100%;margin-top:8px;min-height:60px;border:2px dashed var(--border);background:var(--surface-2);border-radius:16px;font-weight:700;font-size:16px;cursor:pointer}.flash-back{width:100%;display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:18px;border-top:1px dashed var(--border)}.flash-answer{font-size:24px;font-weight:700}.example{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface-2);border-radius:14px;padding:12px 14px}.example-text{font-size:17px;font-weight:600}.ratings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ratings.locked{opacity:.45}@media(max-width:520px){.ratings{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.rate{border:0;border-radius:16px;min-height:64px;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer}.rate:disabled{cursor:default}.rate-label{font-weight:800;font-size:16px}.rate-next{font-size:12px;font-weight:600;opacity:.85}.r1{background:var(--r1-bg);color:var(--r1-fg)}.r2{background:var(--r2-bg);color:var(--r2-fg)}.r3{background:var(--r3-bg);color:var(--r3-fg)}.r4{background:var(--r4-bg);color:var(--r4-fg)}.auth{min-height:100dvh;max-width:520px;margin:0 auto;padding:max(40px,env(safe-area-inset-top)) 20px 40px;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.auth .form{width:100%;text-align:left}.auth .back{align-self:flex-start}.profiles{display:flex;flex-wrap:wrap;gap:18px;justify-content:center}.profile-tile{width:140px;padding:20px 12px;border-radius:20px;border:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer}.profile-name{font-weight:700;font-size:16px}.pin{display:flex;flex-direction:column;align-items:center;gap:14px}.pin-dots{display:flex;gap:16px;margin:8px 0}.pin-dots span{width:16px;height:16px;border-radius:50%;border:2px solid var(--muted)}.pin-dots span.on{background:var(--text);border-color:var(--text)}.pin-dots.shake{animation:shake .35s}@keyframes shake{25%{transform:translate(-8px)}75%{transform:translate(8px)}}.pin-grid{display:grid;grid-template-columns:repeat(3,76px);gap:14px}.pin-key{width:76px;height:76px;border-radius:50%;border:1px solid var(--border);background:var(--surface);font-size:26px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.pin-key:active{background:var(--surface-2)}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:50;background:#14213d;color:#fff;padding:12px 18px;border-radius:14px;font-weight:600;font-size:14px;max-width:calc(100vw - 32px);transition:all .2s}.toast.show{opacity:1;transform:translate(-50%)}.toast.error{background:#8c1d18}.tag.accent{background:var(--accent);color:#fff}.actions-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.actions-1{display:flex}.btn.big{min-height:60px;font-size:16px;border-radius:16px}.choices{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}@media(max-width:420px){.choices{grid-template-columns:minmax(0,1fr)}}.choice{min-height:60px;padding:12px 14px;border-radius:16px;border:2px solid var(--border);background:var(--surface-2);font-weight:700;font-size:16px;cursor:pointer;text-align:center}.choice.ok{background:var(--r3-bg);border-color:var(--r3-fg);color:var(--r3-fg)}.choice.bad{background:var(--r1-bg);border-color:var(--r1-fg);color:var(--r1-fg)}.choice.dim{opacity:.5}.choice:disabled{cursor:default}
