        body {
            font-family: 'Segoe UI', Tahoma, sans-serif;
            margin: 0;
            padding: 0;
            background-color: #f8f9fa;
        }

        /* АДАПТИВНАЯ ШАПКА */
        .main-header {
            background: #2196F3;
            color: #fff;
            padding: 10px 15px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            position: sticky;
            top: 0;
            z-index: 1030;
            box-shadow: 0 20px 20px rgba(0, 0, 0, 0.1);
        }

        .header-left {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .header-right {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        /* Меню модулей для ПК (горизонтальное скроллируемое, если много модулей) */
        .pc-modules-nav {
            display: flex;
            gap: 8px;
            overflow-x: auto;
            max-width: 60vw;
            scrollbar-width: none;
        }

        .pc-modules-nav::-webkit-scrollbar {
            display: none;
        }

        .pc-modules-nav a {
            color: rgba(255, 255, 255, 0.8);
            text-decoration: none;
            padding: 6px 12px;
            border-radius: 20px;
            font-weight: 500;
            white-space: nowrap;
            transition: 0.2s;
        }

        .pc-modules-nav a.active {
            color: #fff;
            background: rgba(255, 255, 255, 0.2);
        }

        /* МОБИЛЬНОЕ МЕНЮ (OFFCANVAS БОКОВАЯ ПАНЕЛЬ) */
        .mobile-menu-btn {
            background: none;
            border: none;
            color: #fff;
            font-size: 24px;
            cursor: pointer;
            display: none;
        }

        /* КОНТЕНТНАЯ ЗОНА */
        .content-area {
            padding: 20px;
            min-height: calc(100vh - 140px) !important;
            /* Учитываем высоту шапки и футера вместе */
            height: auto !important;
            overflow: visible !important;
            padding-bottom: 100px !important;
            /* Мощный отступ снизу, чтобы контент не перекрывал футер */
        }

        /* ОТСТУП ДЛЯ ФУТЕРА В ЗАМЕТКАХ (Решает баг липнущих окон) */
        .notes-sidebar-wrapper,
        .content-area {
            margin-bottom: 40px !important;
        }

        /* Адаптивные переключения */
        @media (max-width: 768px) {
            .mobile-menu-btn {
                display: block;
            }

            .pc-modules-nav {
                display: none;
            }

            .user-welcome-text {
                display: none;
            }

            .content-area {
                padding: 10px;
            }
        }

/* ГЛОБАЛЬНЫЙ КОРНЕВОЙ ФИКС МОДАЛОК */
.dark-mode .modal-content,
.dark-mode .modal-body,
.dark-mode .modal-footer {
    background-color: #1e293b !important;
    color: #f8fafc !important;
}

.dark-mode .modal-body summary {
    color: #ffffff !important;
}

.dark-mode .modal-body p {
    color: #cbd5e1 !important;
}

/* ФИКС СКРОЛЛА: Bootstrap-модалка внутри флекс-контейнеров index.php сжимается. 
   Мы принудительно возвращаем ей высоту, чтобы активировать нативный скролл */
.modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 60px) !important;
    display: flex !important;
    flex-direction: column !important;
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* Монолитный фикс модалки FAQ для мобилок */
.custom-faq-modal {
    background-color: #1e293b !important;
    max-height: calc(100vh - 40px) !important;
    display: grid !important;
    grid-template-rows: auto 1fr auto !important;
    overflow: hidden !important;
    border-radius: 16px !important;
}

.custom-faq-modal .modal-body {
    background-color: #1e293b !important;
    color: #f8fafc !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
}

.custom-faq-modal .modal-footer {
    height: 15px !important;
    min-height: 15px !important;
    background-color: #0d6efd !important;
}

.custom-faq-modal summary { cursor: pointer; font-size: 15px; color: #ffffff !important; margin-bottom: 8px; }
.custom-faq-modal p { color: #cbd5e1 !important; font-size: 14px; line-height: 1.6; }

/* ========================================================================= */
/* АБСОЛЮТНЫЙ ФИКС СИНЕГО ФУТЕРА: ИДЕАЛЬНЫЙ НИЗ ДЛЯ ВСЕХ МОДАЛОК              */
/* ========================================================================= */

/* 1. Добавляем жесткую позицию для контента, чтобы закрепить футер */
#modal-faq .modal-content,
#modal-about .modal-content,
#link-extra .modal-content {
    position: relative !important;
    padding-bottom: 15px !important; /* Делаем место под синюю полосу, чтобы она не закрывала текст */
}

/* 2. Добавляем отступ в самый низ тела, чтобы при прокрутке текст не уходил под футер */
#modal-faq .modal-body,
#modal-about .modal-body,
#link-extra .modal-body {
    padding-bottom: 25px !important;
}

/* 3. НАМЕРТВО ПРИБИВАЕМ СИНИЙ ФУТЕР К НИЖНЕМУ КРАЮ КАРТОЧКИ */
#modal-faq .modal-footer,
#modal-about .modal-footer,
#link-extra .modal-footer {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 15px !important;
    min-height: 15px !important;
    padding: 0 !important;
    margin: 0 !important;
    background-color: #0d6efd !important; /* Наш сочный синий цвет */
    border: none !important;
    z-index: 10 !important;
    border-radius: 0 0 16px 16px !important; /* Идеально закругляем нижние края в цвет карточки */
}

