/* webapp/css/themes/theme-blue.css (Оптимизированная и полная версия) */

/* 1. ПЕРЕМЕННЫЕ: Ядро темы, определяющее все цветовые значения. */
body.theme-blue {
    --theme-bg-primary: #1f2329;
    --theme-bg-secondary: #2a2f37;
    --theme-bg-content: #23272e;
    --theme-text-primary: #f0f0f0;
    --theme-text-secondary: #a0a0b0;
    --theme-text-placeholder: #7b838e;
    --theme-border-color: #3a3f47;

    --theme-accent-primary: #8774e1;
    --theme-accent-secondary: #5294e3;
    --theme-accent-alt1: #7aa1e8;
    --theme-accent-alt2: #e87ae4;
    --theme-button-text-on-accent: #ffffff;
    --theme-button-text-on-normal: var(--theme-text-primary);

    --theme-success-color: #4ade80;
    --theme-error-color: #f87171;
    --theme-warning-color: #facc15;
    --theme-focus-ring-color: rgba(135, 116, 225, 0.5);

    --font-main: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

    --theme-srs-bar-short: #facc15;
    --theme-srs-bar-medium: var(--theme-accent-secondary);
    --theme-srs-bar-long: var(--theme-accent-primary);
    --theme-srs-bar-learned: var(--theme-success-color);
    --theme-srs-segment-inactive-bg: #3a3f47;

    --theme-grammar-feedback-correct-bg: rgba(74, 222, 128, 0.15);
    --theme-grammar-feedback-correct-border: var(--theme-success-color);
    --theme-grammar-feedback-correct-text: var(--theme-success-color);
    --theme-grammar-feedback-incorrect-bg: rgba(248, 113, 113, 0.15);
    --theme-grammar-feedback-incorrect-border: var(--theme-error-color);
    --theme-grammar-feedback-incorrect-text: var(--theme-error-color);
    --theme-grammar-ai-explanation-bg: #23272e;
    --theme-grammar-ai-explanation-border: #3a3f47;
    --theme-grammar-ai-explanation-text: var(--theme-text-primary);
    --theme-grammar-chat-bg: #23272e;
    --theme-grammar-chat-user-msg-bg: var(--theme-accent-primary);
    --theme-grammar-chat-user-msg-text: var(--theme-button-text-on-accent);
    --theme-grammar-chat-ai-msg-bg: #2a2f37;
    --theme-grammar-chat-ai-msg-text: var(--theme-text-primary);
}


/* 2. СТИЛИ ДЛЯ КОНКРЕТНЫХ КОМПОНЕНТОВ: Только цвета, тени, рамки. */
/* Структура, размеры, отступы, анимации - в components.css */

/* --- Общие элементы --- */
body.theme-blue { background-color: var(--theme-bg-primary); color: var(--theme-text-primary); }
body.theme-blue h1, body.theme-blue h2, body.theme-blue h3 { color: var(--theme-text-primary); }
body.theme-blue .secondary-text { color: var(--theme-text-secondary); }
body.theme-blue #header-title-logo .header-logo-en-accent { color: var(--theme-accent-primary); }
body.theme-blue #header-title-logo .app-logo-icon { fill: var(--theme-accent-primary); color: var(--theme-accent-primary); }
body.theme-blue #bottom-nav { background-color: var(--theme-bg-secondary); border-top: 1px solid var(--theme-border-color); }
body.theme-blue .nav-item { color: var(--theme-text-secondary); }
body.theme-blue .nav-item:hover, body.theme-blue .nav-item.active { color: var(--theme-accent-primary); }
body.theme-blue .content-section { background-color: var(--theme-bg-secondary); box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06); }
body.theme-blue .content-card-bg { background-color: var(--theme-bg-content); }
body.theme-blue .modal-bg { background-color: var(--theme-bg-secondary); }

