.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius);font-family:inherit;font-weight:600;cursor:pointer;transition:background .15s ease,opacity .15s ease}.button:disabled{opacity:.5;cursor:not-allowed}.button_size_m{padding:10px 18px;font-size:15px}.button_size_l{padding:14px 24px;font-size:17px}@media (max-width: 480px){.button{min-width:44px;min-height:44px}.button_size_m{padding-right:14px;padding-left:14px}.button_size_l{width:100%;min-height:52px}}.button_variant_primary{background:var(--color-primary);color:#fff}.button_variant_primary:not(:disabled):hover{background:var(--color-primary-dark)}.button_variant_ghost{background:transparent;color:var(--color-primary)}.button_variant_ghost:not(:disabled):hover{background:#4f46e514}.text-field{width:100%;padding:12px 16px;font-family:inherit;font-size:16px;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);outline:none;transition:border-color .15s ease}.text-field:focus{border-color:var(--color-primary)}.text-field_invalid{border-color:var(--color-error)}@media (max-width: 480px){.text-field{min-height:48px}}.page-login{min-height:100%;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:calc(24px + var(--safe-top)) calc(24px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(24px + var(--safe-left))}.page-login__card{display:flex;flex-direction:column;gap:16px;width:100%;max-width:360px;padding:32px;background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow)}@media (max-width: 480px){.page-login{align-items:stretch;padding:calc(16px + var(--safe-top)) calc(14px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(14px + var(--safe-left))}.page-login__card{justify-content:center;max-width:none;min-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 32px);padding:24px;box-shadow:none}}.page-login__title{margin:0;font-size:28px;color:var(--color-primary)}.page-login__subtitle{margin:0;color:var(--color-muted)}.page-login__error{margin:0;color:var(--color-error);font-size:14px}.spinner{display:inline-flex;align-items:center;gap:10px;color:var(--color-muted)}.spinner__circle{width:22px;height:22px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spinner-spin .7s linear infinite}.spinner__label{font-size:15px}@keyframes spinner-spin{to{transform:rotate(360deg)}}.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px}.pagination__button{min-width:36px;height:36px;padding:0 10px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;font-family:inherit;font-size:14px;font-weight:600;color:var(--color-text);cursor:pointer}.pagination__button:disabled{opacity:.4;cursor:not-allowed}.pagination__button_active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.pagination__gap{color:var(--color-muted);padding:0 4px}@media (max-width: 480px){.pagination{gap:4px}.pagination__button{min-width:40px;height:40px;padding:0 8px}}.sort-control{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}.sort-control__label{font-size:13px;color:var(--color-muted)}.sort-control__option{border:1px solid var(--color-border);background:var(--color-surface);padding:6px 12px;border-radius:999px;font-family:inherit;font-size:13px;font-weight:600;color:var(--color-muted);cursor:pointer}.sort-control__option_active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media (max-width: 560px){.sort-control{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.sort-control::-webkit-scrollbar{display:none}.sort-control__label,.sort-control__option{flex:0 0 auto}.sort-control__option{min-height:36px}}.stat-row{display:flex;gap:14px;padding:14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.stat-row__image{flex-shrink:0;width:84px;height:84px;object-fit:cover;border-radius:10px;background:var(--color-bg)}.stat-row__info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.stat-row__head{display:flex;align-items:baseline;gap:8px}.stat-row__word{font-size:17px;font-weight:700;overflow-wrap:anywhere}.stat-row__pos{font-size:12px;color:var(--color-muted)}.stat-row__translation{color:var(--color-text);overflow-wrap:anywhere}.stat-row__tags{font-size:12px;color:var(--color-primary);overflow-wrap:anywhere}.stat-row__examples{display:flex;flex-direction:column;gap:2px;margin:4px 0 0;padding:0;list-style:none}.stat-row__example{display:flex;flex-direction:column;font-size:13px}.stat-row__example-de{color:var(--color-text)}.stat-row__example-ru{color:var(--color-muted)}@media (max-width: 560px){.stat-row{gap:10px;padding:10px}.stat-row__image{width:64px;height:64px;border-radius:8px}.stat-row__head{flex-wrap:wrap;gap:4px 6px}.stat-row__examples{display:none}}.stat-row__stats{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.stat-row__stat{padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:var(--color-bg);color:var(--color-muted)}.stat-row__stat_kind_correct{background:#16a34a1f;color:var(--color-success)}.stat-row__stat_kind_error{background:#dc26261a;color:var(--color-error)}.page-stats{display:flex;flex-direction:column;gap:16px;width:100%;max-width:620px;min-width:0}.page-stats__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}.page-stats__title{margin:0;font-size:22px;overflow-wrap:anywhere}.page-stats__count{color:var(--color-muted);font-size:14px}.page-stats__message{color:var(--color-muted);text-align:center}.page-stats__list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}@media (max-width: 560px){.page-stats{gap:12px;max-width:none}.page-stats__header{align-items:flex-start;flex-direction:column}.page-stats__title{font-size:20px}}.answer-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answer-choices__option{padding:16px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);font-family:inherit;font-size:16px;font-weight:600;color:var(--color-text);cursor:pointer;transition:border-color .15s ease,background .15s ease;overflow-wrap:anywhere}.answer-choices__option:hover{border-color:var(--color-primary);background:#4f46e50d}@media (max-width: 480px){.answer-choices{grid-template-columns:1fr;gap:8px}.answer-choices__option{min-height:52px;padding:12px 14px;text-align:left}}.answer-input{display:flex;flex-direction:column;gap:12px}.answer-input__actions{display:flex;gap:12px}.answer-input__submit{flex:1}@media (max-width: 720px){.answer-input{gap:10px}.answer-input__actions{flex-direction:column;gap:8px}.answer-input__actions .button{width:100%}}.card-result{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--radius);border:1px solid var(--color-border)}.card-result_correct{border-color:var(--color-success);background:#16a34a0f}.card-result__status{font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-error)}.card-result_correct .card-result__status{color:var(--color-success)}.card-result__word{font-size:24px;font-weight:700}.card-result__translation{color:var(--color-muted)}.card-result__example{display:flex;flex-direction:column;gap:2px;margin:8px 0 0;padding-top:8px;border-top:1px dashed var(--color-border)}.card-result__example-de{font-weight:600}.card-result__example-ru{color:var(--color-muted);font-size:14px}.flashcard{display:flex;flex-direction:column;gap:20px;width:100%;max-width:440px;padding:24px;background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow)}.flashcard__image{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:var(--radius);background:var(--color-bg)}.flashcard__hint{margin:-12px 0 0;text-align:center}.flashcard__pos{color:var(--color-muted);font-size:14px}.flashcard__translation{font-size:16px;font-weight:600;color:var(--color-text);overflow-wrap:anywhere}.flashcard__result{display:flex;flex-direction:column;gap:16px}@media (max-width: 480px){.flashcard{gap:14px;max-width:none;padding:14px;border:1px solid var(--color-border);box-shadow:none}.flashcard__image{aspect-ratio:4 / 3;max-height:min(42dvh,320px)}.flashcard__hint{margin-top:-6px}.flashcard__result .button{order:-1}}@media (max-width: 380px),(max-height: 720px){.flashcard__image{aspect-ratio:16 / 10;max-height:34dvh}}.mode-toggle{display:inline-flex;padding:4px;gap:4px;background:var(--color-border);border-radius:var(--radius)}.mode-toggle__option{border:none;background:transparent;padding:6px 16px;border-radius:8px;font-family:inherit;font-size:14px;font-weight:600;color:var(--color-muted);cursor:pointer}.mode-toggle__option_active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow)}@media (max-width: 480px){.mode-toggle{width:100%}.mode-toggle__option{flex:1;min-height:40px;padding-right:10px;padding-left:10px}}.tag-filter{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.tag-filter__toggle{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-border);background:var(--color-surface);padding:6px 14px;border-radius:999px;font-family:inherit;font-size:13px;font-weight:600;color:var(--color-muted);cursor:pointer}.tag-filter__chevron{font-size:10px;transition:transform .15s ease}.tag-filter__chevron_open{transform:rotate(180deg)}.tag-filter__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:100%;max-height:132px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tag-filter__chip{border:1px solid var(--color-border);background:var(--color-surface);padding:6px 12px;border-radius:999px;font-family:inherit;font-size:13px;color:var(--color-muted);cursor:pointer}.tag-filter__chip_active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media (max-width: 480px){.tag-filter{align-items:stretch}.tag-filter__toggle{align-self:center;min-height:36px}.tag-filter__chips{flex-wrap:nowrap;justify-content:flex-start;max-height:none;padding:0 2px 4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.tag-filter__chips::-webkit-scrollbar{display:none}.tag-filter__chip{flex:0 0 auto;min-height:36px}}.page-train{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:480px;min-width:0}.page-train__controls{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.page-train__message{color:var(--color-muted);text-align:center}@media (max-width: 480px){.page-train{gap:14px;max-width:none}.page-train__controls{gap:10px}}.app-layout{min-height:100%;display:flex;flex-direction:column}.app-layout__header{display:flex;align-items:center;gap:20px;padding:14px 24px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.app-layout__brand{font-weight:700;font-size:18px;color:var(--color-primary)}.app-layout__nav{display:flex;gap:8px}.app-layout__link{padding:8px 14px;border-radius:var(--radius);text-decoration:none;color:var(--color-muted);font-weight:600}.app-layout__link_active{background:#4f46e51a;color:var(--color-primary)}.app-layout__user{margin-left:auto;font-weight:600}.app-layout__content{flex:1;display:flex;justify-content:center;padding:32px 24px}@media (max-width: 720px){.app-layout{min-height:100dvh}.app-layout__header{position:sticky;top:0;z-index:10;gap:10px;min-height:auto;padding:calc(10px + var(--safe-top)) calc(14px + var(--safe-right)) 10px calc(14px + var(--safe-left))}.app-layout__brand{font-size:17px}.app-layout__nav{position:fixed;right:0;bottom:0;left:0;z-index:20;display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:calc(var(--mobile-nav-height) + var(--safe-bottom));padding:8px calc(12px + var(--safe-right)) calc(8px + var(--safe-bottom)) calc(12px + var(--safe-left));background:#fffffff0;border-top:1px solid var(--color-border);box-shadow:0 -10px 28px #1c233314;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.app-layout__link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:10px;font-size:14px}.app-layout__user{min-width:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.app-layout__content{align-items:stretch;width:100%;padding:16px calc(14px + var(--safe-right)) calc(var(--mobile-nav-height) + var(--safe-bottom) + 16px) calc(14px + var(--safe-left))}}@supports not (backdrop-filter: blur(16px)){@media (max-width: 720px){.app-layout__nav{background:var(--color-surface)}}}:root{--color-bg: #f4f6fb;--color-surface: #ffffff;--color-text: #1c2333;--color-muted: #6b7280;--color-primary: #4f46e5;--color-primary-dark: #4338ca;--color-success: #16a34a;--color-error: #dc2626;--color-border: #e3e6ee;--radius: 12px;--shadow: 0 8px 24px rgba(28, 35, 51, .08);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--header-height: 65px;--mobile-nav-height: 68px;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--color-text);background:var(--color-bg);overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}img{max-width:100%}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width: 720px){html,body,#root{height:auto;min-height:100%;min-height:100dvh}}