/* ========================================================================= */
/* АДАПТАЦИЯ ТЕКСТА FAQ ПОД СВЕТЛУЮ И ТЁМНУЮ ТЕМЫ                            */
/* ========================================================================= */

/* 1. Настройки для ТЁМНОЙ темы (когда на body есть класс .dark-mode) */
.dark-mode .modal-body summary { 
    color: #ffffff !important; 
}
.dark-mode .modal-body p { 
    color: #cbd5e1 !important; 
}
.dark-mode .modal-body details {
    background-color: #1e293b !important; /* Тёмный фон плашек */
}

/* 2. Настройки для СВЕТЛОЙ темы (когда класса .dark-mode НЕТ на body) */
body:not(.dark-mode) .modal-content,
body:not(.dark-mode) .modal-body {
    background-color: #f8f9fa !important; /* Мягкий светлый фон тела окна */
    color: #334155 !important;
}

body:not(.dark-mode) .modal-body details {
    background-color: #ffffff !important; /* Чисто белые аккуратные плашки */
    border: 1px solid #e2e8f0 !important;   /* Легкая серая граница */
    border-radius: 8px;
    margin-bottom: 10px;
    padding: 8px 12px;
}

body:not(.dark-mode) .modal-body summary { 
    color: #1e293b !important; /* Чёткий тёмный текст вопросов */
}

body:not(.dark-mode) .modal-body p { 
    color: #475569 !important; /* Серый читаемый текст ответов */
}

/* ========================================================================= */
/* АВТОМАТИЧЕСКАЯ ТЕМА ДЛЯ МОДАЛЬНЫХ ОКОН (ФИКС СВЕТЛОГО И ТЁМНОГО РЕЖИМОВ) */
/* ========================================================================= */

/* 1. Настройки высоты и структуры окон для корректного скролла */
#modal-faq .modal-content,
#modal-about .modal-content,
#link-extra .modal-content {
    position: relative !important;
    padding-bottom: 15px !important;
    max-height: calc(100vh - 40px) !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    box-shadow: none !important;
}

#modal-faq .modal-body,
#modal-about .modal-body,
#link-extra .modal-body {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
    padding-bottom: 25px !important;
}

#modal-faq .modal-footer,
#modal-about .modal-footer,
#link-extra .modal-footer {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 15px !important;
    min-height: 15px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    z-index: 10 !important;
    border-radius: 0 0 16px 16px !important;
}

/* 2. ТЁМНАЯ ТЕМА (Когда на body есть класс .dark-mode) */
.dark-mode .modal-content,
.dark-mode .modal-body {
    background-color: #1e293b !important;
    color: #f8fafc !important;
}
.dark-mode .modal-body details {
    background-color: #0f172a !important; /* Удобный контрастный темный фон плашек */
    border: 1px solid #334155 !important;
    border-radius: 8px;
    margin-bottom: 10px;
    padding: 8px 12px;
}
.dark-mode .modal-body summary {
    color: #ffffff !important;
}
.dark-mode .modal-body p {
    color: #cbd5e1 !important;
}

/* 3. СВЕТЛАЯ ТЕМА (Когда класса .dark-mode НЕТ на body) */
body:not(.dark-mode) .modal-content,
body:not(.dark-mode) .modal-body {
    background-color: #ffffff !important; /* Белый фон модалки */
    color: #334155 !important;
}
body:not(.dark-mode) .modal-body details {
    background-color: #f8f9fa !important; /* Серые аккуратные плашки вопросов */
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px;
    margin-bottom: 10px;
    padding: 8px 12px;
}
body:not(.dark-mode) .modal-body summary {
    color: #1e293b !important; /* Контрастный темный текст заголовков */
}
body:not(.dark-mode) .modal-body p {
    color: #475569 !important;
}

