/* ============================================
   СТИЛИ ДЛЯ ВЕРСИИ СЛАБОВИДЯЩИХ
   Применяются ко всему сайту через классы на body
   ============================================ */

/* Базовые переходы */
body {
    transition: font-size 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}

/* ─── РАЗМЕР ШРИФТА ─── */
/* По умолчанию body БЕЗ класса = изначальный размер (100%) */
/* Класс font-small НЕ НУЖЕН - это и есть дефолтное состояние */

/* Средний шрифт - небольшое увеличение */
body.font-medium {
    font-size: 110%;
}

body.font-medium h1,
body.font-medium h2,
body.font-medium h3,
body.font-medium h4,
body.font-medium h5,
body.font-medium h6,
body.font-medium p,
body.font-medium a,
body.font-medium span,
body.font-medium div,
body.font-medium li,
body.font-medium td,
body.font-medium th,
body.font-medium label {
    font-size: 110% !important;
}

/* Кнопки панели доступности УМЕНЬШАЕМ, чтобы не вылезали */
body.font-medium .accessibility-btn,
body.font-medium .reset-btn {
    font-size: 85% !important;
    padding: 8px 12px !important;
}

/* Карточки загрузки - адаптируем под увеличенный текст */
body.font-medium .download-card {
    min-height: auto !important;
    height: auto !important;
    padding: 20px !important;
}

/* Большой шрифт - среднее увеличение */
body.font-large {
    font-size: 120%;
}

body.font-large h1,
body.font-large h2,
body.font-large h3,
body.font-large h4,
body.font-large h5,
body.font-large h6,
body.font-large p,
body.font-large a,
body.font-large span,
body.font-large div,
body.font-large li,
body.font-large td,
body.font-large th,
body.font-large label {
    font-size: 120% !important;
}

/* Кнопки панели доступности УМЕНЬШАЕМ ЕЩЁ БОЛЬШЕ, чтобы не вылезали */
body.font-large .accessibility-btn,
body.font-large .reset-btn {
    font-size: 75% !important;
    padding: 6px 10px !important;
}

