/* ========================================
   Тёмная тема (активируется через класс body.dark)
   ======================================== */
body.dark,
body.dark .bg-light {
    background-color: #121212 !important;
    color: #e0e0e0;
}

/* Навбар в тёмной теме */
body.dark .navbar-dark {
    background-color: #000 !important;
}
body.dark .navbar-dark .navbar-nav .nav-link {
    color: #ccc;
}
body.dark .navbar-dark .navbar-nav .nav-link:hover {
    color: #fff;
}

/* Карточки */
body.dark .card,
body.dark .list-group-item,
body.dark .border.rounded.p-3.bg-white,
body.dark .accordion-item,
body.dark .modal-content {
    background-color: #1e1e2e !important;
    border-color: #333 !important;
    color: #e0e0e0;
}
body.dark .card-title,
body.dark .card-text {
    color: #ddd;
}
body.dark .card-footer {
    background-color: #2a2a3a;
    border-top-color: #444;
}

/* Таблицы */
body.dark .table {
    color: #ddd;
    background-color: #1e1e2e;
}
body.dark .table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: #2a2a3a;
}
body.dark .table-bordered {
    border-color: #444;
}
body.dark .table-bordered td,
body.dark .table-bordered th {
    border-color: #444;
}

/* Формы */
body.dark .form-control,
body.dark .form-select,
body.dark .input-group-text {
    background-color: #2d2d44;
    border-color: #555;
    color: #e0e0e0;
}
body.dark .form-control:focus,
body.dark .form-select:focus {
    background-color: #3a3a55;
    border-color: var(--primary);
    color: #fff;
}
body.dark .form-check-input {
    background-color: #2d2d44;
    border-color: #555;
}
body.dark .form-check-input:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

/* Кнопки (адаптация под тёмную тему) */
body.dark .btn-outline-secondary {
    color: #ccc;
    border-color: #555;
}
body.dark .btn-outline-secondary:hover {
    background-color: #555;
    color: #fff;
}
body.dark .btn-light {
    background-color: #444;
    border-color: #555;
    color: #eee;
}
body.dark .btn-light:hover {
    background-color: #555;
}

/* Модальные окна */
body.dark .modal-header,
body.dark .modal-footer {
    border-color: #444;
    background-color: #1e1e2e;
}
body.dark .close {
    color: #fff;
}

/* Аккордеон */
body.dark .accordion-button {
    background-color: #1e1e2e;
    color: #e0e0e0;
}
body.dark .accordion-button:not(.collapsed) {
    background-color: #2a2a3a;
    color: var(--primary);
}
body.dark .accordion-body {
    background-color: #1e1e2e;
    border-top: 1px solid #444;
}

/* Баннеры и партнёры */
body.dark .bg-white {
    background-color: #1e1e2e !important;
}
body.dark .text-dark {
    color: #e0e0e0 !important;
}
body.dark .alert-info {
    background-color: #2a3a4a;
    border-color: #1e5a7a;
    color: #cce5ff;
}

/* Футер */
body.dark footer {
    background-color: #0a0a0a !important;
}
body.dark footer a {
    color: #aaa !important;
}
body.dark footer a:hover {
    color: #fff !important;
}
body.dark footer img {
    filter: brightness(0.8);
}