/* ========================================================================= */
/* ТОЧНЫЙ АДАПТИВНЫЙ ФИКС ФОРМЫ ОБРАТНОЙ СВЯЗИ                               */
/* ========================================================================= */

/* --- 1. ЕСЛИ ТЁМНАЯ ТЕМА (.dark-mode) --- */
.dark-mode #link-extra .modal-content,
.dark-mode #link-extra .modal-body {
    background-color: #1e293b !important;
}
.dark-mode #link-extra .form-control,
.dark-mode #link-extra .form-select {
    background-color: #0f172a !important;
    color: #ffffff !important;
    border: 1px solid #334155 !important;
}
.dark-mode #link-extra #captcha-question {
    color: #ffffff !important;
}

/* --- 2. ЕСЛИ СВЕТЛАЯ ТЕМА (нет .dark-mode) --- */
body:not(.dark-mode) #link-extra .modal-content,
body:not(.dark-mode) #link-extra .modal-body {
    background-color: #ffffff !important;
}
body:not(.dark-mode) #link-extra .form-control,
body:not(.dark-mode) #link-extra .form-select {
    background-color: #f8fafc !important;
    color: #0f172a !important;
    border: 1px solid #cbd5e1 !important;
}
body:not(.dark-mode) #link-extra .form-control::placeholder {
    color: #94a3b8 !important;
}
body:not(.dark-mode) #link-extra #captcha-question {
    color: #334155 !important;
}
body:not(.dark-mode) #link-extra .form-select option {
    color: #0f172a !important;
    background-color: #ffffff !important;
}

/* ========================================================================= */
/* ИДЕАЛЬНОЕ СВЯЗЫВАНИЕ ФУТЕРА С КОНТУРОМ ОКНА БЕЗ ОТРЫВОВ                    */
/* ========================================================================= */

#modal-faq .modal-content,
#modal-about .modal-content,
#link-extra .modal-content {
    position: relative !important;
    max-height: calc(100vh - 40px) !important;
    display: flex !important;
    flex-direction: column !important;
    
    /* КРИТИЧЕСКИЙ ФИКС: Жестко запираем контент внутри белой рамки */
    overflow: hidden !important; 
    border-radius: 16px !important;
    box-shadow: none !important;
}

/* Настройка отступов: убираем гигантский padding-bottom, 
   делаем стандартный, чтобы кнопка не толкала футер вниз */
#modal-about .modal-body,
#modal-faq .modal-body,
#link-extra .modal-body {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
    padding-bottom: 75px !important; /* Оставляем место для кнопки над футером */
}

/* Идеальная посадка синей плитки */
#modal-faq .modal-footer,
#modal-about .modal-footer,
#link-extra .modal-footer {
    position: absolute !important;
    bottom: 0 !important; /* Возвращаем строго в ноль! */
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 52px !important; 
    min-height: 52px !important;
    padding: 0 !important;
    margin: 0 !important;
    background-color: #0d6efd !important;
    border: none !important;
    z-index: 10 !important;
    border-radius: 0 0 16px 16px !important;
}

/* Обычный аккуратный отступ для тела модалок */
#modal-about .modal-body,
#modal-faq .modal-body,
#link-extra .modal-body {
    padding-bottom: 25px !important; /* Сбрасываем гигантский падинг, он больше не нужен! */
}

/* Настройка стилей для кнопки внутри футера */
#link-extra .modal-footer button {
    background-color: #ffffff !important;
    color: #0d6efd !important; /* Красивый синий текст на белой кнопке */
    transition: background-color 0.2s;
}
#link-extra .modal-footer button:hover {
    background-color: #f1f5f9 !important;
}

/* ========================================================================= */
/* ГЛОБАЛЬНЫЙ ФИКС ВЫПАДАЮЩЕГО МЕНЮ QUILL ДЛЯ ТЁМНОЙ ТЕМЫ                     */
/* ========================================================================= */

