:root{--bg:#f6f7fb;--surface:#fff;--surface-2:#f0f2f8;--border:#e2e5ee;--text:#1b1f2a;--muted:#6b7280;--primary:#3b5bdb;--primary-hover:#2f4bc0;--primary-soft:#e7ecff;--success:#12844a;--success-soft:#e3f6ea;--danger:#c92a2a;--danger-soft:#fdeaea;--warning:#b7791f;--warning-soft:#fff4dc;--info:#0b7285;--info-soft:#e0f6fa;--mark:#fff3bf;--radius:12px;--shadow:0 1px 2px #1418280f, 0 4px 16px #1418280d;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, monospace}@media (prefers-color-scheme:dark){:root{--bg:#12141a;--surface:#1b1e27;--surface-2:#232735;--border:#2f3445;--text:#e8eaf1;--muted:#9aa1b4;--primary:#7b93ff;--primary-hover:#93a7ff;--primary-soft:#26304f;--success:#4ade80;--success-soft:#16302a;--danger:#ff7b7b;--danger-soft:#3a1f22;--warning:#f5c26b;--warning-soft:#3b2f18;--info:#67d4e6;--info-soft:#17323a;--mark:#4a4220;--shadow:0 1px 2px #0006}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);margin:0;font-size:16px;line-height:1.6}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0 0 .5em;line-height:1.25}h1{font-size:1.8rem}h2{font-size:1.4rem}h3{font-size:1.15rem}p{margin:0 0 .9em}code{font-family:var(--mono);background:var(--surface-2);border-radius:5px;padding:.1em .35em;font-size:.92em}mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 .15em}del{color:var(--danger);text-decoration:line-through}table{border-collapse:collapse;width:100%}button{font:inherit;cursor:pointer}input{font:inherit}.app-header{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.app-header__inner{flex-wrap:wrap;align-items:center;gap:1rem;max-width:1100px;margin:0 auto;padding:.6rem 1rem;display:flex}.brand{color:var(--text);align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.brand:hover{text-decoration:none}.nav{flex-wrap:wrap;gap:.25rem;margin-left:auto;display:flex}.nav a{color:var(--muted);border-radius:8px;padding:.35rem .7rem;font-size:.95rem;font-weight:500}.nav a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav a.active{background:var(--primary-soft);color:var(--primary)}.container{max-width:1100px;margin:0 auto;padding:1.5rem 1rem 4rem}.container--narrow{max-width:820px}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn--primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn--ghost{color:var(--primary);background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--primary-soft)}.btn--danger{color:var(--danger)}.btn--sm{border-radius:8px;padding:.35rem .7rem;font-size:.85rem}.btn--lg{padding:.75rem 1.5rem;font-size:1.05rem}.btn-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.card--link{color:inherit;transition:border-color .15s,transform .1s;display:block}.card--link:hover{border-color:var(--primary);text-decoration:none;transform:translateY(-2px)}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.muted{color:var(--muted)}.small{font-size:.875rem}.tag{background:var(--surface-2);color:var(--muted);border-radius:999px;margin-right:.3rem;padding:.1rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.tag--primary{background:var(--primary-soft);color:var(--primary)}.tag--success{background:var(--success-soft);color:var(--success)}.tag--danger{background:var(--danger-soft);color:var(--danger)}.tag--warning{background:var(--warning-soft);color:var(--warning)}.progress-bar{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.progress-bar>div{background:var(--primary);border-radius:999px;height:100%;transition:width .3s}.progress-bar--success>div{background:var(--success)}.topic-card__title{margin-bottom:.15rem;font-size:1.1rem;font-weight:700}.topic-card__ru{color:var(--muted);margin-bottom:.6rem;font-size:.9rem}.topic-card__summary{margin-bottom:.8rem;font-size:.92rem}.topic-card__meta{color:var(--muted);justify-content:space-between;margin-top:.4rem;font-size:.8rem;display:flex}.topic-layout{grid-template-columns:240px 1fr;align-items:start;gap:2rem;display:grid}@media (width<=800px){.topic-layout{grid-template-columns:1fr}.toc{position:static!important}}.toc{position:sticky;top:70px}.toc__list{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.toc__item a{color:var(--muted);border-radius:8px;align-items:center;gap:.5rem;padding:.35rem .6rem;font-size:.9rem;display:flex}.toc__item a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.toc__item a.active{background:var(--primary-soft);color:var(--primary)}.section{margin-bottom:2.5rem;scroll-margin-top:80px}.section__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.section__header h2{margin:0}.section__body h3{margin-top:1.4rem}.section__body ul,.section__body ol{margin:0 0 1em;padding-left:1.4rem}.section__body li{margin-bottom:.3em}.tbl-wrap{border:1px solid var(--border);border-radius:10px;margin:0 0 1.2em;overflow-x:auto}.tbl-wrap table{min-width:100%}.tbl-wrap th,.tbl-wrap td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.55rem .8rem}.tbl-wrap th{background:var(--surface-2);font-size:.9rem;font-weight:600}.tbl-wrap tr:last-child td{border-bottom:none}.tbl-caption{color:var(--muted);border-top:1px solid var(--border);padding:.5rem .8rem;font-size:.85rem}.examples{border-left:3px solid var(--primary);margin:0 0 1.2em;padding-left:1rem}.examples__title{margin-bottom:.4rem;font-size:.95rem;font-weight:600}.example{margin-bottom:.6rem}.example__en{font-size:1.02rem}.example__en--wrong{color:var(--danger);text-decoration:line-through;-webkit-text-decoration-color:var(--danger);text-decoration-color:var(--danger)}.example__ru{color:var(--muted);font-size:.9rem}.example__note{color:var(--info);font-size:.85rem}.formula{background:var(--surface-2);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:1rem;margin-bottom:.7rem;padding:.7rem 1rem;display:flex}.formula__label{min-width:2rem;color:var(--primary);font-weight:700}.formula__text{font-family:var(--mono);font-size:.95rem}.formula__example{color:var(--muted);width:100%;font-size:.9rem}.note{border:1px solid #0000;border-radius:10px;margin:0 0 1.2em;padding:.85rem 1rem}.note__title{margin-bottom:.25rem;font-weight:700}.note--tip{background:var(--success-soft);border-color:color-mix(in srgb, var(--success) 30%, transparent)}.note--warning{background:var(--danger-soft);border-color:color-mix(in srgb, var(--danger) 30%, transparent)}.note--compare{background:var(--info-soft);border-color:color-mix(in srgb, var(--info) 30%, transparent)}.note--rule{background:var(--warning-soft);border-color:color-mix(in srgb, var(--warning) 35%, transparent)}.compare{grid-template-columns:1fr 1fr;gap:1rem;margin:0 0 1.2em;display:grid}@media (width<=640px){.compare{grid-template-columns:1fr}}.compare__side{background:var(--surface-2);border-radius:10px;padding:.85rem 1rem}.compare__title{color:var(--primary);margin-bottom:.4rem;font-weight:700}.compare__side ul{margin:0;padding-left:1.2rem}.topic-actions{flex-wrap:wrap;gap:.75rem;margin:1rem 0 2rem;display:flex}.runner{max-width:760px;margin:0 auto}.runner__top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.runner__counter{color:var(--muted);font-size:.9rem}.exercise{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.exercise__type{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:flex}.exercise__prompt{margin-bottom:1rem;font-size:1.25rem;line-height:1.5}.exercise__hint{color:var(--muted);margin-bottom:.8rem;font-size:.9rem}.exercise__blank{border-bottom:2px solid var(--primary);text-align:center;min-width:4.5rem;padding:0 .3rem;display:inline-block}.exercise__input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:10px;outline:none;padding:.7rem .9rem;font-size:1.05rem}.exercise__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.exercise__input--ok{border-color:var(--success)}.exercise__input--bad{border-color:var(--danger)}.exercise__form{flex-wrap:wrap;gap:.6rem;display:flex}.exercise__form .exercise__input{flex:200px}.options{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.option{text-align:left;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;align-items:center;gap:.7rem;padding:.7rem 1rem;font-size:1.02rem;display:flex}.option:hover:not(:disabled){border-color:var(--primary)}.option__key{border:1px solid var(--border);width:26px;height:26px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:inline-flex}.option--selected{border-color:var(--primary);background:var(--primary-soft)}.option--correct{border-color:var(--success);background:var(--success-soft)}.option--wrong{border-color:var(--danger);background:var(--danger-soft)}.option:disabled{cursor:default}.words{background:var(--bg);border:1px dashed var(--border);border-radius:10px;flex-wrap:wrap;gap:.5rem;min-height:3rem;margin-bottom:.8rem;padding:.6rem;display:flex}.word{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:.4rem .8rem;font-size:1.02rem}.word:hover:not(:disabled){border-color:var(--primary)}.word--placed{background:var(--primary-soft);border-color:var(--primary)}.feedback{border-radius:10px;margin-top:1rem;padding:.9rem 1rem}.feedback--ok{background:var(--success-soft)}.feedback--bad{background:var(--danger-soft)}.feedback__title{margin-bottom:.25rem;font-weight:700}.feedback__answer{margin-bottom:.3rem;font-size:1.05rem}.feedback__expl{font-size:.95rem}.feedback__expl p:last-child{margin-bottom:0}.summary{text-align:center}.summary__score{margin:.5rem 0;font-size:3rem;font-weight:800}.mistake-list{text-align:left;flex-direction:column;gap:.6rem;margin-top:1.5rem;display:flex}.mistake{background:var(--surface-2);border-radius:10px;padding:.7rem .9rem;font-size:.95rem}.checkbox-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.4rem;margin:1rem 0;display:grid}.checkbox{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;padding:.5rem .7rem;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--primary)}.field{flex-direction:column;gap:.3rem;margin-bottom:1rem;display:flex}.field label{font-size:.9rem;font-weight:600}.field select,.field input[type=number]{border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;border-radius:8px;max-width:240px;padding:.5rem .7rem}.verb-card{text-align:center;padding:2rem 1.5rem}.verb-card__word{margin:.5rem 0;font-size:2.2rem;font-weight:800}.verb-card__forms{flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-top:1rem;font-size:1.2rem;display:flex}.verb-card__forms span{background:var(--surface-2);border-radius:8px;padding:.4rem .9rem}.search{border:1px solid var(--border);background:var(--surface);width:100%;max-width:360px;color:var(--text);border-radius:10px;margin-bottom:1rem;padding:.55rem .8rem}.empty{text-align:center;color:var(--muted);padding:3rem 1rem}.kbd{font-family:var(--mono);border:1px solid var(--border);background:var(--surface-2);border-bottom-width:2px;border-radius:5px;padding:.1em .4em;font-size:.8em}.btn--primary .kbd{color:#fff;background:#fff3;border-color:#fff6}