/* --- Плавающие кнопки --- */
body.theme-blue #floating-action-buttons #theme-toggle-button { background-color: var(--theme-accent-secondary); color: var(--theme-button-text-on-accent); }
body.theme-blue #floating-action-buttons #theme-toggle-button:hover { background-color: color-mix(in srgb, var(--theme-accent-secondary) 85%, black); }
body.theme-blue #floating-action-buttons #floating-settings-button { background-color: var(--theme-bg-content); color: var(--theme-text-primary); }
body.theme-blue #floating-action-buttons #floating-settings-button:hover { background-color: color-mix(in srgb, var(--theme-bg-content) 85%, var(--theme-text-primary) 5%); }
body.theme-blue .floating-action-button:hover, body.theme-blue .floating-action-button:focus-visible { border-color: var(--theme-accent-primary); }

/* --- Формы и инпуты --- */
body.theme-blue .input-field, body.theme-blue select.input-field { background-color: var(--theme-bg-content); border: 1px solid var(--theme-border-color); color: var(--theme-text-primary); }
body.theme-blue .input-field::placeholder { color: var(--theme-text-placeholder); }
body.theme-blue .input-field:focus, body.theme-blue select.input-field:focus { border-color: var(--theme-accent-primary); box-shadow: 0 0 0 2px var(--theme-focus-ring-color); }
body.theme-blue .input-field[readonly] { background-color: var(--theme-bg-secondary); }
body.theme-blue select.input-field { background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23f0f0f0%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'); }
body.theme-blue .clear-input-btn { color: var(--theme-text-secondary); }
body.theme-blue .clear-input-btn:hover { color: var(--theme-accent-primary); }
body.theme-blue .custom-checkbox { background-color: var(--theme-bg-primary); border: 1px solid var(--theme-border-color); }
body.theme-blue .custom-checkbox:checked { background-color: var(--theme-accent-primary); border-color: var(--theme-accent-primary); }
body.theme-blue .custom-checkbox:checked::after { color: var(--theme-button-text-on-accent); }
body.theme-blue .custom-checkbox:focus { box-shadow: 0 0 0 2px var(--theme-focus-ring-color); }

/* --- Кнопки --- */
body.theme-blue .button {
    /* padding удалён, теперь размеры берутся из компонентов или utility-классов */
}
body.theme-blue .button:focus, body.theme-blue .button:focus-visible { box-shadow: 0 0 0 2px var(--theme-bg-primary), 0 0 0 4px var(--theme-focus-ring-color); }
body.theme-blue .button:disabled, body.theme-blue .button.disabled { background-color: var(--theme-bg-content); color: var(--theme-text-secondary); border: 1px solid var(--theme-border-color); }
body.theme-blue .button-primary { background-image: linear-gradient(to bottom, var(--theme-accent-primary) 0%, color-mix(in srgb, var(--theme-accent-primary) 80%, black) 100%); color: var(--theme-button-text-on-accent); }
body.theme-blue .button-primary:hover:not(:disabled) { background-image: linear-gradient(to bottom, color-mix(in srgb, var(--theme-accent-primary) 100%, white 10%) 0%, color-mix(in srgb, var(--theme-accent-primary) 85%, black) 100%); }
body.theme-blue .button-secondary { background-color: var(--theme-bg-content); color: var(--theme-button-text-on-normal); border: 1px solid var(--theme-border-color); }
body.theme-blue .button-secondary:hover:not(:disabled) { background-color: color-mix(in srgb, var(--theme-bg-content) 85%, var(--theme-text-primary) 5%); border-color: var(--theme-accent-primary); }
body.theme-blue .button-secondary:focus, body.theme-blue .button-secondary:focus-visible { border-color: var(--theme-accent-primary); box-shadow: none; }
body.theme-blue .button-success { background-image: linear-gradient(to bottom, var(--theme-success-color) 0%, color-mix(in srgb, var(--theme-success-color) 80%, black) 100%); color: var(--theme-button-text-on-accent); }
body.theme-blue .button-success:hover:not(:disabled) { background-image: linear-gradient(to bottom, color-mix(in srgb, var(--theme-success-color) 100%, white 10%) 0%, color-mix(in srgb, var(--theme-success-color) 85%, black) 100%); }
body.theme-blue .button-danger { background-image: linear-gradient(to bottom, var(--theme-error-color) 0%, color-mix(in srgb, var(--theme-error-color) 80%, black) 100%); color: var(--theme-button-text-on-accent); }
body.theme-blue .button-danger:hover:not(:disabled) { background-image: linear-gradient(to bottom, color-mix(in srgb, var(--theme-error-color) 100%, white 10%) 0%, color-mix(in srgb, var(--theme-error-color) 85%, black) 100%); }
body.theme-blue .button-warning {
    background-image: linear-gradient(to bottom, var(--theme-accent-primary) 0%, color-mix(in srgb, var(--theme-accent-primary) 80%, black) 100%);
    color: var(--theme-button-text-on-accent);
}
body.theme-blue .button-accent-alt1 { background-image: linear-gradient(to bottom, var(--theme-accent-alt1) 0%, color-mix(in srgb, var(--theme-accent-alt1) 80%, black) 100%); color: var(--theme-button-text-on-accent); }
body.theme-blue .button-accent-alt1:hover:not(:disabled) { background-image: linear-gradient(to bottom, color-mix(in srgb, var(--theme-accent-alt1) 100%, white 10%) 0%, color-mix(in srgb, var(--theme-accent-alt1) 85%, black) 100%); }
body.theme-blue .button-accent-alt2 { background-image: linear-gradient(to bottom, var(--theme-accent-alt2) 0%, color-mix(in srgb, var(--theme-accent-alt2) 80%, black) 100%); color: var(--theme-button-text-on-accent); }
body.theme-blue .button-accent-alt2:hover:not(:disabled) { background-image: linear-gradient(to bottom, color-mix(in srgb, var(--theme-accent-alt2) 100%, white 10%) 0%, color-mix(in srgb, var(--theme-accent-alt2) 85%, black) 100%); }
body.theme-blue .button-icon-study { background-color: var(--theme-accent-primary); color: var(--theme-button-text-on-accent); }
body.theme-blue .button-icon-study:hover:not(:disabled) { background-color: color-mix(in srgb, var(--theme-accent-primary) 85%, black); }
body.theme-blue .toggle-button { background-color: var(--theme-bg-content); border: 1px solid var(--theme-border-color); }
body.theme-blue .toggle-button-slider { background-color: var(--theme-text-secondary); }
body.theme-blue .toggle-button.active { background-color: var(--theme-accent-primary); }
body.theme-blue .toggle-button.active .toggle-button-slider { background-color: var(--theme-button-text-on-accent); }

/* --- Страница "Учить" --- */
body.theme-blue .card-word-srs-info { color: var(--theme-text-secondary); }
body.theme-blue .srs-status-pill-new { background-color: var(--theme-srs-bar-short); color: var(--theme-bg-primary); }
body.theme-blue .srs-status-pill-studying { background-color: var(--theme-srs-bar-medium); }
body.theme-blue .srs-status-pill-consolidating { background-color: var(--theme-srs-bar-long); }
body.theme-blue .srs-status-pill-confident { background-color: color-mix(in srgb, var(--theme-srs-bar-learned) 70%, var(--theme-srs-bar-long) 30%); }
body.theme-blue .srs-status-pill-learned { background-color: var(--theme-srs-bar-learned); }
body.theme-blue .study-card-next-review-pill { color: var(--theme-button-text-on-accent); } /* Общий цвет текста для плашек */
body.theme-blue .srs-progress-bar-container { background-color: var(--theme-bg-primary); }
body.theme-blue .srs-progress-segment { background-color: var(--theme-srs-segment-inactive-bg); }
body.theme-blue .srs-segment-short::before { background-color: var(--theme-srs-bar-short); }
body.theme-blue .srs-segment-medium::before { background-color: var(--theme-srs-bar-medium); }
body.theme-blue .srs-segment-long::before { background-color: var(--theme-srs-bar-long); }
body.theme-blue .srs-segment-learned::before { background-color: var(--theme-srs-bar-learned); }
body.theme-blue #mc-example-sentence-display, body.theme-blue #input-example-sentence-display, body.theme-blue #dictation-example-sentence-display { color: var(--theme-text-secondary); }
body.theme-blue .study-example-action-button { color: var(--theme-text-secondary); }
body.theme-blue .study-example-action-button:hover { color: var(--theme-accent-primary); }
body.theme-blue .study-example-action-button.saved-state { color: var(--theme-success-color); }
body.theme-blue .feedback-correct { color: var(--theme-success-color); }
body.theme-blue .feedback-incorrect { color: var(--theme-error-color); }
body.theme-blue .feedback-highlight { color: var(--theme-warning-color); }
body.theme-blue .input-field.border-correct { border-color: var(--theme-success-color); box-shadow: 0 0 0 2px color-mix(in srgb, var(--theme-success-color) 30%, transparent); }
body.theme-blue .input-field.border-incorrect { border-color: var(--theme-error-color); box-shadow: 0 0 0 2px color-mix(in srgb, var(--theme-error-color) 30%, transparent); }
body.theme-blue .mc-option-button { background-color: var(--theme-bg-content); border: 1px solid var(--theme-border-color); color: var(--theme-text-primary); }
body.theme-blue .mc-option-button:hover:not(:disabled) { background-color: color-mix(in srgb, var(--theme-bg-content) 80%, var(--theme-accent-primary) 20%); border-color: var(--theme-accent-primary); }
body.theme-blue .mc-option-button.selected { background-color: color-mix(in srgb, var(--theme-bg-content) 70%, var(--theme-accent-primary) 30%); border-color: var(--theme-accent-primary); }
body.theme-blue .mc-option-button.correct { background-color: color-mix(in srgb, var(--theme-success-color) 25%, var(--theme-bg-content) 75%); border-color: var(--theme-success-color); color: var(--theme-success-color); }
body.theme-blue .mc-option-button.incorrect { background-color: color-mix(in srgb, var(--theme-error-color) 20%, var(--theme-bg-content) 80%); border-color: var(--theme-error-color); color: var(--theme-error-color); }
body.theme-blue #input-lives-container span, body.theme-blue #dictation-lives-container span { color: var(--theme-error-color); }
body.theme-blue #study-back-button { color: var(--theme-text-secondary); }
body.theme-blue #study-back-button:hover, body.theme-blue #study-back-button:focus-visible { color: var(--theme-accent-primary); border-color: var(--theme-accent-primary); }
body.theme-blue .button-study-next-active {
    border-color: var(--theme-accent-primary);
    color: var(--theme-accent-primary);
    background-color: color-mix(in srgb, var(--theme-bg-content) 90%, var(--theme-accent-primary) 10%);
}

/* --- AI Explanation Panel --- */
body.theme-blue .ai-explanation-display { background-color: color-mix(in srgb, var(--theme-bg-secondary) 95%, var(--theme-text-primary) 3%); box-shadow: 0 1px 3px rgba(0,0,0,0.1), 0 2px 5px rgba(0,0,0,0.08); }
body.theme-blue .ai-main-word-transliteration { color: var(--theme-text-secondary); }
body.theme-blue .ai-main-explanation { color: var(--theme-text-primary); }
body.theme-blue .ai-main-explanation h3 { color: var(--theme-accent-primary); border-bottom-color: var(--theme-border-color); }
body.theme-blue .ai-main-explanation code { background-color: var(--theme-bg-primary); color: var(--theme-accent-secondary); }
body.theme-blue .ai-examples-section h4 { color: var(--theme-text-secondary); border-bottom-color: var(--theme-border-color); }
body.theme-blue .ai-example-item { border-bottom-color: var(--theme-border-color); }
body.theme-blue .ai-example-original { color: var(--theme-text-primary); }
body.theme-blue .ai-example-transliteration, body.theme-blue .ai-example-translation { color: var(--theme-text-secondary); }
body.theme-blue .quick-add-example-btn { color: var(--theme-text-secondary); }
body.theme-blue .quick-add-example-btn:hover:not(:disabled) { color: var(--theme-accent-primary); }
body.theme-blue .quick-add-example-btn.saved, body.theme-blue .quick-add-example-btn:disabled { color: var(--theme-success-color); }

/* --- Главная страница --- */
body.theme-blue .progress-svg-container {
    width: 150px;
    height: 150px;
    position: relative;
}
body.theme-blue .progress-svg {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}
body.theme-blue .progress-svg__background-circle {
    fill: none;
    stroke: var(--theme-bg-content);
    stroke-width: 10;
}
body.theme-blue .progress-svg__bar-circle {
    fill: none;
    stroke: var(--theme-accent-primary);
    stroke-width: 10;
    stroke-linecap: round;
    stroke-dasharray: 339.292;
    stroke-dashoffset: 339.292;
    transition: stroke-dashoffset 0.5s ease-out;
}
body.theme-blue .progress-svg__text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2rem;
    font-weight: bold;
    color: var(--theme-text-primary);
}
body.theme-blue #home-words-learned-stats { color: var(--theme-text-secondary); }
body.theme-blue #page-home .grid span { color: var(--theme-text-primary); }
body.theme-blue #daily-reward-section { background-color: var(--theme-bg-content); }
body.theme-blue #daily-reward-text { color: var(--theme-text-primary); }
body.theme-blue #daily-reward-text strong { color: var(--theme-accent-primary); }
body.theme-blue #daily-reward-text em { color: var(--theme-accent-secondary); }