/* Красим сам фон выпадающего списка форматов текста */
.dark-mode .ql-snow .ql-picker-options,
.ql-snow .ql-picker-options {
    background-color: #1a202c !important; /* Наш тёмный фон */
    border: 1px solid #334155 !important; /* Тёмная граница */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    
    /* ИСПРАВЛЕНО: Сбрасываем жесткую высоту Quill и расширяем рамку вниз */
    height: auto !important; 
    min-height: 155px !important; /* Даем достаточный запас высоты под 4 пункта */
    padding-bottom: 10px !important; 
}

/* Настраиваем цвет текста элементов (Heading 1, Heading 2 и т.д.) */
.dark-mode .ql-snow .ql-picker-options .ql-picker-item {
    color: #cbd5e1 !important; /* Читаемый светлый текст */
    padding: 6px 12px !important;
}

/* Эффект наведения мыши или тача на пункт списка */
.dark-mode .ql-snow .ql-picker-options .ql-picker-item:hover,
.dark-mode .ql-snow .ql-picker-options .ql-picker-item.ql-selected {
    background-color: #2d3748 !important; /* Более светлый оттенок */
    color: #ffffff !important;            /* Ярко-белый текст */
}

/* ========================================================================= */
/* СВЕРХНАДЁЖНЫЙ КОРРЕКТОР ДЛЯ ВЫПАДАЮЩЕГО СПИСКА QUILL                      */
/* ========================================================================= */

/* Перехватываем блок по его родному имени класса, игнорируя внешние контейнеры */
.ql-picker-options,
div.ql-picker-options,
.ql-snow .ql-picker-options {
    background-color: #1a202c !important; /* Принудительный тёмный фон */
    background: #1a202c !important;       /* На случай если зашито свойство background */
    border: 1px solid #334155 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
}

/* Принудительно красим текст элементов */
.ql-picker-options .ql-picker-item,
.ql-snow .ql-picker-options .ql-picker-item {
    color: #cbd5e1 !important;            /* Светлый текст заголовков */
}

/* Наведение на строку */
.ql-picker-options .ql-picker-item:hover,
.ql-picker-options .ql-picker-item.ql-selected {
    background-color: #2d3748 !important; 
    color: #ffffff !important;
}

/* ========================================================================= */
/* ТОТАЛЬНЫЙ КОРРЕКТОР ДЛЯ ВЫПАДАЮЩЕГО СПИСКА QUILL                          */
/* ========================================================================= */

/* Красим сам фон выпадающего списка форматов текста */
.ql-snow .ql-picker.ql-header .ql-picker-options,
.ql-snow .ql-toolbar .ql-picker-options,
.ql-picker-options {
    background-color: #1a202c !important; /* Наш тёмный фон */
    background: #1a202c !important;
    border: 1px solid #334155 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
}

/* Настраиваем цвет текста элементов (Heading 1, Heading 2 и т.д.) */
.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item,
.ql-picker-options .ql-picker-item {
    color: #cbd5e1 !important; /* Читаемый светлый текст */
    background: transparent !important;
    background-color: transparent !important;
}

/* Эффект наведения мыши или тача на пункт списка */
.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item:hover,
.ql-picker-options .ql-picker-item:hover {
    background-color: #2d3748 !important; /* Более светлый оттенок */
    background: #2d3748 !important;
    color: #ffffff !important;            /* Ярко-белый текст */
}

/* ========================================================================= */
/* РУСИФИКАЦИЯ И ПЕРЕИМЕНОВАНИЕ ЗАГОРОВКОВ QUILL                             */
/* ========================================================================= */

/* ========================================================================= */
/* КОМПАКТНЫЙ СТИЛЬ СТРОК ДЛЯ ИДЕАЛЬНОЙ ПОСАДКИ ВНУТРИ ВЫПАДАШКИ             */
/* ========================================================================= */

/* 1. Уменьшаем высоту каждой строки, чтобы они не выталкивали нижнее слово */
.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item {
    font-size: 0 !important;
    position: relative !important;
    height: 28px !important;       /* Уменьшили высоту строки с 36px до 28px */
    display: flex !important;
    align-items: center !important;
    padding-left: 4px !important;
    margin-bottom: 2px !important; /* Небольшой зазор между строками */
}

/* 2. Настройка нашего кастомного текста */
.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item::after {
    font-size: 13px !important;    /* Сделали шрифт капельку компактнее для мобилок */
    color: #cbd5e1 !important;  
    display: block !important;
    line-height: 28px !important;  /* Выравниваем текст ровно по новой высоте */
}

    /* Дополнительно убираем любые скрытые текстовые сдвиги */
    text-indent: 0 !important; 
    margin-left: 0 !important;
}

