:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-sans:"Segoe UI", system-ui, -apple-system, "Noto Sans", "Helvetica Neue", Arial, sans-serif;--font-serif:"Iowan Old Style", "Palatino Linotype", Georgia, "Times New Roman", serif;--font-mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--paper:#f7f4ee;--paper-2:#fffdf9;--paper-3:#efeade;--ink:#1d2327;--ink-2:#4a545c;--ink-3:#6f7b84;--line:#ddd5c6;--line-strong:#c7bda8;--accent:#1f6f6b;--accent-ink:#fff;--accent-soft:#ddeeec;--warm:#b4531f;--warm-soft:#f7e3d6;--success:#2c6b3f;--success-soft:#dcefe0;--danger:#a32b2b;--danger-soft:#f6dedd;--warning:#8a6410;--warning-soft:#f7ecd2;--radius:14px;--radius-sm:9px;--radius-lg:22px;--shadow:0 1px 2px #1d23270f, 0 8px 24px #1d23270f;--shadow-sm:0 1px 2px #1d232714;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--content-width:46rem;--safe-top:0px;--safe-bottom:0px;--nav-height:64px;--transition:.16s ease}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--paper:#14171a;--paper-2:#1b1f23;--paper-3:#23282d;--ink:#eef1f3;--ink-2:#bcc5cc;--ink-3:#8b959d;--line:#2e343a;--line-strong:#414950;--accent:#58c0b6;--accent-ink:#10201f;--accent-soft:#163330;--warm:#e08a53;--warm-soft:#33241b;--success:#6cc08a;--success-soft:#16291d;--danger:#e98686;--danger-soft:#331b1b;--warning:#d8b269;--warning-soft:#302713;--shadow:0 1px 2px #00000080, 0 10px 30px #00000059;--shadow-sm:0 1px 2px #00000080}}:root[data-theme=dark]{--paper:#14171a;--paper-2:#1b1f23;--paper-3:#23282d;--ink:#eef1f3;--ink-2:#bcc5cc;--ink-3:#8b959d;--line:#2e343a;--line-strong:#414950;--accent:#58c0b6;--accent-ink:#10201f;--accent-soft:#163330;--warm:#e08a53;--warm-soft:#33241b;--success:#6cc08a;--success-soft:#16291d;--danger:#e98686;--danger-soft:#331b1b;--warning:#d8b269;--warning-soft:#302713;--shadow:0 1px 2px #00000080, 0 10px 30px #00000059;--shadow-sm:0 1px 2px #00000080}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background-color:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-text-size-adjust:100%;text-rendering:optimizelegibility;background-image:radial-gradient(circle at 15% -10%,#1f6f6b12,#0000 45%),radial-gradient(circle at 105% 0,#b4531f0f,#0000 40%);background-attachment:fixed;font-size:16px;line-height:1.55}h1,h2,h3,h4,.h1,.h2,.h3,.h4{font-family:var(--font-serif);margin:0 0 var(--space-2);letter-spacing:-.01em;font-weight:600;line-height:1.2}.h1{font-size:clamp(1.5rem,1.2rem + 1.4vw,2rem)}.h2{font-size:clamp(1.25rem,1.1rem + .8vw,1.6rem)}.h3{font-size:1.1rem}.h4{font-size:1rem}p{margin:0 0 var(--space-3)}.muted{color:var(--ink-2)}.small{font-size:.875rem}.tiny{font-size:.8rem}.center{text-align:center}.mono{font-family:var(--font-mono)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.stack-sm{gap:var(--space-2);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.row-between{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.grid{gap:var(--space-4);display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.spacer{flex:1}.wrap{max-width:var(--content-width)}a{color:var(--accent);text-underline-offset:3px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{background:var(--paper-2);padding:var(--space-3);z-index:100;position:absolute;top:0;left:-9999px}.skip-link:focus{left:var(--space-3);top:var(--space-3)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-sm);background:var(--paper-2);color:var(--ink);font:inherit;cursor:pointer;transition:background var(--transition), border-color var(--transition), transform var(--transition);border:1px solid #0000;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--line-strong)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){filter:brightness(1.06)}.btn-secondary{border-color:var(--line-strong)}.btn-ghost{border-color:var(--line);background:0 0}.btn-danger{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}.btn-sm{min-height:36px;padding:0 var(--space-3);font-size:.9rem}.btn-lg{min-height:52px;padding:0 var(--space-5);font-size:1.05rem}.btn-block{align-self:stretch;width:100%}@media (min-width:640px){.stack>.btn,.stack-sm>.btn{align-self:flex-start}}.chip{align-items:center;gap:var(--space-1);min-height:38px;padding:0 var(--space-3);border:1px solid var(--line-strong);background:var(--paper-2);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;font-size:.92rem;display:inline-flex}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--ink);font-weight:600}.chips{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chip-check{opacity:0;width:14px;height:14px;transition:opacity var(--transition);flex:none;place-items:center;display:inline-grid}.chip-check[data-on]{opacity:1}input[type=checkbox]{appearance:none;border:2px solid var(--line-strong);background:var(--paper-2);cursor:pointer;width:20px;height:20px;min-height:20px;transition:background var(--transition), border-color var(--transition);border-radius:5px;flex:none;place-content:center;display:inline-grid}input[type=checkbox]:before{content:"";width:12px;height:12px;transition:transform var(--transition);background:var(--accent-ink);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);transform:scale(0)}input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:before{transform:scale(1)}input[type=checkbox]:hover:not(:disabled){border-color:var(--accent)}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}input[type=time],input[type=date],input[type=datetime-local]{width:100%;min-width:0;max-width:100%}.fold>summary{align-items:center;gap:var(--space-2);cursor:pointer;padding:var(--space-2) var(--space-2) var(--space-2) 40px;border-radius:var(--radius-sm);transition:background var(--transition), color var(--transition);flex-wrap:wrap;display:flex;position:relative}.fold>summary::-webkit-details-marker{display:none}.fold>summary::marker{content:""}.fold>summary:before{content:"";inset-inline-start:4px;border:1px solid var(--accent);background:var(--accent-soft);width:26px;height:26px;transition:background var(--transition);border-radius:50%;margin-top:-13px;position:absolute;top:50%}.fold>summary:after{content:"";inset-inline-start:13px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);width:7px;height:7px;transition:transform var(--transition);margin-top:-5px;position:absolute;top:50%;transform:rotate(-45deg)}.fold[open]>summary:after{margin-top:-2px;transform:rotate(45deg)}.fold>summary:hover{background:var(--paper-3)}.fold>summary:hover .h3{color:var(--accent)}.fold>summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.fold>summary .h3{margin:0}.fold-list{margin-bottom:var(--space-2)}.card{background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow-sm)}.card-lg{padding:var(--space-5);border-radius:var(--radius-lg)}.card-accent{border-left:4px solid var(--accent)}.card-warm{border-left:4px solid var(--warm)}.card-muted{background:var(--paper-3);box-shadow:none}.card-link{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;color:inherit;text-align:start;font:inherit;cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition), transform var(--transition);text-decoration:none;display:flex}.card-link>*{min-width:0}.card-link .row{flex-wrap:nowrap}.card-link .icon{flex:none}.card-link:active{transform:translateY(1px)}.card-link:hover{border-color:var(--accent);box-shadow:var(--shadow)}.badge{background:var(--paper-3);color:var(--ink-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.badge-success{background:var(--success-soft);color:var(--success);border-color:#0000}.badge-warning{background:var(--warning-soft);color:var(--warning);border-color:#0000}.badge-danger{background:var(--danger-soft);color:var(--danger);border-color:#0000}.badge-accent{background:var(--accent-soft);color:var(--accent);border-color:#0000}.badge-demo{background:var(--warm-soft);color:var(--warm);border-color:#0000}.progress{background:var(--paper-3);border:1px solid var(--line);border-radius:999px;height:8px;position:relative;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width var(--transition)}.stat{padding:var(--space-3);background:var(--paper-3);border-radius:var(--radius-sm);transition:transform var(--transition), border-color var(--transition), box-shadow var(--transition);border:1px solid #0000;flex-direction:column;gap:2px;display:flex}.new-badge{background:var(--accent);color:var(--accent-ink);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:.6875rem;font-weight:700;display:inline-flex}.card-link[data-new],.stat-link[data-new]{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}@media (prefers-reduced-motion:no-preference){.new-badge{animation:2.6s ease-in-out infinite lf-new-pulse}}@keyframes lf-new-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 0%, transparent)}}.stat-link{color:inherit;border-color:var(--line);padding-inline-end:calc(var(--space-3) + 18px);text-decoration:none;position:relative}.stat-link .stat-label{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent);text-underline-offset:3px}.stat-go{top:var(--space-3);color:var(--accent);transition:transform var(--transition);display:inline-flex;position:absolute;inset-inline-end:var(--space-3)}.stat-link:hover{border-color:var(--accent)}.stat-link:hover .stat-go{transform:translate(3px)}.stat-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stat-value{font-family:var(--font-serif);font-variant-numeric:tabular-nums;font-size:1.4rem}.stat-label{color:var(--ink-2);font-size:.82rem}@media (prefers-reduced-motion:no-preference){.stat{animation:.42s ease-out both lf-stat-in}.stats-grid>.stat:nth-child(2),.grid-3>.stat:nth-child(2){animation-delay:60ms}.stats-grid>.stat:nth-child(3),.grid-3>.stat:nth-child(3){animation-delay:.12s}.stats-grid>.stat:nth-child(4),.grid-3>.stat:nth-child(4){animation-delay:.18s}.stat:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm);transform:translateY(-2px)}}@keyframes lf-stat-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tabs{gap:var(--space-1);border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.tab{font:inherit;padding:var(--space-3) var(--space-3);color:var(--ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}input[type=text],input[type=email],input[type=password],input[type=search],input[type=time],select,textarea{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper-2);color:var(--ink);font:inherit}textarea{resize:vertical;min-height:120px}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent)}.field{gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}.field-label{font-size:.92rem;font-weight:600}.field-hint{color:var(--ink-2);margin:0;font-size:.85rem}.field-error{color:var(--danger);margin:0;font-size:.85rem}.inline-error{color:var(--danger);align-items:center;gap:6px;font-size:.9rem;display:flex}.shell{grid-template-columns:1fr;min-height:100svh;display:grid}.sidebar{display:none}.main{padding:calc(var(--space-4) + var(--safe-top)) var(--space-4) calc(var(--nav-height) + var(--space-6) + var(--safe-bottom));width:100%;max-width:900px;margin:0 auto}.main:focus{outline:none}.topbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.brand{align-items:center;gap:var(--space-2);color:inherit;font-family:var(--font-serif);font-size:1.1rem;text-decoration:none;display:inline-flex}.brand-mark{object-fit:contain;width:34px;height:34px;display:block}.page-header{margin-bottom:var(--space-5)}.page-header-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.back-link{margin-bottom:var(--space-2);align-items:center;gap:4px;font-size:.9rem;text-decoration:none;display:inline-flex}.bottom-nav{padding:var(--space-1) var(--space-1) calc(var(--space-1) + var(--safe-bottom));background:color-mix(in srgb, var(--paper-2) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);z-index:20;justify-content:space-around;gap:2px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-link{padding:var(--space-2) 2px;color:var(--ink-3);border-radius:var(--radius-sm);flex-direction:column;flex:1;align-items:center;gap:2px;min-height:52px;font-size:.72rem;text-decoration:none;display:flex}.bottom-link[aria-current=page]{color:var(--accent);background:var(--accent-soft);font-weight:600}@media (min-width:900px){.shell{grid-template-columns:250px 1fr}.sidebar{gap:var(--space-5);padding:var(--space-5) var(--space-4);border-right:1px solid var(--line);flex-direction:column;height:100dvh;display:flex;position:sticky;top:0}.sidebar nav ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav-link{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);color:var(--ink-2);text-decoration:none;display:flex}.nav-link:hover{background:var(--paper-3);color:var(--ink)}.nav-link[aria-current=page]{background:var(--accent-soft);color:var(--ink);font-weight:600}.support-link{width:100%;font:inherit;cursor:pointer;text-align:start;background:0 0;border:0}.bottom-nav,.topbar{display:none}.main{padding:var(--space-6) var(--space-6) var(--space-7);max-width:1000px;margin:0}}@media (min-width:1400px){.main{max-width:1240px}}@media (min-width:1750px){.main{max-width:1440px}}.shell-loading{padding:var(--space-6)}.auth-page{max-width:30rem;padding:calc(var(--space-6) + var(--safe-top)) var(--space-4) var(--space-6);margin:0 auto}.state{align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;color:var(--ink-2);flex-direction:column;display:flex}.state-loading{align-items:stretch}.skeleton{background:linear-gradient(90deg, var(--paper-3), var(--paper-2), var(--paper-3));background-size:200% 100%;border-radius:6px;height:18px;animation:1.4s infinite shimmer}.skeleton.short{width:60%}@keyframes shimmer{to{background-position:-200% 0}}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.sync{color:var(--ink-2);align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.sync .dot{background:var(--ink-3);border-radius:50%;width:8px;height:8px}.sync-saved .dot{background:var(--success)}.sync-saving .dot{background:var(--warning)}.sync-offline .dot{background:var(--warm)}.sync-error .dot{background:var(--danger)}.audio-player{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.speed-group{gap:4px;display:flex}.speed-group .chip{min-height:30px;padding:0 var(--space-2);font-size:.8rem}.audio-icon{border:1px solid var(--line);background:var(--paper-2);width:30px;height:30px;color:var(--accent);cursor:pointer;vertical-align:middle;border-radius:50%;place-items:center;margin-inline-start:4px;display:inline-grid}.audio-icon[data-status=error]{color:var(--danger);border-color:var(--danger)}.audio-error{color:var(--danger);width:100%;margin:0;font-size:.85rem}.speakable{gap:var(--space-2);flex-direction:column;display:flex}.speakable-text{margin:0;font-size:1.05rem}.sentence.is-active{background:var(--accent-soft);border-radius:4px}.word{font:inherit;color:inherit;cursor:pointer;border:0;border-bottom:1px dotted var(--line-strong);background:0 0;padding:0 1px}.word:hover,.word.is-active{background:var(--warm-soft);border-radius:3px}.exercise{gap:var(--space-4);flex-direction:column;display:flex}.exercise-prompt{font-size:1.15rem;font-family:var(--font-serif)}.exercise-instruction{color:var(--ink-2);font-size:.92rem}.exercise-task{padding:var(--space-3) var(--space-4);border-inline-start:4px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--ink);margin:0;font-size:clamp(1.05rem,1rem + .5vw,1.25rem);font-weight:600;line-height:1.4}.options{gap:var(--space-2);flex-direction:column;display:flex}.option-row{align-items:center;gap:var(--space-2);display:flex}.option-row .option{flex:auto;width:auto;min-width:0}.option-row .audio-icon,.option-row .audio{flex:none}.option{align-items:center;gap:var(--space-3);text-align:start;width:100%;min-height:52px;padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper-2);color:var(--ink);font:inherit;cursor:pointer;display:flex}.option[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.option[data-result=correct]{border-color:var(--success);background:var(--success-soft)}.option[data-result=wrong]{border-color:var(--danger);background:var(--danger-soft)}.option-marker{color:var(--ink-3);flex:none}.tokens{gap:var(--space-2);min-height:52px;padding:var(--space-2);border:1px dashed var(--line-strong);border-radius:var(--radius-sm);flex-wrap:wrap;display:flex}.token{min-height:40px}.match-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;align-items:start;display:grid}.match-grid>*{min-width:0}.match-grid .option{gap:var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap}.match-grid .option:disabled{opacity:.55;cursor:default}.match-grid .option:disabled[aria-pressed=true]{opacity:1}.match-col{border-radius:var(--radius-sm);padding:var(--space-2);border:1px solid #0000}.match-col[data-active=true]{border-color:color-mix(in srgb, var(--accent) 45%, transparent);background:color-mix(in srgb, var(--accent) 7%, transparent)}.pair-no{background:var(--accent);min-width:22px;height:22px;color:var(--paper);text-align:center;border-radius:999px;flex:none;padding:0 6px;font-size:.78rem;font-weight:700;line-height:22px}.exercise-step{color:var(--ink-2);align-items:baseline;gap:6px;margin:0;font-size:.95rem;font-weight:600;display:flex}.exercise-step:before{content:"→";color:var(--accent);flex:none;font-weight:700}.exercise-step[data-step=done]{color:var(--success)}.exercise-step[data-step=done]:before{content:"✓";color:var(--success)}@media (max-width:560px){.match-grid{gap:var(--space-2)}.match-grid .option{padding:var(--space-2);min-height:46px;font-size:.95rem}}.feedback{border-radius:var(--radius-sm);padding:var(--space-3);border:1px solid var(--line)}.feedback-correct{background:var(--success-soft);border-color:#0000}.feedback-wrong{background:var(--danger-soft);border-color:#0000}.feedback-neutral{background:var(--paper-3)}.feedback-title{align-items:center;gap:var(--space-2);font-weight:600;display:flex}.unit-card{gap:var(--space-2);flex-direction:column;display:flex}.unit-headword{font-family:var(--font-serif);align-items:center;gap:var(--space-2);flex-wrap:wrap;font-size:1.35rem;display:flex}.unit-meta{gap:var(--space-2);color:var(--ink-2);flex-wrap:wrap;font-size:.85rem;display:flex}.unit-example{border-left:3px solid var(--line-strong);padding-left:var(--space-3)}.list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.divider{background:var(--line);height:1px;margin:var(--space-4) 0;border:0}.note{background:var(--paper-3);border-radius:var(--radius-sm);padding:var(--space-3)}.not-found{place-items:center;min-height:70vh;display:grid}.not-found-card{text-align:center;align-items:center;width:100%}.not-found-card .row{flex-wrap:wrap;justify-content:center}.not-found-code{font-family:var(--font-display);letter-spacing:.04em;color:var(--accent);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(3.5rem,14vw,5.5rem);font-weight:800;line-height:1}.callout{border-left:4px solid var(--warm);background:var(--warm-soft);padding:var(--space-3);border-radius:var(--radius-sm)}.callout-info{border-color:var(--accent);background:var(--accent-soft)}.callout[data-tone=success]{border-color:var(--success);background:var(--success-soft)}table{border-collapse:collapse;width:100%}th,td{text-align:start;padding:var(--space-2);border-bottom:1px solid var(--line);font-size:.92rem}th{color:var(--ink-2);font-weight:600}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.card,.btn,.chip,.option{border:1px solid canvastext}}.brand-mark-sm{width:26px;height:26px}.brand-badge{object-fit:contain;vertical-align:-.15em;flex:none;display:inline-block}@media (prefers-reduced-motion:no-preference){.brand-badge-live{animation:3.2s ease-in-out infinite lf-badge-breathe}}@keyframes lf-badge-breathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-2px)scale(1.06)}}.support-btn{opacity:.65}.support-btn:hover,.support-btn:focus-visible{opacity:1}.support-btn[data-unread],.support-link[data-unread]{opacity:1;color:var(--accent);font-weight:600}.support-badge{background:var(--danger);min-width:18px;height:18px;color:var(--paper);border-radius:999px;place-items:center;margin-inline-start:auto;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1;display:inline-grid}@media (max-width:899px){iframe[src*=tawk\.to]{bottom:calc(var(--nav-height) + var(--safe-bottom) + var(--space-2))!important}}[id^=tawk],[class^=tawk],iframe[src*=tawk\.to],iframe[title=chat\ widget]{visibility:hidden!important}html[data-support-open] [id^=tawk],html[data-support-open] [class^=tawk],html[data-support-open] iframe[src*=tawk\.to],html[data-support-open] iframe[title=chat\ widget]{visibility:visible!important}.hint-left{background:var(--accent-soft);border:1px solid var(--accent);border-radius:999px;place-items:center;min-width:18px;height:18px;margin-inline-start:4px;padding:0 5px;font-size:.72rem;font-weight:700;display:inline-grid}.fold-tight>summary{padding-block:var(--space-1)}.route-head{align-items:center}.route-about{margin:0}.earlier-link{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.earlier-link>span{flex:auto}.mistake-list{gap:var(--space-3)}.mistake{padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-2);flex-direction:column;gap:4px;display:flex}.mistake-question{margin:0;font-weight:600}.mistake-given,.mistake-expected{align-items:center;gap:6px;margin:0;display:flex}.mistake-given span{color:var(--danger);font-weight:600}.mistake-expected span{color:var(--success);font-weight:600}.mistake-given .icon{color:var(--danger)}.mistake-expected .icon{color:var(--success)}.auth-back{justify-content:center;align-self:center;min-width:min(260px,100%)}.chip{transition:background var(--transition), border-color var(--transition), color var(--transition)}.chip:hover:not([disabled]):not([data-spent]){border-color:var(--accent);background:var(--paper-3)}.chip[data-spent]{opacity:.5;cursor:not-allowed}.chip[data-spent]:hover{border-color:var(--line-strong);background:var(--paper-2)}.field-counter{color:var(--ink-2);margin-inline-start:6px;font-size:.85em;font-weight:400}.onboarding-optional{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}
@keyframes lf-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes lf-pop{0%{transform:scale(1)}40%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes lf-shake{0%,to{transform:none}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-2px)}}@keyframes lf-sheet{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes lf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes lf-glow{0%,to{box-shadow:0 8px 22px var(--glow-soft)}50%{box-shadow:0 8px 34px var(--glow-strong)}}@keyframes lf-flicker{0%,to{transform:rotate(-4deg)scale(1)}50%{transform:rotate(4deg)scale(1.12)}}@keyframes lf-ring{0%{opacity:.7;transform:scale(.8)}to{opacity:0;transform:scale(1.9)}}html:root{--font-display:var(--font-serif);--font-heading:var(--font-serif);--font-reading:var(--font-sans);--display-weight:600;--heading-weight:600;--heading-tracking:-.01em;--glow-soft:transparent;--glow-strong:transparent}h1,.h1,.brand-name,.brand{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:var(--heading-tracking)}h2,h3,.h2,.h3,.stat-value{font-family:var(--font-heading);font-weight:var(--heading-weight);letter-spacing:0}.exercise-prompt,.unit-headword{font-family:var(--font-reading);letter-spacing:0;font-weight:600}.main .page-header,.main .card,.main .stat,.main .option,.main .state{animation:.5s cubic-bezier(.2,.7,.2,1) both lf-rise}.main .list>:nth-child(2),.main .grid>:nth-child(2),.main .options>:nth-child(2){animation-delay:60ms}.main .list>:nth-child(3),.main .grid>:nth-child(3),.main .options>:nth-child(3){animation-delay:.12s}.main .list>:nth-child(4),.main .grid>:nth-child(4),.main .options>:nth-child(4){animation-delay:.18s}.main .list>:nth-child(n+5),.main .grid>:nth-child(n+5),.main .options>:nth-child(n+5){animation-delay:.24s}.option[data-result=correct]{animation:.45s ease-out both lf-pop}.option[data-result=wrong]{animation:.4s ease-out both lf-shake}.feedback{animation:.35s cubic-bezier(.2,.8,.2,1) both lf-sheet}.btn-primary{position:relative}.progress-fill{background-size:200% 100%}svg[data-icon=flame]{transform-origin:50% 90%;animation:1.8s ease-in-out infinite lf-flicker}.audio-icon[data-status=playing]{position:relative}.audio-icon[data-status=playing]:after{content:"";border:2px solid var(--accent);border-radius:50%;animation:1.2s ease-out infinite lf-ring;position:absolute;inset:-2px}html:root[data-app-theme=atlas]{--font-sans:"Manrope", "Segoe UI", system-ui, sans-serif;--font-serif:"Lora", Georgia, "Times New Roman", serif;--display-weight:700;--heading-weight:600}html:root[data-app-theme=atlas][data-theme=light]{--paper:#f4ede0;--paper-2:#fffaf1;--paper-3:#ece2cf;--ink:#1e2a2f;--ink-2:#4f5a5f;--ink-3:#737c80;--line:#e3d7c2;--line-strong:#cdbfa6;--accent:#1f6f6b;--accent-soft:#ddeeec;--warm:#c0602f;--warm-soft:#f7e3d6;--glow-soft:#1f6f6b2e;--glow-strong:#1f6f6b59}html:root[data-app-theme=atlas][data-theme=light] body{background-image:radial-gradient(circle at 12% 0,#1f6f6b1a,#0000 42%),radial-gradient(circle at 100% 30%,#c0602f14,#0000 38%),repeating-linear-gradient(0deg,#1e2a2f06 0 1px,#0000 1px 26px),repeating-linear-gradient(90deg,#1e2a2f06 0 1px,#0000 1px 26px)}@media (prefers-color-scheme:light){html:root[data-app-theme=atlas]:not([data-theme=dark]){--paper:#f4ede0;--paper-2:#fffaf1;--paper-3:#ece2cf;--ink:#1e2a2f;--ink-2:#4f5a5f;--ink-3:#737c80;--line:#e3d7c2;--line-strong:#cdbfa6;--accent:#1f6f6b;--accent-soft:#ddeeec;--warm:#c0602f;--warm-soft:#f7e3d6;--glow-soft:#1f6f6b2e;--glow-strong:#1f6f6b59}html:root[data-app-theme=atlas]:not([data-theme=dark]) body{background-image:radial-gradient(circle at 12% 0,#1f6f6b1a,#0000 42%),radial-gradient(circle at 100% 30%,#c0602f14,#0000 38%),repeating-linear-gradient(0deg,#1e2a2f06 0 1px,#0000 1px 26px),repeating-linear-gradient(90deg,#1e2a2f06 0 1px,#0000 1px 26px)}}@media (prefers-color-scheme:dark){html:root[data-app-theme=atlas]:not([data-theme=light]){--glow-soft:#58c0b626;--glow-strong:#58c0b64d}}html:root[data-app-theme=atlas] .card{border-radius:18px}html:root[data-app-theme=atlas] .card-accent{box-shadow:inset 0 3px 0 var(--accent), var(--shadow);border-left:0}html:root[data-app-theme=atlas] .card-warm{box-shadow:inset 0 3px 0 var(--warm), var(--shadow);border-left:0}html:root[data-app-theme=atlas] .btn-primary{border-radius:12px;font-weight:700}html:root[data-app-theme=atlas] .progress-fill{background-image:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 70%, white))}html:root[data-app-theme=atlas] .h1{font-weight:700}html:root[data-app-theme=neon]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:"Onest", "Segoe UI", system-ui, sans-serif;--font-serif:"Unbounded", "Segoe UI", system-ui, sans-serif;--font-heading:var(--font-sans);--display-weight:700;--heading-weight:700;--heading-tracking:-.02em;--paper:#0e0f1f;--paper-2:#191a33;--paper-3:#23244a;--ink:#f1f0ff;--ink-2:#b8b6d8;--ink-3:#8d8bb3;--line:#2b2c4d;--line-strong:#3d3e6b;--accent:#c8f25a;--accent-ink:#0e0f1f;--accent-soft:#c8f25a24;--warm:#ff6fb1;--warm-soft:#ff6fb124;--success:#c8f25a;--success-soft:#c8f25a24;--danger:#ff7b93;--danger-soft:#ff7b9324;--warning:#ffc85c;--warning-soft:#ffc85c24;--radius:22px;--radius-sm:16px;--radius-lg:28px;--shadow:0 10px 30px #00000059;--shadow-sm:none;--glow-soft:#c8f25a33;--glow-strong:#c8f25a80}html:root[data-app-theme=neon] body{background:#0e0f1f}html:root[data-app-theme=neon] .h1{text-transform:none}html:root[data-app-theme=neon] .btn{border-radius:16px}html:root[data-app-theme=neon] .btn-primary{font-weight:700;animation:2.6s ease-in-out infinite lf-glow}html:root[data-app-theme=neon] .btn-secondary{background:var(--paper-3);border-color:var(--line-strong)}html:root[data-app-theme=neon] .card-accent{color:#fff;background:linear-gradient(140deg,#9b8cff,#6f5cf5);border-color:#0000;border-left-style:none;border-left-width:0}html:root[data-app-theme=neon] .card-accent .muted,html:root[data-app-theme=neon] .card-accent .small{color:#ece8ff}html:root[data-app-theme=neon] .card-warm{box-shadow:inset 0 0 0 1px var(--warm);border-left:0}html:root[data-app-theme=neon] .chip[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}html:root[data-app-theme=neon] .progress-fill{background-image:linear-gradient(90deg,#c8f25a,#9b8cff,#c8f25a);animation:3s linear infinite lf-shimmer}html:root[data-app-theme=neon] .option[data-result=correct]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 10px 26px #c8f25a59}html:root[data-app-theme=neon] .feedback-correct{color:#fff;background:linear-gradient(140deg,#9b8cff,#6f5cf5)}html:root[data-app-theme=neon] .bottom-nav{left:12px;right:12px;bottom:calc(10px + var(--safe-bottom));border:1px solid var(--line);border-radius:24px;padding-bottom:4px}html:root[data-app-theme=neon] .bottom-link[aria-current=page],html:root[data-app-theme=neon] .nav-link[aria-current=page]{background:var(--accent);color:var(--accent-ink)}html:root[data-app-theme=ukraine]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Fira Sans", "Segoe UI", system-ui, sans-serif;--font-serif:"Philosopher", Georgia, serif;--font-heading:var(--font-sans);--display-weight:700;--heading-weight:600;--heading-tracking:0;--paper:#fbf6ea;--paper-2:#fff;--paper-3:#f2e9d6;--ink:#14213d;--ink-2:#46506a;--ink-3:#6b7280;--line:#e7dcc3;--line-strong:#d6c8a8;--accent:#0057b7;--accent-ink:#fff;--accent-soft:#e6f0fb;--warm:#c8102e;--warm-soft:#fbe4e7;--success:#1f7a3d;--success-soft:#e3f3e7;--danger:#c8102e;--danger-soft:#fbe4e7;--warning:#8a6d00;--warning-soft:#fff4bf;--radius:18px;--radius-sm:12px;--shadow:0 10px 24px #14213d12;--glow-soft:#0057b733;--glow-strong:#ffd5008c}html:root[data-app-theme=ukraine] body{background-color:#fbf6ea;background-image:repeating-linear-gradient(0deg,#14213d05 0 1px,#0000 1px 3px),repeating-linear-gradient(90deg,#14213d05 0 1px,#0000 1px 3px),linear-gradient(#dceaf9 0,#eaf0f6 34%,#fbf6ea 62%,#f6ecd2 100%)}html:root[data-app-theme=ukraine] .btn-primary{background:#0057b7;border-color:#0057b7;font-weight:700;box-shadow:inset 0 -4px #ffd500}html:root[data-app-theme=ukraine] .btn-primary:hover{background:#0a4fa3;border-color:#0a4fa3}html:root[data-app-theme=ukraine] .auth-card,html:root[data-app-theme=ukraine] .page-header{position:relative}html:root[data-app-theme=ukraine] .auth-card{padding-top:calc(var(--space-4) + 2px);overflow:hidden}html:root[data-app-theme=ukraine] .auth-card:before{content:"";background-color:#0000;background-image:repeating-linear-gradient(90deg,#c8102e 0 7px,#0000 7px 14px),repeating-linear-gradient(90deg,#0000 0 7px,#14213d 7px 14px);background-position:0 0,7px 4px;background-repeat:repeat-x;background-size:14px 4px,14px 4px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;height:8px;position:absolute;inset:0 0 auto}html:root[data-app-theme=ukraine] .card-accent{border-left:0;padding-left:22px;position:relative;overflow:hidden}html:root[data-app-theme=ukraine] .card-accent:before,html:root[data-app-theme=ukraine] .card-warm:before{content:"";background:linear-gradient(#0057b7 0 50%,#ffd500 50%);width:6px;position:absolute;top:0;bottom:0;left:0}html:root[data-app-theme=ukraine] .card-warm{border-left:0;padding-left:22px;position:relative;overflow:hidden}html:root[data-app-theme=ukraine] .chip[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}html:root[data-app-theme=ukraine] .progress{height:10px}html:root[data-app-theme=ukraine] .progress-fill{background-image:linear-gradient(#0057b7 50%,#ffd500 50%)}html:root[data-app-theme=ukraine] .stat-meter-track{background:#ece0c6}html:root[data-app-theme=ukraine] .stat-meter-track>span{background-image:linear-gradient(#0057b7 50%,#ffd500 50%)}html:root[data-app-theme=ukraine] .stat-meter[data-tone=warm] .stat-meter-track>span{background-color:#ffd500;background-image:none;box-shadow:inset 0 0 0 1px #0057b773}html:root[data-app-theme=ukraine] .option[data-result=correct]{background:#fff8cc;border-width:2px;border-color:#e0b400}html:root[data-app-theme=ukraine] .feedback-correct{background:#fff8cc}html:root[data-app-theme=ukraine] .badge-accent{color:#14213d;background:#ffd500}html:root[data-app-theme=ukraine] .bottom-nav{background:#fff;border-top:3px solid #0057b7}html:root[data-app-theme=ukraine] .bottom-link[aria-current=page]{color:#0057b7;background:linear-gradient(#e6f0fb,#fff)}html:root[data-app-theme=ukraine] .stat{border:1px solid var(--line);background:#fff}html:root[data-app-theme=sea]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:"Inter", "Segoe UI", system-ui, sans-serif;--font-serif:"Nunito", "Segoe UI", system-ui, sans-serif;--display-weight:800;--heading-weight:700;--heading-tracking:-.01em;--paper:#042848;--paper-2:#eafcff14;--paper-3:#eafcff1f;--ink:#eafcff;--ink-2:#cfeaf2;--ink-3:#a8d0dd;--line:#eafcff29;--line-strong:#eafcff47;--accent:#3ee6d3;--accent-ink:#021a33;--accent-soft:#3ee6d329;--warm:#ff7a59;--warm-soft:#ff7a5929;--success:#3ee6d3;--success-soft:#3ee6d329;--danger:#ff8a70;--danger-soft:#ff7a592e;--warning:#ffd23f;--warning-soft:#ffd23f29;--radius:22px;--radius-sm:16px;--radius-lg:28px;--shadow:0 16px 40px #021a3373;--shadow-sm:none;--glow-soft:#3ee6d340;--glow-strong:#3ee6d399}html:root[data-app-theme=sea] body{background:linear-gradient(#0a5a86 0%,#073f67 30%,#042848 65%,#021a33 100%) fixed}html:root[data-app-theme=sea] .card,html:root[data-app-theme=sea] .stat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#021a338c}html:root[data-app-theme=sea] body{line-height:1.6}html:root[data-app-theme=sea] .small,html:root[data-app-theme=sea] .field-hint{font-size:.9375rem}html:root[data-app-theme=sea] .tiny,html:root[data-app-theme=sea] .badge{font-size:.8125rem}html:root[data-app-theme=sea] input,html:root[data-app-theme=sea] select,html:root[data-app-theme=sea] textarea{background:#021a3380}html:root[data-app-theme=sea] .btn{border-radius:16px}html:root[data-app-theme=sea] .btn-primary{font-weight:800;animation:2.4s ease-in-out infinite lf-glow}html:root[data-app-theme=sea] .card-accent{color:#21100a;background:linear-gradient(160deg,#ffb347 0%,#ff7a59 60%,#e8505b 100%);border-color:#0000;border-left-style:none;border-left-width:0}html:root[data-app-theme=sea] .card-accent .muted,html:root[data-app-theme=sea] .card-accent .small{color:#3a1a08}html:root[data-app-theme=sea] .card-accent .btn-primary{color:#ffd23f;background:#021a33}html:root[data-app-theme=sea] .card-accent .badge{color:#eafcff;background:#021a33d1;border-color:#0000;font-weight:600}html:root[data-app-theme=sea] .card-warm{box-shadow:inset 0 0 0 1px var(--warm);border-left:0}html:root[data-app-theme=sea] .chip[aria-pressed=true]{color:#021a33;background:#ffd23f;border-color:#ffd23f}html:root[data-app-theme=sea] .progress-fill{background-image:linear-gradient(90deg,#3ee6d3,#b7fff5,#3ee6d3);animation:2.6s linear infinite lf-shimmer}html:root[data-app-theme=sea] .option[data-result=correct]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 10px 26px color-mix(in srgb, var(--accent) 35%, transparent)}html:root[data-app-theme=sea] .feedback-correct{color:#21100a;background:linear-gradient(160deg,#ffd23f,#ffb347 60%,#ff7a59)}html:root[data-app-theme=sea] .bottom-nav{left:12px;right:12px;bottom:calc(10px + var(--safe-bottom));border:1px solid var(--line);background:#021a33d9;border-radius:24px;padding-bottom:4px}html:root[data-app-theme=sea] .bottom-link[aria-current=page],html:root[data-app-theme=sea] .nav-link[aria-current=page]{color:#021a33;background:#ffd23f}html:root[data-app-theme=sea] .sidebar{background:#021a3359}@media (prefers-reduced-motion:reduce){html:root .main .page-header,html:root .main .card,html:root .main .stat,html:root .main .option,html:root .main .state,html:root .option[data-result],html:root .feedback,html:root .btn-primary,html:root .progress-fill,html:root svg[data-icon=flame],html:root .audio-icon:after{animation:none!important}}.lf-decor{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.lf-decor[data-focus] *{animation-play-state:paused!important}.lf-decor[data-focus] .fish,.lf-decor[data-focus] .bubble{display:none}@keyframes lf-drift{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,-30px)scale(1.15)}}.lf-decor-neon .blob{filter:blur(10px);border-radius:50%;width:420px;height:420px;animation:14s ease-in-out infinite lf-drift;position:absolute}.lf-decor-neon .blob-violet{background:radial-gradient(circle,#9b8cff66,#0000 68%);top:-140px;left:-160px}.lf-decor-neon .blob-lime{background:radial-gradient(circle,#c8f25a2e,#0000 68%);animation-delay:-7s;top:45%;right:-180px}@keyframes lf-stitch{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes lf-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lf-decor-ukraine .ornament{left:0;top:var(--safe-top);width:100%;animation:2s steps(24,end) both lf-stitch;position:absolute}.lf-decor-ukraine .sunflower{opacity:.12;animation:40s linear infinite lf-spin;position:absolute;bottom:28vh;left:-70px}.lf-decor-ukraine .wheat{opacity:.42;position:absolute;bottom:0;left:0;right:0}.lf-decor-ukraine .ear{animation:7s ease-in-out infinite alternate lf-sway}.lf-decor-ukraine .kalyna{opacity:.24;transform-origin:50% 0;animation:9s ease-in-out infinite alternate lf-sway;position:absolute;top:18%;right:28px}.lf-decor-ukraine .stork{opacity:.32;will-change:transform;position:absolute;top:0;left:-12vw}.lf-decor-ukraine .stork-2{opacity:.28}.lf-decor-ukraine .stork-3{opacity:.24}@media (prefers-reduced-motion:no-preference){.lf-decor-ukraine .stork-1{animation:82s linear infinite lf-stork-glide}.lf-decor-ukraine .stork-2{animation:82s linear -5s infinite lf-stork-glide}.lf-decor-ukraine .stork-3{animation:82s linear -9s infinite lf-stork-glide}.lf-decor-ukraine .stork-wings{transform-origin:89px 47px;animation:3s ease-in-out infinite lf-stork-wing}.lf-decor-ukraine .stork-2 .stork-wings{animation-duration:2.5s}.lf-decor-ukraine .stork-3 .stork-wings{animation-duration:2s}}@keyframes lf-stork-glide{0%{transform:translateY(2vh)}22%{transform:translate(22vw,22vh)}34%{transform:translate(32vw,28vh)}44%{transform:translate(44vw,30vh)}58%{transform:translate(58vw,44vh)}70%{transform:translate(70vw,52vh)}80%{transform:translate(78vw,54vh)}to{transform:translate(112vw,72vh)}}@keyframes lf-stork-wing{0%,to{transform:scaleY(1)}50%{transform:scaleY(.45)}}@keyframes lf-sway{0%{transform:rotate(-2.2deg)}to{transform:rotate(2.2deg)}}@keyframes lf-bubble{0%{opacity:0;transform:translate(0)scale(.6)}12%{opacity:.85}50%{transform:translate(10px,-45vh)scale(1)}to{opacity:0;transform:translate(-8px,-95vh)scale(1.2)}}@keyframes lf-swim-left{0%{transform:translate(110vw)}to{transform:translate(-80px)}}@keyframes lf-swim-right{0%{transform:translate(-80px)scaleX(-1)}to{transform:translate(110vw)scaleX(-1)}}@keyframes lf-waves{0%{transform:translate(0)}to{transform:translate(-50%)}}.lf-decor-sea .sun{opacity:.5;animation:30s linear infinite lf-spin;position:absolute;top:-90px;right:-90px}@media (max-width:720px){.lf-decor-sea .sun{opacity:.22;top:-130px;right:-130px}.lf-decor-ukraine .sunflower{opacity:.07}.lf-decor-ukraine .kalyna{opacity:.13;width:96px;height:96px;top:auto;bottom:26%;right:-10px}.lf-decor-ukraine .wheat{opacity:.38;height:130px}.lf-decor-ukraine .stork-2,.lf-decor-ukraine .stork-3{display:none}.lf-decor-ukraine .stork-1{opacity:.2}}.lf-decor-sea .bubble{opacity:0;background:radial-gradient(circle at 30% 30%,#fff9,#ffffff0a 45%);border:1.5px solid #eafcff99;border-radius:50%;animation:9s ease-in infinite lf-bubble;position:absolute;bottom:-20px}.lf-decor-sea .fish{opacity:.75;position:absolute;left:0}.lf-decor-sea .fish-1{animation:26s linear infinite lf-swim-left;top:38%}.lf-decor-sea .fish-2{animation:34s linear -12s infinite lf-swim-right;top:64%}.lf-decor-sea .waves{animation:12s linear infinite lf-waves;position:absolute;bottom:0;left:0}@media (prefers-reduced-motion:reduce){.lf-decor *{animation:none!important}.lf-decor .fish,.lf-decor .bubble{display:none}}.theme-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.theme-option{align-items:stretch;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius);border:2px solid var(--line);background:var(--paper-2);color:var(--ink);font:inherit;text-align:start;cursor:pointer;transition:border-color var(--transition), transform var(--transition);flex-direction:column;display:flex;position:relative}.theme-option:hover{border-color:var(--line-strong)}.theme-option[aria-checked=true]{border-color:var(--accent);transform:translateY(-2px)}.theme-option-text{padding:0 var(--space-1) var(--space-1);flex-direction:column;gap:2px;display:flex}.theme-swatch{border-radius:calc(var(--radius) - 6px);align-items:flex-end;height:86px;padding:12px;display:flex;overflow:hidden}.theme-swatch-card{border-bottom:3px solid;border-radius:10px;width:100%;height:50px;display:block;position:relative}.theme-swatch-bar{border-radius:99px;width:46%;height:8px;position:absolute;top:12px;left:10px}.theme-swatch-dot{border-radius:50%;width:16px;height:16px;position:absolute;top:9px;right:10px}.theme-swatch-line{border-radius:99px;width:70%;height:5px;position:absolute;bottom:11px;left:10px}.theme-check{background:var(--accent);width:26px;height:26px;color:var(--accent-ink);border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;left:10px}.theme-grid[data-compact] .theme-swatch{height:64px}.fold .theme-grid{gap:var(--space-2)}.fold .theme-swatch{height:56px;padding:8px}.fold .theme-swatch-card{height:34px}.fold .theme-option-text .small{display:none}.fold .theme-check{width:20px;height:20px}@keyframes lf-ring-fill{0%{stroke-dashoffset:var(--ring-len)}to{stroke-dashoffset:var(--ring-offset)}}@keyframes lf-stamp{0%{opacity:0;transform:rotate(-14deg)scale(2.1)}60%{opacity:1;transform:rotate(-14deg)scale(.92)}to{opacity:1;transform:rotate(-14deg)scale(1)}}@keyframes lf-confetti{0%{opacity:0;transform:translateY(-30px)rotate(0)}10%{opacity:1}to{opacity:0;transform:translateY(260px)rotate(540deg)}}@keyframes lf-petal{0%{opacity:0;transform:rotate(var(--r)) translateY(0) scaleY(.2)}to{opacity:1;transform:rotate(var(--r)) translateY(-66px) scaleY(1)}}@keyframes lf-center{0%{transform:scale(0)}70%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes lf-sunrise{0%{opacity:.2;transform:translateY(70px)}to{opacity:1;transform:none}}@keyframes lf-jump{0%{opacity:0;transform:translate(-70px,40px)rotate(40deg)}15%{opacity:1}50%{transform:translateY(-60px)rotate(-10deg)}85%{opacity:1}to{opacity:0;transform:translate(70px,40px)rotate(-60deg)}}.celebration{padding:var(--space-3) 0;justify-content:center;display:flex;position:relative;overflow:hidden}.celebration .ring-wrap{width:200px;height:200px;position:relative}.celebration .ring{width:100%;height:100%;transform:rotate(-90deg)}.celebration .ring-track{fill:none;stroke:var(--paper-3);stroke-width:12px}.celebration .ring-value{fill:none;stroke:var(--accent);stroke-width:12px;stroke-linecap:round;stroke-dasharray:var(--ring-len);stroke-dashoffset:var(--ring-offset);animation:1.4s cubic-bezier(.3,.8,.3,1) .2s both lf-ring-fill}.celebration .ring-threshold{background:var(--warm);transform-origin:50% 96px;border-radius:2px;width:3px;height:22px;margin-left:-1.5px;position:absolute;top:4px;left:50%}.celebration-score{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.celebration-score strong{font-family:var(--font-display);font-weight:var(--display-weight);letter-spacing:-.02em;font-size:40px;line-height:1}.celebration-score span{color:var(--ink-2);margin-top:6px;font-size:13px}.celebration-stamp{border:3px double var(--warm);color:var(--warm);font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb, var(--paper) 80%, transparent);border-radius:10px;padding:6px 12px;font-weight:700;animation:.5s cubic-bezier(.3,1.4,.5,1) 1.4s both lf-stamp;position:absolute;top:12px;right:8%}.celebration-neon .ring-value{stroke:url(#lf-ring-gradient);stroke-width:14px}.celebration-neon .ring-track{stroke-width:14px}.celebration-neon .confetti{pointer-events:none;position:absolute;inset:0}.celebration-neon .confetti i{background:#c8f25a;border-radius:2px;width:8px;height:13px;animation:2.8s ease-in infinite lf-confetti;position:absolute;top:0}.celebration-neon .confetti i:nth-child(3n){background:#9b8cff}.celebration-neon .confetti i:nth-child(4n){background:#ff6fb1}.celebration-sea .ring-wrap{background:radial-gradient(circle,#ffd23f 0 58%,#0000 59%);border-radius:50%;animation:1.2s cubic-bezier(.2,.8,.2,1) both lf-sunrise}.celebration-sea .ring-track{stroke:#3a1a082e}.celebration-sea .ring-value{stroke:#3a1a08}.celebration-sea .celebration-score strong,.celebration-sea .celebration-score span{color:#3a1a08}.celebration-sea .sea-jump{opacity:0;margin-left:-20px;animation:2.6s ease-in-out 1.6s infinite lf-jump;position:absolute;bottom:10px;left:50%}.celebration-ukraine .sunflower{width:230px;height:230px;position:relative}.celebration-ukraine .petal{opacity:0;background:#0057b71f;border-radius:50% 50% 45% 45%/70% 70% 30% 30%;width:20px;height:48px;margin:-24px 0 0 -10px;animation:.5s cubic-bezier(.3,1.4,.5,1) both lf-petal;position:absolute;top:50%;left:50%}.celebration-ukraine .petal[data-on]{background:#ffd500;box-shadow:inset 0 -6px #ffc400}.celebration-ukraine .sunflower-center{background:radial-gradient(circle,#8a5a36 0 40%,#5c3a1f 72%);border-radius:50%;width:116px;height:116px;margin:-58px 0 0 -58px;animation:.5s cubic-bezier(.3,1.4,.5,1) .1s both lf-center;position:absolute;top:50%;left:50%}.celebration-ukraine .celebration-score strong{color:#fff8d6;font-size:30px}.celebration-ukraine .celebration-score span{color:#f2e2c4;font-size:11px}.celebration-ukraine .celebration-stamp{color:#fff;background:#c8102e;border:0}@media (prefers-reduced-motion:reduce){.celebration *,.celebration .ring-value{animation:none!important}.celebration .petal{opacity:1;transform:rotate(var(--r)) translateY(-66px)}.celebration .confetti,.celebration .sea-jump{display:none}.celebration-stamp{transform:rotate(-14deg)}}.ui-lang{border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:999px;flex-shrink:0;align-items:center;gap:2px;padding:3px 3px 3px 10px;display:inline-flex}.ui-lang>svg{margin-right:4px}.ui-lang button{cursor:pointer;min-width:44px;min-height:32px;color:var(--ink);font:inherit;letter-spacing:.04em;background:0 0;border:0;border-radius:999px;padding:4px 10px;font-size:.8125rem;font-weight:700}.ui-lang button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}.ui-lang button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.ui-lang[aria-busy=true]{opacity:.7}.topbar-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:flex}.sidebar .ui-lang{margin:0 0 var(--space-3);align-self:flex-start}.welcome-top{justify-content:flex-end;display:flex}.auth-page:has(.auth-screen){max-width:26rem;padding-top:calc(var(--space-4) + var(--safe-top))}.auth-screen{justify-content:center;gap:var(--space-5);flex-direction:column;min-height:calc(100svh - 48px);display:flex}.auth-screen>.auth-top{top:calc(12px + var(--safe-top));z-index:5;margin:0;position:fixed;right:16px}.auth-top{justify-content:flex-end;display:flex}.sidebar-switches{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.course-menu{flex-shrink:0;display:inline-block;position:relative}.course-menu>summary{cursor:pointer;border:1px solid var(--line-strong);background:var(--paper-2);color:var(--ink);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.8125rem;list-style:none;display:inline-flex}.course-menu>summary::-webkit-details-marker{display:none}.course-menu>summary::marker{content:""}.course-menu>summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.course-menu-label{color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem}.course-menu-value{font-weight:700}.course-pop{top:calc(100% + 8px);z-index:40;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper-2);width:max-content;max-width:min(260px,100vw - 32px);box-shadow:var(--shadow);gap:2px;padding:6px;display:grid;position:absolute;inset-inline-start:0}.topbar-actions .course-pop{inset-inline:auto 0}.course-pop-hint{color:var(--ink-2);white-space:normal;margin:2px 8px 6px;font-size:.75rem}.course-pop button{text-align:start;cursor:pointer;width:100%;color:var(--ink);font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.course-pop button:hover{background:var(--paper-3)}.course-pop button[aria-pressed=true]{background:var(--accent-soft);font-weight:600}.course-pop-add{color:var(--ink-2);border-top:1px solid var(--line);border-radius:0 0 8px 8px;justify-content:flex-start}.ui-lang-menu{flex-shrink:0;display:inline-block;position:relative}.ui-lang-menu>summary{cursor:pointer;border:2px solid var(--accent);background:var(--accent-soft);color:var(--ink);letter-spacing:.04em;box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 12%, transparent);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.8125rem;font-weight:700;list-style:none;display:inline-flex}.ui-lang-menu>summary::-webkit-details-marker{display:none}.ui-lang-menu>summary::marker{content:""}.ui-lang-menu>summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.ui-lang-pop{top:calc(100% + 8px);z-index:40;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper-2);width:max-content;max-width:min(240px,100vw - 32px);box-shadow:var(--shadow);gap:2px;padding:6px;display:grid;position:absolute;inset-inline-start:0}.topbar-actions .ui-lang-pop{inset-inline:auto 0}.ui-lang-pop button{text-align:start;cursor:pointer;width:100%;color:var(--ink);font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:8px 10px}.ui-lang-pop button:hover{background:var(--paper-3)}.ui-lang-pop button[aria-pressed=true]{background:var(--accent-soft);font-weight:700}.auth-hero{text-align:center;justify-items:center;gap:var(--space-2);animation:.6s cubic-bezier(.2,.7,.2,1) both lf-rise;display:grid}.auth-mark{object-fit:contain;width:72px;height:72px;filter:drop-shadow(0 10px 24px color-mix(in srgb, var(--accent) 35%, transparent));animation:.7s cubic-bezier(.3,1.4,.5,1) .1s both lf-pop;display:block}.auth-title{font-family:var(--font-display);font-weight:var(--display-weight);margin:var(--space-2) 0 0;letter-spacing:var(--heading-tracking);font-size:2.4rem;line-height:1.05}.auth-tagline{color:var(--ink-2);margin:0;font-size:1.05rem}.auth-card{padding:var(--space-5);border-radius:var(--radius-lg);box-shadow:var(--shadow);animation:.6s cubic-bezier(.2,.7,.2,1) .12s both lf-rise}.auth-card .stack-xs{gap:4px;display:grid}.auth-card .stack-xs .h2{margin:0}.auth-or{align-items:center;gap:var(--space-3);color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.8125rem;display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--line);flex:1;height:1px}.btn-telegram{color:#fff;background:#2aabee;border-color:#2aabee}.btn-telegram:hover{color:#fff;background:#229ed9;border-color:#229ed9}.auth-demo{color:var(--ink-2);text-underline-offset:3px;align-self:center;align-items:center;gap:6px;font-size:.9rem;text-decoration:underline;animation:.6s .24s both lf-rise;display:inline-flex}.auth-demo:hover{color:var(--ink)}@media (prefers-reduced-motion:reduce){.auth-hero,.auth-mark,.auth-card,.auth-demo{animation:none}}.auth-tabs{background:var(--paper-3);border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-tabs button{min-height:40px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;font-weight:700}.auth-tabs button[aria-selected=true]{background:var(--paper-2);color:var(--ink);box-shadow:0 2px 8px #0000001f}.auth-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.password-input{position:relative}.password-input input{width:100%;padding-right:48px}.password-toggle{width:40px;height:40px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.password-toggle:hover{color:var(--ink)}.auth-link{color:var(--accent);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:center;padding:4px;font-size:.9rem;text-decoration:underline}.auth-card .stack-xs h3,.auth-card .stack-xs h1{margin:0}.turnstile{justify-content:center;min-height:65px;display:flex}.telegram-login{justify-content:center;min-height:40px;display:flex}.telegram-login iframe{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:0 0;border-radius:22px;overflow:hidden}.auth-themes{gap:var(--space-2);animation:.6s .2s both lf-rise;display:grid}.login-methods{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.login-method{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper-2);display:grid}.login-method-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.login-method-title{font-weight:700}.login-method-state{color:var(--ink-3);overflow-wrap:anywhere;font-size:.875rem}.login-method-state.is-on{color:var(--success);font-weight:600}.login-method-state.is-on:before{content:"● "}.login-method-form{padding-top:var(--space-2);border-top:1px dashed var(--line)}.check-row{align-items:flex-start;gap:var(--space-2);cursor:pointer;display:flex}.check-row input{width:18px;height:18px;accent-color:var(--accent);margin-top:3px}.bo-tabs{max-width:420px;margin:var(--space-3) 0}.bo-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.bo-search{flex-wrap:nowrap}.bo-search input{flex:1;min-width:0}.bo-table td,.bo-table th{vertical-align:top}.bo-user-link{color:inherit;gap:2px;text-decoration:none;display:grid}.bo-user-link:hover strong{text-decoration:underline}.bo-dl{gap:6px var(--space-4);grid-template-columns:max-content 1fr;margin:0;display:grid}.bo-dl dt{color:var(--ink-2);font-size:.875rem}.bo-dl dd{overflow-wrap:anywhere;margin:0}.bo-confirm{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--warm-soft);flex-wrap:wrap;display:inline-flex}.bo-danger{color:var(--danger)}.bo-danger-solid{background:var(--danger);border-color:var(--danger);color:#fff}.bo-danger-zone{border-color:color-mix(in srgb, var(--danger) 40%, var(--line))}.with-aside{gap:var(--space-5);align-items:start;display:grid}.with-aside-main{min-width:0}@media (min-width:1180px){.main:has(.with-aside){max-width:1320px}.with-aside{grid-template-columns:minmax(0,1fr) 320px}}.stats-aside{min-width:0}@media (min-width:1100px){.stats-aside{top:calc(var(--space-5) + var(--safe-top));position:sticky}}.stats-pulse{align-items:flex-end;gap:2px;height:16px;display:inline-flex}.stats-pulse i{background:var(--accent);border-radius:2px;width:3px;height:40%}.stats-pulse i:nth-child(2){height:75%}.stats-pulse i:nth-child(3){height:55%}@media (prefers-reduced-motion:no-preference){.stats-pulse i{animation:1.6s ease-in-out infinite lf-pulse-bar}.stats-pulse i:nth-child(2){animation-delay:.2s}.stats-pulse i:nth-child(3){animation-delay:.4s}}@keyframes lf-pulse-bar{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.7)}}.stats-panel{padding:var(--space-4);overflow:hidden}.stats-panel-title{align-items:center;gap:var(--space-2);margin:0;display:flex}.stats-subtitle{margin:var(--space-2) 0 0;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.stat-meter{gap:6px;display:grid}.stat-meter-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.stat-meter-head strong{font-size:1.1rem}.stat-meter-track{background:var(--paper-3);border-radius:999px;height:10px;overflow:hidden}.stat-meter-track>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .6s cubic-bezier(.2,.7,.2,1);display:block}.stat-meter[data-tone=warm] .stat-meter-track>span{background:var(--warm)}.stat-figures{gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.stat-figures>div{padding:var(--space-2);border-radius:var(--radius-sm);background:var(--paper-2);text-align:center;gap:2px;display:grid}.stat-figures dd{font-family:var(--font-heading);margin:0;font-size:1.25rem;font-weight:700}.stat-figures dt{color:var(--ink-2);font-size:.75rem}.stat-figures [data-tone=bad] dd{color:var(--danger)}.stat-figures [data-tone=good] dd{color:var(--success)}.stats-list{grid-template-columns:minmax(0,1fr);gap:4px;margin:0;padding:0;list-style:none;display:grid}.stats-list li{justify-content:space-between;align-items:center;gap:var(--space-2);background:var(--paper-2);border-radius:10px;min-width:0;padding:5px 8px;font-size:.8125rem;display:flex}.stats-list li[data-done]{box-shadow:inset 3px 0 0 var(--success)}.stats-task{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:inherit;overflow:hidden}.mistake-badge{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.mistake-badge[data-state=ok]{background:var(--success-soft);color:var(--success)}.mistake-badge[data-state=bad]{background:var(--danger-soft);color:var(--danger)}.mistake-badge[data-state=none]{color:var(--ink-3);font-weight:500}.week-strip{gap:var(--space-3);display:grid}.week-head{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;display:flex}.week-score{align-items:baseline;gap:1px;display:inline-flex}.week-score strong{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:800;line-height:1}.week-total{color:var(--ink-3);font-size:.875rem;font-weight:700}.week-caption{color:var(--ink-3);font-size:.8125rem}.week-month{border:1px solid var(--line);background:var(--paper-2);color:var(--ink-2);text-transform:capitalize;border-radius:999px;margin-inline-start:auto;padding:2px 10px;font-size:.75rem;font-weight:600}.week-row{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;margin:0;padding:0;list-style:none;display:grid}.week-row li{justify-items:center;gap:6px;min-width:0;display:grid;position:relative}.week-row li:after{content:"";top:38px;background:var(--line);border-radius:999px;width:calc(100% - 34px);height:3px;position:absolute;inset-inline-end:calc(50% + 17px)}.week-row li:first-child:after{content:none}.week-row li[data-link]:after{background:var(--accent)}.week-dow{letter-spacing:.04em;text-transform:uppercase;height:14px;color:var(--ink-3);font-size:.6875rem;font-weight:700;line-height:14px}.week-row li[data-weekend] .week-dow{color:color-mix(in srgb, var(--warm) 55%, var(--ink-3))}.week-row li[data-today] .week-dow{color:var(--accent)}.week-mark{z-index:1;border:1.5px solid var(--line);background:var(--paper-2);width:36px;height:36px;color:var(--ink-2);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:.9375rem;font-weight:700;display:grid;position:relative}.week-row li[data-active] .week-mark{color:var(--accent-ink);background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 78%, #fff), var(--accent));box-shadow:0 6px 14px -7px color-mix(in srgb, var(--accent) 70%, transparent);border-color:#0000}.week-row li[data-today] .week-mark{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}.week-row li[data-today][data-active] .week-mark{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 26%, transparent), 0 6px 14px -7px color-mix(in srgb, var(--accent) 70%, transparent)}.week-now{background:var(--accent);border-radius:50%;width:4px;height:4px}.week-bonus{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--line));border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent) 7%, var(--paper-2));align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.week-bonus-icon{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.week-bonus-text{gap:2px;min-width:0;display:grid}.week-bonus-text strong{font-size:1rem}.week-bonus-locked{align-items:center;gap:6px;display:inline-flex}.week-bonus-open{justify-self:start;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.week-bonus-open{animation:2.4s ease-in-out infinite lf-bonus-call}.week-bonus-open:after{content:"";background:linear-gradient(115deg,#0000 20%,#ffffff8c 45%,#0000 70%) 0 0/220% 100%;animation:2.4s linear infinite lf-shimmer;position:absolute;inset:0}.week-bonus-open svg[data-icon=gem]{transform-origin:50% 60%;animation:2.4s ease-in-out infinite lf-bonus-gem}}@keyframes lf-bonus-call{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent);transform:scale(1)}50%{box-shadow:0 0 0 8px color-mix(in srgb, var(--accent) 0%, transparent);filter:hue-rotate(18deg);transform:scale(1.04)}}@keyframes lf-bonus-gem{0%,to{transform:rotate(-8deg)scale(1)}50%{transform:rotate(8deg)scale(1.15)}}@media (max-width:380px){.week-mark{width:32px;height:32px;font-size:.875rem}.week-row li:after{top:36px;width:calc(100% - 30px);inset-inline-end:calc(50% + 15px)}}html:root[data-app-theme=ukraine] .week-row li[data-active] .week-mark{color:#fff;background:#0057b7;box-shadow:inset 0 -3px #ffd500}html:root[data-app-theme=ukraine] .week-row li[data-today][data-active] .week-mark{box-shadow:inset 0 -3px #ffd500,0 0 0 3px #ffd5008c}html:root[data-app-theme=ukraine] .week-row li[data-today] .week-mark{box-shadow:0 0 0 3px #ffd5008c}html:root[data-app-theme=ukraine] .week-row li[data-link]:after{background:#ffd500}html:root[data-app-theme=neon] .week-row li[data-active] .week-mark{box-shadow:0 0 14px color-mix(in srgb, var(--accent) 65%, transparent)}html:root[data-app-theme=neon] .week-row li[data-today][data-active] .week-mark{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent), 0 0 16px color-mix(in srgb, var(--accent) 70%, transparent)}.stats-bars{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.stats-bars li{gap:6px;display:grid}.review-split{border-radius:999px;gap:2px;height:14px;display:flex;overflow:hidden}.review-split [data-kind=correct]{background:var(--success)}.review-split [data-kind=hinted]{background:var(--warning)}.review-split [data-kind=incorrect]{background:var(--danger)}.auth-top{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.theme-pills{flex-wrap:wrap;gap:6px;display:flex}.theme-pill{border:1px solid var(--line);background:var(--paper-2);min-height:36px;color:var(--ink-2);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 6px;font-size:.8125rem;font-weight:600;transition:border-color .2s,color .2s,transform .2s;display:inline-flex}.theme-pill:hover{border-color:var(--line-strong);color:var(--ink)}.theme-pill[aria-checked=true]{border-color:var(--accent);color:var(--ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.theme-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-pill-dot{border:2px solid;border-radius:50%;flex-shrink:0;width:24px;height:24px}@media (max-width:520px){.auth-top{flex-direction:column-reverse;align-items:stretch}.auth-top .ui-lang{align-self:flex-end}.theme-pills{justify-content:center}}.auth-bar{width:100vw;margin-left:calc(50% - 50vw);margin-top:calc(-1 * var(--space-2));justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 max(var(--space-4), calc((100vw - 1100px) / 2)) var(--space-3);border-bottom:1px solid var(--line);flex-wrap:wrap;display:flex}.auth-bar .ui-lang{box-shadow:none}.auth-screen:has(.auth-bar){justify-content:flex-start;padding-top:0}.auth-screen:has(.auth-bar)>.auth-hero{margin-top:clamp(var(--space-4), 6vh, 64px)}@media (max-width:560px){.auth-bar{padding-left:var(--space-3);padding-right:var(--space-3);justify-content:center}.auth-bar .theme-pills{order:2;justify-content:center;width:100%}.auth-bar .ui-lang{order:1}}.auth-corner{top:calc(12px + var(--safe-top));z-index:5;align-items:center;gap:8px;display:flex;position:fixed;right:16px}.auth-corner .ui-lang{box-shadow:none;padding:2px 2px 2px 8px}.auth-corner .ui-lang button{min-width:40px;min-height:30px;padding:2px 8px}.theme-menu{position:relative}.theme-menu>summary{list-style:none}.theme-menu>summary::-webkit-details-marker{display:none}.theme-menu-button{cursor:pointer;border:2px solid var(--accent);background:var(--accent-soft);height:38px;color:var(--accent);border-radius:999px;align-items:center;gap:4px;padding:0 8px 0 5px;display:inline-flex}.theme-menu-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.theme-menu[open] .theme-menu-button svg{transform:rotate(180deg)}.theme-menu-pop{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);min-width:190px;box-shadow:var(--shadow);padding:8px;animation:.2s ease-out both lf-rise;position:absolute;top:calc(100% + 8px);right:0}.theme-menu-pop .theme-pills{flex-direction:column}.theme-menu-pop .theme-pill{justify-content:flex-start;width:100%}.auth-page:has(.auth-split){max-width:26rem;padding-top:calc(var(--space-3) + var(--safe-top));padding-bottom:var(--space-3)}.auth-split{gap:var(--space-4);min-height:calc(100svh - 24px);padding-top:44px}.auth-split .auth-hero{gap:6px}.auth-split .auth-mark{width:52px;height:52px}.auth-split .auth-title{margin-top:4px;font-size:2rem}.auth-split .auth-card{padding:var(--space-4);gap:var(--space-3)}.auth-split .auth-card .stack{gap:var(--space-3)}.auth-split .auth-card .stack-sm{gap:var(--space-2)}.auth-split .auth-side{gap:var(--space-3);display:grid}.auth-split .auth-demo{justify-self:center}@media (min-width:960px){.auth-page:has(.auth-split){max-width:980px}.auth-split{grid-template-columns:1fr 420px;align-items:center;column-gap:64px;padding-top:0;display:grid}.auth-split .auth-hero{text-align:left;justify-items:start}.auth-split .auth-mark{width:72px;height:72px}.auth-split .auth-title{font-size:3.2rem}.auth-split .auth-tagline{max-width:24ch;font-size:1.2rem}}@media (max-height:760px) and (min-width:960px){.auth-split .auth-card{padding:var(--space-3) var(--space-4)}}@media (max-width:959px) and (max-height:740px){.auth-split{gap:var(--space-2);padding-top:40px}.auth-split .auth-mark{display:none}.auth-split .auth-title{margin-top:0;font-size:1.5rem}.auth-split .auth-tagline{font-size:.9rem}.auth-split .auth-card{padding:var(--space-3)}.auth-split .auth-card .stack{gap:var(--space-2)}.auth-split .auth-card .stack-xs p{display:none}.auth-split .auth-tabs button{min-height:34px}.auth-split .password-rules{column-gap:var(--space-2);grid-template-columns:1fr 1fr;font-size:.75rem}.auth-split .password-rules li{align-items:flex-start}.auth-split .auth-or{font-size:.75rem}.auth-split .auth-side{gap:var(--space-2)}}@media (max-width:959px) and (max-height:640px){.auth-split{padding-top:52px}.auth-split .auth-tagline{display:none}.auth-split .auth-title{font-size:1.3rem}}.auth-corner .theme-menu-button,.auth-corner .ui-lang{background:var(--paper);background-image:linear-gradient(var(--accent-soft), var(--accent-soft))}.auth-corner{border-radius:999px;padding:4px}body:has(.auth-split) .lf-decor-sea .sun{top:auto;bottom:-110px;right:-110px}.password-rules{color:var(--ink-3);gap:4px;margin:0;padding:0;font-size:.8125rem;list-style:none;display:grid}.password-rules li{align-items:center;gap:6px;display:flex}.password-rules li[data-ok]{color:var(--success)}input[aria-invalid=true],.password-input input[aria-invalid=true]{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 18%, transparent);border-color:var(--danger)!important}.field-error{align-items:center;gap:6px;font-weight:600;display:flex}.stack-xs{gap:4px;display:grid}.success-text{color:var(--success);align-items:center;gap:6px;display:flex}.word-gloss{margin:0;font-size:1.05rem}.word-example{padding-left:var(--space-3);border-left:3px solid var(--line);gap:2px;display:grid}.word-learn-card .row-between,.word-set-word .row-between{align-items:flex-start}.word-learn-card .row-between>.stack-xs,.word-set-word .row-between>.stack-xs{flex:auto;min-width:0}.word-learn-card[data-status=learning],.word-learn-card[data-status=checked],.word-learn-card[data-status=mastered]{box-shadow:inset 4px 0 0 var(--success)}.word-quiz{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--paper-2)}.word-question-headword{font-family:var(--font-heading);overflow-wrap:anywhere;margin:0;font-size:1.35rem;font-weight:700}.word-question-sentence{margin:0;font-size:1.1rem}.word-question input[type=text]{width:100%}.word-set-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));display:grid}.word-set-card h3 a{color:inherit;text-decoration:none}.word-set-card h3 a:hover{text-decoration:underline}.stats-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));display:grid}.word-status-legend{gap:6px;margin:0;padding:0;list-style:none;display:grid}.word-status-legend li{flex-wrap:wrap}.word-weeks{grid-template-columns:repeat(12,1fr);align-items:end;gap:4px;height:96px;margin:0;padding:0;list-style:none;display:grid}.word-weeks li{background:var(--paper-3);border-radius:6px;align-items:flex-end;height:100%;display:flex;overflow:hidden}.word-week-bar{background:var(--accent);border-radius:6px 6px 0 0;width:100%;min-height:3px;display:block}.word-history-row{gap:var(--space-2);border-bottom:1px solid var(--line);flex-wrap:wrap;padding:6px 0}.word-history-row:last-child{border-bottom:0}.word-result-percent{font-family:var(--font-heading);margin:0;font-size:2.5rem;line-height:1}.word-result-item[data-correct]{opacity:.85}.word-check-card .btn{justify-self:start}