/* --- Списки слов и курсов --- */
body.theme-blue #all-words-list-container .list-item-bg, body.theme-blue #course-words-list-container .list-item-bg { background-color: var(--theme-bg-content); }
body.theme-blue #all-words-list-container .list-item-text-secondary, body.theme-blue #course-words-list-container .list-item-text-secondary { color: var(--theme-text-secondary); }
body.theme-blue #all-words-list-container .list-item-accent, body.theme-blue #course-words-list-container .list-item-accent { color: var(--theme-accent-secondary); }
body.theme-blue .visibility-toggle-button { color: var(--theme-text-secondary); }
body.theme-blue .visibility-toggle-button:hover, body.theme-blue .visibility-toggle-button:focus-visible { color: var(--theme-accent-primary); border-color: var(--theme-accent-primary); }
body.theme-blue .visibility-toggle-button.active .material-symbols-rounded { color: var(--theme-error-color); }
body.theme-blue .example-indicator-icon { color: var(--theme-accent-primary); }
body.theme-blue #words-list-controls-panel, body.theme-blue #course-words-list-controls-panel { background-color: var(--theme-bg-content); border: 1px solid var(--theme-border-color); }
body.theme-blue #words-list-controls-panel label:not(.sr-only), body.theme-blue #course-words-list-controls-panel label:not(.sr-only) { color: var(--theme-text-secondary); }
body.theme-blue #words-list-controls-panel label[for="filter-no-examples"], body.theme-blue #course-words-list-controls-panel label[for="course-words-filter-no-examples"] { color: var(--theme-text-primary); }
body.theme-blue #scroll-to-top-words-button, body.theme-blue #scroll-to-top-course-words-button { background-color: var(--theme-accent-primary); color: var(--theme-button-text-on-accent); }
body.theme-blue #scroll-to-top-words-button:hover, body.theme-blue #scroll-to-top-course-words-button:hover { background-color: color-mix(in srgb, var(--theme-accent-primary) 85%, black); }