/* 3. Прописываем названия для каждого уровня заголовка по его дата-атрибуту value */
.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item[data-value="1"]::after {
    content: "Огромный" !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item[data-value="2"]::after {
    content: "Большой" !important;
}

.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item[data-value="3"]::after {
    content: "Средний" !important;
}

/* Если в списке есть кнопка сброса на обычный текст (без data-value) */
.ql-snow .ql-picker.ql-header .ql-picker-options .ql-picker-item:not([data-value])::after {
    content: "Нормальный" !important;
}

/* 4. Переименовываем саму главную кнопку на панели, когда меню закрыто */
.ql-snow .ql-picker.ql-header .ql-picker-label {
    font-size: 0 !important;
}
.ql-snow .ql-picker.ql-header .ql-picker-label::before {
    font-size: 14px !important;
    color: #ffffff !important;
    content: "Текст" !important;
}

    /* ========================================================================= */
    /* ПОЛНЫЙ ФИКС ВИДИМОСТИ ТЕКСТА И ПОДСКАЗОК В ИНПУТАХ НА ПК                  */
    /* ========================================================================= */

    /* 1. Если включена ТЁМНАЯ ТЕМА */
    .dark-mode .modal-body input[type="text"],
    .dark-mode .modal-body input.form-control,
    .dark-mode .modal-body textarea,
    .dark-mode .modal-body .form-control {
        color: #ffffff !important;           /* Ярко-белый вводимый текст */
        background-color: #1a202c !important; /* Тёмный фон полей */
        border: 1px solid #334155 !important;
    }

    /* Подсказки (placeholder) в тёмной теме */
    .dark-mode .modal-body input::placeholder,
    .dark-mode .modal-body textarea::placeholder,
    .dark-mode .modal-body .form-control::placeholder {
        color: #64748b !important;           /* Серый читаемый цвет подсказок */
        opacity: 1 !important;
    }

    /* 2. Если включена СВЕТЛАЯ ТЕМА */
    body:not(.dark-mode) .modal-body input[type="text"],
    body:not(.dark-mode) .modal-body input.form-control,
    body:not(.dark-mode) .modal-body textarea,
    body:not(.dark-mode) .modal-body .form-control {
        color: #0f172a !important;           /* Чёткий тёмный текст */
        background-color: #ffffff !important; /* Белый фон полей */
        border: 1px solid #cbd5e1 !important;
    }

    /* Подсказки (placeholder) в светлой теме */
    body:not(.dark-mode) .modal-body input::placeholder,
    body:not(.dark-mode) .modal-body textarea::placeholder,
    body:not(.dark-mode) .modal-body .form-control::placeholder {
        color: #94a3b8 !important;           /* Аккуратный серый цвет подсказок */
        opacity: 1 !important;
    }

/* ========================================================================= */
/* ОКОНЧАТЕЛЬНЫЙ СБРОС СКРОЛЛБАРА ДЛЯ ДЕСКТОПА (ПК)                          */
/* ========================================================================= */

@media (min-width: 768px) {
    /* 1. Делаем окна на ПК шире и просторнее */
    #modal-faq .modal-dialog,
    #modal-about .modal-dialog,
    #link-extra .modal-dialog,
    #addTabModal .modal-dialog,
    [id*="Modal"] .modal-dialog,
    [id*="Note"] .modal-dialog {
        max-width: 750px !important; 
        width: 750px !important;
        margin: 2.5rem auto !important;
    }

    /* 2. УБИРАЕМ КЛАСС-ВРЕДИТЕЛЬ СВЕРХУ И СТИРАЕМ СКРОЛЛБАР ПИКСЕЛЬ В ПИКСЕЛЬ */
    .modal-dialog-scrollable .modal-content,
    #link-extra .modal-content,
    #modal-faq .modal-content {
        max-height: none !important; /* Убираем ограничение высоты самого каркаса */
        height: auto !important;
    }

    .modal-dialog-scrollable .modal-body,
    #link-extra .modal-body,
    #modal-faq .modal-body {
        max-height: none !important;
        height: auto !important;
        overflow-y: visible !important; /* Полностью убираем внутреннюю прокрутку */
    }

    /* Полностью скрываем полосу прокрутки в браузерах Chrome, Safari, Edge */
    .modal-body::-webkit-scrollbar,
    .modal-content::-webkit-scrollbar,
    .modal::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* Скрываем полосу прокрутки для Firefox и старых IE */
    .modal-body, .modal-content, .modal {
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }

    /* 3. Расширяем выпадающую кнопку выбора форматов Quill */
    .ql-snow .ql-picker.ql-header {
        width: 130px !important; 
    }

    /* 4. На ПК выстраиваем тумблеры и палитру в красивую горизонтальную линию */
    .mt-3.p-3.border.rounded.bg-light .d-flex.flex-column,
    [id*="Modal"] .modal-body .d-flex.flex-column {
        flex-direction: row !important;      
        justify-content: center !important;  
        align-items: center !important;
        gap: 30px !important;                
    }
    .mt-3.p-3.border.rounded.bg-light .form-check,
    [id*="Modal"] .modal-body .form-check {
        margin: 0 !important;
        width: auto !important;
    }
}

    /* ========================================================================= */
    /* ИДЕАЛЬНАЯ ПОСАДКА КНОПКИ ВНУТРИ ВЫСОКОГО ФУТЕРА НА ПК                     */
    /* ========================================================================= */

    /* Убираем абсолютные сдвиги футера наружу на ПК, чтобы кнопка не вылезала */
    #modal-faq .modal-footer,
    #modal-about .modal-footer,
    #link-extra .modal-footer,
    #addTabModal .modal-footer {
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        /* Даем кнопке свободное место и заставляем её центрироваться */
        padding: 0 25px !important; 
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

