/**
 * Комп'ютерна програма OSX
 *
 * @package    OSX
 * @copyright  2009-Present Патинко Юрій Сергійович
 * @author     Патинко Юрій Сергійович
 *
 * Темний режим сайту (Dark Mode / Безбар'єрність)
 * Активується класом .dark-theme на тезі <body>
 */

/* ==========================================================================
   1. ГЛОБАЛЬНА ПАЛІТРА ТА БАЗОВИЙ КАРКАС СТОРІНКИ
   ========================================================================== */
body.dark-theme {
    --theme-light-grey: #1a1e24;
    --root-c-bg: #121417;
    --root-c-bg-accent: #1e232b;
    --root-c-text: #f0f4f8;
    --root-c-link: #63b3ed;
    --bs-body-color: #f0f4f8;
    --search-icon-color: #ffffff;
    --auth-btn-bg: #242933;
    --auth-btn-text: #ffffff;
    --icon-btn-bg: #242933;
    --icon-btn-text: #ffffff;
    --header-bg-gradient: linear-gradient(180deg, #1e232b 0%, #121417 100%);
    background-color: #121417 !important;
    color: #f0f4f8 !important;
}

body.dark-theme #page-wrapper,
body.dark-theme main,
body.dark-theme #layout-main,
body.dark-theme .page-wrapper,
body.dark-theme .innerpage,
body.dark-theme .content-wrapper,
body.dark-theme .container-main {
    background-color: #121417 !important;
    color: #f0f4f8 !important;
}

/* Заголовки та текстові елементи */
body.dark-theme h1,
body.dark-theme h2,
body.dark-theme h3,
body.dark-theme h4,
body.dark-theme h5,
body.dark-theme h6,
body.dark-theme .heading,
body.dark-theme .text-headline,
body.dark-theme .title {
    color: #ffffff !important;
}

body.dark-theme p,
body.dark-theme span:not(.badge):not(.civil-badge):not(.civil-status-plaque),
body.dark-theme li,
body.dark-theme dl,
body.dark-theme dt,
body.dark-theme dd {
    color: #e2e8f0;
}

body.dark-theme a:not(.btn):not(.civil-btn-add):not(.vote-btn):not(.civil-status-plaque) {
    color: #63b3ed;
}

body.dark-theme a:not(.btn):not(.civil-btn-add):not(.vote-btn):not(.civil-status-plaque):hover {
    color: #90cdf4;
}

body.dark-theme hr,
body.dark-theme .divider {
    border-color: #171b21 !important;
}

/* Хлібні крихти (Breadcrumbs) та панель інструментів навігації */
body.dark-theme .breadcrumb,
body.dark-theme .breadcrumbs,
body.dark-theme .breadcrumb-wrap,
body.dark-theme .container-breadcrumb {
    background: transparent !important;
}

body.dark-theme .breadcrumb-item,
body.dark-theme .breadcrumb-item a,
body.dark-theme .breadcrumb-item span {
    color: #a0aec0 !important;
}

body.dark-theme .breadcrumb-item a:hover,
body.dark-theme .breadcrumb-item a:hover span {
    color: #63b3ed !important;
}

body.dark-theme .breadcrumb-item.active,
body.dark-theme .breadcrumb-item.active span {
    color: #ffffff !important;
}

body.dark-theme .breadcrumb-item + .breadcrumb-item::before {
    color: #718096 !important;
}

/* Іконка «На головну» (домик) в хлібних крихтах */
body.dark-theme .breadcrumb-item.home svg,
body.dark-theme .breadcrumb-item.home svg path,
body.dark-theme .home-icon svg,
body.dark-theme .home-icon svg path,
body.dark-theme .home-icon svg g {
    fill: #ffffff !important;
}

body.dark-theme .home-icon:hover svg,
body.dark-theme .home-icon:hover svg path {
    fill: #63b3ed !important;
}

/* Друк сторінки (принтер) */
body.dark-theme .container-breadcrumb .print-wrapper,
body.dark-theme .container-breadcrumb .print-wrapper svg,
body.dark-theme .container-breadcrumb .print-wrapper svg path,
body.dark-theme .container-breadcrumb .print-wrapper svg g,
body.dark-theme .print-icon svg,
body.dark-theme .print-icon svg path {
    fill: #ffffff !important;
}

body.dark-theme .container-breadcrumb .print-wrapper:hover svg,
body.dark-theme .container-breadcrumb .print-wrapper:hover svg path {
    fill: #63b3ed !important;
}

/* Додавання сторінки в обране (сердечко) */
body.dark-theme .container-breadcrumb .like:not(.active),
body.dark-theme .container-breadcrumb .heart-icon:not(.active) svg,
body.dark-theme .container-breadcrumb .heart-icon:not(.active) svg path,
body.dark-theme .container-breadcrumb .heart-icon:not(.active) svg g,
body.dark-theme .like.heart-icon:not(.active) svg,
body.dark-theme .like.heart-icon:not(.active) svg path {
    fill: #ffffff !important;
}

body.dark-theme .container-breadcrumb .like.active,
body.dark-theme .container-breadcrumb .like.active svg,
body.dark-theme .container-breadcrumb .like.active svg path,
body.dark-theme .container-breadcrumb .like.active svg g,
body.dark-theme .like.heart-icon.active svg,
body.dark-theme .like.heart-icon.active svg path {
    fill: #63b3ed !important;
}

body.dark-theme .container-breadcrumb .like:hover svg,
body.dark-theme .container-breadcrumb .like:hover svg path {
    filter: brightness(1.2) !important;
}

/* QR-код у хлібних крихтах */
body.dark-theme .container-breadcrumb .qr,
body.dark-theme .container-breadcrumb .qr svg,
body.dark-theme .container-breadcrumb .qr svg path,
body.dark-theme .container-breadcrumb .qr svg use {
    fill: #ffffff !important;
    filter: brightness(0) invert(1) !important;
}

/* Перемикачі режимів відображення новин та розділів (плитка, список, прев'ю, таблиця) */
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon svg,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon svg path,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon svg use,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon svg g,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon svg rect,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon svg circle,
body.dark-theme .view-mode-btn svg,
body.dark-theme .view-mode-btn svg path {
    fill: #cbd5e0 !important;
    filter: brightness(0) invert(0.85) !important;
}

body.dark-theme .container-breadcrumb .display-buttons a.svg-icon.active svg,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon.active svg path,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon.active svg use,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon.active svg rect,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon.active svg circle,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon:hover svg,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon:hover svg path,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon:hover svg use,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon:hover svg rect,
body.dark-theme .container-breadcrumb .display-buttons a.svg-icon:hover svg circle {
    fill: #ffffff !important;
    filter: brightness(0) invert(1) !important;
}

/* Загальні таблиці даних */
body.dark-theme table,
body.dark-theme .table {
    color: #f0f4f8 !important;
    border-color: #171b21 !important;
}

body.dark-theme table th,
body.dark-theme .table th {
    background-color: #242933 !important;
    color: #ffffff !important;
    border: 2px solid #171b21 !important;
}

body.dark-theme table td,
body.dark-theme .table td {
    background-color: #1a1e24 !important;
    color: #cbd5e0 !important;
    border: 2px solid #171b21 !important;
}

body.dark-theme table td a,
body.dark-theme .table td a {
    color: #63b3ed !important;
}

/* ==========================================================================
   СИСТЕМНІ FLASH-ПОВІДОМЛЕННЯ ТА СПОВІЩЕННЯ (HINT / SESSION MESSAGES / ALERTS)
   ========================================================================== */
body.dark-theme .fsgroup_sysmessage,
body.dark-theme fieldset.fsgroup_sysmessage {
    background-color: #1a1e24 !important;
    border: 2px solid #2d3748 !important;
    border-radius: 12px !important;
    color: #f0f4f8 !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

body.dark-theme .fsgroup_sysmessage p,
body.dark-theme .fsgroup_sysmessage span,
body.dark-theme .fsgroup_sysmessage div,
body.dark-theme .fsgroup_sysmessage li,
body.dark-theme .fsgroup_sysmessage ol {
    color: #f0f4f8 !important;
}

/* Успішне сповіщення (Success) */
body.dark-theme .fsgroup_sysmessage.success,
body.dark-theme .fsgroup_sysmessage.msg-successful,
body.dark-theme .alert-success {
    background-color: #0f2d1e !important;
    border: 2px solid #22c55e !important;
    color: #d1fae5 !important;
}

body.dark-theme .fsgroup_sysmessage.success legend,
body.dark-theme .fsgroup_sysmessage.msg-successful legend,
body.dark-theme .alert-success .alert-heading {
    color: #4ade80 !important;
    background: transparent !important;
}

body.dark-theme .fsgroup_sysmessage.success p,
body.dark-theme .fsgroup_sysmessage.success span,
body.dark-theme .fsgroup_sysmessage.success div,
body.dark-theme .fsgroup_sysmessage.success li {
    color: #d1fae5 !important;
}

/* Помилка (Error / Danger) */
body.dark-theme .fsgroup_sysmessage.error,
body.dark-theme .fsgroup_sysmessage.msg-warning,
body.dark-theme .alert-danger {
    background-color: #381216 !important;
    border: 2px solid #ef4444 !important;
    color: #fee2e2 !important;
}

body.dark-theme .fsgroup_sysmessage.error legend,
body.dark-theme .fsgroup_sysmessage.msg-warning legend,
body.dark-theme .alert-danger .alert-heading {
    color: #f87171 !important;
    background: transparent !important;
}

body.dark-theme .fsgroup_sysmessage.error p,
body.dark-theme .fsgroup_sysmessage.error span,
body.dark-theme .fsgroup_sysmessage.error div,
body.dark-theme .fsgroup_sysmessage.error li {
    color: #fee2e2 !important;
}

/* Попередження та нотатки (Notice / Warning / Info) */
body.dark-theme .fsgroup_sysmessage.notice,
body.dark-theme .alert-warning {
    background-color: #332609 !important;
    border: 2px solid #eab308 !important;
    color: #fef08a !important;
}

body.dark-theme .fsgroup_sysmessage.notice legend,
body.dark-theme .alert-warning .alert-heading {
    color: #facc15 !important;
    background: transparent !important;
}

body.dark-theme .fsgroup_sysmessage.notice p,
body.dark-theme .fsgroup_sysmessage.notice span,
body.dark-theme .fsgroup_sysmessage.notice div,
body.dark-theme .fsgroup_sysmessage.notice li {
    color: #fef08a !important;
}

body.dark-theme .alert-info {
    background-color: #132337 !important;
    border: 2px solid #3b82f6 !important;
    color: #bfdbfe !important;
}

body.dark-theme .alert-info .alert-heading {
    color: #60a5fa !important;
}

/* Кнопка закриття повідомлення (.close) */
body.dark-theme .fsgroup_sysmessage .close {
    opacity: 0.8 !important;
}

body.dark-theme .fsgroup_sysmessage .close:hover {
    opacity: 1 !important;
}

body.dark-theme .fsgroup_sysmessage .close:before,
body.dark-theme .fsgroup_sysmessage .close:after {
    background-color: #cbd5e0 !important;
}

body.dark-theme .fsgroup_sysmessage .close:hover:before,
body.dark-theme .fsgroup_sysmessage .close:hover:after {
    background-color: #ffffff !important;
}


/* ==========================================================================
   2. ШАПКА ТА ГОЛОВНЕ МЕНЮ САЙТУ (HEADER, MENU, SEARCH, ACCESSIBILITY)
   ========================================================================== */
body.dark-theme header.header,
body.dark-theme .header-gradient {
    background: #171a20 !important;
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .header-gradient::before {
    background: linear-gradient(180deg, #1e232b 0%, #121417 100%) !important;
    opacity: 0.95;
}

body.dark-theme .top-bar {
    background: transparent !important;
}

body.dark-theme .top-bar .official-website,
body.dark-theme .top-bar .organization-name {
    color: #ffffff !important;
}

body.dark-theme .accessibility-text {
    color: #e2e8f0 !important;
}

/* Іконка ока в налаштуваннях доступності */
body.dark-theme .item-eye .icon img,
body.dark-theme .accessibility-link .icon img,
body.dark-theme .item-eye img {
    filter: brightness(0) invert(1) !important;
}

body.dark-theme .item-eye svg,
body.dark-theme .item-eye svg path,
body.dark-theme .accessibility-link svg,
body.dark-theme .accessibility-link svg path {
    fill: #ffffff !important;
}

body.dark-theme .right-header svg,
body.dark-theme .right-header .cls-1 {
    fill: #ffffff !important;
}

body.dark-theme .search-icon-container.item-search svg path,
body.dark-theme .item-search svg path {
    fill: #ffffff !important;
}

/* Іконка герба України (Trident) в шапці поруч з «Дія» */
body.dark-theme .header-actions .icon-btn svg.trident path:first-child {
    stroke: #ffffff !important;
    fill: transparent !important;
}

body.dark-theme .header-actions .icon-btn svg.trident path:last-child {
    fill: #ffffff !important;
    stroke: transparent !important;
}

body.dark-theme .header-actions .icon-btn:hover svg.trident path:first-child {
    stroke: #63b3ed !important;
}

body.dark-theme .header-actions .icon-btn:hover svg.trident path:last-child {
    fill: #63b3ed !important;
}

/* Кнопка кабінету в шапці */
body.dark-theme .header .auth-btn,
body.dark-theme .cabinetMenu-open {
    background-color: #242933 !important;
    color: #ffffff !important;
    border: none !important;
}

body.dark-theme .header .auth-btn:hover,
body.dark-theme .cabinetMenu-open:hover {
    background-color: #171b21 !important;
    color: #63b3ed !important;
}

/* Головне меню сайту (без виділення рамкою та смугою) */
body.dark-theme .main-menu {
    --c-bg: transparent !important;
    --c-text: #f0f4f8 !important;
    --c-hover-text: #63b3ed !important;
    --c-bd-b: transparent !important;
    background: transparent !important;
    border: none !important;
}

body.dark-theme .main-menu .first-level > .nav-link {
    color: #f0f4f8 !important;
}

body.dark-theme .main-menu .first-level > .nav-link:hover,
body.dark-theme .main-menu .first-level.show > .nav-link,
body.dark-theme .main-menu .nav-item.active .nav-link {
    color: #63b3ed !important;
}

body.dark-theme .main-menu .first-level:hover > .nav-link:after,
body.dark-theme .main-menu .first-level.show > .nav-link:after {
    background-color: #63b3ed !important;
}

body.dark-theme .main-menu .dropdown-menu {
    background: #1e232b !important;
    border: none !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6) !important;
}

body.dark-theme .main-menu .dropdown-menu .nav-item,
body.dark-theme .dropdown-container.show.submenu-open > .dropdown-menu {
    background-color: #1e232b !important;
}

body.dark-theme .main-menu .dropdown-item,
body.dark-theme .main-menu .dropdown-menu .nav-link {
    color: #cbd5e0 !important;
    background: transparent !important;
}

body.dark-theme .main-menu .dropdown-item:hover,
body.dark-theme .main-menu .dropdown-menu .nav-link:hover {
    background: #242933 !important;
    color: #63b3ed !important;
}

body.dark-theme .main-menu .line {
    background-color: #4a5568 !important;
}

body.dark-theme .nav-item .line.more:after {
    --c-static: #4a5568 !important;
    --c-accent: #63b3ed !important;
}

body.dark-theme .main-menu .dropdown-back .nav-link {
    background-image: linear-gradient(#1e232b, #1e232b), var(--c-hover-grad-reversed) !important;
    border-color: transparent !important;
}

/* Мобільне меню та гамбургер */
body.dark-theme .navbar-toggler-mainMenu .menu-icon svg .cls-1,
body.dark-theme .right-header .navbar-toggler-mainMenu .menu-icon svg .cls-1 {
    fill: #ffffff !important;
}

body.dark-theme .navbar-toggler-mainMenu .close-icon svg .cls-1,
body.dark-theme .right-header .navbar-toggler-mainMenu .close-icon svg .cls-1 {
    fill: #ffffff !important;
}

body.dark-theme .navbar-collapse.navbar-mainMenu {
    background: transparent !important;
}

@media (max-width: 991.98px) {
    body.dark-theme .main-menu .navbar-mainMenu {
        background-color: #1a1e24 !important;
    }
}

/* Форма пошуку в шапці */
body.dark-theme .search-form,
body.dark-theme .search-wrap,
body.dark-theme .search-container {
    background: #1e232b !important;
    border: none !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7) !important;
}

body.dark-theme .search-form input,
body.dark-theme .search-input {
    background: #242933 !important;
    color: #ffffff !important;
    border: none !important;
}

body.dark-theme .search-form input::placeholder,
body.dark-theme .search-input::placeholder {
    color: #718096 !important;
}

body.dark-theme .search-form .search-button {
    background: #3182ce !important;
    color: #ffffff !important;
    border: none !important;
}

body.dark-theme .search-form .search-button:hover {
    background: #2b6cb0 !important;
}

body.dark-theme .search-mapsite_mapmenu,
body.dark-theme .search-mapsite_mapmenu span,
body.dark-theme .search-mapsite_mapmenu a {
    color: #a0aec0 !important;
}

body.dark-theme .search-mapsite_mapmenu a:hover {
    color: #63b3ed !important;
}

body.dark-theme .search-form .close-button {
    filter: invert(1) !important;
}

/* Панель безбар'єрності (.increase-font) */
body.dark-theme .increase-font {
    background: #090a0c !important;
    border-bottom: none !important;
}



body.dark-theme .increase-font .btn-normal-mode {
    color: #ffffff !important;
    background: rgba(34, 197, 94, 0.25) !important;
    border-color: #4ade80 !important;
    text-shadow: 0 0 14px rgba(74, 222, 128, 0.9) !important;
    box-shadow: 0 0 18px rgba(74, 222, 128, 0.6), inset 0 0 8px rgba(74, 222, 128, 0.35) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    margin-top: 8px;
}

body.dark-theme .increase-font .btn-normal-mode:hover {
    color: #ffffff !important;
    background: rgba(34, 197, 94, 0.25) !important;
    border-color: #4ade80 !important;
    text-shadow: 0 0 14px rgba(74, 222, 128, 0.9) !important;
    box-shadow: 0 0 18px rgba(74, 222, 128, 0.6), inset 0 0 8px rgba(74, 222, 128, 0.35) !important;
}

/* ==========================================================================
   3. МЕНЮ КАБІНЕТУ (CABINET MENU)
   ========================================================================== */
body.dark-theme .menu-type-cabinet,
body.dark-theme .header .dropdown-menu.menu-type-cabinet,
body.dark-theme .submenu.menu-type-cabinet {
    background-color: #1e232b !important;
    border: none !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7) !important;
}

body.dark-theme .menu-type-cabinet .heading-menu span,
body.dark-theme .menu-type-cabinet .heading-menu .name-item {
    color: #ffffff !important;
    font-weight: 500;
}

body.dark-theme .menu-type-cabinet .nav-link,
body.dark-theme .header .dropdown-menu.menu-type-cabinet .nav-link {
    color: #cbd5e0 !important;
}

body.dark-theme .menu-type-cabinet .nav-item:hover .nav-link,
body.dark-theme .header .dropdown-menu.menu-type-cabinet .nav-item:hover .nav-link {
    color: #63b3ed !important;
    text-decoration: none !important;
}

body.dark-theme .menu-type-cabinet .nav-separator,
body.dark-theme .menu-type-cabinet .navbar-nav:not(:first-child) {
    border-top: none !important;
}

body.dark-theme .menu-type-cabinet svg,
body.dark-theme .menu-type-cabinet svg path,
body.dark-theme .menu-type-cabinet .cls-1 {
    fill: #a0aec0 !important;
}

body.dark-theme .menu-type-cabinet .nav-item:hover svg,
body.dark-theme .menu-type-cabinet .nav-item:hover svg path,
body.dark-theme .menu-type-cabinet .nav-item:hover .cls-1 {
    fill: #63b3ed !important;
}

body.dark-theme .submenu.menu-type-cabinet::-webkit-scrollbar-thumb {
    background: #4a5568 !important;
}

/* ==========================================================================
   4. ПІДВАЛ САЙТУ (FOOTER)
   ========================================================================== */
body.dark-theme footer.footer,
body.dark-theme .footer-background {
    background: #0d0f12 !important;
    border-top: 2px solid #171b21 !important;
    color: #a0aec0 !important;
}

body.dark-theme footer.footer p,
body.dark-theme footer.footer span,
body.dark-theme footer.footer div {
    color: #a0aec0 !important;
}

body.dark-theme footer.footer a {
    color: #63b3ed !important;
}

body.dark-theme footer.footer a:hover {
    color: #90cdf4 !important;
}

body.dark-theme .footer-sitemap {
    border-bottom: none !important;
}

body.dark-theme .footer-sitemap svg,
body.dark-theme .footer-sitemap svg path {
    fill: #a0aec0 !important;
}

body.dark-theme .footer-copyrights {
    border-top: none !important;
    color: #718096 !important;
}

/* ==========================================================================
   5. ГОЛОВНА СТОРІНКА (MAINPAGE SECTIONS)
   ========================================================================== */
body.dark-theme .section-header {
    color: #ffffff !important;
}

/* Секція анонсів та нотаток */
body.dark-theme .events-section {
    background: #16181d !important;
    border-top: 2px solid #171b21 !important;
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .events-tabs .nav-link {
    color: #a0aec0 !important;
}

body.dark-theme .events-tabs .nav-link.active {
    color: #ffffff !important;
}

body.dark-theme .events-tabs .nav-link.active::after {
    background: #63b3ed !important;
}

body.dark-theme .month-link {
    color: #718096 !important;
}

body.dark-theme .month-link.is-active,
body.dark-theme .month-link[aria-pressed="true"],
body.dark-theme .month-link:hover {
    color: #63b3ed !important;
}

body.dark-theme .events-all-link,
body.dark-theme .events-all .wrap-all-link_link span {
    color: #63b3ed !important;
}

body.dark-theme .event-card {
    background: #1e232b !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}

body.dark-theme .event-date {
    color: #ffffff !important;
}

body.dark-theme .event-item time {
    color: #a0aec0 !important;
}

body.dark-theme .event-title {
    color: #ffffff !important;
}

body.dark-theme .event-item a {
    color: #e2e8f0 !important;
}

body.dark-theme .event-item a:hover {
    color: #63b3ed !important;
}

body.dark-theme .events-swiper .swiper-pagination-progressbar {
    background: #171b21 !important;
}

body.dark-theme .events-swiper .swiper-pagination-progressbar-fill {
    background: #63b3ed !important;
}

body.dark-theme .swiper-pagination .swiper-pagination-bullet-active {
    background: #63b3ed !important;
}

/* Секція проєктів рішень (Законодавство) */
body.dark-theme .laws-section {
    background: transparent !important;
}

body.dark-theme .laws-tabs .nav-link {
    color: #a0aec0 !important;
}

body.dark-theme .laws-tabs .nav-link.active {
    color: #ffffff !important;
    border-bottom-color: #63b3ed !important;
}

body.dark-theme .laws-tabs .nav-link:hover {
    color: #63b3ed !important;
}

body.dark-theme .laws-item-title {
    color: #f0f4f8 !important;
}

body.dark-theme .laws-item:hover .laws-item-title {
    color: #63b3ed !important;
}

body.dark-theme .meta-text {
    color: #a0aec0 !important;
}

body.dark-theme .pill-blue {
    background: #2b6cb0 !important;
    color: #ffffff !important;
}

body.dark-theme li.laws-list-item-innerpage {
    border-bottom: none !important;
}

/* Блок керівника (Leader Intro) */
body.dark-theme .leader-intro {
    background: #16181d !important;
    border-top: 2px solid #171b21 !important;
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .leader-photo {
    background: #1e232b !important;
    border: none !important;
}

body.dark-theme .quote-card {
    background: #1e232b !important;
    border: none !important;
}

body.dark-theme .quote-card p {
    color: #f0f4f8 !important;
}

body.dark-theme .leader-name {
    color: #ffffff !important;
}

body.dark-theme .leader-role {
    color: #a0aec0 !important;
}

body.dark-theme .leader-socials a {
    background: #242933 !important;
    border: none !important;
}

/* Секція послуг (Services) */
body.dark-theme .services-all {
    color: #63b3ed !important;
}

body.dark-theme .services-all::after {
    filter: invert(1) brightness(1.5) !important;
}

body.dark-theme .services-card {
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .services-thumb {
    background: #242933 !important;
    border: none !important;
    border-radius: 8px !important;
}

body.dark-theme .services-title {
    color: #ffffff !important;
}

body.dark-theme .services-card:hover .services-title {
    color: #63b3ed !important;
}

body.dark-theme .services-desc {
    color: #a0aec0 !important;
}

/* Секція корисних посилань (Useful Links) */
body.dark-theme .useful-links-section {
    background: #16181d !important;
    border-top: 2px solid #171b21 !important;
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .link-card {
    background: #1e232b !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35) !important;
}

body.dark-theme .link-card__title a {
    color: #ffffff !important;
}

body.dark-theme .link-card__title a:hover {
    color: #63b3ed !important;
}

body.dark-theme .link-card .btn {
    background: #242933 !important;
    color: #63b3ed !important;
    border: none !important;
}

body.dark-theme .link-card .btn:hover {
    background: #3182ce !important;
    color: #ffffff !important;
}

body.dark-theme .links-swiper-pagination .swiper-pagination-bullet-active {
    background: #63b3ed !important;
}

/* Секція галереї (Gallery) */
body.dark-theme .gallery-section {
    background: transparent !important;
}

body.dark-theme .media-tab {
    color: #a0aec0 !important;
}

body.dark-theme .media-tab.is-active {
    color: #ffffff !important;
}

body.dark-theme .media-tab::after {
    background: #63b3ed !important;
}

body.dark-theme .all-link {
    color: #63b3ed !important;
}

/* Посилання-стрілки на головній («Усі новини», «Усі звернення») */
body.dark-theme .wrap-all-link_link span {
    color: #63b3ed !important;
}

body.dark-theme .wrap-all-link_link:hover span {
    color: #90cdf4 !important;
}

body.dark-theme .wrap-all-link_link_icon {
    filter: invert(1) brightness(1.5) !important;
}

body.dark-theme .btn_default span {
    background: #242933 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   6. СТОРІНКА ПРОФІЛЮ ТА АВТОРИЗАЦІЯ (AUTH, PROFILE, USER)
   ========================================================================== */
body.dark-theme .white-wrapper,
body.dark-theme .section.not-white,
body.dark-theme .auth-profile .fields-wrapper {
    background: #1a1e24 !important;
    border: none !important;
    border-radius: 8px !important;
}

/* Diia UI-форма в профілі */
body.dark-theme .ui-form {
    --ui-text: #f0f4f8 !important;
    --ui-muted: #a0aec0 !important;
    --ui-line: #4a5568 !important;
}

body.dark-theme .ui-control {
    color: #f0f4f8 !important;
    border-bottom: 2px solid #4a5568 !important;
    background: transparent !important;
}

body.dark-theme .ui-control:focus,
body.dark-theme .ui-control:hover {
    border-bottom: 2px solid transparent !important;
    border-image: var(--ui-grad) 47% 0% !important;
    border-image-slice: 1 !important;
}

body.dark-theme .ui-label {
    color: #a0aec0 !important;
}

body.dark-theme .ui-control:focus + .ui-label,
body.dark-theme .ui-control:not(:placeholder-shown) + .ui-label,
body.dark-theme .ui-select + .ui-label,
body.dark-theme .ui-select ~ .ui-label {
    color: #63b3ed !important;
}

body.dark-theme .ui-arrow {
    filter: invert(1) !important;
}

body.dark-theme .ui-select option {
    background: #1e232b !important;
    color: #f0f4f8 !important;
}

body.dark-theme .ui-hint {
    background: #2a2512 !important;
    color: #fef08a !important;
    border: 1px solid #713f12 !important;
}

/* Тулбар кнопок у профілі */
body.dark-theme .toolbar {
    background: transparent !important;
}

body.dark-theme .toolbar .btn--secondary,
body.dark-theme .btn--secondary {
    --btn-bg: #242933 !important;
    --btn-fg: #e2e8f0 !important;
    --btn-bc: #4a5568 !important;
    background: #242933 !important;
    color: #e2e8f0 !important;
    border: 2px solid #4a5568 !important;
}

body.dark-theme .toolbar .btn--secondary:hover,
body.dark-theme .btn--secondary:hover {
    background: #171b21 !important;
    color: #ffffff !important;
    border-color: #63b3ed !important;
}

body.dark-theme .toolbar .btn--secondary-gradient-active,
body.dark-theme .btn--secondary-gradient-active {
    --btn-bg: #1e232b !important;
    --btn-fg: #ffffff !important;
    --btn-bc: #63b3ed !important;
    background: #1e232b !important;
    color: #ffffff !important;
    border: 2px solid #63b3ed !important;
}

/* Кнопки дій (Primary) */
body.dark-theme .btn--primary {
    background: #3182ce !important;
    color: #ffffff !important;
    border: none !important;
}

body.dark-theme .btn--primary::before {
    display: none !important;
}

body.dark-theme .btn--primary:hover,
body.dark-theme .btn--primary.is-hover {
    background: #2b6cb0 !important;
    color: #ffffff !important;
}

body.dark-theme .btn--primary:disabled,
body.dark-theme .btn--primary[disabled],
body.dark-theme button.btn--primary:disabled,
body.dark-theme button.btn--primary[disabled] {
    background: #242933 !important;
    color: #718096 !important;
    border: none !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
    pointer-events: none !important;
}

/* Плашка підтвердження авторизації (Email / Password Change) */
body.dark-theme .auth-notice-card {
    background: #231c0e !important;
    border: none !important;
    border-left: 4px solid #f59e0b !important;
    border-radius: 8px !important;
}

body.dark-theme .auth-notice-card__title {
    color: #fef08a !important;
}

body.dark-theme .auth-notice-card__desc {
    color: #fde68a !important;
}

body.dark-theme .auth-notice-card__link {
    color: #60a5fa !important;
    text-decoration-color: #60a5fa !important;
}

body.dark-theme .auth-notice-card__link:hover {
    color: #93c5fd !important;
    text-decoration-color: #93c5fd !important;
}

body.dark-theme .auth-notice-card__soc span {
    color: #fde68a !important;
}

body.dark-theme .auth-notice-card__soc-icons a {
    filter: brightness(1.2);
}

/* Сторінка зміни аватарки (.change_avatar, .upload-section) */
body.dark-theme .change_avatar .upload-section,
body.dark-theme .upload-section {
    background-color: #1a1e24 !important;
    border: none !important;
    border-radius: 12px !important;
}

body.dark-theme .image-types-message {
    color: #a0aec0 !important;
}

body.dark-theme .avatar-wrapper-title {
    color: #ffffff !important;
}

body.dark-theme .avatar-img {
    border: none !important;
    border-radius: 8px !important;
    background-color: #121417 !important;
}

body.dark-theme .btn-desc {
    color: #a0aec0 !important;
}

body.dark-theme #num_of_sel_files {
    color: #63b3ed !important;
    font-weight: 600 !important;
}

body.dark-theme input[type="file"].file-btn,
body.dark-theme input[type="file"].file {
    color: #cbd5e0 !important;
}

body.dark-theme input[type="file"]::file-selector-button,
body.dark-theme input[type="file"]::-webkit-file-upload-button {
    background: #242933 !important;
    color: #f0f4f8 !important;
    border: 1px solid #4a5568 !important;
    border-radius: 6px !important;
    padding: 6px 14px !important;
    cursor: pointer !important;
    transition: background-color 0.2s, border-color 0.2s;
}

body.dark-theme input[type="file"]::file-selector-button:hover,
body.dark-theme input[type="file"]::-webkit-file-upload-button:hover {
    background: #171b21 !important;
    border-color: #63b3ed !important;
}

body.dark-theme .crop-section,
body.dark-theme .crop-canvas-pane,
body.dark-theme .crop-img-wrapper {
    background: #1a1e24 !important;
}

body.dark-theme .jcrop-holder {
    border: none !important;
}

/* Автозаповнення полів форми браузером */
body.dark-theme .ui-control:-webkit-autofill,
body.dark-theme .ui-control:-webkit-autofill:hover,
body.dark-theme .ui-control:-webkit-autofill:focus,
body.dark-theme input:-webkit-autofill,
body.dark-theme input:-webkit-autofill:hover,
body.dark-theme input:-webkit-autofill:focus {
    -webkit-text-fill-color: #f0f4f8 !important;
    -webkit-box-shadow: 0 0 0px 1000px #1a1e24 inset !important;
    transition: background-color 5000s ease-in-out 0s;
}

/* Модальне вікно підтвердження паролю (.std-popup) */
body.dark-theme .std-popup {
    background-color: #1e232b !important;
    color: #f0f4f8 !important;
    border: none !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8) !important;
    border-radius: 16px !important;
}

body.dark-theme .std-popup .title-section h3 {
    color: #ffffff !important;
}

body.dark-theme .std-popup .content {
    color: #cbd5e0 !important;
}

body.dark-theme .confirm-password-form .ui-control {
    color: #ffffff !important;
    border-bottom: 2px solid #4a5568 !important;
    background: transparent !important;
}

body.dark-theme .confirm-password-form .ui-label {
    color: #a0aec0 !important;
}

body.dark-theme .confirm-password-form .message.success {
    color: #48bb78 !important;
}

body.dark-theme .confirm-password-form .message.error {
    color: #f56565 !important;
}

body.dark-theme .std-popup .close {
    filter: invert(1) !important;
}

body.dark-theme .std-popup .buttons button.silver {
    background: #242933 !important;
    color: #f0f4f8 !important;
    border: 1px solid #4a5568 !important;
}

body.dark-theme .input-block input[type="text"],
body.dark-theme .input-block textarea {
    background: #242933 !important;
    color: #ffffff !important;
    border: 1px solid #3b4252 !important;
}

body.dark-theme .field-title {
    color: #e2e8f0 !important;
}

/* Стандартна форма авторизації */
body.dark-theme .authorization {
    background: #1a1e24 !important;
    border: none !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
}

body.dark-theme .authorization h1,
body.dark-theme .authorization h2,
body.dark-theme .authorization h3,
body.dark-theme .authorization-title {
    color: #ffffff !important;
}

body.dark-theme .authorization p,
body.dark-theme .authorization label {
    color: #cbd5e0 !important;
}

body.dark-theme .authorization input.form-control,
body.dark-theme input.form-control,
body.dark-theme textarea.form-control,
body.dark-theme select.form-control {
    background: #242933 !important;
    border: 1px solid #3b4252 !important;
    color: #ffffff !important;
}

body.dark-theme .authorization input.form-control:focus,
body.dark-theme input.form-control:focus,
body.dark-theme textarea.form-control:focus,
body.dark-theme select.form-control:focus {
    border-color: #63b3ed !important;
    background: #282f3a !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.25) !important;
}

body.dark-theme .btn-send {
    background-color: #ecc94b !important;
    color: #1a202c !important;
    font-weight: 700 !important;
}

body.dark-theme .btn-send:hover {
    background-color: #d69e2e !important;
    color: #000000 !important;
}

body.dark-theme .soc-net p {
    color: #a0aec0 !important;
}

/* Модуль авторизації та кабінету Дія (.auth-module-container, .auth-card) */
body.dark-theme .auth-module-container {
    color: #f0f4f8 !important;
}

/* Картка форми авторизації / відновлення паролю */
body.dark-theme .auth-card,
body.dark-theme .auth-recover-container .auth-card {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45) !important;
    border-radius: 24px !important;
}

body.dark-theme .auth-card__title,
body.dark-theme .auth-recover-container .auth-card__title {
    color: #ffffff !important;
}

body.dark-theme .auth-card__subtitle,
body.dark-theme .auth-recover-container .auth-card__subtitle {
    color: #a0aec0 !important;
}

/* Поля вводу та лейбли */
body.dark-theme .auth-form__label,
body.dark-theme .auth-recover-container .auth-form__label {
    color: #e2e8f0 !important;
}

body.dark-theme .auth-form__forgot-link {
    color: #63b3ed !important;
}

body.dark-theme .auth-form__forgot-link:hover {
    color: #90cdf4 !important;
    text-decoration: underline !important;
}

body.dark-theme .auth-form__input,
body.dark-theme .auth-recover-container .auth-form__input {
    background: #242933 !important;
    border: 1.5px solid #2d3748 !important;
    color: #ffffff !important;
}

body.dark-theme .auth-form__input:focus,
body.dark-theme .auth-recover-container .auth-form__input:focus {
    background: #1e232b !important;
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.25) !important;
    color: #ffffff !important;
}

body.dark-theme .auth-form__input::placeholder,
body.dark-theme .auth-recover-container .auth-form__input::placeholder {
    color: #718096 !important;
}

/* Чекбокс «Запам'ятати мене» */
body.dark-theme .auth-checkbox {
    color: #cbd5e0 !important;
}

body.dark-theme .auth-checkbox input {
    accent-color: #3182ce !important;
}

/* Головна кнопка входу / відправки форми */
body.dark-theme .auth-form__submit-btn,
body.dark-theme .auth-recover-container .auth-form__submit-btn {
    background: #3182ce !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(49, 130, 206, 0.35) !important;
}

body.dark-theme .auth-form__submit-btn:hover,
body.dark-theme .auth-recover-container .auth-form__submit-btn:hover {
    background: #2b6cb0 !important;
    box-shadow: 0 6px 20px rgba(49, 130, 206, 0.45) !important;
    transform: translateY(-2px);
}

body.dark-theme .auth-form__submit-btn svg,
body.dark-theme .auth-recover-container .auth-form__submit-btn svg {
    stroke: #ffffff !important;
}

/* Права колонка з описом кабінету */
body.dark-theme .auth-base-col-info h3,
body.dark-theme .auth-info-subheading {
    color: #ffffff !important;
}

body.dark-theme .auth-info-text,
body.dark-theme .auth-recover-container .auth-info-text {
    color: #cbd5e0 !important;
}

/* Кнопка відновлення / дії (.auth-btn-outline) */
body.dark-theme .auth-btn-outline,
body.dark-theme .auth-recover-container .auth-btn-outline {
    border: 1.5px solid #63b3ed !important;
    color: #63b3ed !important;
    background: transparent !important;
}

body.dark-theme .auth-btn-outline:hover,
body.dark-theme .auth-recover-container .auth-btn-outline:hover {
    background: #63b3ed !important;
    color: #121417 !important;
}

/* Нижня секція провайдерів */
body.dark-theme .auth-providers-section__divider-line {
    border-bottom: 1px solid #2d3748 !important;
}

body.dark-theme .auth-providers-section__title {
    color: #a0aec0 !important;
}

body.dark-theme .auth-provider-row {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25) !important;
}

body.dark-theme .auth-provider-row__desc {
    color: #cbd5e0 !important;
}

/* Кнопка Google у темній темі */
body.dark-theme .auth-provider-btn--google {
    background: #242933 !important;
    border-color: #3b4252 !important;
    color: #f0f4f8 !important;
}

body.dark-theme .auth-provider-btn--google .auth-provider-btn__arrow {
    stroke: #cbd5e0 !important;
}

body.dark-theme .auth-provider-btn--google:hover {
    background: #2d3748 !important;
    border-color: #63b3ed !important;
    color: #ffffff !important;
}

body.dark-theme .auth-provider-btn--google:hover .auth-provider-btn__arrow {
    stroke: #63b3ed !important;
}

/* Кнопка Apple у темній темі */
body.dark-theme .auth-provider-btn--apple {
    background: #000000 !important;
    border-color: #3b4252 !important;
    color: #ffffff !important;
}

body.dark-theme .auth-provider-btn--apple:hover {
    background: #171b21 !important;
    border-color: #63b3ed !important;
}

/* Кнопка BankID у темній темі */
body.dark-theme .auth-provider-btn--bankid {
    background: #242933 !important;
    border-color: #3b4252 !important;
    color: #ffffff !important;
}

body.dark-theme .auth-provider-btn--bankid:hover {
    background: #2d3748 !important;
    border-color: #63b3ed !important;
}

/* Блок блокування відновлення паролю */
body.dark-theme .auth-block-limit-box {
    background: #381216 !important;
    border: 1.5px dashed #ef4444 !important;
}

body.dark-theme .auth-block-limit-icon {
    color: #f87171 !important;
}

body.dark-theme .auth-block-limit-title {
    color: #fca5a5 !important;
}

body.dark-theme .auth-block-limit-text {
    color: #fee2e2 !important;
}

body.dark-theme .auth-block-limit-timer {
    background: #1a1e24 !important;
    border: 1px solid #ef4444 !important;
    color: #fca5a5 !important;
}

body.dark-theme .auth-attempts-warning-badge {
    background: #332609 !important;
    border: 1px solid #eab308 !important;
    color: #fef08a !important;
}

body.dark-theme .auth-attempts-warning-badge svg {
    stroke: #facc15 !important;
}

/* Картка активації облікового запису */
body.dark-theme .auth-activate-card {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .auth-activate-icon {
    background: #242933 !important;
    color: #63b3ed !important;
}

body.dark-theme .auth-activate-email-badge {
    background: #242933 !important;
    border: 1px solid #2d3748 !important;
    color: #f0f4f8 !important;
}

body.dark-theme .auth-activate-instructions {
    color: #cbd5e0 !important;
}

body.dark-theme .auth-activate-note {
    color: #a0aec0 !important;
}

body.dark-theme .auth-activate-btn-resend {
    background: #242933 !important;
    border-color: #63b3ed !important;
    color: #63b3ed !important;
}

body.dark-theme .auth-activate-btn-resend:hover {
    background: #63b3ed !important;
    color: #121417 !important;
}


/* ==========================================================================
   7. ПРАВЕ МЕНЮ НА СТОРІНКАХ (RIGHT SIDEBAR MENU)
   ========================================================================== */
body.dark-theme .st-right_menu {
    border-color: #171b21 !important;
}

body.dark-theme .menu-type-inner {
    --bg: #1a1e24 !important;
    background-color: #1a1e24 !important;
    border: 2px solid #171b21 !important;
    border-radius: 12px !important;
}

body.dark-theme .menu-type-inner .name {
    color: #ffffff !important;
    background-color: transparent !important;
}

body.dark-theme .menu-type-inner .item:before {
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .menu-type-inner .item a {
    color: #cbd5e0 !important;
}

body.dark-theme .menu-type-inner .item a.active {
    color: #63b3ed !important;
    font-weight: 500;
}

body.dark-theme .menu-type-inner .item a:hover {
    color: #90cdf4 !important;
}

body.dark-theme .menu-type-inner .menu-icon {
    fill: #ffffff !important;
}

body.dark-theme .menu-type-inner .menu-icon svg rect.cls-1,
body.dark-theme .menu-type-inner .menu-icon svg .cls-1 {
    fill: #ffffff !important;
}

body.dark-theme .menu-type-inner .close-icon {
    fill: #a0aec0 !important;
}

body.dark-theme .menu-type-inner .close-icon svg path.cls-1,
body.dark-theme .menu-type-inner .close-icon svg .cls-1 {
    fill: #a0aec0 !important;
}

/* ==========================================================================
   8. ПІДРОЗДІЛИ ТА ВНУТРІШНІ СТАТТІ (DEPARTMENTS / ARTICLES)
   ========================================================================== */
body.dark-theme .dept-section {
    --muted: #a0aec0 !important;
}

body.dark-theme .dept-name {
    color: #ffffff !important;
}

body.dark-theme .dept-role,
body.dark-theme p.dept-role {
    color: #a0aec0 !important;
}

body.dark-theme .dept-contact__label {
    color: #a0aec0 !important;
}

body.dark-theme .dept-contact__value {
    color: #f0f4f8 !important;
}

body.dark-theme .dept-contact__value a {
    color: #63b3ed !important;
}

body.dark-theme .dept-contact__value a:hover {
    color: #90cdf4 !important;
}

/* Сітка підрозділів */
body.dark-theme .unit-list {
    --unit-border: 2px solid #171b21 !important;
    --unit-muted: #a0aec0 !important;
}

body.dark-theme .unit-row ~ .unit-row {
    border-top: 2px solid #171b21 !important;
}

body.dark-theme .unit-title {
    color: #ffffff !important;
}

body.dark-theme .unit-name {
    color: #f0f4f8 !important;
}

body.dark-theme .unit-role {
    color: #a0aec0 !important;
}

body.dark-theme .unit-label {
    color: #a0aec0 !important;
}

body.dark-theme .unit-link {
    color: #63b3ed !important;
}

body.dark-theme .unit-link:hover {
    color: #90cdf4 !important;
}

/* Списки з квадратними маркерами та лініями (завдання/співробітники) */
body.dark-theme .styled-list li p,
body.dark-theme .article-content-wrapper p ul li p,
body.dark-theme .article-content-wrapper .inner-content ul li p,
body.dark-theme section.ac ul li p {
    color: #cbd5e0 !important;
}

body.dark-theme .styled-list li:before,
body.dark-theme .styled-list li:after,
body.dark-theme .article-content-wrapper p ul li:before,
body.dark-theme .article-content-wrapper p ul li:after,
body.dark-theme .article-content-wrapper .inner-content ul li:before,
body.dark-theme .article-content-wrapper .inner-content ul li:after,
body.dark-theme section.ac ul li:before,
body.dark-theme section.ac ul li:after {
    background-color: #3182ce !important;
}

/* Документи підрозділу */
body.dark-theme .doc-item::before {
    filter: invert(1) brightness(1.5) !important;
}

body.dark-theme .doc-link {
    color: #63b3ed !important;
}

body.dark-theme .doc-link:hover {
    color: #90cdf4 !important;
}

/* Полосаті блоки підрозділів */
body.dark-theme div.striped_light_green:nth-child(odd) {
    background-color: #1a252c !important;
    border: none !important;
}

/* Таблиці у внутрішньому контенті підрозділів */
body.dark-theme .inner-content table,
body.dark-theme .article-content-wrapper table,
body.dark-theme .table-info-styled {
    --czo-lightblue: #242933 !important;
    --bs-body-color: #ffffff !important;
}

body.dark-theme .inner-content table th,
body.dark-theme .article-content-wrapper table th,
body.dark-theme .table-info-styled th {
    background-color: #242933 !important;
    border: 2px solid #171b21 !important;
    color: #ffffff !important;
}

body.dark-theme .inner-content table td,
body.dark-theme .article-content-wrapper table td,
body.dark-theme .table-info-styled td {
    background-color: #1a1e24 !important;
    border: 2px solid #171b21 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .inner-content table td a,
body.dark-theme .article-content-wrapper table td a,
body.dark-theme .table-info-styled td a {
    color: #63b3ed !important;
}

body.dark-theme td.dep-vote-answer-type-1 {
    background-color: #173b22 !important;
    color: #86efac !important;
}

body.dark-theme td.dep-vote-answer-type-2 {
    background-color: #451a1a !important;
    color: #fca5a5 !important;
}

body.dark-theme td.dep-vote-answer-type-3 {
    background-color: #3b2e10 !important;
    color: #fde047 !important;
}

body.dark-theme td.dep-vote-answer-type-4 {
    background-color: #242933 !important;
    color: #cbd5e0 !important;
}

/* Акордеони, спойлери та списки рішень (.ac, .ac-item, .ac-trigger, a.ac-link) */
body.dark-theme .ac {
    --c-bg: #121417 !important;
    --c-text: #f0f4f8 !important;
    --c-hover-bg: #1e232b !important;
    --c-hover-text: #63b3ed !important;
    --c-bd: #171b21 !important;
    border-bottom: 2px solid #171b21 !important;
    background: transparent !important;
}

body.dark-theme a.ac-link,
body.dark-theme .ac-trigger {
    background: #121417 !important;
    color: #f0f4f8 !important;
    border-top: 2px solid #171b21 !important;
}

body.dark-theme .ac--nested .ac-trigger,
body.dark-theme :where(.ac .ac) a.ac-link {
    border-top: 2px solid #171b21 !important;
}

body.dark-theme a.ac-link {
    color: #63b3ed !important;
}

body.dark-theme a.ac-link:hover,
body.dark-theme a.ac-link:active,
body.dark-theme .ac-trigger[aria-expanded="false"]:hover,
body.dark-theme .ac-trigger[aria-expanded="false"]:active {
    background: #1e232b !important;
    color: #90cdf4 !important;
}

body.dark-theme .ac-trigger[aria-expanded="true"] {
    background: #1a1e24 !important;
    color: #63b3ed !important;
}

body.dark-theme a.ac-link::after,
body.dark-theme .ac-trigger::after {
    filter: invert(1) brightness(1.8) !important;
}

body.dark-theme .ac-panel,
body.dark-theme .ac-panel__inner {
    background: #16191f !important;
    color: #cbd5e0 !important;
    border-bottom: none !important;
}

body.dark-theme .ac-panel__inner p,
body.dark-theme .ac-panel__inner span,
body.dark-theme .ac-panel__inner div,
body.dark-theme .ac-panel__inner li {
    color: #cbd5e0 !important;
}

body.dark-theme .ac-panel__inner a:not(.btn) {
    color: #63b3ed !important;
}

body.dark-theme .ac-panel__inner a:not(.btn):hover {
    color: #90cdf4 !important;
}

body.dark-theme :where(.ac .ac),
body.dark-theme .ac--nested {
    border: none !important;
}

body.dark-theme .ac--nested .ac-trigger {
    background: #16191f !important;
}

/* Рядки властивостей рішень та відкритих даних (so_diia, od_diia) */
body.dark-theme .od-stroke-row {
    background-color: #1a1e24 !important;
    border-bottom: none !important;
    color: #f0f4f8 !important;
}

body.dark-theme .od-stroke-row:hover {
    background-color: #242933 !important;
    border-bottom: none !important;
}

body.dark-theme .od-left-col {
    color: #a0aec0 !important;
}

body.dark-theme .od-right-col {
    color: #f0f4f8 !important;
}

/* ==========================================================================
   9. МОДУЛЬ НОВИН ТА СТАТЕЙ (NEWS, POSTS, ARTICLES)
   ========================================================================== */
body.dark-theme .posts_item {
    border-bottom: 2px solid #171b21 !important;
}

body.dark-theme .posts_item-date {
    color: #a0aec0 !important;
}

body.dark-theme .news-year-nav-item {
    background-color: #242933 !important;
    color: #cbd5e0 !important;
    border: 2px solid #171b21 !important;
}

body.dark-theme .news-year-nav-item:hover {
    background-color: #171b21 !important;
    color: #ffffff !important;
    border-color: #63b3ed !important;
}

body.dark-theme .news-year-nav-item.active {
    background-color: #3182ce !important;
    color: #ffffff !important;
    border-color: #63b3ed !important;
}

body.dark-theme .posts_item-hover {
    color: #ffffff !important;
}

body.dark-theme .posts_item-preview {
    background: #1c2027 !important;
}

body.dark-theme .news-card,
body.dark-theme .news-item,
body.dark-theme .article-card {
    background: #1a1e24 !important;
    border: none !important;
}

body.dark-theme .news-card:hover,
body.dark-theme .news-item:hover {
    border-color: transparent !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

body.dark-theme .article-page,
body.dark-theme .article-content,
body.dark-theme .articles-content {
    background: transparent !important;
    color: #e2e8f0 !important;
}

body.dark-theme .article-content p,
body.dark-theme .article-content span,
body.dark-theme .article-content li {
    color: #e2e8f0 !important;
}

body.dark-theme .article-content h1,
body.dark-theme .article-content h2,
body.dark-theme .article-content h3,
body.dark-theme .article-content h4,
body.dark-theme .article-content h5,
body.dark-theme .article-content h6 {
    color: #ffffff !important;
}

body.dark-theme .article-content blockquote {
    background: #1c2027 !important;
    border-left: 4px solid #63b3ed !important;
    color: #cbd5e0 !important;
}

/* Типографіка та заголовки статей */
body.dark-theme .page_title h1,
body.dark-theme .article-content-wrapper h1,
body.dark-theme .article-content-wrapper .h1,
body.dark-theme .article-content-wrapper h2,
body.dark-theme .article-content-wrapper .h2,
body.dark-theme .article-content-wrapper .h2-3,
body.dark-theme .article-content-wrapper h3,
body.dark-theme .article-content-wrapper .h3,
body.dark-theme .article-content-wrapper h4,
body.dark-theme .article-content-wrapper h5,
body.dark-theme .article-content-wrapper h6 {
    color: #ffffff !important;
}

body.dark-theme .page_title-date,
body.dark-theme .details-heading {
    color: #a0aec0 !important;
}

body.dark-theme .article-content-wrapper ol>li,
body.dark-theme .article-content-wrapper ol>li::before {
    color: #cbd5e0 !important;
}

body.dark-theme .article-content-wrapper a:not([class]) {
    color: #63b3ed !important;
}

body.dark-theme .article-content-wrapper a:not([class]):hover {
    color: #90cdf4 !important;
}

/* 1. Плашка завантаження файлу (.addfilegal) */
body.dark-theme .addfilegal {
    background-color: #1a1e24 !important;
    border: 2px solid #2d3748 !important;
    border-radius: 30px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.dark-theme .addfilegal:hover {
    border-color: #63b3ed !important;
    box-shadow: 0 4px 16px rgba(99, 179, 237, 0.15) !important;
}

body.dark-theme .addfilegal-filename,
body.dark-theme .addfilegal-filename span,
body.dark-theme .addfilegal-filename a {
    color: #f0f4f8 !important;
}

body.dark-theme .addfilegal-filename-cnt,
body.dark-theme .addfilegal-filename-ext {
    color: #a0aec0 !important;
}

body.dark-theme .addfilegal-download {
    background-color: #242933 !important;
    border: 2px solid #4a5568 !important;
    color: #ffffff !important;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

body.dark-theme .addfilegal-download a {
    color: #ffffff !important;
}

body.dark-theme .addfilegal:hover .addfilegal-download {
    background-color: #3182ce !important;
    border-color: #3182ce !important;
}

/* 2. Плашка підтримки матеріалу (.vote-support-box) */
body.dark-theme .vote-support-box {
    background: #1a1e24 !important;
    border: 2px solid #2d3748 !important;
    border-radius: 45px !important;
}

body.dark-theme .vote-support-label {
    color: #a0aec0 !important;
}

body.dark-theme .vote-support-count {
    color: #ffffff !important;
}

body.dark-theme .vote-support-target {
    color: #a0aec0 !important;
}

body.dark-theme .vote-support-btn--closed,
body.dark-theme .vote-support-btn--disabled {
    background-color: #242933 !important;
    color: #718096 !important;
    border: 2px solid #2d3748 !important;
}

body.dark-theme .vote-support-track {
    background-color: #242933 !important;
}

/* Статуси голосування (загальні) */
body.dark-theme .vote-status {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .vote-status--closed {
    background: #1a1e24 !important;
    border-color: #2d3748 !important;
    color: #a0aec0 !important;
}

body.dark-theme .vote-status--auth-required {
    background: #132337 !important;
    border-color: #1e3a5f !important;
    color: #93c5fd !important;
}

body.dark-theme .vote-status--voted {
    background: #0f2d1e !important;
    border-color: #22c55e !important;
    color: #d1fae5 !important;
}

body.dark-theme .vote-chart-wrapper {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .vote-chart-label > span {
    border-bottom-color: #2d3748 !important;
    color: #a0aec0 !important;
}

body.dark-theme .vote-chart-label > span b {
    color: #ffffff !important;
}

body.dark-theme .vote-chart-label > span span {
    color: #cbd5e0 !important;
}

/* 3. Система коментарів (.comment-form, .comments-list) */
body.dark-theme .comment-status {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .comment-status--closed {
    background: #1a1e24 !important;
    border-color: #2d3748 !important;
    color: #a0aec0 !important;
}

body.dark-theme .comment-status--auth {
    background: #132337 !important;
    border-color: #1e3a5f !important;
    color: #93c5fd !important;
}

body.dark-theme .comment-status--auth strong {
    color: #ffffff !important;
}

body.dark-theme .comment-status--auth p {
    color: #cbd5e0 !important;
}

body.dark-theme .comment-form {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .comment-form__label {
    color: #ffffff !important;
}

body.dark-theme .comment-form__textarea {
    background: #242933 !important;
    border: 1px solid #2d3748 !important;
    color: #ffffff !important;
}

body.dark-theme .comment-form__textarea:focus {
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.25) !important;
}

body.dark-theme .comment-form__counter {
    color: #718096 !important;
}

body.dark-theme .comments-list-header {
    border-bottom: 2px solid #2d3748 !important;
}

body.dark-theme .comments-list-header__title {
    color: #ffffff !important;
}

body.dark-theme .comments-list-header__title svg {
    stroke: #63b3ed !important;
}

body.dark-theme .comments-list-header__count {
    color: #a0aec0 !important;
}

body.dark-theme .comments-list-empty {
    background: #1a1e24 !important;
    border: 1px dashed #2d3748 !important;
    color: #a0aec0 !important;
}

body.dark-theme .comments-list-empty p {
    color: #a0aec0 !important;
}

body.dark-theme .comment-card {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .comment-card--unpublished {
    background: #231c0e !important;
    border: 1px dashed #f59e0b !important;
}

body.dark-theme .comment-card__author {
    color: #ffffff !important;
}

body.dark-theme .comment-card__time {
    color: #718096 !important;
}

body.dark-theme .comment-card__text {
    color: #cbd5e0 !important;
}

body.dark-theme .comment-avatar-img {
    border-color: #2d3748 !important;
}

body.dark-theme .comment-avatar-fallback {
    background: #242933 !important;
    color: #63b3ed !important;
}

body.dark-theme .comments-admin-wrapper {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .comments-admin-header {
    border-bottom: 2px solid #2d3748 !important;
}

/* 4. Панель адміністративних дій над матеріалом (.material-admin-toolbar) */
body.dark-theme .material-admin-toolbar {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
    border-left: 4px solid #3182ce !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3) !important;
}

body.dark-theme .material-admin-toolbar__badge {
    color: #e2e8f0 !important;
}

body.dark-theme .material-admin-toolbar__icon {
    color: #63b3ed !important;
}

body.dark-theme .material-admin-toolbar__meta {
    background: #242933 !important;
    color: #a0aec0 !important;
}

body.dark-theme .material-admin-btn {
    background: #242933 !important;
    border: 1px solid #2d3748 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .material-admin-btn:hover {
    background: #2d3748 !important;
    color: #ffffff !important;
    border-color: #4a5568 !important;
}

body.dark-theme .material-admin-btn--edit {
    background: #2563eb !important;
    border-color: #3b82f6 !important;
    color: #ffffff !important;
}

body.dark-theme .material-admin-btn--edit:hover {
    background: #1d4ed8 !important;
    border-color: #60a5fa !important;
    color: #ffffff !important;
}

body.dark-theme .material-admin-btn--comments {
    background: #132337 !important;
    border: 1px solid #1e3a5f !important;
    color: #60a5fa !important;
}

body.dark-theme .material-admin-btn--comments svg {
    stroke: #60a5fa !important;
}

body.dark-theme .material-admin-btn--comments:hover {
    background: #1e3a5f !important;
    color: #93c5fd !important;
}

body.dark-theme .material-admin-btn--votes {
    background: #0f2d1e !important;
    border: 1px solid #14532d !important;
    color: #4ade80 !important;
}

body.dark-theme .material-admin-btn--votes svg {
    stroke: #4ade80 !important;
}

body.dark-theme .material-admin-btn--votes:hover {
    background: #14532d !important;
    color: #86efac !important;
}

body.dark-theme .material-admin-btn--settings {
    background: #27173e !important;
    border: 1px solid #4c1d95 !important;
    color: #c084fc !important;
}

body.dark-theme .material-admin-btn--settings svg {
    stroke: #c084fc !important;
}

body.dark-theme .material-admin-btn--settings:hover {
    background: #4c1d95 !important;
    color: #e9d5ff !important;
}


/* ==========================================================================
   10. МОДУЛЬ «ГРОМАДСЬКІ ОБГОВОРЕННЯ» (CIVIL PROJECTS, VOTE, MANAGE)
   ========================================================================== */
body.dark-theme .civil-catalog-wrap,
body.dark-theme .civil-detail-wrap {
    color: #f7fafc !important;
}

body.dark-theme .civil-catalog-title {
    color: #ffffff !important;
}

body.dark-theme .civil-catalog-subtitle {
    color: #a0aec0 !important;
}

/* Фільтри каталогу */
body.dark-theme .civil-filters-card {
    background: #1a1e24 !important;
    border: none !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
}

body.dark-theme .civil-filter-label {
    color: #a0aec0 !important;
}

body.dark-theme .civil-select {
    background: #242933 !important;
    border: 1px solid #3b4252 !important;
    color: #f7fafc !important;
}

body.dark-theme .civil-select:focus {
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.2) !important;
}

body.dark-theme .civil-select option {
    background: #242933;
    color: #f7fafc;
}

body.dark-theme .civil-input {
    background: #242933 !important;
    border: 1px solid #3b4252 !important;
    color: #f7fafc !important;
}

body.dark-theme .civil-input:focus {
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.2) !important;
}

body.dark-theme .civil-search-btn {
    background: #171b21 !important;
    color: #e2e8f0 !important;
}

body.dark-theme .civil-search-btn:hover {
    background: #63b3ed !important;
    color: #121417 !important;
}

body.dark-theme .civil-btn-reset {
    background: #321c1f !important;
    border-color: #632328 !important;
    color: #fc8181 !important;
}

body.dark-theme .civil-btn-reset:hover {
    background: #e53e3e !important;
    color: #ffffff !important;
}

/* Сітка карток проектів */
body.dark-theme .civil-card {
    background: #1a1e24 !important;
    border: none !important;
    color: #f7fafc !important;
}

body.dark-theme .civil-card:hover {
    background: #1f242c !important;
    border-color: transparent !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

body.dark-theme .civil-card__id,
body.dark-theme .civil-card__comments-count {
    color: #a0aec0 !important;
}

body.dark-theme .civil-card__title a {
    color: #ffffff !important;
}

body.dark-theme .civil-card__title a:hover {
    color: #63b3ed !important;
}

body.dark-theme .civil-card__prevu {
    color: #a0aec0 !important;
}

body.dark-theme .civil-card__progress {
    background: #242933 !important;
}

body.dark-theme .civil-progress-info {
    color: #cbd5e0 !important;
}

body.dark-theme .civil-progress-bar {
    background: #171b21 !important;
}

body.dark-theme .civil-progress-bar__fill {
    background: #3182ce !important;
}

body.dark-theme .civil-card__footer {
    border-top: none !important;
}

body.dark-theme .civil-card__meta,
body.dark-theme .civil-meta-item {
    color: #a0aec0 !important;
}

body.dark-theme .civil-empty-state {
    background: #1a1e24 !important;
    border: none !important;
    color: #e2e8f0 !important;
}

body.dark-theme .civil-empty-title {
    color: #ffffff !important;
}

body.dark-theme .civil-empty-desc {
    color: #a0aec0 !important;
}

/* Детальна сторінка проекту */
body.dark-theme .civil-project-header h1 {
    color: #ffffff !important;
}

body.dark-theme .civil-admin-bar {
    background: #202630 !important;
    border: none !important;
}

body.dark-theme .civil-meta-info-col {
    background: #1a1e24 !important;
    border: none !important;
}

body.dark-theme .civil-meta-item .civil-meta-label {
    color: #a0aec0 !important;
}

body.dark-theme .civil-meta-item .civil-meta-val {
    color: #ffffff !important;
}

body.dark-theme .civil-status-dates-card {
    background: #1a1e24 !important;
    border: none !important;
}

body.dark-theme .civil-dates-card-dl dt {
    color: #a0aec0 !important;
}

body.dark-theme .civil-dates-card-dl dd {
    color: #ffffff !important;
}

body.dark-theme .civil-description-box {
    background: #1a1e24 !important;
    border: none !important;
    color: #e2e8f0 !important;
}

body.dark-theme .civil-description-box .civil-section-header,
body.dark-theme .civil-signatories-section .civil-section-header,
body.dark-theme .civil-comments-section .civil-section-header {
    color: #ffffff !important;
    border-bottom: none !important;
}

body.dark-theme .civil-vote-simple-box {
    background: #1a1e24 !important;
    border: none !important;
}

body.dark-theme .civil-vote-simple-box .civil-stat-big {
    color: #ffffff !important;
}

body.dark-theme .civil-vote-simple-box .civil-stat-target {
    color: #a0aec0 !important;
}

body.dark-theme .civil-vote-simple-box .civil-progress-sub {
    color: #cbd5e0 !important;
}

body.dark-theme .civil-signatures-container {
    background: #1a1e24 !important;
    border: none !important;
}

body.dark-theme .civil-card.civil-comments-wrap {
    background: #1a1e24 !important;
    border: none !important;
}

/* Віджети голосування (Vote) */
body.dark-theme .vote-action-box {
    background: #1a1e24 !important;
    border: none !important;
}

body.dark-theme .vote-status {
    color: #e2e8f0 !important;
}

body.dark-theme .vote-status--closed {
    background: #242933 !important;
    border-color: #3b4252 !important;
}

body.dark-theme .vote-status--auth-required {
    background: #202630 !important;
    border-color: #171b21 !important;
}

body.dark-theme .vote-status--voted {
    background: #172d23 !important;
    border-color: #22543d !important;
}

body.dark-theme .vote-tile-item {
    background: #242933 !important;
    border: none !important;
}

body.dark-theme .vote-tile-name {
    color: #ffffff !important;
}

body.dark-theme .vote-tile-date {
    color: #a0aec0 !important;
}

/* Бейджі та плашки статусів у темному режимі */
body.dark-theme .civil-badge.badge--green,
body.dark-theme .civil-status-plaque.status-green,
body.dark-theme .civil-status-plaque.status-active,
body.dark-theme .civil-status-plaque.status-review {
    background: #1c4532 !important;
    color: #9ae6b4 !important;
    border: 1px solid #276749 !important;
}

body.dark-theme .civil-badge.badge--yellow,
body.dark-theme .civil-status-plaque.status-yellow,
body.dark-theme .civil-status-plaque.status-moderation {
    background: #4a3a10 !important;
    color: #faf089 !important;
    border: 1px solid #744210 !important;
}

body.dark-theme .civil-badge.badge--blue,
body.dark-theme .civil-status-plaque.status-blue,
body.dark-theme .civil-status-plaque.status-consideration {
    background: #1a365d !important;
    color: #90cdf4 !important;
    border: 1px solid #2b6cb0 !important;
}

body.dark-theme .civil-badge.badge--gray,
body.dark-theme .civil-status-plaque.status-gray,
body.dark-theme .civil-status-plaque.status-closed {
    background: #171b21 !important;
    color: #cbd5e0 !important;
    border: 1px solid #4a5568 !important;
}

/* ==========================================================================
   11. ПАГІНАЦІЯ ТА ПОСТОРІНКОВА НАВІГАЦІЯ (PAGINATION)
   ========================================================================== */

/* Базовий контейнер пагінації */
body.dark-theme .pagination {
    background: transparent !important;
}

/* Елементи списку сторінок (стандартна пагінація Diia) */
body.dark-theme .pagination ul li a,
body.dark-theme .pagination ul li span,
body.dark-theme .pagination li a,
body.dark-theme .pagination li span {
    color: #cbd5e0 !important;
    background: transparent !important;
    border: 2px solid transparent !important;
    text-decoration: none !important;
}

/* Поточна (активна) сторінка */
body.dark-theme .pagination li a.current,
body.dark-theme .pagination li.current a,
body.dark-theme .pagination li.current span,
body.dark-theme .pagination li.active a,
body.dark-theme .pagination li.active span {
    color: #ffffff !important;
    background-color: #3182ce !important;
    border: 2px solid #63b3ed !important;
    font-weight: 600 !important;
    box-shadow: 0 0 12px rgba(99, 179, 237, 0.35) !important;
}

/* Наведення на номери сторінок */
body.dark-theme .pagination ul li a:hover,
body.dark-theme .pagination ul li span:hover,
body.dark-theme .pagination li a:hover,
body.dark-theme .pagination li span:hover {
    color: #ffffff !important;
    background-color: #242933 !important;
    border: 2px solid #63b3ed !important;
    text-decoration: none !important;
}

/* Неактивні елементи та крапки-пропуски (...) */
body.dark-theme .pagination a.disabled,
body.dark-theme .pagination li a.disabled,
body.dark-theme .pagination li span.disabled,
body.dark-theme .pagination .disabled span {
    color: #718096 !important;
    opacity: 0.5 !important;
    border-color: transparent !important;
    background: transparent !important;
}

/* Стрілки переходу Попередня / Наступна (.prev-page, .next-page) */
body.dark-theme .pagination .prev-page a,
body.dark-theme .pagination .prev-page span,
body.dark-theme .pagination .next-page a,
body.dark-theme .pagination .next-page span {
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    border-color: transparent !important;
    text-decoration: none !important;
    background: transparent !important;
}

body.dark-theme .pagination .prev-page a:hover,
body.dark-theme .pagination .prev-page span:hover,
body.dark-theme .pagination .next-page a:hover,
body.dark-theme .pagination .next-page span:hover {
    color: transparent !important;
    opacity: 1 !important;
    border-color: transparent !important;
    text-decoration: none !important;
    background: transparent !important;
}

/* Інверсія чорних SVG-стрілок у білий колір */
body.dark-theme .pagination .prev-page a:before,
body.dark-theme .pagination .prev-page span:before,
body.dark-theme .pagination .next-page a:before,
body.dark-theme .pagination .next-page span:before {
    filter: brightness(0) invert(1) !important;
}

body.dark-theme .pagination .prev-page a:hover:before,
body.dark-theme .pagination .prev-page span:hover:before,
body.dark-theme .pagination .next-page a:hover:before,
body.dark-theme .pagination .next-page span:hover:before {
    filter: brightness(0) invert(0.7) sepia(1) saturate(5) hue-rotate(175deg) !important;
}

/* Підписи до стрілок «Назад / Вперед» */
body.dark-theme .pagination .prev-page a:after,
body.dark-theme .pagination .prev-page span:after,
body.dark-theme .pagination .next-page a:after,
body.dark-theme .pagination .next-page span:after {
    color: #cbd5e0 !important;
}

body.dark-theme .pagination .prev-page a:hover:after,
body.dark-theme .pagination .prev-page span:hover:after,
body.dark-theme .pagination .next-page a:hover:after,
body.dark-theme .pagination .next-page span:hover:after {
    color: #63b3ed !important;
}

/* Bootstrap / модуль громадських обговорень / універсальна пагінація */
body.dark-theme .civil-page-link,
body.dark-theme .pagination .page-link {
    background-color: #1a1e24 !important;
    border: 2px solid #171b21 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .civil-page-link:hover,
body.dark-theme .pagination .page-link:hover {
    background-color: #242933 !important;
    border-color: #63b3ed !important;
    color: #ffffff !important;
}

body.dark-theme .civil-page-link.active,
body.dark-theme .pagination .page-item.active .page-link,
body.dark-theme .pagination .page-link.active {
    background-color: #3182ce !important;
    border-color: #63b3ed !important;
    color: #ffffff !important;
}

body.dark-theme .pagination .page-item.disabled .page-link {
    background-color: #16181d !important;
    border-color: #171b21 !important;
    color: #718096 !important;
    opacity: 0.5 !important;
}

/* ==========================================================================
   12. ЕЛЕКТРОННІ ПЕТИЦІЇ (E-PETITIONS / GOV-PET)
   ========================================================================== */

/* Інформаційні блоки та панелі головної сторінки петицій */
body.dark-theme .message-block {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .message-block .message {
    color: #e2e8f0 !important;
}

body.dark-theme .actions-panel {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .actions-section-title {
    color: #ffffff !important;
}

body.dark-theme .actions-section-desc {
    color: #a0aec0 !important;
}

body.dark-theme .actions-divider {
    background-color: #2d3748 !important;
}

body.dark-theme .petitions-list-title {
    color: #ffffff !important;
}

/* Кнопки в стилі Дія (Diia buttons) */
body.dark-theme .diia-btn {
    background-color: #242933 !important;
    border-color: #cbd5e0 !important;
    color: #ffffff !important;
}

body.dark-theme .diia-btn:hover {
    background-color: #3182ce !important;
    border-color: #3182ce !important;
    color: #ffffff !important;
}

body.dark-theme .diia-btn svg {
    stroke: #ffffff !important;
}

body.dark-theme .diia-btn:hover svg {
    stroke: #ffffff !important;
}

body.dark-theme .diia-btn-gradient {
    background: linear-gradient(135deg, #10b981 0%, #06b6d4 50%, #3b82f6 100%) !important;
    color: #ffffff !important;
    border: none !important;
}

body.dark-theme .diia-btn-gradient:hover {
    background: linear-gradient(135deg, #059669 0%, #0891b2 50%, #2563eb 100%) !important;
    border-color: transparent !important;
    box-shadow: 0 4px 14px rgba(6, 182, 212, 0.4) !important;
}

body.dark-theme .diia-btn-outline {
    border: 2px solid #63b3ed !important;
    background-color: transparent !important;
    color: #63b3ed !important;
}

body.dark-theme .diia-btn-outline:hover {
    background-color: #3182ce !important;
    border-color: #3182ce !important;
    color: #ffffff !important;
}

/* Картки петицій (Grid / Card) */
body.dark-theme .petition-card {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #3b82f6 0%, #8b5cf6 50%, #f43f5e 100%) border-box !important;
    border: 3px solid transparent !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

body.dark-theme .petition-card.active {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #1a73e8 0%, #14b8a6 100%) border-box !important;
}

body.dark-theme .petition-card.accepted {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #137333 0%, #a3e635 100%) border-box !important;
}

body.dark-theme .petition-card.declined {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #ec4899 0%, #d946ef 100%) border-box !important;
}

body.dark-theme .petition-card.moderation {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #6d727c 0%, #cbd5e0 100%) border-box !important;
}

body.dark-theme .petition-card:hover {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6) !important;
}

body.dark-theme .petition-card-title {
    color: #ffffff !important;
}

body.dark-theme .petition-signatures-count {
    background-color: #242933 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .petition-signatures-count .count-value {
    color: #63b3ed !important;
}

body.dark-theme .petition-card-footer {
    border-top-color: #2d3748 !important;
}

body.dark-theme .diia-card-btn {
    background-color: #242933 !important;
    border: 1.5px solid #4a5568 !important;
    color: #ffffff !important;
}

body.dark-theme .petition-card:hover .diia-card-btn,
body.dark-theme .diia-card-btn:hover {
    background-color: #3182ce !important;
    border-color: #63b3ed !important;
    color: #ffffff !important;
}

body.dark-theme .petition-date-info {
    color: #a0aec0 !important;
}

body.dark-theme .petition-date-info .date-highlight {
    color: #f0f4f8 !important;
}

/* Статусні бейджі петицій */
body.dark-theme .petition-status-badge.moderation,
body.dark-theme .status.arrowed.moderation {
    background-color: #332609 !important;
    color: #facc15 !important;
    border: 1px solid #744210 !important;
}

body.dark-theme .petition-status-badge.active,
body.dark-theme .status.arrowed.active {
    background-color: #1a365d !important;
    color: #90cdf4 !important;
    border: 1px solid #2b6cb0 !important;
}

body.dark-theme .petition-status-badge.accepted,
body.dark-theme .status.arrowed.accepted {
    background-color: #1c4532 !important;
    color: #9ae6b4 !important;
    border: 1px solid #276749 !important;
}

body.dark-theme .petition-status-badge.declined,
body.dark-theme .status.arrowed.declined {
    background-color: #381216 !important;
    color: #f87171 !important;
    border: 1px solid #ef4444 !important;
}

/* Панель фільтрів та пошуку списку петицій */
body.dark-theme .buttons-wrapper.filters {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .diia-filter-input {
    background-color: #242933 !important;
    border: 1px solid #3b4252 !important;
    color: #ffffff !important;
}

body.dark-theme .diia-filter-input:focus {
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.2) !important;
}

body.dark-theme .diia-filter-select {
    background-color: #242933 !important;
    border: 1px solid #3b4252 !important;
    color: #ffffff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
}

body.dark-theme .diia-filter-select:focus {
    border-color: #63b3ed !important;
}

body.dark-theme .diia-filter-btn {
    background-color: #3182ce !important;
    border-color: #3182ce !important;
    color: #ffffff !important;
}

body.dark-theme .diia-filter-btn:hover {
    background-color: #2b6cb0 !important;
    border-color: #2b6cb0 !important;
}

body.dark-theme .diia-filter-btn svg {
    stroke: #ffffff !important;
}

body.dark-theme .reset-filter-button {
    background-color: transparent !important;
    border: 2px solid #4a5568 !important;
    color: #a0aec0 !important;
}

body.dark-theme .reset-filter-button:hover {
    border-color: #63b3ed !important;
    color: #63b3ed !important;
}

/* Детальний перегляд петиції */
body.dark-theme .rqst-theme-wrapper {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .rqst-theme-title {
    color: #ffffff !important;
}

body.dark-theme .rqst-theme-txt {
    color: #e2e8f0 !important;
}

body.dark-theme .theme-author {
    color: #a0aec0 !important;
}

body.dark-theme .theme-author b {
    color: #ffffff !important;
}

body.dark-theme .petition-meta-container {
    border-top: 1px solid #2d3748 !important;
}

body.dark-theme .petition-meta-info .meta-item {
    color: #cbd5e0 !important;
}

body.dark-theme .petition-meta-info .meta-item b {
    color: #ffffff !important;
}

body.dark-theme .petition-meta-info .meta-item span {
    color: #f0f4f8 !important;
}

body.dark-theme .petition-meta-info .meta-item span a {
    color: #63b3ed !important;
}

body.dark-theme .petition-meta-status {
    background-color: #242933 !important;
}

body.dark-theme .petition-meta-status .petition-date-info .date-item {
    color: #a0aec0 !important;
}

body.dark-theme .petition-meta-status .petition-date-info .date-highlight {
    color: #ffffff !important;
}

/* Кругова діаграма прогресу збору підписів */
body.dark-theme .chart-wrapper {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .chart-label > span {
    color: #a0aec0 !important;
    border-bottom: 1px solid #2d3748 !important;
}

body.dark-theme .chart-label > span b {
    color: #ffffff !important;
}

body.dark-theme .chart-label > span #count_sign,
body.dark-theme .chart-label > span #count_sign_to {
    color: #63b3ed !important;
}

/* Офіційна відповідь на петицію */
body.dark-theme .rqst-answr-wrapper {
    background-color: #0f2d1e !important;
    border: 1.5px solid #22c55e !important;
}

body.dark-theme .rqst-answr-wrapper .titlelabel {
    color: #4ade80 !important;
}

body.dark-theme .rqst-answr-txt {
    color: #d1fae5 !important;
}

/* Сповіщення про підписання та системні підказки */
body.dark-theme .petition-signed-notice,
body.dark-theme .system-hint-wrapper {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .petition-signed-notice .signed-message-badge {
    background-color: #0f2d1e !important;
    border: 1.5px solid #22c55e !important;
    color: #4ade80 !important;
}

/* Форма голосування / підписання петиції */
body.dark-theme .petition-form.comment {
    background-color: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
}

body.dark-theme .petition-form.comment .field-set p {
    color: #ffffff !important;
}

body.dark-theme .petition-form.comment .field-set input[type="text"] {
    background-color: #242933 !important;
    border: 1px solid #3b4252 !important;
    color: #ffffff !important;
}

body.dark-theme .petition-form.comment .field-set input[type="text"]:focus {
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 3px rgba(99, 179, 237, 0.2) !important;
}

body.dark-theme .field-error {
    color: #f87171 !important;
}

body.dark-theme .petition-form.comment input[type="submit"],
body.dark-theme .petition-form.comment button[type="submit"],
body.dark-theme .captcha-wrapper input[type="submit"],
body.dark-theme .captcha-wrapper button[type="submit"] {
    background-color: #3182ce !important;
    border: 2px solid #3182ce !important;
    color: #ffffff !important;
}

body.dark-theme .petition-form.comment input[type="submit"]:hover,
body.dark-theme .petition-form.comment button[type="submit"]:hover,
body.dark-theme .captcha-wrapper input[type="submit"]:hover,
body.dark-theme .captcha-wrapper button[type="submit"]:hover {
    background-color: #2b6cb0 !important;
    border-color: #2b6cb0 !important;
}

/* Список підписантів (Signatures) */
body.dark-theme .signature-warning-block {
    background-color: #381216 !important;
    border: 1px solid #ef4444 !important;
}

body.dark-theme .signature-warning-block .signature-warning-text {
    color: #fee2e2 !important;
}

body.dark-theme .signature-card {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #137333 0%, #a3e635 100%) border-box !important;
    border: 2.5px solid transparent !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

body.dark-theme .signature-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6) !important;
}

body.dark-theme .signature-card.accepted {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #137333 0%, #a3e635 100%) border-box !important;
}

body.dark-theme .signature-card.declined {
    background: linear-gradient(#1a1e24, #1a1e24) padding-box,
                linear-gradient(135deg, #ec4899 0%, #d946ef 100%) border-box !important;
}

body.dark-theme .signature-fio {
    color: #ffffff !important;
}

body.dark-theme .signature-date {
    color: #a0aec0 !important;
}

body.dark-theme .signature-date b {
    color: #f0f4f8 !important;
}

body.dark-theme .signature-comment {
    background-color: #242933 !important;
    color: #e2e8f0 !important;
}

body.dark-theme .signature-admin-info {
    background-color: #242933 !important;
    color: #cbd5e0 !important;
}

body.dark-theme .signature-admin-info b {
    color: #ffffff !important;
}

body.dark-theme .signature-admin-info a {
    color: #63b3ed !important;
}

body.dark-theme .signature-card-action .diia-card-btn {
    border: 2px solid #4a5568 !important;
}

body.dark-theme .signature-card-action .diia-card-btn.btn-red {
    background-color: #991b1b !important;
    border-color: #ef4444 !important;
    color: #ffffff !important;
}

body.dark-theme .signature-card-action .diia-card-btn.btn-green {
    background-color: #166534 !important;
    border-color: #22c55e !important;
    color: #ffffff !important;
}

/* Форма подання петиції (Petition Add Form) */
body.dark-theme .petition-add-form {
    color: #f0f4f8 !important;
}

body.dark-theme .petition-add-form .field-set p {
    color: #ffffff !important;
}

body.dark-theme .petition-add-form input[type="text"],
body.dark-theme .petition-add-form textarea,
body.dark-theme input.field_datepicker {
    background-color: #1a1e24 !important;
    border: 1px solid #3b4252 !important;
    color: #ffffff !important;
}

body.dark-theme .petition-add-form input[type="text"]:focus,
body.dark-theme .petition-add-form textarea:focus,
body.dark-theme input.field_datepicker:focus {
    border-color: #63b3ed !important;
    box-shadow: 0 0 0 2px rgba(99, 179, 237, 0.2) !important;
}

body.dark-theme .petition-add-form .field-error {
    color: #f87171 !important;
}

body.dark-theme .petition-add-form .diia-btn {
    background: #3182ce !important;
    border: 2px solid #3182ce !important;
    color: #ffffff !important;
}

body.dark-theme .petition-add-form .diia-btn:hover {
    background: #2b6cb0 !important;
    border-color: #2b6cb0 !important;
}

/* Сторінка авторизації BankID для петицій */
body.dark-theme .pet-logon-page {
    background: #1a1e24 !important;
    border: 1px solid #2d3748 !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5) !important;
}

body.dark-theme .pet-logon-page .content-header {
    color: #ffffff !important;
}

body.dark-theme .bankid-btn {
    background: #242933 !important;
    border: 2px solid #4a5568 !important;
    color: #ffffff !important;
}

body.dark-theme .bankid-btn:hover {
    background: #3182ce !important;
    border-color: #3182ce !important;
    color: #ffffff !important;
}

body.dark-theme .bankid-btn__hint {
    color: #a0aec0 !important;
}