/* --- Страница статистики --- */
body.theme-blue .srs-bar-container { background-color: var(--theme-bg-content); }
body.theme-blue .srs-bar-short-term { background-color: var(--theme-srs-bar-short); }
body.theme-blue .srs-bar-medium-term { background-color: var(--theme-srs-bar-medium); }
body.theme-blue .srs-bar-long-term { background-color: var(--theme-srs-bar-long); }
body.theme-blue .srs-bar-learned { background-color: var(--theme-srs-bar-learned); }
body.theme-blue #stats-srs-distribution-list .srs-count { color: var(--theme-text-primary); }
body.theme-blue #stats-srs-distribution-list .srs-level-description { color: var(--theme-text-secondary); }
body.theme-blue .srs-level-group-title { color: var(--theme-accent-primary); border-bottom: 1px solid var(--theme-border-color); }

/* --- Чат и Грамматика --- */
body.theme-blue .chat-messages-container { scrollbar-color: var(--theme-accent-primary) var(--theme-bg-primary); }
body.theme-blue .chat-avatar { background-color: var(--theme-bg-content); color: var(--theme-text-secondary); }
body.theme-blue .chat-message-user .chat-message-content { background-color: var(--theme-accent-primary); color: var(--theme-button-text-on-accent); }
body.theme-blue .chat-message-gemini .chat-message-content { background-color: var(--theme-bg-content); color: var(--theme-text-primary); }
body.theme-blue #grammar-chat-container { background-color: var(--theme-grammar-chat-bg); }
body.theme-blue #grammar-chat-messages .chat-message-user .chat-message-content { background-color: var(--theme-grammar-chat-user-msg-bg); color: var(--theme-grammar-chat-user-msg-text); }
body.theme-blue #grammar-chat-messages .chat-message-gemini .chat-message-content { background-color: var(--theme-grammar-chat-ai-msg-bg); color: var(--theme-grammar-chat-ai-msg-text); }
body.theme-blue .course-category-header { color: var(--theme-accent-primary); border-bottom: 1px solid var(--theme-border-color); }
body.theme-blue .course-category-description { color: var(--theme-text-secondary); }
body.theme-blue .course-card, body.theme-blue .grammar-topic-card, body.theme-blue .course-category-item, body.theme-blue .grammar-exercise-type-card { background-color: var(--theme-bg-secondary); border: 1px solid var(--theme-border-color); }
body.theme-blue .course-card:hover, body.theme-blue .grammar-topic-card:hover, body.theme-blue .course-category-item:hover, body.theme-blue .grammar-exercise-type-card:hover { border-color: var(--theme-accent-primary); box-shadow: 0 4px 12px rgba(0,0,0,0.2); }
body.theme-blue .course-card h3, body.theme-blue .course-card h4, body.theme-blue .grammar-topic-card h3, body.theme-blue .grammar-topic-card h4, body.theme-blue .course-category-item h3, body.theme-blue .grammar-exercise-type-card h3 { color: var(--theme-accent-primary); }
body.theme-blue .course-category-item p, body.theme-blue .grammar-exercise-type-card p { color: var(--theme-text-secondary); }
body.theme-blue .course-category-item .category-arrow, body.theme-blue .grammar-exercise-type-card .category-arrow { color: var(--theme-text-secondary); }
body.theme-blue .course-category-item:hover .category-arrow, body.theme-blue .grammar-exercise-type-card:hover .category-arrow { color: var(--theme-accent-primary); }
body.theme-blue .course-category-item-pinned { background-color: color-mix(in srgb, var(--theme-bg-secondary) 90%, var(--theme-accent-primary) 5%); border: 1px solid var(--theme-accent-secondary); }
body.theme-blue .course-category-item-pinned:hover { border-color: var(--theme-accent-primary); }
body.theme-blue #course-detail-progress-bar { background-color: var(--theme-srs-bar-learned); }
body.theme-blue .feedback-correct-grammar-bg { background-color: var(--theme-grammar-feedback-correct-bg); border: 1px solid var(--theme-grammar-feedback-correct-border); color: var(--theme-grammar-feedback-correct-text); }
body.theme-blue .feedback-incorrect-grammar-bg { background-color: var(--theme-grammar-feedback-incorrect-bg); border: 1px solid var(--theme-grammar-feedback-incorrect-border); color: var(--theme-grammar-feedback-incorrect-text); }
body.theme-blue #grammar-ai-explanation-container { border: 1px solid var(--theme-grammar-ai-explanation-border); background-color: var(--theme-grammar-ai-explanation-bg); color: var(--theme-grammar-ai-explanation-text); }
body.theme-blue #grammar-ai-explanation-container strong { color: var(--theme-accent-primary); }
body.theme-blue #grammar-ai-explanation-container em { color: var(--theme-accent-secondary); }
body.theme-blue #sentence-scramble-word-bank { background-color: var(--theme-bg-content); border: 1px solid var(--theme-border-color); }
body.theme-blue .scramble-token { background-color: var(--theme-bg-secondary); border: 1px solid var(--theme-border-color); color: var(--theme-text-primary); }
body.theme-blue .scramble-token:hover { border-color: var(--theme-accent-primary); background-color: color-mix(in srgb, var(--theme-bg-secondary) 80%, var(--theme-accent-primary) 20%); }
body.theme-blue .scramble-token.used { background-color: var(--theme-bg-primary); border-color: color-mix(in srgb, var(--theme-border-color) 70%, transparent); }
body.theme-blue .scramble-answer-area { background-color: var(--theme-bg-primary); border-color: var(--theme-border-color); }
body.theme-blue .scramble-answer-area.drag-over { border-color: var(--theme-accent-primary); background-color: color-mix(in srgb, var(--theme-bg-primary) 90%, var(--theme-accent-primary) 10%); }
body.theme-blue .answer-token { background-color: var(--theme-accent-secondary); border: 1px solid var(--theme-accent-primary); color: var(--theme-button-text-on-accent); }
body.theme-blue .answer-token:hover { background-color: color-mix(in srgb, var(--theme-accent-secondary) 80%, black); }