/* Делаем синие кнопки на ПК компактными по центру */
#link-extra .modal-footer button,
#addTabModal .modal-footer button {
    max-width: 350px !important;
    background-color: #0d6efd !important;
    color: #ffffff !important;
    margin: 0 auto !important;
}

/* ========================================================================= */
/* ОКОНЧАТЕЛЬНЫЙ ФИКС ЦВЕТА И ВЫСОТЫ ФУТЕРОВ ДЛЯ ВСЕХ ОКН                    */
/* ========================================================================= */

/* --- 1. ТЁМНАЯ ТЕМА (.dark-mode) --- */
.dark-mode #link-extra .modal-content,
.dark-mode #link-extra .modal-body,
.dark-mode #link-extra .modal-footer,
.dark-mode #addTabModal .modal-content,
.dark-mode #addTabModal .modal-body,
.dark-mode #addTabModal .modal-footer {
    background-color: #1e293b !important; /* Намертво красим ВСЕ блоки окна в тёмный */
}
.dark-mode #link-extra .modal-footer button,
.dark-mode #addTabModal .modal-footer button {
    background-color: #0d6efd !important;
    color: #ffffff !important;
}

/* --- 2. СВЕТЛАЯ ТЕМА (когда класса .dark-mode НЕТ на body) --- */
body:not(.dark-mode) #link-extra .modal-content,
body:not(.dark-mode) #link-extra .modal-body,
body:not(.dark-mode) #link-extra .modal-footer,
body:not(.dark-mode) #addTabModal .modal-content,
body:not(.dark-mode) #addTabModal .modal-body,
body:not(.dark-mode) #addTabModal .modal-footer {
    background-color: #ffffff !important; /* Намертво красим ВСЕ блоки окна в чистый белый */
}
body:not(.dark-mode) #link-extra .modal-footer button,
body:not(.dark-mode) #addTabModal .modal-footer button {
    background-color: #0d6efd !important;
    color: #ffffff !important;
}