/* Карточки загрузки - адаптируем под увеличенный текст */
body.font-large .download-card {
    min-height: auto !important;
    height: auto !important;
    padding: 25px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

body.font-large .download-title {
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    hyphens: auto !important;
    text-align: center !important;
}

body.font-large .download-link {
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    text-align: center !important;
    margin-top: 10px !important;
}

/* ─── МЕЖБУКВЕННЫЙ ИНТЕРВАЛ ─── */
body.spacing-large * {
    letter-spacing: 0.1em !important;
}

body.spacing-normal * {
    letter-spacing: normal !important;
}

/* ─── ЦВЕТОВАЯ ТЕМА: ЧЕРНАЯ ─── */
body.theme-black {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* Header в черной теме */
body.theme-black .top-bar {
    background-color: #1a1a1a !important;
}

body.theme-black .top-bar-left a,
body.theme-black .top-bar-right a {
    color: #ffffff !important;
}

body.theme-black .accessibility-panel {
    background-color: #2d2d2d !important;
    border-bottom-color: #404040 !important;
}

body.theme-black .accessibility-label {
    color: #ffffff !important;
}

body.theme-black .accessibility-btn {
    background-color: #404040 !important;
    color: #ffffff !important;
    border-color: #666666 !important;
}

body.theme-black .accessibility-btn-black:hover,
body.theme-black .accessibility-btn-black.active {
    background-color: #FDB913 !important;
    color: #000000 !important;
    border-color: #FDB913 !important;
}

body.theme-black .reset-btn {
    background-color: #2d2d2d !important;
    color: #FDB913 !important;
    border-color: #FDB913 !important;
}

body.theme-black .reset-btn:hover {
    background-color: #FDB913 !important;
    color: #000000 !important;
}

body.theme-black .main-header {
    background-color: #1a1a1a !important;
}

body.theme-black .header-content h1,
body.theme-black .header-content p,
body.theme-black .breadcrumbs,
body.theme-black .breadcrumbs a {
    color: #ffffff !important;
}

body.theme-black .navigation-bar {
    background-color: #2d2d2d !important;
    border-bottom-color: #FDB913 !important;
}

body.theme-black .navigation-menu a {
    color: #ffffff !important;
}

body.theme-black .navigation-menu a:hover {
    background-color: #404040 !important;
    color: #FDB913 !important;
}

body.theme-black .navigation-menu a::after {
    background-color: #FDB913 !important;
}

/* Секции контента в черной теме */
body.theme-black .services-section,
body.theme-black .translators-section {
    background-color: #0d0d0d !important;
}

body.theme-black .diploma-section,
body.theme-black .languages-section,
body.theme-black .contacts-section {
    background-color: #000000 !important;
}

body.theme-black .section-title h2 {
    color: #FDB913 !important;
}

body.theme-black .section-description {
    color: #e0e0e0 !important;
}

body.theme-black .service-card {
    background-color: #1a1a1a !important;
    border-color: #404040 !important;
}

body.theme-black .service-card h3 {
    color: #FDB913 !important;
}

body.theme-black .service-card p {
    color: #e0e0e0 !important;
}

body.theme-black .notice-box,
body.theme-black .alert-box {
    background-color: #1a1a1a !important;
    border-left-color: #FDB913 !important;
}

body.theme-black .notice-box h4,
body.theme-black .alert-box h4 {
    color: #FDB913 !important;
}

body.theme-black .notice-box p,
body.theme-black .alert-box p {
    color: #e0e0e0 !important;
}

body.theme-black .diploma-text,
body.theme-black .diploma-left h3 {
    color: #ffffff !important;
}

body.theme-black .diploma-text .highlight {
    color: #FDB913 !important;
}

body.theme-black .download-card {
    background-color: #1a1a1a !important;
    border-color: #FDB913 !important;
}

body.theme-black .download-title,
body.theme-black .download-link {
    color: #e0e0e0 !important;
}

body.theme-black .download-link {
    color: #FDB913 !important;
}

body.theme-black .right-header {
    color: #e0e0e0 !important;
}

body.theme-black .translator-name-text {
    color: #FDB913 !important;
}

body.theme-black .language-label {
    background-color: #1a1a1a !important;
    color: #FDB913 !important;
}

body.theme-black .contact-text {
    color: #FDB913 !important;
}

/* Footer в черной теме */
body.theme-black .footer-logo-container .logo-black {
    display: block;
}
body.theme-black .footer-strip {
    background-color: #050505 !important;
}

body.theme-black .site-footer {
    background-color: #0d0d0d !important;
    color: #ffffff !important;
}

body.theme-black .footer-title {
    color: #FDB913 !important;
}

body.theme-black .footer-subtitle,
body.theme-black .footer-copyright {
    color: #e0e0e0 !important;
}

/* ─── ЦВЕТОВАЯ ТЕМА: БЕЛАЯ ─── */
body.theme-white .footer-logo-container .logo-white {
    display: block;
}
body.theme-white {
    background-color: #ffffff !important;
    color: #000000 !important;
}

/* Header в белой теме */
body.theme-white .top-bar {
    background-color: #f5f5f5 !important;
}

body.theme-white .top-bar-left a,
body.theme-white .top-bar-right a {
    color: #000000 !important;
    font-weight: 500 !important;
}

body.theme-white .accessibility-panel {
    background-color: #e8e8e8 !important;
}

body.theme-white .main-header {
    background-color: #e0e0e0 !important;
}

body.theme-white .header-content h1 {
    color: #000000 !important;
    font-weight: 500 !important;
}

body.theme-white .header-content p {
    color: #000000 !important;
    font-weight: 500 !important;
}

body.theme-white .breadcrumbs,
body.theme-white .breadcrumbs a {
    color: #000000 !important;
}

body.theme-white .navigation-bar {
    background-color: #ffffff !important;
    border-bottom-color: #000000 !important;
}

body.theme-white .navigation-menu a {
    color: #000000 !important;
}

body.theme-white .navigation-menu a::after {
    background-color: #000000 !important;
}

/* Секции контента в белой теме */
body.theme-white .services-section,
body.theme-white .translators-section {
    background-color: #fafafa !important;
}

body.theme-white .diploma-section,
body.theme-white .languages-section,
body.theme-white .contacts-section {
    background-color: #ffffff !important;
}

body.theme-white .section-title h2 {
    color: #000000 !important;
}

body.theme-white .section-description {
    color: #333333 !important;
}

body.theme-white .service-card {
    background-color: #ffffff !important;
    border-color: #cccccc !important;
}

body.theme-white .service-card h3 {
    color: #000000 !important;
}

body.theme-white .service-card p {
    color: #333333 !important;
}

body.theme-white .notice-box,
body.theme-white .alert-box {
    background-color: #f0f0f0 !important;
    border-left-color: #000000 !important;
}

body.theme-white .notice-box h4,
body.theme-white .alert-box h4 {
    color: #000000 !important;
}

body.theme-white .notice-box p,
body.theme-white .alert-box p {
    color: #333333 !important;
}

body.theme-white .diploma-text,
body.theme-white .diploma-left h3 {
    color: #000000 !important;
}

body.theme-white .diploma-text .highlight {
    color: #000000 !important;
}

body.theme-white .download-card {
    background-color: #ffffff !important;
    border-color: #000000 !important;
}

body.theme-white .download-title,
body.theme-white .download-link,
body.theme-white .right-header {
    color: #000000 !important;
}

body.theme-white .translator-name-text {
    color: #000000 !important;
}

body.theme-white .language-label {
    background-color: #e0e0e0 !important;
    color: #000000 !important;
}

body.theme-white .contact-text {
    color: #000000 !important;
}

/* Footer в белой теме */
body.theme-white .footer-strip {
    background-color: #D8EAFF !important;
}

body.theme-white .site-footer {
    background-color: #f5f5f5 !important;
    color: #000000 !important;
}

body.theme-white .footer-title {
    color: #000000 !important;
}

body.theme-white .footer-subtitle,
body.theme-white .footer-copyright {
    color: #333333 !important;
}
body:not(.theme-black):not(.theme-white) .footer-logo-container .logo-default {
    display: block;
}
