@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#faf7f2;--surface:#fff;--surface-2:#f1ede6;--line:#e4ded3;--text:#1f2430;--muted:#5b6270;--accent:#0f766e;--on-accent:#fff;--accent-text:#0f766e;--accent-soft:#dcf0ec;--de:#175cd3;--het:#b54708;--again:#b42318;--again-bg:#fbe1de;--hard:#a5420a;--hard-bg:#fbe8d3;--good:#067647;--good-bg:#d8efe1;--easy:#175cd3;--easy-bg:#dce7fb;--danger:#b42318;--success:#067647;--warn:#b54708;--mark:#fde68a;--font:"Nunito Variable", ui-rounded, system-ui, -apple-system, "Segoe UI", sans-serif;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--radius:18px;--radius-sm:12px;--shadow:0 1px 2px #1f24300d, 0 6px 20px #1f24300d;--flip:.32s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#14161a;--surface:#1c1f26;--surface-2:#262a33;--line:#333846;--text:#eceef2;--muted:#a4abb8;--accent:#0f766e;--on-accent:#fff;--accent-text:#2dd4bf;--accent-soft:#143a37;--de:#7cb0ff;--het:#fdb863;--again:#ff9a91;--again-bg:#3a1f1f;--hard:#fdb863;--hard-bg:#3a2a16;--good:#6ee7a8;--good-bg:#15382a;--easy:#93b8ff;--easy-bg:#1b2c4a;--danger:#f97066;--success:#47cd89;--warn:#fdb022;--mark:#6b4e00;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0;font-size:17px;line-height:1.4}h1,h2,h3,p{margin:0}h1{letter-spacing:-.02em;font-size:1.9rem;font-weight:800;line-height:1.15}h2{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:800}h3{font-size:1.1rem;font-weight:800}button,input,select{font:inherit;color:inherit}.muted{color:var(--muted)}.small{font-size:.9rem}.num{font-variant-numeric:tabular-nums}.icon{flex:none}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{flex-direction:column;height:100dvh;display:flex}.screen{width:100%;max-width:640px;padding:calc(var(--s-5) + env(safe-area-inset-top)) var(--s-4) var(--s-6);gap:var(--s-5);flex-direction:column;flex:1;margin:0 auto;display:flex;overflow-y:auto}.page-head{justify-content:space-between;align-items:flex-start;gap:var(--s-3);display:flex}.page-head p{margin-top:2px}.stack{gap:var(--s-3);flex-direction:column;display:flex}.tabbar{background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);display:flex}.tab{min-height:56px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:700;display:flex}.tab[aria-current=page]{color:var(--accent-text)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--s-4)}.btn{justify-content:center;align-items:center;gap:var(--s-2);min-height:48px;padding:0 var(--s-5);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;font-weight:800;display:inline-flex}.btn:disabled{opacity:.45;cursor:default}.btn:focus-visible,.tab:focus-visible,.card-tap:focus-visible,.speaker:focus-visible,.switch:focus-visible,.disclosure>summary:focus-visible{outline:3px solid var(--accent-text);outline-offset:2px}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-soft{background:var(--accent-soft);color:var(--accent-text);border-color:#0000}.btn-quiet{min-height:44px;padding:0 var(--s-3);color:var(--accent-text);background:0 0;border-color:#0000}.bar{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.bar-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .3s}.pill,.streak,.mode-done,.verdict{align-items:center;gap:var(--s-1);display:inline-flex}.pill{min-height:30px;padding:0 var(--s-3);background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;font-size:.85rem;font-weight:700}.notice{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);display:flex}.notice-warn{border-color:var(--warn)}.error{color:var(--danger);font-weight:700}.goal{align-items:center;gap:var(--s-4);display:flex}.ring{flex:none;width:76px;height:76px;position:relative}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:7px}.ring-track{stroke:var(--surface-2)}.ring-fill{stroke:var(--accent);stroke-linecap:round;transition:stroke-dashoffset .3s}.ring-label{color:var(--accent-text);place-items:center;font-size:.95rem;font-weight:900;display:grid;position:absolute;inset:0}.goal-text,.mode-text{flex-direction:column;gap:2px;min-width:0;display:flex}.goal-title{font-size:1.1rem;font-weight:800}.streak{margin-top:var(--s-1);font-weight:700}.streak .icon{color:var(--warn)}.mode-row,.sync-status{align-items:center;gap:var(--s-3);display:flex}.tile{border-radius:var(--radius-sm);background:var(--accent-soft);width:48px;height:48px;color:var(--accent-text);flex:none;place-items:center;display:grid}.mode-text{flex:1}.mode-counts{font-weight:700}.mode-done{font-weight:800}.btn-start{padding:0 var(--s-4)}.lesson-head,.field-row,.disclosure>summary{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.level-row{gap:var(--s-2);flex-direction:column;display:flex}.level-head{justify-content:space-between;gap:var(--s-3);font-weight:700;display:flex}.lesson-stats{gap:var(--s-4);display:flex}.field{gap:var(--s-2);flex-direction:column;display:flex}.field label,.field-row label,.disclosure>summary{font-weight:700}.field-row,.disclosure>summary{min-height:44px}.field input[type=text],.field input[type=password],.field input[type=number]{min-height:48px;padding:0 var(--s-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.field input[type=number]{text-align:center;flex:none;width:84px;font-weight:700}.field input:focus-visible,.answer-input:focus-visible{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-soft);outline:none}label.field-row{cursor:pointer;font-weight:700}.switch{appearance:none;background:var(--line);cursor:pointer;border-radius:999px;flex:none;width:52px;height:32px;margin:0;transition:background .2s;position:relative}.switch:after{content:"";background:var(--on-accent);width:26px;height:26px;box-shadow:var(--shadow);border-radius:50%;transition:transform .2s;position:absolute;top:3px;left:3px}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(20px)}.sync-status>.icon{color:var(--accent-text)}.disclosure{border-top:1px solid var(--line);padding-top:var(--s-2)}.disclosure>summary{cursor:pointer;list-style:none}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary .icon{color:var(--muted);transition:transform .2s}.disclosure[open]>summary .icon{transform:rotate(180deg)}.disclosure[open]>summary{margin-bottom:var(--s-3)}.summary-detail{font-weight:600;display:block}.actions{gap:var(--s-2);flex-wrap:wrap;display:flex}.study{flex-direction:column;width:100%;max-width:640px;height:100dvh;margin:0 auto;display:flex}.topbar{justify-content:space-between;align-items:center;gap:var(--s-2);padding:calc(var(--s-2) + env(safe-area-inset-top)) var(--s-3) var(--s-2);display:flex}.topbar-count{color:var(--muted);font-weight:800}.progress-line{background:var(--surface-2);height:6px;margin:0 var(--s-4);border-radius:999px;overflow:hidden}.stage{min-height:0;padding:var(--s-4);flex-direction:column;flex:1;justify-content:center;display:flex;overflow-y:auto}.card{justify-content:center;align-items:center;gap:var(--s-4);min-height:55%;padding:var(--s-5) var(--s-4);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);box-shadow:var(--shadow);perspective:1200px;flex-direction:column;display:flex}.card-tap{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:center;padding:0;display:flex}.card-face{align-items:center;gap:var(--s-3);animation:flip-in var(--flip) ease-out both;flex-direction:column;display:flex}@keyframes flip-in{0%{opacity:0;transform:rotateY(-90deg)}to{opacity:1;transform:rotateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.card-face{animation:.12s linear both fade-in}.bar-fill,.ring-fill,.switch,.switch:after,.disclosure>summary .icon{transition:none}}.word{letter-spacing:-.01em;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.3em;font-size:clamp(2.2rem,11vw,3.2rem);font-weight:800;line-height:1.1;display:inline-flex}.word-sm{font-size:1.5rem}.word u{text-underline-offset:6px;text-decoration-thickness:3px}.word-row{justify-content:center;align-items:center;gap:var(--s-2);display:flex}.divider{background:var(--line);border-radius:999px;width:48px;height:3px}.article{background:var(--surface-2);border-radius:999px;padding:.1em .5em;font-size:.55em;font-weight:800}.article-de{color:var(--de)}.article-het{color:var(--het)}.meaning{font-size:1.7rem;font-weight:800;line-height:1.2}.hint{color:var(--muted);font-size:.95rem}.detail{gap:var(--s-1);color:var(--muted);flex-direction:column;font-size:.95rem;display:flex}.example{width:100%;padding:var(--s-3);border-radius:var(--radius-sm);background:var(--surface-2);text-align:left;flex-direction:column;align-items:flex-start;gap:2px;font-size:.95rem;display:flex}.example-nl{color:var(--text);font-weight:700}.speaker{background:var(--accent-soft);min-width:44px;min-height:44px;color:var(--accent-text);cursor:pointer;border:0;border-radius:999px;place-items:center;display:inline-grid}.example .speaker{margin-top:calc(-1 * var(--s-2));align-self:flex-end}.dock{min-height:104px;padding:var(--s-3) var(--s-4) calc(var(--s-4) + env(safe-area-inset-bottom));justify-content:flex-end;gap:var(--s-3);flex-direction:column;display:flex}.gradebar{gap:var(--s-2);grid-template-columns:repeat(4,1fr);display:grid}.btn-grade{min-height:68px;padding:var(--s-2) var(--s-1);border:0;flex-direction:column-reverse;justify-content:flex-end;gap:2px;font-size:.85rem;line-height:1.15}.btn-grade small{font-size:.8rem;font-weight:700}.btn-grade[data-grade=again],.pill[data-grade=again]{background:var(--again-bg);color:var(--again)}.btn-grade[data-grade=hard],.pill[data-grade=hard]{background:var(--hard-bg);color:var(--hard)}.btn-grade[data-grade=good],.pill[data-grade=good]{background:var(--good-bg);color:var(--good)}.btn-grade[data-grade=easy],.pill[data-grade=easy]{background:var(--easy-bg);color:var(--easy)}.prompt{font-size:clamp(2rem,10vw,2.8rem);font-weight:800;line-height:1.15}.badge{min-height:28px;padding:0 var(--s-3);background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;font-size:.85rem;font-weight:800;display:inline-flex}.answer-form{gap:var(--s-2);display:flex}.answer-input{min-width:0;min-height:56px;padding:0 var(--s-4);border:2px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);flex:1;font-size:1.25rem}.btn-check{min-height:56px}.feedback{gap:var(--s-2)}.verdict{font-size:1.2rem;font-weight:900}.verdict-correct{color:var(--success)}.verdict-almost{color:var(--warn)}.verdict-wrong{color:var(--danger)}mark{background:var(--mark);color:var(--text);border-radius:4px;padding:0 2px}.summary{gap:var(--s-5);padding:calc(var(--s-6) + env(safe-area-inset-top)) var(--s-4) var(--s-5);flex-direction:column;width:100%;max-width:640px;margin:0 auto;display:flex}.summary>header .icon{color:var(--success)}.summary-grid{gap:var(--s-3);grid-template-columns:repeat(2,1fr);display:grid}.stat{gap:var(--s-1);flex-direction:column;display:flex}.stat-value{font-size:2rem;font-weight:900;line-height:1}.grade-count{gap:var(--s-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}