/* --- 3. ИДЕАЛЬНОЕ ПРИПОДНИМАНИЕ КНОПОК НА ПК (БЕЗ ПРОЗРАЧНОСТИ) --- */
@media (min-width: 768px) {
    #link-extra .modal-dialog .modal-footer,
    #addTabModal .modal-dialog .modal-footer {
        bottom: 0 !important; /* Возвращаем футер строго в самый низ белой рамки */
        height: 66px !important; /* Немного увеличиваем общую высоту плашки на ПК */
        min-height: 66px !important;
        padding-bottom: 12px !important; /* Создаем аккуратный зазор снизу под синей кнопкой */
        display: flex !important;
        align-items: flex-start !important; /* Прижимаем кнопку к верху футера, приподнимая над краем */
    }
}

    /* ========================================================================= */
    /* ДОБАВЛЯЕМ ОТСТУП СНИЗУ ПОД КНОПКОЙ "ОБНОВИТЬ" НА ПК                      */
    /* ========================================================================= */

    /* Нацеливаемся на футер окна редактирования заметок на ПК */
    [id*="Modal"] .modal-footer,
    [id*="Note"] .modal-footer {
        position: absolute !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        
        /* Увеличиваем высоту плашки, чтобы поместился отступ */
        height: 66px !important;
        min-height: 66px !important;
        
        /* Выравниваем кнопку по верхнему краю и задаем зазор СНИЗУ */
        display: flex !important;
        align-items: flex-start !important; 
        padding: 10px 25px 12px 25px !important; /* 12px снизу приподнимут кнопку */
        
        border: none !important;
        z-index: 10 !important;
        border-radius: 0 0 16px 16px !important;
    }

    /* Делаем саму синюю кнопку компактной по центру на ПК, как в категориях */
    [id*="Modal"] .modal-footer button,
    [id*="Note"] .modal-footer button {
        max-width: 350px !important;
        margin: 0 auto !important;
        background-color: #0d6efd !important;
        color: #ffffff !important;
    }

/* Базовый стиль окон основного сайта */
.modal-main-site {
    border-radius: 16px !important;
    overflow: hidden;
}

/* Красивые плашки для вопросов в FAQ */
.faq-item-box {
    background-color: var(--bs-secondary-bg, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 10px;
    padding: 14px 16px;
    transition: background-color 0.2s ease;
}
.faq-item-box summary {
    cursor: pointer;
    outline: none;
    user-select: none;
    color: var(--bs-heading-color, #212529);
}
.faq-item-box[open] summary {
    color: #0d6efd; /* Цвет заголовка при раскрытии */
}

/* Автоматическая адаптация плашек под темную тему основного сайта */
[data-bs-theme="dark"] .faq-item-box,
.dark .faq-item-box {
    background-color: #2b3035 !important;
    border-color: #3d4246 !important;
}

.modal-main-site {
    border-radius: 16px !important;
    overflow: hidden; /* Обрезает углы плашек */
}

.faq-item-box {
    background-color: var(--bs-secondary-bg, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 10px;
    padding: 14px 16px;
    transition: background-color 0.2s ease;
}
.faq-item-box summary {
    cursor: pointer;
    outline: none;
    user-select: none;
}

/* ==========================================================================
   СТИЛИ ТЕМНОЙ ТЕМЫ ДЛЯ ОСНОВНОГО САЙТА (footer.php)
   ========================================================================== */

/* Фон самого модального окна и цвет текста */
[data-bs-theme="dark"] .modal-main-site,
.dark .modal-main-site {
    background-color: #1a1d20 !important; /* Глубокий темный фон */
    color: #e9ecef !important;
}

/* Фон плашек (аккордеонов) внутри FAQ в темной теме */
[data-bs-theme="dark"] .faq-item-box,
.dark .faq-item-box {
    background-color: #2b3035 !important;
    border-color: #3d4246 !important;
}

/* Цвет текста заголовков FAQ в темной теме */
[data-bs-theme="dark"] .faq-item-box summary,
.dark .faq-item-box summary {
    color: #f8f9fa !important;
}

/* Цвет заголовка FAQ при раскрытии плашки в темной теме */
[data-bs-theme="dark"] .faq-item-box[open] summary,
.dark .faq-item-box[open] summary {
    color: #0d6efd !important; /* Оставляем акцентный синий */
}

/* Текст ответа внутри плашки FAQ */
[data-bs-theme="dark"] .faq-item-box p,
.dark .faq-item-box p {
    color: #adb5bd !important;
}

/* Убираем белую полосу внизу на мобильных экранах */
@media (max-width: 576px) {
    #modal-about .modal-dialog,
    #modal-faq .modal-dialog {
        margin: 0.5rem !important; /* Уменьшаем внешние рамки */
        display: flex !important;
        align-items: center !important;
        min-height: calc(100% - 1rem) !important;
    }
    
    #modal-about .modal-content,
    #modal-faq .modal-content {
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        overflow: hidden !important; /* Намертво срезает любые вылезающие белые подложки */
    }
}

/* На всякий случай жестко красим фоновую подложку контента, 
   чтобы даже при микро-сдвигах там была темнота */
[data-bs-theme="dark"] #modal-about .modal-content,
[data-bs-theme="dark"] #modal-faq .modal-content,
.dark #modal-about .modal-content,
.dark #modal-faq .modal-content {
    background-color: #1a1d20 !important;
}