/* --- Прочие компоненты --- */
body.theme-blue .info-icon { color: var(--theme-text-secondary); }
body.theme-blue .info-icon:hover, body.theme-blue .info-icon:focus-visible { color: var(--theme-accent-primary); }
body.theme-blue .info-icon:focus-visible { box-shadow: 0 0 0 2px var(--theme-focus-ring-color); }
body.theme-blue .custom-tooltip { background-color: var(--theme-bg-content); color: var(--theme-text-primary); border: 1px solid var(--theme-border-color); box-shadow: 0 2px 8px rgba(0,0,0,0.25); }
body.theme-blue .feedback-icon-correct-animated { color: var(--theme-success-color); }
body.theme-blue .feedback-icon-incorrect-animated { color: var(--theme-error-color); }

/* Стили скроллбара для синей темы */
body.theme-blue ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
body.theme-blue ::-webkit-scrollbar-track {
    background: var(--theme-bg-secondary);
    border-radius: 4px;
}
body.theme-blue ::-webkit-scrollbar-thumb {
    background: var(--theme-accent-primary);
    border-radius: 4px;
}
body.theme-blue ::-webkit-scrollbar-thumb:hover {
    background: var(--theme-accent-primary);
    opacity: 0.8;
}
/* Firefox scrollbar */
body.theme-blue {
    scrollbar-color: var(--theme-accent-primary) var(--theme-bg-secondary);
    scrollbar-width: thin;
}