:root{--bg:#fff;--ink:#121212;--muted:#6f6f6f;--rule:#e6e6e6;--key:#d3d6da;--red:#d52b1e;--blue:#0039a6;--good:var(--green);--close:var(--green);--miss:var(--red);--serif:"PT Serif", Georgia, "Times New Roman", serif;--sans:"Libre Franklin", "Helvetica Neue", Arial, sans-serif;--on-accent:#fff;--ease-press:cubic-bezier(.3,1.5,.5,1);--ease-icon:cubic-bezier(.3,1.6,.5,1);--ease-pop:cubic-bezier(.3,1.8,.5,1);--size-18:18px;--size-56:56px;--size-rail:176px;--size-320:320px;--stroke-icon:1.8;--layout-page:640px;--space-16:16px;--space-48:48px;--space-12:12px;--space-20:20px;--space-14:14px;--border-thin:1px;--space-8:8px;--weight-bold:700;--text-brand:1.75rem;--tracking-tight:-.01em;--leading-solid:1;--weight-normal:400;--text-meta:.95rem;--space-2:2px;--space-6:6px;--size-14:14px;--size-2:2px;--space-negative-7:-7px;--text-body:1rem;--space-18:18px;--radius-pill:999px;--space-5:5px;--text-caption:.75rem;--weight-medium:500;--size-132:132px;--radius-card:8px;--space-10:10px;--duration-200:.2s;--size-negative-2:-2px;--text-letter:2.5rem;--leading-tight:1.1;--text-hint:1.05rem;--text-example:.9rem;--duration-500:.5s;--size-10:10px;--size-38:38px;--size-pin:144px;--radius-round:50%;--text-micro:.72rem;--text-prompt-min:2.6rem;--text-prompt-fluid:11vw;--text-prompt-max:4.4rem;--size-hint:1.6em;--size-44:44px;--opacity-unavailable:.3;--space-36:36px;--layout-answer:380px;--border-strong:2px;--text-answer:1.8rem;--space-4:4px;--layout-choices:440px;--radius-small:4px;--text-choice:1.2rem;--size-feedback:2.8em;--text-feedback:1.1rem;--size-48:48px;--opacity-disabled:.25;--space-26:26px;--layout-keyboard:480px;--size-key:40px;--size-key-wide:64px;--space-40:40px;--size-15:15px;--text-small:.8rem;--size-28:28px;--duration-300:.3s;--duration-250:.25s;--duration-350:.35s;--duration-900:.9s;--duration-read-again:4s;--duration-150:.15s;--duration-450:.45s;--duration-600:.6s;--duration-400:.4s;--angle-negative-8:-8deg;--angle-6:6deg;--angle-negative-3:-3deg;--angle-90:90deg;--opacity-full:1;--size-negative-6:-6px;--size-6:6px;--motion-rotatey-0:rotateY(0);--motion-scale-0-4:scale(.4);--motion-scale-0-9:scale(.9);--motion-scale-0-95:scale(.95);--motion-scale-1:scale(1);--motion-scale-1-03:scale(1.03);--motion-scale-1-1:scale(1.1);--motion-scale-1-12:scale(1.12);--motion-scale-1-25:scale(1.25);--motion-scale-1-3:scale(1.3);--motion-scale-1-35:scale(1.35);--green:#18723c;--layout-sheet:560px;--tracking-caps:.08em;--size-activity:22px;--opacity-faint:.15;--text-forms:.9rem;--size-tab:54px;--size-tabbar:60px;--text-tab:.68rem;--size-switch-width:40px;--size-switch-height:24px;--size-knob:18px;--size-16:16px;--space-3:3px;--space-32:32px;--angle-45:45deg;--opacity-dim:.45;--opacity-kbd:.6;--text-label:.92rem;--layout-picker:640px;--size-button:160px;--radius-inner:2px;--leading-feedback:1.4;--size-mic:64px;--layout-bubble:85%;--size-64:64px;--size-88:88px;--motion-scale-0-98:scale(.98);--size-32:32px;--layout-persona:380px;--talk-stage-min:128px;--text-tab-compact:.6rem;--layout-popover:300px;--shadow-popover:0 6px 24px #0000001a, 0 1px 3px #0000000f;--layout-practice-stage:520px;--layout-practice-summary:128px;--layout-practice-answer:144px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121213;--ink:#f0f0f0;--muted:#8e8e92;--rule:#2e2e30;--key:#818384;--red:#ff5a4e;--blue:#6f9bff;--green:#75d99c;--on-accent:#121213;--shadow-popover:0 8px 28px #0000008c, 0 0 0 1px #2e2e30;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#121213;--ink:#f0f0f0;--muted:#8e8e92;--rule:#2e2e30;--key:#818384;--red:#ff5a4e;--blue:#6f9bff;--green:#75d99c;--on-accent:#121213;--shadow-popover:0 8px 28px #0000008c, 0 0 0 1px #2e2e30;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html{scrollbar-gutter:stable}body{background:var(--bg);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;margin:0}button,select,input{font:inherit;color:inherit}svg{width:var(--size-18);height:var(--size-18);fill:none;stroke:currentColor;stroke-width:var(--stroke-icon);stroke-linecap:round;stroke-linejoin:round}.app{min-height:100vh;min-height:100dvh;max-width:calc(var(--layout-page) + var(--space-16) * 2);padding:0 max(var(--space-16), env(safe-area-inset-right)) var(--space-20) max(var(--space-16), env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex}.app>section{width:100%;min-width:0;padding-bottom:var(--space-48);flex:none}table{border-collapse:collapse;width:100%;margin-top:var(--space-6)}td{padding:var(--space-10) var(--space-4);border-bottom:var(--border-thin) solid var(--rule);vertical-align:baseline}.top{justify-content:space-between;align-items:center;gap:var(--space-12);padding:var(--space-16) 0 var(--space-8);border-bottom:var(--border-thin) solid var(--rule);flex-wrap:wrap;display:flex}.brand{cursor:pointer;align-items:baseline;gap:var(--space-8);text-align:left;min-width:0;font-family:var(--serif);white-space:nowrap;background:0 0;border:0;padding:0;display:flex}.brand .hw{font-weight:var(--weight-bold);font-size:var(--text-brand);letter-spacing:var(--tracking-tight);line-height:var(--leading-solid)}.brand .hw .sy{color:var(--red);font-weight:var(--weight-normal)}.brand .ipa{color:var(--muted);font-size:var(--text-meta)}.tabs{align-items:stretch;gap:var(--space-2);max-width:100%;display:flex}.tabs a,.tabs .tab-more{justify-content:center;align-items:center;gap:var(--space-4);min-width:0;width:var(--size-tab);padding:var(--space-6) 0;border-radius:var(--radius-small);color:var(--muted);cursor:pointer;font-family:var(--sans);font-size:var(--text-tab);font-weight:var(--weight-medium);touch-action:manipulation;background:0 0;border:0;flex-direction:column;display:flex;position:relative}.tabs a:hover,.tabs a.active,.tabs .tab-more:hover,.tabs .tab-more.active{color:var(--ink)}.tabs a.active:after,.tabs .tab-more.active:after{content:"";width:var(--size-14);height:var(--size-2);margin-left:var(--space-negative-7);background:var(--blue);position:absolute;bottom:0;left:50%}.tab-sep{width:var(--border-thin);height:var(--size-28);margin:0 var(--space-6);background:var(--rule);flex:none;align-self:center}.tab-group{display:contents}.tabs .tab-more,.tab-hint,.tab-more .i-close,.tab-more[aria-expanded=true] .i-more{display:none}.tab-more[aria-expanded=true] .i-close{display:block}.tabs .abc{font-family:var(--serif);font-size:var(--text-body);font-weight:var(--weight-bold);line-height:var(--size-18);height:var(--size-18)}section h2{margin:var(--space-36) 0 var(--space-4);font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--muted)}.caption{margin:var(--space-12) 0 0;font-family:var(--sans);font-size:var(--text-small);color:var(--muted)}.note{margin:var(--space-8) 0 0;font-family:var(--sans);font-size:var(--text-small);color:var(--muted);min-height:var(--size-hint)}.btn{justify-content:center;align-items:center;gap:var(--space-8);min-height:var(--size-44);padding:0 var(--space-20);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);color:var(--ink);font-family:var(--sans);font-size:var(--text-small);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;touch-action:manipulation;background:0 0;display:inline-flex}.btn:hover{border-color:var(--ink)}.btn.primary{background:var(--blue);border-color:var(--blue);color:var(--on-accent)}.btn.danger{color:var(--miss)}.btn.danger:hover{border-color:var(--miss)}.btn:disabled{opacity:var(--opacity-disabled);cursor:default}.text-btn{min-height:var(--size-38);padding:0 var(--space-8);color:var(--muted);font-family:var(--sans);font-size:var(--text-small);text-underline-offset:var(--space-3);cursor:pointer;touch-action:manipulation;background:0 0;border:0;text-decoration:underline}.text-btn:hover{color:var(--ink)}.text-btn:disabled{opacity:var(--opacity-disabled);cursor:default;text-decoration:none}kbd{font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-medium);opacity:var(--opacity-kbd);border:var(--border-thin) solid currentColor;border-radius:var(--radius-small);padding:0 var(--space-4)}@media (hover:none){kbd{display:none}}.segmented{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-small);background:var(--rule);display:inline-flex}.segmented button{border-radius:var(--radius-inner);padding:var(--space-8) var(--space-20);font-family:var(--sans);font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--muted);cursor:pointer;touch-action:manipulation;background:0 0;border:0}.segmented button:hover{color:var(--ink)}.segmented button[aria-checked=true]{background:var(--bg);color:var(--ink)}.segmented.small button{padding:var(--space-6) var(--space-12);font-size:var(--text-caption)}.ib{width:var(--size-38);height:var(--size-38);border-radius:var(--radius-round);cursor:pointer;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.ib:hover{color:var(--ink)}.ib:disabled{opacity:var(--opacity-disabled);cursor:default}.pair{cursor:pointer;color:var(--blue);font-family:var(--serif);font-size:inherit;background:0 0;border:0;padding:0}.pair:hover{text-decoration:underline}.search{border:0;border-bottom:var(--border-thin) solid var(--ink);width:100%;padding:var(--space-10) var(--space-2);background:0 0;border-radius:0;outline:none}:focus-visible{outline:var(--border-strong) solid var(--blue);outline-offset:var(--space-2)}.credits{padding:0 var(--space-10);font-family:var(--sans);font-size:var(--text-micro);color:var(--muted);margin:0}.credits a{color:inherit}.example{margin-top:var(--space-6);text-align:center}.example p{margin:0}.example [lang=ru]{align-items:center;gap:var(--space-4);font-size:var(--text-feedback);display:inline-flex}.example [lang=ru] .ib{color:var(--ink);flex:none}.example-en{font-family:var(--sans);font-size:var(--text-small);color:var(--muted)}.credits>button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.credits>button:hover{color:var(--ink)}.sources-popover{width:var(--layout-popover);max-width:calc(100% - var(--space-32));padding:var(--space-14);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-card);background:var(--bg);color:var(--muted);font-family:var(--sans);font-size:var(--text-caption);line-height:var(--leading-feedback);margin:0;position:fixed;inset:auto}.sources-popover p{margin:0}.sources-popover p+p{margin-top:var(--space-10)}.sources-popover a{color:var(--ink)}.brand,.tabs a,.dialogues a,.reading-library a,.reading-back{text-decoration:none}.brand,.dialogues a,.reading-library a{color:inherit}.chips{justify-content:center;gap:var(--space-6);padding:var(--space-14) 0 var(--space-6);flex-wrap:wrap;display:flex}.chips button{border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);padding:var(--space-5) var(--space-12);font-family:var(--sans);font-size:var(--text-caption);font-weight:var(--weight-medium);color:var(--muted);cursor:pointer;align-items:center;gap:var(--space-6);background:0 0;display:inline-flex}.chips button:hover{color:var(--ink)}.chips button.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.abc-grid{grid-template-columns:repeat(auto-fill, minmax(var(--size-132), 1fr));gap:var(--space-8);margin-top:var(--space-14);display:grid}.letter{text-align:left;border:var(--border-thin) solid var(--rule);border-radius:var(--radius-card);padding:var(--space-10) var(--space-12) var(--space-12);cursor:pointer;gap:var(--space-2);touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:border-color var(--duration-200), transform var(--duration-200);background:0 0;flex-direction:column;display:flex;position:relative}.letter:hover{border-color:var(--ink);transform:translateY(var(--size-negative-2))}.letter .gl{font-family:var(--serif);font-size:var(--text-letter);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin-top:var(--space-2)}.letter .gl span{font-weight:var(--weight-normal);margin-left:var(--space-2)}.letter .lt{font-style:italic;font-size:var(--text-hint);color:var(--muted)}.letter .ex{font-size:var(--text-example);margin-top:var(--space-8);padding-top:var(--space-6);border-top:var(--border-thin) solid var(--rule)}.letter.playing{border-color:var(--ink);box-shadow:0 0 0 var(--border-thin) var(--ink);animation:press var(--duration-500) var(--ease-press)}@keyframes press{0%{transform:var(--motion-scale-1)}30%{transform:var(--motion-scale-0-95)}70%{transform:var(--motion-scale-1-03)}to{transform:var(--motion-scale-1)}}.controls{justify-content:center;align-items:center;gap:0 var(--space-2);min-width:0;font-family:var(--sans);font-size:var(--text-small);color:var(--muted);flex-wrap:wrap;display:flex}.control{align-items:center;gap:var(--space-6);min-height:var(--size-38);padding:0 var(--space-6);border-radius:var(--radius-small);color:var(--muted);cursor:pointer;touch-action:manipulation;background:0 0;border:0;display:inline-flex}.control:hover{color:var(--ink)}.control .glyph{font-family:var(--serif);font-size:var(--text-meta);color:var(--ink)}.control .ru{color:var(--red);font-weight:var(--weight-bold);font-style:normal}.control .la{color:var(--blue);font-weight:var(--weight-bold);font-style:normal}#cat:after{content:"";width:var(--size-6);height:var(--size-6);margin:0 var(--space-2) var(--space-3) var(--space-2);border-right:var(--border-thin) solid currentColor;border-bottom:var(--border-thin) solid currentColor;transform:rotate(var(--angle-45))}.stage{text-align:center;padding:var(--space-36) 0 0}.tag{margin-bottom:var(--space-8);padding:var(--space-2) var(--space-8);border-radius:var(--radius-small);background:var(--red);color:var(--on-accent);font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;display:inline-block}.prompt{font-size:clamp(var(--text-prompt-min), var(--text-prompt-fluid), var(--text-prompt-max));font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:0 0 var(--space-8);word-break:break-word;letter-spacing:var(--tracking-tight)}.prompt.gloss{font-weight:var(--weight-normal);font-style:italic}.hint{color:var(--muted);font-style:italic;font-size:var(--text-hint);min-height:var(--size-hint)}.listen{margin-top:var(--space-10);border:var(--border-thin) solid var(--rule);color:var(--ink);width:var(--size-44);height:var(--size-44);position:relative}.listen.speaking{background:var(--ink);color:var(--bg);border-color:var(--ink)}.listen:disabled{opacity:var(--opacity-unavailable);cursor:default}@property --countdown-done{syntax:"<percentage>";inherits:false;initial-value:0%}.listen{--countdown:var(--duration-read-again)}.listen.counting:after{content:"";inset:calc(var(--space-3) * -1);border-radius:var(--radius-round);pointer-events:none;background:conic-gradient(var(--blue) var(--countdown-done), transparent 0);-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - var(--space-2)), black calc(100% - var(--space-2)));-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - var(--space-2)), black calc(100% - var(--space-2)));mask:radial-gradient(farthest-side, transparent calc(100% - var(--space-2)), black calc(100% - var(--space-2)));animation:countdown var(--countdown) linear forwards;position:absolute}@keyframes countdown{to{--countdown-done:100%}}.answer{margin:var(--space-32) auto 0;max-width:var(--layout-answer)}.answer input{border:0;border-bottom:var(--border-strong) solid var(--ink);text-align:center;width:100%;font-family:var(--serif);font-size:var(--text-answer);padding:var(--space-6) var(--space-4);background:0 0;border-radius:0;outline:none}.answer input::placeholder{color:var(--rule);font-style:italic}.answer input:disabled{color:var(--muted)}.choices{gap:var(--space-8);max-width:var(--layout-page);margin:var(--space-32) auto 0;grid-template-columns:1fr 1fr;display:grid}.choices button{justify-content:center;align-items:center;gap:var(--space-8);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);min-width:0;padding:var(--space-14) var(--space-8);font-family:var(--serif);font-size:var(--text-choice);cursor:pointer;overflow-wrap:anywhere;touch-action:manipulation;background:0 0;display:flex}.choices button:hover{border-color:var(--ink)}.choices button:disabled{color:var(--ink);cursor:default;opacity:var(--opacity-dim)}.choices button:disabled:hover{border-color:var(--rule)}.choices button.right{opacity:var(--opacity-full);background:var(--good);border-color:var(--good);color:var(--on-accent)}.choices button.wrong{opacity:var(--opacity-full);background:var(--miss);border-color:var(--miss);color:var(--on-accent)}.choices.en button{font-family:var(--sans);font-size:var(--text-body)}.choice-mark{font-family:var(--sans)}.choices kbd,.choice-mark{width:var(--size-14);text-align:center;flex:none}.choices kbd{color:var(--muted);border:0;padding:0}.intro{margin:var(--space-32) 0 0;align-items:center;gap:var(--space-8);font-size:var(--text-feedback);flex-direction:column;display:flex}.facts{justify-content:center;align-items:center;gap:var(--space-4) var(--space-8);flex-wrap:wrap;margin:0;display:flex}.facts span{font-family:var(--sans);font-size:var(--text-small);color:var(--muted)}.facts span+span:before{content:"·";margin-right:var(--space-8)}.facts .level{color:var(--ink)}.feedback{min-height:var(--size-feedback);margin-top:var(--space-18);font-size:var(--text-feedback);justify-content:center;align-items:center;gap:0 var(--space-10);line-height:var(--leading-feedback);flex-wrap:wrap;display:flex}.feedback .result-mark{font-family:var(--sans);font-weight:var(--weight-bold);flex:none}.feedback .result-mark.exact{color:var(--good)}.feedback .result-mark.close{color:var(--close)}.feedback .result-mark.wrong{color:var(--miss)}.feedback em{color:var(--muted)}.actions{align-items:center;gap:var(--space-8);min-height:calc(var(--size-44) + var(--space-8) + var(--size-38));flex-direction:column;display:flex}.actions .btn{min-width:var(--size-button)}.actions .text-btn{font-size:var(--text-caption)}.kbd{margin:var(--space-26) auto 0;max-width:var(--layout-keyboard);gap:var(--space-6);flex-direction:column;display:flex}.kbd .row{gap:var(--space-5);justify-content:center;display:flex}.kbd button{max-width:var(--size-key);min-width:0;height:var(--size-48);border-radius:var(--radius-small);background:var(--key);font-family:var(--sans);font-weight:var(--weight-bold);font-size:var(--text-body);cursor:pointer;touch-action:manipulation;border:0;flex:1 1 0;place-items:center;padding:0;display:grid}.kbd button.wide{max-width:var(--size-key-wide);flex:1.5 1 0}.stats{justify-content:center;gap:var(--space-6) var(--space-20);margin-top:var(--space-40);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);flex-wrap:wrap;display:flex}.stats span{align-items:center;gap:var(--space-4);display:inline-flex}.stats svg{width:var(--size-15);height:var(--size-15)}.stats b{color:var(--ink);font-weight:var(--weight-medium)}.stats .s-ok svg{color:var(--good)}.stats .s-streak svg{color:var(--red)}.stats .s-best svg{color:var(--blue)}.actions .links{justify-content:center;gap:0 var(--space-8);flex-wrap:wrap;display:flex}.example-slot{max-width:var(--layout-page);margin:0 auto}.practice-summary{width:100%;max-width:var(--layout-page);margin:var(--space-40) auto 0}.practice-summary .stats{margin-top:var(--space-8)}.session-line{gap:var(--space-4);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);flex-direction:column;display:flex}.session-rule{height:var(--size-2);background:var(--rule)}.session-rule span{background:var(--blue);width:0;height:100%;transition:width var(--duration-300);display:block}.session-row{justify-content:space-between;align-items:center;gap:var(--space-8);min-height:var(--size-44);display:flex}.session-line.is-games .session-row{justify-content:center}.session-count{white-space:nowrap;flex:none}.session-count b{color:var(--ink);font-weight:var(--weight-medium)}#finishSession{flex:none;padding-right:0}#play.is-done>.stage{width:100%;max-width:var(--layout-page);min-height:0;padding:var(--space-36) 0;text-align:left;margin:0 auto}#play.is-done #answerArea{min-height:0}#play.is-done .feedback{display:none}#play.is-done .actions{justify-content:flex-start;align-items:center;gap:var(--space-20);margin-top:var(--space-26);flex-direction:row-reverse;min-height:0}#play.is-done .prompt{font-size:var(--text-answer);font-style:normal}.done-words{max-height:calc(var(--size-320) + var(--space-20));margin:var(--space-26) 0 0;overscroll-behavior:contain;scrollbar-width:thin;padding:0;list-style:none;overflow-y:auto}.done-words li{grid-template-columns:var(--size-18) minmax(0, 2fr) minmax(0, 3fr) auto var(--size-64);align-items:baseline;gap:var(--space-8);padding:var(--space-8) 0;border-bottom:var(--border-thin) solid var(--rule);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);display:grid}.done-words li:last-child{border-bottom:0}.done-mark{font-weight:var(--weight-bold)}.done-mark.exact{color:var(--good)}.done-mark.wrong{color:var(--miss)}.done-word{color:var(--ink);font-family:var(--serif);font-size:var(--text-feedback);font-weight:var(--weight-bold);text-align:left;overflow-wrap:anywhere;cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}.done-word:hover{text-underline-offset:var(--space-3);text-decoration:underline}.done-new{margin-left:var(--space-6);color:var(--red);font-size:var(--text-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase}.done-when{text-align:right;white-space:nowrap}.done-when.soon{color:var(--ink)}.done-level{gap:var(--space-2);align-self:center;display:flex}.done-level i{width:var(--space-5);height:var(--size-10);border-radius:var(--radius-inner);background:var(--rule)}.done-level i.on{background:var(--good)}.dialogues{margin:var(--space-12) 0 0;padding:0;list-style:none}.dialogues a{align-items:center;gap:var(--space-14);width:100%;padding:var(--space-16) 0;border:0;border-bottom:var(--border-thin) solid var(--rule);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.d-art{width:var(--size-64);height:var(--size-64);border-radius:var(--radius-round);object-fit:cover}.d-title{font-size:var(--text-hint);font-weight:var(--weight-bold);display:block}.d-person{margin-left:var(--space-8);color:var(--ink)}.d-en{margin-top:var(--space-4);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);display:block}.dialogues a:hover .d-title{color:var(--blue)}.d-meta{justify-content:flex-end;align-items:center;gap:var(--space-10);font-family:var(--sans);font-size:var(--text-micro);color:var(--muted);flex-wrap:wrap;display:flex}.d-meta>span{align-items:center;gap:var(--space-4);display:inline-flex}.d-meta svg{width:var(--size-14);height:var(--size-14)}.talk-bar{align-items:center;gap:var(--space-8);margin-top:var(--space-10);display:flex}.talk-bar .ib{margin-left:calc(var(--space-10) * -1);color:var(--ink);flex:none}#talk .chat-title{min-width:0;font-family:var(--serif);font-size:var(--text-choice);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:var(--ink);text-transform:none;white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;overflow:hidden}.talk-intro{grid-template-rows:1fr;display:grid}.talk-intro>div{min-height:0;overflow:hidden}#talkChat.scrolled .talk-intro{grid-template-rows:0fr}.chat-with{margin:var(--space-8) 0 0;font-family:var(--sans);font-size:var(--text-small);color:var(--muted)}.talk-toolbar{align-items:center;gap:var(--space-4);margin-top:var(--space-12);border-bottom:var(--border-thin) solid var(--rule);padding-bottom:var(--space-8);display:flex}.talk-tabs{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-small);background:color-mix(in srgb, var(--ink) 5%, var(--bg));display:inline-flex}.talk-action{align-items:center;gap:var(--space-6);min-height:var(--size-28);padding:var(--space-4) var(--space-12);color:var(--muted);border-radius:var(--radius-small);font-family:var(--sans);font-size:var(--text-small);cursor:pointer;background:0 0;border:0;display:inline-flex}.talk-action svg{width:var(--size-18);height:var(--size-18)}.talk-action[aria-pressed=true]{color:var(--ink);background:var(--bg)}.talk-spacer{flex:1}.talk-translation{padding:0 var(--space-8);text-decoration:none}.talk-translation[aria-pressed=true]{color:var(--blue)}.talk-audio-status:empty{display:none}.talk-audio-status{min-height:var(--space-20);margin:var(--space-4) 0 0;font-size:var(--text-caption)}.chat{min-height:var(--talk-stage-min);overscroll-behavior:contain;scrollbar-width:none;overflow-anchor:none;flex:auto;margin:0;padding:0;list-style:none;position:relative;overflow-y:auto}.chat::-webkit-scrollbar{display:none}.line{align-items:flex-end;gap:var(--space-8);padding:var(--space-10) var(--space-4);border:0;display:flex}.line.you{flex-direction:row-reverse}.line-person{text-align:left;cursor:pointer;color:var(--muted);font-family:var(--sans);font-size:var(--text-caption);overflow-wrap:anywhere;background:0 0;border:0;padding:0;display:block}.line.you .line-person{color:var(--blue)}.line-body{min-width:0;max-width:calc(100% - var(--size-44));padding:var(--space-8) var(--space-12) var(--space-12);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-card) var(--radius-card) var(--radius-card) var(--radius-small);background:color-mix(in srgb, var(--ink) 3%, var(--bg))}.line.you .line-body{background:color-mix(in srgb, var(--blue) 9%, var(--bg));border-color:color-mix(in srgb, var(--blue) 18%, var(--rule));border-radius:var(--radius-card) var(--radius-card) var(--radius-small) var(--radius-card)}.line-speech{text-align:left;font-family:var(--serif);font-size:var(--text-hint);line-height:var(--leading-feedback);color:var(--ink);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;padding:0;display:block}.line-speech:hover{color:var(--blue)}.line-en{margin:var(--space-6) 0 0;font-family:var(--sans);font-size:var(--text-small);line-height:var(--leading-feedback);color:var(--muted)}.line.is-playing .line-body{border-color:var(--blue)}.line.is-playing .line-speech{color:var(--blue)}.line.missed .line-person{color:var(--miss)}.line-head{justify-content:space-between;align-items:center;gap:var(--space-12);margin-bottom:var(--space-2);display:flex}.line .line-listen{width:var(--size-28);height:var(--size-28);margin-right:calc(var(--space-6) * -1);flex:none}.line-listen svg{width:var(--size-14);height:var(--size-14)}.reply{margin-top:var(--space-16);scroll-margin-bottom:var(--space-48)}.reply-heading{justify-content:space-between;align-items:center;gap:var(--space-12);margin-bottom:var(--space-10);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);display:flex}.reply-heading>:first-child{font-weight:var(--weight-medium);color:var(--blue)}.task{font-size:var(--text-feedback);line-height:var(--leading-feedback);margin:0}.choices.lines{margin:var(--space-18) 0 0;grid-template-columns:1fr;max-width:none}.choices.lines button{text-align:left;font-size:var(--text-hint);padding:var(--space-12);justify-content:flex-start}.reply .answer{margin-top:var(--space-18)}#mic{width:var(--size-mic);height:var(--size-mic);margin:var(--space-20) auto var(--space-10);color:var(--blue);background:color-mix(in srgb, var(--blue) 8%, transparent);display:grid}#mic svg{width:var(--size-28);height:var(--size-28)}#mic.listening{color:var(--on-accent);background:var(--red)}.speech-note{text-align:center;font-family:var(--sans);font-size:var(--text-caption);color:var(--muted)}.reveal{margin:var(--space-14) 0 0;color:var(--blue);font-size:var(--text-feedback)}#talkFeedback{min-height:var(--space-20);margin:var(--space-12) 0 0;text-align:left;font-family:var(--sans);font-size:var(--text-small);line-height:var(--leading-feedback)}#talkFeedback:empty{visibility:hidden}#talkFeedback .wrong{color:var(--miss)}#talkFeedback .correct{color:var(--good)}#talkActions{min-height:var(--size-44);justify-content:flex-start;align-items:center;gap:var(--space-8);margin-top:var(--space-16);flex-flow:wrap;display:flex}#talkActions button{align-items:center;gap:var(--space-6);display:inline-flex}#talkActions svg{width:var(--size-18);height:var(--size-18)}.confirmed-line{font-size:var(--text-answer);margin:0}.talk-score{font-family:var(--sans);font-size:var(--text-small);color:var(--muted);margin:0}.talk-score b{margin-bottom:var(--space-8);font-family:var(--serif);font-size:var(--text-letter);color:var(--ink);display:block}.talk-score b span{color:var(--muted);font-size:var(--text-feedback);font-weight:var(--weight-normal)}.missed-lines{margin:var(--space-18) 0;padding:0;list-style:none}.missed-lines li{justify-content:space-between;align-items:center;gap:var(--space-12);padding:var(--space-12) 0;border-bottom:var(--border-thin) solid var(--rule);display:flex}.missed-en{margin-top:var(--space-4);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);display:block}#reply .choices button:disabled{opacity:1;cursor:default}#reply.is-confirmed .choices button:not(.selected){color:var(--muted)}#reply .choices button.selected{color:var(--good);border-color:var(--good);background:color-mix(in srgb, var(--good) 7%, transparent)}#reply .choices button.selected kbd{border:0;font-size:0}#reply .choices button.selected kbd:after{content:"✓";font-size:var(--text-body)}#reply .answer input[readonly]{color:var(--good);border-color:var(--good)}#talkKbd[inert]{opacity:var(--opacity-disabled)}.line-enter{animation:talk-line-in var(--duration-300) ease-out both}.turn-enter{animation:talk-turn-in var(--duration-200) ease-out}.choices button.selected{animation:talk-answer-in var(--duration-250) ease-out}.talk-intro{transition:grid-template-rows var(--duration-150) ease-out}#talkChat.scrolled .talk-intro{transition-duration:var(--duration-250)}#talkListen[aria-label=Stop\ audio] svg{animation:wave var(--duration-900) infinite}@keyframes talk-line-in{0%{opacity:0;transform:translateY(var(--space-8))}to{opacity:1;transform:translateY(0)}}@keyframes talk-turn-in{0%{opacity:.5;transform:translateY(var(--space-4))}to{opacity:1;transform:translateY(0)}}@keyframes talk-answer-in{0%{transform:var(--motion-scale-0-98)}to{transform:scale(1)}}.app:has(#talk:not([hidden]) #talkChat:not([hidden])){height:100dvh;overflow:hidden}.app>#talk:has(#talkChat:not([hidden])){overscroll-behavior:contain;flex-direction:column;flex:auto;min-height:0;padding-bottom:0;display:flex;overflow-y:auto}#talkChat{flex-direction:column;flex:auto;min-height:0;display:flex}.person-avatar{border-radius:var(--radius-round);background:var(--rule);cursor:pointer;border:0;flex:none;padding:0;display:block;overflow:hidden}.person-avatar img{object-fit:cover;width:100%;height:100%;display:block}.talk-cast{flex:none;align-items:center;display:flex}.cast-partner{width:var(--size-32);height:var(--size-32)}.cast-you{width:var(--size-28);height:var(--size-28);margin-left:calc(var(--space-8) * -1);outline:var(--space-2) solid var(--bg)}.persona-link{gap:var(--space-8);margin-top:var(--space-8);color:var(--ink);font-family:var(--sans);font-size:var(--text-caption);cursor:pointer;background:0 0;border:0;flex-wrap:wrap;padding:0;display:inline-flex}.persona-link span{color:var(--muted)}.persona-link:hover,.line-person:hover{text-decoration:underline}.line-avatar{width:var(--size-32);height:var(--size-32);margin-bottom:var(--space-2)}.line.is-playing .line-avatar{outline:var(--border-strong) solid var(--blue);outline-offset:var(--space-2)}.persona-sheet{max-width:var(--layout-persona);text-align:center;padding:var(--space-26)}.persona-close{margin:0 0 var(--space-4);justify-content:flex-end;display:flex}.persona-portrait{width:var(--size-132);height:var(--size-132);object-fit:cover;border-radius:var(--radius-round);margin:0 auto var(--space-16);display:block}.persona-sheet h2{font-family:var(--serif);font-size:var(--text-answer);font-weight:var(--weight-bold);margin:0}.persona-sheet p{font-family:var(--sans);font-size:var(--text-small);line-height:var(--leading-feedback);margin:var(--space-16) 0 0}.persona-sheet .persona-role{margin-top:var(--space-6);color:var(--muted)}.persona-sheet .persona-manner{color:var(--muted)}.reading-library{margin:var(--space-12) 0 0;padding:0;list-style:none}.reading-library a{align-items:baseline;gap:0 var(--space-12);width:100%;padding:var(--space-14) var(--space-4);border:0;border-bottom:var(--border-thin) solid var(--rule);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;grid-template-columns:auto 1fr auto;display:grid}.reading-library a:hover .reading-title [lang=ru]{text-decoration:underline}.reading-thumb{width:var(--size-56);height:var(--size-56);object-fit:cover;border-radius:var(--radius-card);background:var(--rule);grid-row:1/span 2;align-self:center}.reading-title{font-weight:var(--weight-bold);font-size:var(--text-hint)}.reading-en{margin-left:var(--space-8);font-family:var(--sans);font-weight:400;font-size:var(--text-small);color:var(--muted)}.reading-sub{font-family:var(--sans);font-size:var(--text-small);color:var(--muted);grid-area:2/2}.reading-meta{align-self:center;gap:var(--space-12);font-family:var(--sans);font-size:var(--text-micro);color:var(--muted);white-space:nowrap;grid-area:1/3/span 2;display:flex}.reading-meta>span{align-items:center;gap:var(--space-4);display:inline-flex}.reading-meta svg{width:var(--size-14);height:var(--size-14)}.reading-art{margin:0 0 var(--space-12)}.reading-art img{width:100%;max-height:var(--size-320);object-fit:cover;border-radius:var(--radius-card);display:block}.reading-music[aria-pressed=true]{color:var(--blue)}.reading-source i{font-style:italic}.reading-back{margin-top:var(--space-14);padding-left:0;text-decoration:none;display:block}.reading-header{margin:var(--space-26) 0 var(--space-12)}.reading-header h1{margin:var(--space-4) 0;font-size:var(--text-answer);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.reading-author,.reading-source{font-family:var(--sans);font-size:var(--text-small);color:var(--muted);margin:0}.reading-tools{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.reading-tools .ib{color:var(--ink)}.reading-tools .control{font-family:var(--sans);font-size:var(--text-small)}.reading-tools .control:disabled{opacity:var(--opacity-disabled);cursor:default}.reading-spacer{flex:1}.reading-toggle{font-weight:var(--weight-medium);text-decoration:none}.reading-toggle[aria-pressed=true]{color:var(--blue)}.reading-poem{margin:var(--space-12) 0 var(--space-36)}.reading-stanza+.reading-stanza{margin-top:var(--space-20)}.reading-line{border-left:var(--border-strong) solid transparent;padding:var(--space-8) 0 var(--space-8) var(--space-12)}.reading-line.is-playing{border-color:var(--blue)}.reading-line.is-playing>button,.reading-line>button:hover{color:var(--blue)}.reading-line>button{text-align:left;cursor:pointer;font-size:var(--text-choice);line-height:var(--leading-feedback);background:0 0;border:0;padding:0;display:block}.reading-latin,.reading-translation{margin:var(--space-2) 0 0;font-family:var(--sans);font-size:var(--text-small);color:var(--muted);line-height:var(--leading-feedback)}.reading-latin{font-family:var(--serif);font-style:italic;font-size:var(--text-example)}.reading-translation-block{margin:0 0 var(--space-36) var(--space-12);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);line-height:var(--leading-feedback)}.reading-translation-block p{margin:0 0 var(--space-12)}.reading-line mark{color:var(--miss);text-underline-offset:var(--space-4);background:0 0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}#readingStatus{min-height:0;margin:0 0 var(--space-16)}#readingPractice{border-top:var(--border-thin) solid var(--rule);padding-top:var(--space-20)}#readingPractice h2{margin-top:0}#readingPractice .note{margin-top:var(--space-6)}#readingPractice audio{width:100%;margin-top:var(--space-16);display:block}.reading-scores{gap:var(--space-26);margin:var(--space-26) 0 var(--space-16);flex-wrap:wrap;display:flex}.reading-scores dt{font-family:var(--sans);font-size:var(--text-small);color:var(--muted)}.reading-scores dd{margin:var(--space-6) 0 0;font-size:var(--text-answer)}.reading-scores dd span{font-size:var(--text-small);color:var(--muted)}.reading-issues{padding-left:var(--space-20);line-height:var(--leading-feedback)}.reading-source{margin-top:var(--space-26)}.reading-source a{color:inherit}.w{text-underline-offset:var(--space-4);-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.w:hover{-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule)}.word-popover{--tier:var(--rule);z-index:20;width:max-content;max-width:min(var(--layout-popover), calc(100dvw - var(--space-16)));padding:var(--space-10) var(--space-14) var(--space-10) var(--space-12);border-left:var(--border-strong) solid var(--tier);border-radius:var(--radius-small);background:var(--bg);box-shadow:var(--shadow-popover);font-family:var(--serif);line-height:var(--leading-feedback);color:var(--ink);position:fixed}.word-popover[data-tier=core]{--tier:var(--blue)}.word-popover[data-tier=common]{--tier:var(--ink)}.word-popover[data-tier=extended]{--tier:var(--muted)}.word-popover p{margin:0}.word-popover-head{align-items:baseline;column-gap:var(--space-6);flex-wrap:wrap;display:flex}.word-popover-word{color:inherit;font:inherit;font-size:var(--text-hint);font-weight:var(--weight-bold);background:0 0;border:0;padding:0}button.word-popover-word{cursor:pointer;text-underline-offset:var(--space-3);-webkit-text-decoration:underline #0000;text-decoration:underline #0000}button.word-popover-word:hover,button.word-popover-word:focus-visible{text-decoration-color:currentColor}.word-popover-form,.word-popover-arrow,.word-popover-lat{color:var(--muted);font-size:var(--text-small)}.word-popover-def{margin-top:var(--space-4);font-size:var(--text-small)}.word-popover-def+.word-popover-def{margin-top:var(--space-2)}.word-popover-def i{color:var(--muted)}.word-popover-meta{justify-content:space-between;align-items:baseline;gap:var(--space-16);margin-top:var(--space-8);font-family:var(--sans);font-size:var(--text-micro);color:var(--muted);display:flex}.word-popover-tier{letter-spacing:var(--tracking-caps);font-variant-caps:all-small-caps;font-size:var(--text-small)}.word-popover[data-tier=core] .word-popover-tier{color:var(--blue)}.word-popover-meta a{color:inherit;text-underline-offset:var(--space-3)}.word-popover-meta a:hover{color:var(--ink)}.word-popover-actions{margin-top:var(--space-10)}.word-popover-listen{min-height:var(--size-32);padding:0 var(--space-14);border-radius:var(--radius-pill);background:var(--blue);color:var(--on-accent);font-family:var(--sans);font-size:var(--text-small);font-weight:var(--weight-medium);cursor:pointer;touch-action:manipulation;border:0}.word-popover.brief{padding:var(--space-4) var(--space-10);border-left-width:var(--border-thin);box-shadow:var(--shadow-popover)}.word-popover-gloss{font-size:var(--text-small)}.word-popover-pending{color:var(--muted)}.word-popover-also{margin-top:var(--space-4);font-size:var(--text-small);color:var(--muted)}.word-popover-also i{color:var(--muted)}.word-popover-alt{color:var(--ink);font:inherit;font-weight:var(--weight-bold);cursor:pointer;text-underline-offset:var(--space-3);background:0 0;border:0;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.word-popover-alt:hover,.word-popover-alt:focus-visible{text-decoration-color:currentColor}.word-popover-grammar{margin-top:var(--space-2);font-family:var(--sans);font-size:var(--text-micro);color:var(--muted)}.word-popover-case{color:var(--ink);font:inherit;cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:var(--space-3);background:0 0;border:0;padding:0}.word-popover-case:hover,.word-popover-case:focus-visible{text-decoration-color:currentColor}.word-popover-grammar .word-popover-alt{font-family:var(--serif);font-size:var(--text-small)}.word-popover-senses{margin:var(--space-4) 0 0;padding-left:var(--space-18);font-size:var(--text-small)}.word-popover-senses li+li{margin-top:var(--space-2)}#list .list-head{align-items:center;gap:var(--space-8);margin-top:var(--space-18);display:flex}#list .search{min-width:0;font-family:var(--serif);font-size:var(--text-feedback);flex:1}.list-tier{max-width:50%;min-height:var(--size-38);padding:var(--space-6) var(--space-8);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);background:var(--bg);font-family:var(--sans);font-size:var(--text-small);cursor:pointer;flex-shrink:0}.list-empty .text-btn{min-height:0;font-size:inherit;padding:0}#listBody tr.lexicon td.ru{font-weight:var(--weight-normal)}#listBody tr.rare td.ru{color:var(--muted)}td.ru{font-weight:var(--weight-bold);font-size:var(--text-hint)}td.lat{font-style:italic}td.en{color:var(--muted);font-family:var(--sans);font-size:var(--text-small)}td.play{width:var(--size-28);text-align:right}td.play button{cursor:pointer;color:var(--muted);padding:var(--space-2);background:0 0;border:0}td.play button:hover{color:var(--ink)}td.play svg{width:var(--size-15);height:var(--size-15);vertical-align:middle}td.rank{color:var(--muted);font-family:var(--sans);font-size:var(--text-micro);width:var(--size-28)}td.level{color:var(--muted);font-family:var(--sans);font-size:var(--text-micro)}#listBody tr{cursor:pointer}#listBody tr:hover td.ru{text-decoration:underline}.badge{font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-normal);color:var(--muted)}td.strength{width:var(--size-18)}.dot{--strength:0;width:var(--size-10);height:var(--size-10);border-radius:var(--radius-round);background:var(--good);opacity:calc(var(--opacity-unavailable) + var(--strength) * (1 - var(--opacity-unavailable)));display:inline-block}.dot.unseen{border:var(--border-thin) solid var(--rule);opacity:var(--opacity-full);background:0 0}.more{margin:var(--space-18) auto 0;display:flex}.levels th,.levels td{text-align:left;font-family:var(--sans);font-size:var(--text-small)}.levels thead th{color:var(--muted);font-weight:var(--weight-normal)}.levels td{color:var(--muted)}.levels td b{color:var(--ink);font-weight:var(--weight-medium)}.activity{gap:var(--space-2);margin-top:var(--space-12);grid-template-columns:repeat(30,1fr);display:grid}.activity .day{--activity:0;height:var(--size-activity);border-radius:var(--radius-small);background:var(--good);opacity:calc(var(--opacity-faint) + var(--activity) * (1 - var(--opacity-faint)))}.activity .day.empty{background:var(--rule);opacity:var(--opacity-full)}.activity-axis{margin-top:var(--space-6);font-family:var(--sans);font-size:var(--text-micro);color:var(--muted);justify-content:space-between;display:flex}.setting{justify-content:space-between;align-items:center;gap:var(--space-16);padding:var(--space-14) 0;border-bottom:var(--border-thin) solid var(--rule);display:flex}label.setting{cursor:pointer}.setting>.text-btn{white-space:nowrap;flex:none}.setting-text{gap:var(--space-2);min-width:0;font-family:var(--sans);flex-direction:column;display:flex}.setting-text b{font-size:var(--text-label);font-weight:var(--weight-medium)}.setting-text span{font-size:var(--text-small);color:var(--muted)}.setting.stack{align-items:stretch;gap:var(--space-10);flex-direction:column}.inline{gap:var(--space-8);display:flex}.inline input{min-width:0;min-height:var(--size-44);padding:0 var(--space-16);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);font-family:var(--sans);font-size:var(--text-small);background:0 0;flex:1}.inline input:focus{border-color:var(--ink);outline:none}.switch{appearance:none;width:var(--size-switch-width);height:var(--size-switch-height);border-radius:var(--radius-pill);background:var(--rule);cursor:pointer;transition:background-color var(--duration-200);flex:none;margin:0;position:relative}.switch:after{content:"";top:var(--space-3);left:var(--space-3);width:var(--size-knob);height:var(--size-knob);border-radius:var(--radius-round);background:var(--bg);transition:transform var(--duration-200);position:absolute}.switch:checked{background:var(--blue)}.switch:checked:after{transform:translateX(var(--size-16))}.stepper{border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);flex:none;align-items:center;display:inline-flex}.stepper button{width:var(--size-38);height:var(--size-38);border-radius:var(--radius-small);font-family:var(--sans);font-size:var(--text-feedback);cursor:pointer;touch-action:manipulation;background:0 0;border:0}.stepper button:disabled{opacity:var(--opacity-disabled);cursor:default}.stepper input{width:var(--size-44);text-align:center;font-family:var(--sans);font-size:var(--text-body);appearance:textfield;background:0 0;border:0;padding:0}.stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.setting-select{appearance:none;width:100%;min-height:var(--size-38);min-width:0;padding:var(--space-6) var(--size-32) var(--space-6) var(--space-8);background:var(--bg);color:var(--ink);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);font-family:var(--sans);font-size:var(--text-small)}.setting-select-control{min-width:0;max-width:55%;display:inline-flex;position:relative}.setting-select-control>svg{right:var(--space-8);width:var(--size-14);height:var(--size-14);pointer-events:none;color:var(--muted);position:absolute;top:50%;transform:translateY(-50%)}.setting-select-control:has(select:disabled)>svg{opacity:var(--opacity-disabled)}.voices-head{justify-content:space-between;align-items:center;gap:var(--space-16);display:flex}.cast-voices{gap:var(--space-8);flex-wrap:wrap;display:flex}.cast-voice{width:var(--size-38);height:var(--size-38);outline:var(--border-thin) solid transparent;outline-offset:var(--space-2);transition:outline-color var(--duration-200);position:relative;overflow:visible}.cast-voice img{border-radius:var(--radius-round)}.cast-voice:hover,.cast-voice:focus-visible{outline-color:var(--rule)}.cast-voice.playing{outline:var(--space-2) solid var(--blue)}.voices-setting .note:empty{display:none}.inline input[type=password]{flex:0 1 var(--size-pin)}.nf-card{max-width:var(--layout-choices);padding:var(--space-48) 0 0;text-align:center;margin:0 auto}.nf-tag{margin-bottom:var(--space-12);padding:var(--space-2) var(--space-8);border-radius:var(--radius-small);background:var(--red);color:var(--on-accent);font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);display:inline-block}.nf-word{font-size:var(--text-letter);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin:0}.nf-ipa{margin:var(--space-8) 0 0;color:var(--muted);font-size:var(--text-meta)}.nf-gloss{margin:var(--space-4) 0 0;color:var(--muted);font-size:var(--text-hint);font-style:italic}.nf-path{margin-top:var(--space-26);overflow-wrap:anywhere}.nf-path code{font-family:var(--sans);color:var(--ink)}#notFound .nf-next{margin:var(--space-36) 0 var(--space-12)}.nf-choices{gap:var(--space-8);text-align:left;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.nf-choices a{align-items:center;gap:var(--space-12);padding:var(--space-14) var(--space-16);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-small);color:var(--muted);font-family:var(--sans);font-size:var(--text-small);touch-action:manipulation;text-decoration:none;display:flex}.nf-choices a:hover{border-color:var(--ink)}.nf-choices svg{color:var(--ink);flex:none}.nf-choices span{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.nf-choices b{color:var(--ink);font-size:var(--text-label);font-weight:var(--weight-medium)}.sheet{width:min(var(--layout-sheet), calc(100% - var(--space-16) * 2));border:var(--border-thin) solid var(--rule);border-radius:var(--radius-card);background:var(--bg);color:var(--ink);padding:var(--space-20)}.sheet::backdrop{background:var(--ink);opacity:var(--opacity-disabled)}.sheet-head{align-items:center;gap:var(--space-6);margin:0;display:flex}.sheet-head h2{font-size:var(--text-answer);letter-spacing:var(--tracking-tight);flex:1;margin:0}.sheet-head .ib{color:var(--ink)}.sheet-lat{margin:var(--space-8) 0 0;font-size:var(--text-feedback)}.sheet-meta{margin:var(--space-6) 0 0;font-family:var(--sans);font-size:var(--text-small);color:var(--muted)}.word-memory{margin-top:var(--space-20);font-family:var(--sans);font-size:var(--text-small)}.memory-period,.memory-heading{justify-content:space-between;gap:var(--space-8);display:flex}.memory-period{margin:0 0 var(--space-14);color:var(--muted)}.memory-skills{gap:var(--space-16);margin:0;padding:0;list-style:none;display:grid}.memory-heading span,.memory-next{color:var(--muted)}.memory-skill{min-width:0}.memory-skill meter{width:100%;accent-color:var(--blue);margin-top:var(--space-4);display:block}.memory-next{margin:var(--space-4) 0 var(--space-8);font-size:var(--text-caption)}.memory-calendar{grid-template-columns:repeat(14, minmax(var(--size-switch-height), 1fr));gap:var(--space-3);padding-bottom:var(--space-4);display:grid;overflow-x:auto}.memory-day{min-height:var(--size-switch-height);border:var(--border-thin) solid var(--rule);border-radius:var(--radius-inner);background:var(--bg);color:var(--muted);font-size:var(--text-micro);cursor:pointer;padding:0}.memory-day.exact{background:var(--good);border-color:var(--good);color:var(--on-accent)}.memory-day.close{background:var(--blue);border-color:var(--blue);color:var(--on-accent)}.memory-day.miss{background:var(--miss);border-color:var(--miss);color:var(--on-accent)}.memory-day[aria-pressed=true]{box-shadow:inset 0 0 0 var(--border-strong) var(--ink)}.memory-legend{gap:var(--space-12);margin:var(--space-12) 0 0;color:var(--muted);font-size:var(--text-caption);flex-wrap:wrap;display:flex}.memory-legend .exact{color:var(--good)}.memory-legend .close{color:var(--blue)}.memory-legend .miss{color:var(--miss)}.memory-detail,.memory-note{margin:var(--space-8) 0 0;color:var(--muted);font-size:var(--text-caption);line-height:var(--leading-feedback)}.memory-detail{min-height:var(--size-44)}.forms{margin-top:var(--space-16);font-size:var(--text-forms)}.forms th{text-align:left;font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-normal);color:var(--muted);padding:var(--space-6) var(--space-4);border-bottom:var(--border-thin) solid var(--rule)}.forms td{padding:var(--space-6) var(--space-4)}.forms tr.section th{padding-top:var(--space-14);color:var(--ink);font-weight:var(--weight-bold)}#sheetForms{overflow-x:auto}.forms th,.forms td{white-space:nowrap}.forms td[colspan]{white-space:normal}#sheetExample .example{margin-top:var(--space-16);text-align:left}#sheetExample .example [lang=ru] .ib{margin-left:calc(var(--space-10) * -1)}.sheet-senses{margin:var(--space-10) 0;padding-left:var(--space-20);font-size:var(--text-small);line-height:var(--leading-feedback)}.sheet-senses li+li{margin-top:var(--space-4)}.sheet-senses i{color:var(--muted)}.sheet-meta a{color:inherit}.sheet-meaning{margin:var(--space-10) 0 0;font-size:var(--text-feedback);line-height:var(--leading-feedback)}#sheetMeanings .sheet-senses{font-size:var(--text-feedback)}.forms td.is-form{color:var(--blue);font-weight:var(--weight-bold);box-shadow:inset var(--border-strong) 0 0 var(--blue)}.words-picker{max-height:min(var(--layout-picker), calc(100dvh - var(--space-32)));padding-bottom:var(--space-14);flex-direction:column;display:flex}.words-picker:not([open]){display:none}.words-picker .search{margin-top:var(--space-10);padding:var(--space-8) var(--space-2);font-family:var(--sans);font-size:var(--text-body)}.picker-groups{min-height:0;margin-top:var(--space-6);flex:1;overflow-y:auto}.picker-groups fieldset{margin:var(--space-14) 0 0;border:0;padding:0}.picker-groups legend{font-family:var(--sans);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--muted);padding:0}.check{align-items:center;gap:var(--space-10);min-height:var(--size-38);font-family:var(--sans);font-size:var(--text-small);cursor:pointer;border-bottom:var(--border-thin) solid var(--rule);display:flex}.check input{width:var(--size-16);height:var(--size-16);accent-color:var(--blue);margin:0}.check span{flex:1}.check em{color:var(--muted);font-style:normal;font-size:var(--text-caption)}.picker-foot{justify-content:space-between;align-items:center;gap:var(--space-12);padding-top:var(--space-14);border-top:var(--border-thin) solid var(--rule);font-family:var(--sans);font-size:var(--text-small);color:var(--muted);display:flex}.words-picker .sheet-head h2{font-family:var(--sans);font-size:var(--text-feedback);font-weight:var(--weight-bold);letter-spacing:normal}body{transition:background-color var(--duration-300), color var(--duration-300)}.ib svg,.tabs svg{transition:transform var(--duration-250) var(--ease-icon)}.ib:hover svg,.tabs a:hover svg{transform:var(--motion-scale-1-12)}.ib:active svg{transform:var(--motion-scale-0-9)}.btn,.segmented button,.switch,.choices button{transition:border-color var(--duration-200), background-color var(--duration-200), color var(--duration-200)}.listen.speaking .w1{animation:wave var(--duration-900) infinite}.listen.speaking .w2{animation:wave var(--duration-900) var(--duration-150) infinite}.control.flip .glyph,#mode.flip,.list-tier.flip{animation:flip var(--duration-350) ease}#listBody.settle{animation:settle var(--duration-250) ease-out}.word-popover{transition:border-color var(--duration-200)}.pop svg{animation:pop var(--duration-450) var(--ease-pop)}.stats .s-streak.pop svg{animation:flicker var(--duration-600) ease}.feedback .result-mark{animation:pop var(--duration-400) var(--ease-pop)}.prompt.shake,.answer input.shake{animation:shake var(--duration-350)}.mic.listening svg{animation:wave var(--duration-900) infinite}@keyframes pop{0%{transform:var(--motion-scale-0-4)}60%{transform:var(--motion-scale-1-35)}to{transform:var(--motion-scale-1)}}@keyframes flicker{0%,to{transform:var(--motion-scale-1) rotate(0)}25%{transform:var(--motion-scale-1-3) rotate(var(--angle-negative-8))}50%{transform:var(--motion-scale-1-1) rotate(var(--angle-6))}75%{transform:var(--motion-scale-1-25) rotate(var(--angle-negative-3))}}@keyframes flip{0%{transform:rotateY(var(--angle-90))}to{transform:var(--motion-rotatey-0)}}@keyframes settle{0%{opacity:var(--opacity-dim);transform:translateY(var(--size-negative-2))}to{opacity:var(--opacity-full);transform:none}}@keyframes wave{0%,to{opacity:var(--opacity-disabled)}50%{opacity:var(--opacity-full)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translateX(var(--size-negative-6))}75%{transform:translateX(var(--size-6))}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media (min-width:960px){.app{grid-template-columns:var(--size-rail) minmax(0, var(--layout-page));column-gap:var(--space-48);max-width:none;padding-top:var(--space-26);place-content:start center;display:grid}.app>section{padding-bottom:var(--space-20);grid-area:1/2}.top{top:var(--space-26);height:calc(100dvh - var(--space-26) - var(--space-20));justify-content:flex-start;align-self:start;align-items:stretch;gap:var(--space-26);border-bottom:0;flex-flow:column;grid-area:1/1/3;padding:0;position:sticky}.brand{align-items:flex-start;gap:var(--space-2);padding:0 var(--space-10);flex-direction:column}.tabs{gap:var(--space-2);flex-direction:column;flex:1}.tabs a{justify-content:flex-start;gap:var(--space-10);width:100%;padding:var(--space-8) var(--space-10);font-size:var(--text-small);flex-direction:row}.tabs a.active:after{left:0;top:var(--space-10);bottom:var(--space-10);width:var(--size-2);height:auto;margin-left:0}.tabs .tab-sep{width:auto;height:var(--border-thin);margin:auto var(--space-10) var(--space-6);align-self:stretch}.tabs .abc{min-width:var(--size-18);white-space:nowrap;text-align:center;flex:none}.app:has(#talk:not([hidden]) #talkChat:not([hidden])){grid-template-rows:minmax(0,1fr);align-content:stretch}.app>#talk:has(#talkChat:not([hidden])){padding-bottom:0}.app>#play,.app>#notFound{min-height:calc(100dvh - var(--space-26) - var(--space-20));flex-direction:column;justify-content:center;padding-bottom:0;display:flex}.nf-card{padding-top:0}#play>.stage{min-height:var(--layout-practice-stage);position:relative}#play .tag{margin:0;position:absolute;top:0;left:50%;transform:translate(-50%)}.practice-summary{min-height:var(--layout-practice-summary);margin-top:var(--space-20)}.practice-summary .stats{min-height:var(--size-44);align-items:center}#play #answerArea{min-height:var(--layout-practice-answer);display:flow-root}}@media (max-width:640px){.tabs{z-index:10;background:var(--bg);border-top:var(--border-thin) solid var(--rule);padding:var(--space-4) var(--space-8) calc(var(--space-4) + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0}.tabs a,.tabs .tab-more{flex:1;width:auto}.tabs a.active:after,.tabs .tab-more.active:after{top:calc(var(--space-4) * -1);bottom:auto}.app{padding-bottom:calc(var(--size-tabbar) + env(safe-area-inset-bottom))}.top{padding-top:var(--space-14)}.app:has(#talk:not([hidden]) #talkChat:not([hidden])){padding-bottom:calc(var(--size-tabbar) + var(--space-12) + env(safe-area-inset-bottom))}.tabs .tab-sep{display:none}.tabs .tab-more{display:flex}.tabs .tab-group{padding:var(--space-8) var(--space-16);background:var(--bg);border-radius:var(--radius-card) var(--radius-card) 0 0;box-shadow:var(--shadow-popover);flex-direction:column;display:none;position:absolute;bottom:100%;left:0;right:0}.tabs.more-open .tab-group{display:flex}.tabs.more-open:before{content:"";background:var(--ink);height:100dvh;opacity:var(--opacity-disabled);position:absolute;bottom:100%;left:0;right:0}.tabs .tab-group a{justify-content:flex-start;gap:var(--space-14);width:auto;min-height:var(--size-56);border-bottom:var(--border-thin) solid var(--rule);color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-normal);border-radius:0;flex-direction:row;flex:none;padding:0}.tabs .tab-group a:last-child{border-bottom:0}.tabs .tab-group a.active{font-weight:var(--weight-bold)}.tabs .tab-group a.active:after{display:none}.tabs .tab-group a>:first-child{width:var(--size-28);white-space:nowrap;text-align:center;flex:none}.tabs .tab-group .tab-hint{font-size:var(--text-caption);color:var(--muted);margin-left:auto;display:block}.stage .feedback{margin-top:var(--space-10)}.app>#play:not([hidden]){flex-direction:column;flex:1 0 auto;padding-bottom:0;display:flex}#play #answerArea{min-height:calc(var(--layout-practice-answer) + var(--space-4));display:flow-root}#play .practice-summary{padding-top:var(--space-16);margin-top:auto}#play>.stage{padding-top:var(--space-36);position:relative}#play .tag{top:var(--space-8);margin:0;position:absolute;left:50%;transform:translate(-50%)}#play .choices{margin-top:var(--space-20)}#play .choices button{padding:var(--space-10) var(--space-8)}}@media (max-width:520px){.kbd button{height:var(--size-44)}#list td.rank,#list td.level,#list td.lat{display:none}.d-meta{gap:var(--space-4);flex-direction:column}.talk-action{padding:var(--space-4) var(--space-8)}.memory-calendar{grid-template-columns:repeat(7,minmax(0,1fr))}.memory-day{min-height:var(--size-28)}.control .name{display:none}#mode{font-size:0}#mode:before{content:attr(data-short);font-size:var(--text-small)}#play.is-done .actions{align-items:stretch;gap:var(--space-8);flex-direction:column}.nf-choices{grid-template-columns:minmax(0,1fr)}}@media (max-width:360px){.brand .ipa{display:none}.tabs a{font-size:var(--text-tab-compact)}}
