﻿/* ===== CRM LMS — Dark Theme ===== */

[data-theme="dark"] {
  --primary: #009C4D;
  --primary-dark: #007a3d;
  --primary-light: rgba(0, 156, 77, 0.15);
  --success: #28C76F;
  --warning: #FF9F43;
  --danger: #EA5455;
  --info: #00CFE8;
  --border-color: #3b3b5c;
  --bg-body: #161625;
  --text-muted: #7c7c9a;
  --text-body: #b4b4cc;
  --text-dark: #d4d4ec;
  --card-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.4);
  --sidebar-bg: #1e1e2d;
  --topbar-bg: #1e1e2d;
  color-scheme: dark;
}

/* ── Base ── */
[data-theme="dark"] html,
[data-theme="dark"] body {
  background: var(--bg-body);
  color: var(--text-body);
}

/* ── Sidebar ── */
[data-theme="dark"] .main-menu {
  background: var(--sidebar-bg);
  box-shadow: 2px 0 20px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .main-menu .navbar-header {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .brand-text {
  color: var(--text-dark);
}

[data-theme="dark"] .shadow-bottom {
  background: linear-gradient(var(--sidebar-bg) 41%, rgba(30, 30, 45, 0.11) 95%, rgba(30, 30, 45, 0));
}

[data-theme="dark"] li.navigation-header {
  color: var(--text-muted);
}

[data-theme="dark"] .navigation-main .nav-item > a {
  color: var(--text-body);
}

[data-theme="dark"] .navigation-main .nav-item > a i {
  color: var(--text-muted);
}

[data-theme="dark"] .navigation-main .nav-item > a:hover {
  background: rgba(0, 156, 77, 0.12);
  color: var(--primary);
}

[data-theme="dark"] .navigation-main .nav-item > a:hover i {
  color: var(--primary);
}

/* ── Navbar / Topbar ── */
[data-theme="dark"] .header-navbar {
  background: var(--topbar-bg);
}

[data-theme="dark"] .header-navbar.floating-nav {
  box-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .navbar-container .nav.navbar-nav .nav-link {
  color: var(--text-body);
}

[data-theme="dark"] .navbar-container .nav.navbar-nav .nav-link:hover {
  background: var(--primary-light);
  color: var(--primary);
}

[data-theme="dark"] .user-nav .user-name {
  color: var(--text-dark);
}

[data-theme="dark"] .user-nav .user-status {
  color: var(--text-muted);
}

[data-theme="dark"] .notif-badge {
  border-color: var(--topbar-bg);
}

/* ── Cards ── */
[data-theme="dark"] .card,
[data-theme="dark"] .stat-card,
[data-theme="dark"] .table-card,
[data-theme="dark"] .filter-bar,
[data-theme="dark"] .form-container {
  background: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .form-title,
[data-theme="dark"] .section-title {
  color: var(--text-body);
}

[data-theme="dark"] .form-subtitle,
[data-theme="dark"] .form-label {
  color: var(--text-muted);
}

[data-theme="dark"] .card-header {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .card-title,
[data-theme="dark"] .page-title,
[data-theme="dark"] .stat-value,
[data-theme="dark"] .kpi-val {
  color: var(--text-dark);
}

[data-theme="dark"] .card-footer {
  border-top-color: var(--border-color);
}

/* ── Tables ── */
[data-theme="dark"] .table {
  color: var(--text-body);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--border-color);
}

[data-theme="dark"] .table thead th {
  background: #252535;
  border-bottom-color: var(--border-color);
  color: var(--text-muted);
}

[data-theme="dark"] .table tbody td {
  border-color: var(--border-color);
}

[data-theme="dark"] .table tbody tr:hover {
  background: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-accent-bg: rgba(255, 255, 255, 0.02);
}

/* ── Forms ── */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select {
  background-color: #252535;
  border-color: var(--border-color);
  color: var(--text-dark);
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
  background-color: #252535;
  border-color: var(--primary);
  color: var(--text-dark);
  box-shadow: 0 3px 10px 0 rgba(0, 156, 77, 0.25);
}

[data-theme="dark"] .form-control::placeholder {
  color: var(--text-muted);
}

[data-theme="dark"] .form-label {
  color: var(--text-dark);
}

[data-theme="dark"] .form-check-input {
  background-color: #252535;
  border-color: var(--border-color);
}

[data-theme="dark"] .input-group-text {
  background-color: #252535;
  border-color: var(--border-color);
  color: var(--text-body);
}

/* ── Dropdowns ── */
[data-theme="dark"] .dropdown-menu {
  background-color: #1e1e2d;
  border-color: var(--border-color);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .dropdown-item {
  color: var(--text-body);
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
  background-color: rgba(0, 156, 77, 0.1);
  color: var(--primary);
}

[data-theme="dark"] .dropdown-item.active {
  background-color: var(--primary);
  color: #fff;
}

[data-theme="dark"] .dropdown-divider {
  border-color: var(--border-color);
}

[data-theme="dark"] .dropdown-header {
  color: var(--text-muted);
}

/* ── Modals ── */
[data-theme="dark"] .modal-content {
  background-color: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .modal-header {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .modal-footer {
  border-top-color: var(--border-color);
}

[data-theme="dark"] .modal-title {
  color: var(--text-dark);
}

[data-theme="dark"] .btn-close {
  filter: invert(1) grayscale(1) brightness(1.5);
}

/* ── Badges ── */
[data-theme="dark"] .badge.bg-light {
  background-color: #252535 !important;
  color: var(--text-body) !important;
}

/* ── Alerts ── */
[data-theme="dark"] .alert {
  border-color: transparent;
}

/* ── Footer ── */
[data-theme="dark"] .footer {
  background: #1e1e2d;
  border-top-color: var(--border-color);
  color: var(--text-muted);
}

/* ── Page header ── */
[data-theme="dark"] .page-header {
  color: var(--text-dark);
}

/* ── Info list ── */
[data-theme="dark"] .info-row {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .info-label {
  color: var(--text-muted);
}

/* ── Scrollbar ── */
[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: #3b3b5c;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: #5050a0;
}

/* ── Org / Server switcher dropdowns ── */
[data-theme="dark"] .org-dropdown,
[data-theme="dark"] .server-dropdown {
  background: #1e1e2d;
  border-color: var(--border-color);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .org-dropdown-header {
  border-bottom-color: var(--border-color);
  color: var(--text-muted);
}

[data-theme="dark"] .org-current {
  background: #252535;
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .org-item {
  border-bottom-color: #252535;
  color: var(--text-body);
}

[data-theme="dark"] .org-item:hover {
  background: rgba(0, 156, 77, 0.1);
}

[data-theme="dark"] .org-item.active {
  background: rgba(0, 156, 77, 0.15);
  color: var(--primary);
}

[data-theme="dark"] .org-button,
[data-theme="dark"] .server-btn {
  background: #252535;
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .org-button:hover,
[data-theme="dark"] .server-btn:hover {
  background: #2d2d3f;
  border-color: var(--primary);
}

[data-theme="dark"] .org-name {
  color: var(--text-muted);
}

/* ── Drawer ── */
[data-theme="dark"] .drawer-panel {
  background: #1e1e2d;
  border-left-color: var(--border-color);
}

[data-theme="dark"] .drawer-header {
  border-bottom-color: var(--border-color);
}

/* ── Bootstrap overrides ── */
[data-theme="dark"] .text-muted {
  color: var(--text-muted) !important;
}

[data-theme="dark"] .border,
[data-theme="dark"] .border-bottom,
[data-theme="dark"] .border-top,
[data-theme="dark"] .border-start,
[data-theme="dark"] .border-end {
  border-color: var(--border-color) !important;
}

[data-theme="dark"] .bg-white {
  background-color: #1e1e2d !important;
}

[data-theme="dark"] .bg-light {
  background-color: #252535 !important;
}

[data-theme="dark"] hr {
  border-color: var(--border-color);
}

[data-theme="dark"] small,
[data-theme="dark"] .small {
  color: var(--text-muted);
}

[data-theme="dark"] .fw-semibold,
[data-theme="dark"] .fw-bold,
[data-theme="dark"] strong {
  color: var(--text-dark);
}

/* ── Progress bars ── */
[data-theme="dark"] .progress {
  background-color: #252535;
}

/* ── List groups ── */
[data-theme="dark"] .list-group-item {
  background-color: #1e1e2d;
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .list-group-item:hover {
  background-color: #252535;
}

/* ── Account switcher ── */
[data-theme="dark"] .account-item {
  border-bottom-color: #252535;
}

[data-theme="dark"] .account-item:hover {
  background: rgba(0, 156, 77, 0.08);
}

[data-theme="dark"] .account-name {
  color: var(--text-dark);
}

[data-theme="dark"] .account-details {
  color: var(--text-muted);
}

[data-theme="dark"] .account-role {
  background: #252535;
  color: var(--text-muted);
}

/* ── Theme toggle icon ── */
[data-theme="dark"] #themeIcon::before {
  content: "\f5a2"; /* bi-sun */
}

/* ── Nav tabs & pills ── */
[data-theme="dark"] .nav-tabs {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .nav-tabs .nav-link {
  color: var(--text-muted);
}

[data-theme="dark"] .nav-tabs .nav-link:hover {
  border-color: transparent transparent var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .nav-tabs .nav-link.active {
  background-color: #1e1e2d;
  border-color: var(--border-color) var(--border-color) #1e1e2d;
  color: var(--primary);
}

[data-theme="dark"] .nav-pills .nav-link {
  color: var(--text-muted);
}

[data-theme="dark"] .nav-pills .nav-link.active {
  background-color: var(--primary);
  color: #fff;
}

/* ── Pagination ── */
[data-theme="dark"] .page-link {
  background-color: #1e1e2d;
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .page-link:hover {
  background-color: #252535;
  border-color: var(--border-color);
  color: var(--primary);
}

[data-theme="dark"] .page-item.active .page-link {
  background-color: var(--primary);
  border-color: var(--primary);
}

[data-theme="dark"] .page-item.disabled .page-link {
  background-color: #1e1e2d;
  border-color: var(--border-color);
  color: var(--text-muted);
}

/* ── Tooltips ── */
[data-theme="dark"] .tooltip-inner {
  background-color: #252535;
  color: var(--text-body);
}

/* ── Select2 / custom selects (if used) ── */
[data-theme="dark"] select option {
  background-color: #1e1e2d;
  color: var(--text-body);
}

/* ── Floating navbar (#appNavbar) override ── */
[data-theme="dark"] #appNavbar,
[data-theme="dark"] .header-navbar.floating-nav,
[data-theme="dark"] nav#appNavbar.header-navbar.floating-nav {
  background: #1e1e2d !important;
  border-color: var(--border-color) !important;
  box-shadow: 0 4px 24px 0 rgba(0, 0, 0, 0.4) !important;
}

/* ── Navbar inner elements (nb-*) ── */
[data-theme="dark"] .nb-divider {
  background: var(--border-color);
}

[data-theme="dark"] .nb-btn {
  color: var(--text-body);
}

[data-theme="dark"] .nb-btn:hover {
  background: rgba(255, 255, 255, 0.06);
  color: var(--text-dark);
}

[data-theme="dark"] .nb-btn.active {
  background: var(--primary-light);
  color: var(--primary);
}

[data-theme="dark"] .nb-badge {
  border-color: #1e1e2d;
}

/* Pill кнопки (филиал / сервер) */
[data-theme="dark"] .nb-pill-btn {
  background: #252535;
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .nb-pill-btn:hover {
  background: #2d2d3f;
  border-color: var(--primary);
}

[data-theme="dark"] .nb-pill-btn i,
[data-theme="dark"] .nb-pill-btn .nb-pill-caret {
  color: var(--text-muted);
}

/* Выпадающие меню */
[data-theme="dark"] .nb-dropdown {
  background: #1e1e2d;
  border-color: var(--border-color);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
}

[data-theme="dark"] .nb-dropdown-hdr {
  color: var(--text-muted);
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .nb-dropdown-item {
  color: var(--text-body);
  border-bottom-color: #252535;
}

[data-theme="dark"] .nb-dropdown-item:hover {
  background: rgba(0, 156, 77, 0.1);
  color: var(--primary);
}

[data-theme="dark"] .nb-dropdown-item.nb-active {
  background: var(--primary-light);
  color: var(--primary);
}

[data-theme="dark"] .nb-dropdown-footer {
  border-top-color: var(--border-color);
}

[data-theme="dark"] .nb-dropdown-footer a {
  color: var(--text-muted);
}

[data-theme="dark"] .nb-dropdown-footer a:hover {
  color: var(--primary);
}

/* User кнопка */
[data-theme="dark"] .nb-user-btn:hover {
  background: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] .nb-avatar {
  border-color: var(--border-color);
}

[data-theme="dark"] .nb-avatar-dot {
  border-color: #1e1e2d;
}

[data-theme="dark"] .nb-user-name {
  color: var(--text-dark);
}

[data-theme="dark"] .nb-user-role {
  color: var(--text-muted);
}

/* User dropdown */
[data-theme="dark"] .nb-user-head {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .nb-user-head-name {
  color: var(--text-dark);
}

[data-theme="dark"] .nb-user-head-email {
  color: var(--text-muted);
}

[data-theme="dark"] .nb-ud-item {
  color: var(--text-body);
  background: transparent;
}

[data-theme="dark"] .nb-ud-item:hover {
  background: rgba(255, 255, 255, 0.05);
  color: var(--text-dark);
}

[data-theme="dark"] .nb-ud-item i {
  color: var(--text-muted);
}

[data-theme="dark"] .nb-ud-item.danger {
  color: var(--danger);
}

[data-theme="dark"] .nb-ud-item.danger i {
  color: var(--danger);
}

[data-theme="dark"] .nb-ud-item.danger:hover {
  background: rgba(234, 84, 85, 0.1);
}

/* ── Общие тёмные тексты → светлые ── */
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6 {
  color: var(--text-dark);
}

[data-theme="dark"] p,
[data-theme="dark"] span,
[data-theme="dark"] li,
[data-theme="dark"] td,
[data-theme="dark"] th,
[data-theme="dark"] label,
[data-theme="dark"] div {
  color: inherit;
}

[data-theme="dark"] a:not(.btn):not(.badge):not(.nav-link):not(.dropdown-item):not(.nb-dropdown-item):not(.nb-ud-item) {
  color: var(--text-body);
}

[data-theme="dark"] a:not(.btn):not(.badge):not(.nav-link):not(.dropdown-item):not(.nb-dropdown-item):not(.nb-ud-item):hover {
  color: var(--primary);
}

/* Цвет текста для элементов без явного цвета */
[data-theme="dark"] .text-dark,
[data-theme="dark"] .text-black {
  color: var(--text-dark) !important;
}

[data-theme="dark"] .text-body {
  color: var(--text-body) !important;
}

[data-theme="dark"] .text-secondary {
  color: var(--text-muted) !important;
}

/* Inline-стили с тёмными цветами — переопределить через body color */
[data-theme="dark"] body {
  color: var(--text-body);
}

/* ── Новости (an-*) ── */
[data-theme="dark"] .an-stat-card {
  background: #1e1e2d;
  border-color: var(--border-color);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .an-stat-num {
  color: var(--text-dark);
}

[data-theme="dark"] .an-stat-label {
  color: var(--text-muted);
}

[data-theme="dark"] .an-stat-icon[style*="background:#e8f8f0"],
[data-theme="dark"] .an-stat-icon[style*="background:#d4edda"] {
  background: rgba(0, 156, 77, 0.15) !important;
  color: var(--success) !important;
}

[data-theme="dark"] .an-stat-icon[style*="background:#fff3cd"] {
  background: rgba(255, 159, 67, 0.15) !important;
  color: var(--warning) !important;
}

[data-theme="dark"] .an-card {
  border-color: var(--border-color);
}

[data-theme="dark"] .an-table thead th {
  background: #252535;
  color: var(--text-muted);
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .an-row td {
  border-bottom-color: #252535;
  color: var(--text-body);
}

[data-theme="dark"] .an-row-draft {
  background: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .an-row:hover td {
  background: rgba(0, 156, 77, 0.05);
}

[data-theme="dark"] .an-title-link {
  color: var(--text-dark);
}

[data-theme="dark"] .an-title-link:hover {
  color: var(--primary);
}

[data-theme="dark"] .an-subtitle {
  color: var(--text-muted);
}

[data-theme="dark"] .an-toggle-btn.draft {
  background: #252535;
  color: var(--text-muted);
}

[data-theme="dark"] .an-toggle-btn.published {
  background: rgba(40, 199, 111, 0.15);
  color: var(--success);
}

/* ── Kanban ── */
[data-theme="dark"] .kanban-col-header {
  background: #1e1e2d;
  border-color: var(--border-color);
  color: var(--text-dark);
}

[data-theme="dark"] .kanban-card {
  background: #1e1e2d;
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .kanban-card-footer {
  border-top-color: var(--border-color);
}

[data-theme="dark"] .kanban-move-bar {
  border-top-color: var(--border-color);
}

/* ── Lessons Calendar ── */
[data-theme="dark"] .lessons-calendar {
  background: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .lessons-calendar td {
  border-color: var(--border-color);
}

/* ── Course header bar ── */
[data-theme="dark"] .course-header-bar {
  background: #1e1e2d;
  border-bottom-color: var(--border-color);
}

/* ── Avatars — white border/bg fix ── */
[data-theme="dark"] .avatar,
[data-theme="dark"] .navbar-avatar,
[data-theme="dark"] .mentor-avatar {
  border-color: #3b3b5c !important;
  background-color: #252535 !important;
}

/* ── Timeline dot ── */
[data-theme="dark"] .timeline-dot {
  border-color: #1e1e2d;
}

[data-theme="dark"] .timeline::before {
  background: var(--border-color);
}

/* ── Notification badge border ── */
[data-theme="dark"] .notif-badge {
  border-color: #1e1e2d;
}

/* ── Django toast messages ── */
[data-theme="dark"] .django-messages .alert.alert-success {
  background: rgba(40, 199, 111, 0.15);
  color: var(--success);
}

[data-theme="dark"] .django-messages .alert.alert-error,
[data-theme="dark"] .django-messages .alert.alert-danger {
  background: rgba(234, 84, 85, 0.15);
  color: var(--danger);
}

[data-theme="dark"] .django-messages .alert.alert-warning {
  background: rgba(255, 159, 67, 0.15);
  color: var(--warning);
}

[data-theme="dark"] .django-messages .alert.alert-info {
  background: rgba(0, 207, 232, 0.15);
  color: var(--info);
}

/* ── Table row hover ── */
[data-theme="dark"] .table tbody tr:hover {
  background: rgba(255, 255, 255, 0.04) !important;
}

/* ── Auth page ── */
[data-theme="dark"] .auth-right {
  background: #1e1e2d;
}

/* ── Footer ── */
[data-theme="dark"] .footer {
  background: #1e1e2d;
  border-top-color: var(--border-color);
}

/* ═══════════════════════════════════════════════════════════
   COMPREHENSIVE DARK THEME — белые фоны и чёрные тексты
   ═══════════════════════════════════════════════════════════ */

/* ── Inline: белые / светло-серые фоны ── */
[data-theme="dark"] [style*="background: #fff"],
[data-theme="dark"] [style*="background:#fff"],
[data-theme="dark"] [style*="background-color: #fff"],
[data-theme="dark"] [style*="background-color:#fff"],
[data-theme="dark"] [style*="background: white"],
[data-theme="dark"] [style*="background-color: white"],
[data-theme="dark"] [style*="background: #ffffff"],
[data-theme="dark"] [style*="background:#ffffff"],
[data-theme="dark"] [style*="background: #f8f9fa"],
[data-theme="dark"] [style*="background:#f8f9fa"],
[data-theme="dark"] [style*="background-color: #f8f9fa"],
[data-theme="dark"] [style*="background-color:#f8f9fa"],
[data-theme="dark"] [style*="background: #f8f8f8"],
[data-theme="dark"] [style*="background:#f8f8f8"],
[data-theme="dark"] [style*="background-color: #f8f8f8"],
[data-theme="dark"] [style*="background: #f9fafb"],
[data-theme="dark"] [style*="background:#f9fafb"],
[data-theme="dark"] [style*="background: #f8fafb"],
[data-theme="dark"] [style*="background:#f8fafb"],
[data-theme="dark"] [style*="background: #f3f4f6"],
[data-theme="dark"] [style*="background:#f3f4f6"],
[data-theme="dark"] [style*="background: #f0f2f5"],
[data-theme="dark"] [style*="background:#f0f2f5"],
[data-theme="dark"] [style*="background: #fafafa"],
[data-theme="dark"] [style*="background:#fafafa"],
[data-theme="dark"] [style*="background: #f8fffe"],
[data-theme="dark"] [style*="background:#f8fffe"] {
  background: #252535 !important;
  background-color: #252535 !important;
}

/* ── Inline: sticky заголовки таблиц ── */
[data-theme="dark"] thead[style*="background:#fff"],
[data-theme="dark"] thead[style*="background: #fff"],
[data-theme="dark"] thead[style*="background:#ffffff"],
[data-theme="dark"] thead[style*="background: #ffffff"] {
  background: #252535 !important;
}

/* ── Inline: очень светлые цветные фоны (почти белые) ── */
[data-theme="dark"] [style*="background:#fff3cd"],
[data-theme="dark"] [style*="background: #fff3cd"],
[data-theme="dark"] [style*="background:#fff8ed"],
[data-theme="dark"] [style*="background: #fff8ed"],
[data-theme="dark"] [style*="background:#fff5f5"],
[data-theme="dark"] [style*="background: #fff5f5"],
[data-theme="dark"] [style*="background:#fffbeb"],
[data-theme="dark"] [style*="background: #fffbeb"] {
  background: #2a2a1a !important;
}

/* ── Inline: светло-зелёные / синие фоны статистики ── */
[data-theme="dark"] [style*="background:#d4edda"],
[data-theme="dark"] [style*="background: #d4edda"],
[data-theme="dark"] [style*="background:#e8f8f0"],
[data-theme="dark"] [style*="background: #e8f8f0"] {
  background: rgba(0, 156, 77, 0.15) !important;
}

/* ── Inline: тёмные / чёрные тексты ── */
[data-theme="dark"] [style*="color: #1a202c"],
[data-theme="dark"] [style*="color:#1a202c"],
[data-theme="dark"] [style*="color: #111827"],
[data-theme="dark"] [style*="color:#111827"],
[data-theme="dark"] [style*="color: #374151"],
[data-theme="dark"] [style*="color:#374151"],
[data-theme="dark"] [style*="color: #2d3748"],
[data-theme="dark"] [style*="color:#2d3748"],
[data-theme="dark"] [style*="color: #212529"],
[data-theme="dark"] [style*="color:#212529"],
[data-theme="dark"] [style*="color: #333"],
[data-theme="dark"] [style*="color:#333"],
[data-theme="dark"] [style*="color: #000"],
[data-theme="dark"] [style*="color:#000"],
[data-theme="dark"] [style*="color: black"],
[data-theme="dark"] [style*="color:black"] {
  color: var(--text-dark) !important;
}

/* ── Inline: тёмные рамки (светлые в тёмной теме) ── */
[data-theme="dark"] [style*="border: 1px solid #e9ecef"],
[data-theme="dark"] [style*="border:1px solid #e9ecef"],
[data-theme="dark"] [style*="border-bottom: 1px solid #e9ecef"],
[data-theme="dark"] [style*="border-bottom:1px solid #e9ecef"],
[data-theme="dark"] [style*="border: 1px solid #f0f2f5"],
[data-theme="dark"] [style*="border-bottom: 1px solid #f0f2f5"],
[data-theme="dark"] [style*="border-top: 1px solid #f0f2f5"],
[data-theme="dark"] [style*="border-bottom:1px solid #f0f2f5"] {
  border-color: var(--border-color) !important;
}

/* ═══════════════════════════════════════════════════════════
   TAILWIND SLATE-ПАЛИТРА — новые шаблоны (dashboard-виджеты,
   datepicker, quick_view и т.д.) используют slate-цвета,
   которых не было в старых перечислениях выше.
   ═══════════════════════════════════════════════════════════ */

/* Почти белые slate-фоны → тёмная поверхность */
[data-theme="dark"] [style*="background:#f8fafc"],
[data-theme="dark"] [style*="background: #f8fafc"],
[data-theme="dark"] [style*="background-color:#f8fafc"],
[data-theme="dark"] [style*="background-color: #f8fafc"],
[data-theme="dark"] [style*="background:#f1f5f9"],
[data-theme="dark"] [style*="background: #f1f5f9"],
[data-theme="dark"] [style*="background:#fafbfc"],
[data-theme="dark"] [style*="background: #fafbfc"],
[data-theme="dark"] [style*="background:#fafbff"],
[data-theme="dark"] [style*="background: #fafbff"],
[data-theme="dark"] [style*="background:#f6f7f9"],
[data-theme="dark"] [style*="background: #f6f7f9"],
[data-theme="dark"] [style*="background:#f7f8fa"],
[data-theme="dark"] [style*="background: #f7f8fa"],
[data-theme="dark"] [style*="background:#f5f7fa"],
[data-theme="dark"] [style*="background: #f5f7fa"],
[data-theme="dark"] [style*="background:#F5F7FA"],
[data-theme="dark"] [style*="background: #F5F7FA"],
[data-theme="dark"] [style*="background:#FAFBFC"],
[data-theme="dark"] [style*="background: #FAFBFC"],
[data-theme="dark"] [style*="background:#e9ecef"],
[data-theme="dark"] [style*="background: #e9ecef"],
[data-theme="dark"] [style*="background:#f5f5f5"],
[data-theme="dark"] [style*="background: #f5f5f5"],
[data-theme="dark"] [style*="background:#F5F5F5"],
[data-theme="dark"] [style*="background: #F5F5F5"],
[data-theme="dark"] [style*="background:#F8F7FA"],
[data-theme="dark"] [style*="background: #F8F7FA"],
[data-theme="dark"] [style*="background:#f8f7fa"],
[data-theme="dark"] [style*="background: #f8f7fa"],
[data-theme="dark"] [style*="background:#F8FFFE"],
[data-theme="dark"] [style*="background: #F8FFFE"] {
  background: #252535 !important;
  background-color: #252535 !important;
}

/* Тёплые почти белые (лиды и т.п.) → тёмная поверхность */
[data-theme="dark"] [style*="background:#fff9f0"],
[data-theme="dark"] [style*="background: #fff9f0"],
[data-theme="dark"] [style*="background:#fffaf3"],
[data-theme="dark"] [style*="background: #fffaf3"] {
  background: #2a2620 !important;
}

/* Тёмные slate-тексты → светлые */
[data-theme="dark"] [style*="color:#0f172a"],
[data-theme="dark"] [style*="color: #0f172a"],
[data-theme="dark"] [style*="color:#1e293b"],
[data-theme="dark"] [style*="color: #1e293b"],
[data-theme="dark"] [style*="color:#334155"],
[data-theme="dark"] [style*="color: #334155"],
[data-theme="dark"] [style*="color:#1e2939"],
[data-theme="dark"] [style*="color: #1e2939"],
[data-theme="dark"] [style*="color:#0f2318"],
[data-theme="dark"] [style*="color: #0f2318"],
[data-theme="dark"] [style*="color:#2D3340"],
[data-theme="dark"] [style*="color: #2D3340"] {
  color: var(--text-dark) !important;
}

/* Средние slate-тексты → приглушённый светлый */
[data-theme="dark"] [style*="color:#475569"],
[data-theme="dark"] [style*="color: #475569"],
[data-theme="dark"] [style*="color:#64748b"],
[data-theme="dark"] [style*="color: #64748b"],
[data-theme="dark"] [style*="color:#9299A6"],
[data-theme="dark"] [style*="color: #9299A6"],
[data-theme="dark"] [style*="color:#5A6170"],
[data-theme="dark"] [style*="color: #5A6170"],
[data-theme="dark"] [style*="color:#6c757d"],
[data-theme="dark"] [style*="color: #6c757d"],
[data-theme="dark"] [style*="color:#9ca3af"],
[data-theme="dark"] [style*="color: #9ca3af"],
[data-theme="dark"] [style*="color:#475467"],
[data-theme="dark"] [style*="color: #475467"],
[data-theme="dark"] [style*="color:#9CA3AF"],
[data-theme="dark"] [style*="color: #9CA3AF"],
[data-theme="dark"] [style*="color:#B8C2CC"],
[data-theme="dark"] [style*="color: #B8C2CC"] {
  color: var(--text-body) !important;
}

/* Чёрные slate-тексты (#111 и т.п.) → светлые */
[data-theme="dark"] [style*="color:#111;"],
[data-theme="dark"] [style*="color: #111;"] {
  color: var(--text-dark) !important;
}

/* Светлые slate-рамки → тёмные */
[data-theme="dark"] [style*="solid #e2e8f0"],
[data-theme="dark"] [style*="solid #f1f5f9"],
[data-theme="dark"] [style*="solid #e8eaf0"],
[data-theme="dark"] [style*="solid #edf2f7"],
[data-theme="dark"] [style*="solid #eef0f4"],
[data-theme="dark"] [style*="solid #D9DCE4"],
[data-theme="dark"] [style*="solid #E4E7ED"],
[data-theme="dark"] [style*="solid #dee2e6"],
[data-theme="dark"] [style*="solid #e9ecef"],
[data-theme="dark"] [style*="solid #f0f0f0"],
[data-theme="dark"] [style*="solid #D8D6DE"],
[data-theme="dark"] [style*="dashed #D8D6DE"],
[data-theme="dark"] [style*="solid #EBE9F1"],
[data-theme="dark"] [style*="#D9DCE4"][style*="border"] {
  border-color: var(--border-color) !important;
}

/* ═══════════════════════════════════════════════════════════
   DRAWER-ПАНЕЛИ студента/преподавателя (student_drawer.html,
   mentor_drawer.html) — грузятся AJAX-ом в .offcanvas-body.
   Скоупим под .offcanvas-body, чтобы не задеть одноимённые
   классы (.course-card, .status-active …) на других страницах.
   ═══════════════════════════════════════════════════════════ */
[data-theme="dark"] .offcanvas-body .student-drawer-header { border-bottom-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .avatar-img { border-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .contact-item a { color: var(--text-body); }
[data-theme="dark"] .offcanvas-body .quick-actions { background: var(--bg-subtle); border-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .section-header { border-bottom-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .section-title { color: var(--text-dark); }
[data-theme="dark"] .offcanvas-body .subsection-title { color: var(--text-muted); }
[data-theme="dark"] .offcanvas-body .course-card { background: var(--bg-card); border-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .course-card:hover { border-color: #3a4258; }
[data-theme="dark"] .offcanvas-body .course-title { color: var(--text-dark); }
[data-theme="dark"] .offcanvas-body .course-subject { color: var(--text-muted); }
[data-theme="dark"] .offcanvas-body .summary-item { background: var(--bg-subtle); border-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .summary-label { color: var(--text-muted); }
[data-theme="dark"] .offcanvas-body .payment-item,
[data-theme="dark"] .offcanvas-body .debt-item { background: var(--bg-card); border-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .payment-course,
[data-theme="dark"] .offcanvas-body .debt-course { color: var(--text-dark); }
[data-theme="dark"] .offcanvas-body .payment-date,
[data-theme="dark"] .offcanvas-body .debt-date,
[data-theme="dark"] .offcanvas-body .payment-method { color: var(--text-muted); }
[data-theme="dark"] .offcanvas-body .finance-actions { border-top-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .activity-row { border-bottom-color: var(--border-color); }
[data-theme="dark"] .offcanvas-body .activity-label { color: var(--text-muted); }
[data-theme="dark"] .offcanvas-body .activity-value { color: var(--text-dark); }
[data-theme="dark"] .offcanvas-body .note-content { background: var(--bg-subtle); border-color: var(--border-color); color: var(--text-body); }
[data-theme="dark"] .offcanvas-body .empty-state { color: var(--text-muted); }

/* Статус-бейджи внутри drawer'ов → полупрозрачные цветные */
[data-theme="dark"] .offcanvas-body .status-active,
[data-theme="dark"] .offcanvas-body .account-active { background-color: rgba(40,199,111,.16); color: #6ee7b7; border-color: rgba(40,199,111,.4); }
[data-theme="dark"] .offcanvas-body .status-graduated,
[data-theme="dark"] .offcanvas-body .status-planned { background-color: rgba(37,99,235,.18); color: #93c5fd; border-color: rgba(37,99,235,.4); }
[data-theme="dark"] .offcanvas-body .status-left,
[data-theme="dark"] .offcanvas-body .status-frozen { background-color: rgba(217,119,6,.2); color: #fcd34d; border-color: rgba(217,119,6,.4); }
[data-theme="dark"] .offcanvas-body .status-expelled,
[data-theme="dark"] .offcanvas-body .account-blocked { background-color: rgba(220,38,38,.16); color: #fca5a5; border-color: rgba(220,38,38,.4); }
[data-theme="dark"] .offcanvas-body .status-inactive,
[data-theme="dark"] .offcanvas-body .status-archived,
[data-theme="dark"] .offcanvas-body .account-none { background-color: var(--bg-subtle); color: var(--text-muted); border-color: var(--border-color); }

/* ─────────────────────────────────────────────────────────
   CSS-КЛАССЫ из других файлов (leads.css, mentor.css, etc.)
   ───────────────────────────────────────────────────────── */

/* leads.css */
[data-theme="dark"] .kanban-col-header .form-check-input,
[data-theme="dark"] .kanban-card-header .form-check-input {
  background-color: #252535;
  border-color: var(--border-color);
}

[data-theme="dark"] .status-actions .btn,
[data-theme="dark"] #bulk-actions .btn {
  color: #1a202c;
}

/* mentor.css */
[data-theme="dark"] .profile-img {
  background: #252535;
  border-color: var(--border-color);
}

[data-theme="dark"] .profile-title h2 {
  color: var(--text-dark);
}

[data-theme="dark"] .profile-title p {
  color: var(--text-muted);
}

[data-theme="dark"] .student-card {
  background: #1e1e2d;
  border-color: var(--border-color);
}

/* lectures-old-style.css */
[data-theme="dark"] .course-lectures {
  background: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .lesson-section-header {
  background: #252535;
  border-bottom-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .lesson-section-header:hover {
  background: #2d2d3f;
}

/* course.css */
[data-theme="dark"] .course-header-bar {
  background: #1e1e2d;
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .review-card {
  background: #1e1e2d;
  border-color: var(--border-color);
}

/* ── Общие Bootstrap / framework элементы ── */
[data-theme="dark"] .input-group-text {
  background-color: #252535;
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .table-light,
[data-theme="dark"] .table-light > th,
[data-theme="dark"] .table-light > td {
  background-color: #252535 !important;
  color: var(--text-body);
}

[data-theme="dark"] .offcanvas,
[data-theme="dark"] .offcanvas-body {
  background: #1e1e2d;
  color: var(--text-body);
}

[data-theme="dark"] .offcanvas-header {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .popover {
  background-color: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .popover-header {
  background-color: #252535;
  border-bottom-color: var(--border-color);
  color: var(--text-dark);
}

[data-theme="dark"] .popover-body {
  color: var(--text-body);
}

[data-theme="dark"] .accordion-item {
  background-color: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .accordion-button {
  background-color: #252535;
  color: var(--text-dark);
}

[data-theme="dark"] .accordion-button:not(.collapsed) {
  background-color: var(--primary-light);
  color: var(--primary);
}

[data-theme="dark"] .accordion-button::after {
  filter: invert(1) brightness(1.5);
}

[data-theme="dark"] .accordion-body {
  background-color: #1e1e2d;
  color: var(--text-body);
}

[data-theme="dark"] .card-img-top {
  border-bottom: 1px solid var(--border-color);
}

/* ── Spinner / loader ── */
[data-theme="dark"] .spinner-border {
  color: var(--primary);
}

/* ── Pre / Code блоки ── */
[data-theme="dark"] pre,
[data-theme="dark"] code {
  background-color: #252535;
  color: #e2e8f0;
  border-color: var(--border-color);
}

/* ── Blockquote ── */
[data-theme="dark"] blockquote {
  border-left-color: var(--primary);
  color: var(--text-muted);
}

/* ── Таблицы — sticky шапка ── */
[data-theme="dark"] thead {
  background: #252535;
  color: var(--text-muted);
}

[data-theme="dark"] tfoot {
  background: #252535;
  color: var(--text-muted);
}

/* ── Разделители ── */
[data-theme="dark"] hr {
  border-color: var(--border-color);
  opacity: 1;
}

/* ── Shadow bottom gradient fix ── */
[data-theme="dark"] .shadow-bottom {
  background: linear-gradient(#1e1e2d 41%, rgba(30, 30, 45, 0.11) 95%, rgba(30, 30, 45, 0));
}

/* ── Заглушка на случай пропущенных белых bg ── */
[data-theme="dark"] .bg-white,
[data-theme="dark"] [class*="bg-white"] {
  background-color: #1e1e2d !important;
}

[data-theme="dark"] .bg-light,
[data-theme="dark"] [class*="bg-light"] {
  background-color: #252535 !important;
}

/* ── Текст: заглушка для чёрных / очень тёмных ── */
[data-theme="dark"] .text-dark,
[data-theme="dark"] .text-black,
[data-theme="dark"] [class*="text-dark"] {
  color: var(--text-dark) !important;
}

/* Исключение: на жёлтом .bg-warning текст должен остаться тёмным (контраст) */
[data-theme="dark"] .bg-warning.text-dark,
[data-theme="dark"] .bg-warning .text-dark,
[data-theme="dark"] .bg-warning.text-dark * {
  color: #1a2332 !important;
}

/* ── Сброс цвета для унаследованных элементов ── */
[data-theme="dark"] body,
[data-theme="dark"] body * {
  --bs-body-bg: #161625;
  --bs-body-color: #b4b4cc;
  --bs-border-color: #3b3b5c;
  --bs-secondary-bg: #252535;
  --bs-tertiary-bg: #1e1e2d;
  scrollbar-color: #3b3b5c #161625;
}

/* ═══════════════════════════════════════════════════
   КАЛЕНДАРЬ (admin/calendar/index.html)
   ═══════════════════════════════════════════════════ */

/* ── FullCalendar CSS-переменные ── */
[data-theme="dark"] {
  --fc-border-color: #3b3b5c;
  --fc-page-bg-color: #1e1e2d;
  --fc-neutral-bg-color: #252535;
  --fc-neutral-text-color: #b4b4cc;
  --fc-today-bg-color: rgba(0, 156, 77, 0.08);
  --fc-now-indicator-color: #009c4d;
  --fc-list-event-hover-bg-color: rgba(0, 156, 77, 0.08);
  --fc-highlight-color: rgba(0, 156, 77, 0.1);
  --fc-non-business-color: rgba(0, 0, 0, 0.1);
}

/* FullCalendar — глобальные элементы */
[data-theme="dark"] .fc-theme-standard td,
[data-theme="dark"] .fc-theme-standard th,
[data-theme="dark"] .fc-theme-standard .fc-scrollgrid {
  border-color: var(--border-color);
}

[data-theme="dark"] .fc .fc-toolbar-title {
  color: var(--text-dark);
}

[data-theme="dark"] .fc .fc-col-header-cell {
  background: #252535;
}

[data-theme="dark"] .fc .fc-col-header-cell-cushion {
  color: var(--text-muted);
}

[data-theme="dark"] .fc .fc-timegrid-slot-label-cushion {
  color: var(--text-muted);
}

[data-theme="dark"] .fc .fc-daygrid-day-number {
  color: var(--text-body);
}

[data-theme="dark"] .fc .fc-daygrid-day-frame,
[data-theme="dark"] .fc .fc-timegrid-col,
[data-theme="dark"] .fc-scrollgrid-sync-inner,
[data-theme="dark"] .fc .fc-view-harness,
[data-theme="dark"] .fc table,
[data-theme="dark"] .fc tbody,
[data-theme="dark"] .fc .fc-scroller {
  background: #1e1e2d;
}

[data-theme="dark"] .fc .fc-daygrid-day.fc-day-today,
[data-theme="dark"] .fc .fc-timegrid-col.fc-day-today {
  background: rgba(250, 204, 21, 0.10) !important;
}

[data-theme="dark"] .fc .fc-list-day-cushion {
  background: #252535 !important;
  color: var(--text-muted) !important;
}

[data-theme="dark"] .fc .fc-list-event:hover td {
  background: rgba(0, 156, 77, 0.07) !important;
}

[data-theme="dark"] .fc .fc-list-event td {
  border-color: var(--border-color);
  color: var(--text-body);
}

[data-theme="dark"] .fc .fc-list-day-text,
[data-theme="dark"] .fc .fc-list-day-side-text {
  color: var(--text-body);
}

[data-theme="dark"] .fc .fc-timegrid-slot {
  border-color: var(--border-color);
}

[data-theme="dark"] .fc .fc-timegrid-divider {
  background: var(--border-color);
}

[data-theme="dark"] .fc .fc-non-business {
  background: rgba(0, 0, 0, 0.15);
}

/* ── Кастомные классы страницы ── */
[data-theme="dark"] .cal-filters {
  background: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .cal-filter-row + .cal-filter-row {
  border-top-color: var(--border-color);
}

[data-theme="dark"] .cal-filter-label {
  color: var(--text-muted);
}

[data-theme="dark"] .cal-pill {
  background: #252535;
  color: var(--text-body);
}

[data-theme="dark"] .cal-pill:hover {
  background: var(--primary-light);
  color: var(--primary);
}

[data-theme="dark"] .cal-pill.active {
  border-color: currentColor;
  background: var(--primary-light);
}

[data-theme="dark"] .cal-view-switcher {
  background: #252535;
}

[data-theme="dark"] .cal-view-btn {
  color: var(--text-muted);
}

[data-theme="dark"] .cal-view-btn:hover {
  color: var(--primary);
  background: rgba(0, 156, 77, 0.08);
}

[data-theme="dark"] .cal-view-btn.active {
  background: #1e1e2d;
  color: var(--primary);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}

[data-theme="dark"] .cal-card {
  background: #1e1e2d;
  border-color: var(--border-color);
}

[data-theme="dark"] .cal-drawer {
  background: #1e1e2d;
  border-left: 1px solid var(--border-color);
}

[data-theme="dark"] .cal-drawer-hdr {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] .cal-drawer-hdr h6 {
  color: var(--text-dark);
}

/* createEventModal */
[data-theme="dark"] #createEventModal .modal-header {
  border-bottom-color: var(--border-color);
}

[data-theme="dark"] #createEventModal .modal-footer {
  border-top-color: var(--border-color);
}

[data-theme="dark"] #createEventModal .form-label {
  color: var(--text-dark);
}

[data-theme="dark"] #createEventModal .form-control,
[data-theme="dark"] #createEventModal .form-select {
  border-color: var(--border-color);
  background-color: #252535;
  color: var(--text-dark);
}

/* redDayModal иконка */
[data-theme="dark"] [style*="background:#fde8ea"],
[data-theme="dark"] [style*="background: #fde8ea"] {
  background: rgba(234, 84, 85, 0.15) !important;
}

/* ═══════════════════════════════════════════════════════════
   DASHBOARD — белые/светлые блоки
   ═══════════════════════════════════════════════════════════ */

/* #f8f7ff — вторичная статистика, att-stat, tfoot, AI-анализ, видео-карточки */
[data-theme="dark"] [style*="background:#f8f7ff"],
[data-theme="dark"] [style*="background: #f8f7ff"] {
  background: #252535 !important;
  background-color: #252535 !important;
}

/* #ebe9f1 — трек прогресс-баров и воронки продаж */
[data-theme="dark"] [style*="background:#ebe9f1"],
[data-theme="dark"] [style*="background: #ebe9f1"] {
  background: #2d2d45 !important;
}

/* SVG-кольцо посещаемости — фоновый круг */
[data-theme="dark"] circle[stroke="#ebe9f1"] {
  stroke: #2d2d45;
}

/* Зелёный градиент конверсии (#f0fdf4 → #dcfce7) */
[data-theme="dark"] [style*="background:linear-gradient(135deg,#f0fdf4"],
[data-theme="dark"] [style*="background: linear-gradient(135deg,#f0fdf4"] {
  background: rgba(0, 156, 77, 0.12) !important;
}

/* att-stat — блоки присутствовали/отсутствовали/опоздали/уваж. */
[data-theme="dark"] .att-stat {
  background: #252535 !important;
}

/* dash-stat-box — вторичная статистика (персонал, направления, филиалы) */
[data-theme="dark"] .dash-stat-box {
  background: #252535 !important;
}
[data-theme="dark"] .dash-stat-val {
  color: var(--text-dark) !important;
}

/* #5E5873 — основной тёмный текст дашборда */
[data-theme="dark"] [style*="color:#5E5873"],
[data-theme="dark"] [style*="color: #5E5873"] {
  color: var(--text-dark) !important;
}

/* ═══════════════════════════════════════════════════════════
   DATEPICKER (custom-datepicker.css — .odp-*)
   ═══════════════════════════════════════════════════════════ */

[data-theme="dark"] .odp-wrap {
  background: #1e1e2d;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}

/* шапка остаётся зелёной (var(--primary)) — оставляем как есть */

[data-theme="dark"] .odp-nav {
  border-bottom-color: var(--border-color);
}
[data-theme="dark"] .odp-nav-btn {
  color: var(--text-muted);
}
[data-theme="dark"] .odp-nav-btn:hover {
  background: #252535;
  color: var(--text-dark);
}
[data-theme="dark"] .odp-nav-month,
[data-theme="dark"] .odp-nav-year {
  color: var(--text-dark);
}
[data-theme="dark"] .odp-nav-month:hover,
[data-theme="dark"] .odp-nav-year:hover {
  background: #252535;
}

[data-theme="dark"] .odp-weekdays span {
  color: var(--text-muted);
}

[data-theme="dark"] .odp-day {
  color: var(--text-body);
}
[data-theme="dark"] .odp-day:disabled {
  color: #4a4a66;
}
[data-theme="dark"] .odp-day.odp-other {
  color: #45455e;
}
[data-theme="dark"] .odp-day:not(:disabled):not(.odp-other):hover::after {
  background: #252535;
}
[data-theme="dark"] .odp-day.odp-sel span,
[data-theme="dark"] .odp-day.odp-rs span,
[data-theme="dark"] .odp-day.odp-re span {
  color: #fff;
}

/* диапазон — светло-зелёная заливка → полупрозрачный primary */
[data-theme="dark"] .odp-day.odp-in-range,
[data-theme="dark"] .odp-day.odp-hover-range,
[data-theme="dark"] .odp-day.odp-row-first.odp-in-range,
[data-theme="dark"] .odp-day.odp-row-first.odp-hover-range,
[data-theme="dark"] .odp-day.odp-row-last.odp-in-range,
[data-theme="dark"] .odp-day.odp-row-last.odp-hover-range {
  background: rgba(0, 156, 77, 0.18);
}
[data-theme="dark"] .odp-day.odp-rs {
  background: linear-gradient(to left, rgba(0, 156, 77, 0.18) 50%, transparent 50%);
}
[data-theme="dark"] .odp-day.odp-re {
  background: linear-gradient(to right, rgba(0, 156, 77, 0.18) 50%, transparent 50%);
}

[data-theme="dark"] .odp-time {
  color: var(--text-muted);
}
[data-theme="dark"] .odp-time input[type=time] {
  background: #252535;
  border-color: var(--border-color);
  color: var(--text-dark);
}

[data-theme="dark"] .odp-btn-ghost {
  color: var(--text-muted);
}
[data-theme="dark"] .odp-btn-ghost:hover {
  background: #252535;
  color: var(--text-dark);
}

[data-theme="dark"] .odp-panel {
  background: #1e1e2d;
}
[data-theme="dark"] .odp-panel-title {
  color: var(--text-muted);
}
[data-theme="dark"] .odp-panel-btn {
  background: #252535;
  border-color: var(--border-color);
  color: var(--text-body);
}
[data-theme="dark"] .odp-panel-btn:hover {
  background: rgba(0, 156, 77, 0.12);
  border-color: var(--primary);
  color: var(--primary);
}
[data-theme="dark"] .odp-panel-close {
  background: #252535;
  color: var(--text-body);
}
[data-theme="dark"] .odp-panel-close:hover {
  background: #2d2d3f;
}

/* ═══════════════════════════════════════════════════════════
   КОНСУЛЬТАЦИИ — Канбан (.ck-*) и детали (.ckd-*)
   ═══════════════════════════════════════════════════════════ */

[data-theme="dark"] .ck-title { color: var(--text-dark); }
[data-theme="dark"] .ck-subtitle { color: var(--text-muted); }

[data-theme="dark"] .ck-search {
  background: #252535;
  border-color: var(--border-color);
}
[data-theme="dark"] .ck-search input {
  color: var(--text-dark);
  background: none;
}
[data-theme="dark"] .ck-search input::placeholder { color: var(--text-muted); }

[data-theme="dark"] .ck-board {
  background: #1e1e2d;
  border-color: var(--border-color);
}
[data-theme="dark"] .ck-board::-webkit-scrollbar-thumb,
[data-theme="dark"] .ck-cards::-webkit-scrollbar-thumb { background: #3b3b5c; }

[data-theme="dark"] .ck-col {
  background: #191926;
  border-right-color: var(--border-color);
}
[data-theme="dark"] .ck-col-head { border-bottom-color: var(--border-color); }
[data-theme="dark"] .ck-col-label { color: var(--text-body); }
[data-theme="dark"] .ck-col-badge { color: var(--text-dark); }
[data-theme="dark"] .ck-col-add-btn { color: var(--text-muted); }
[data-theme="dark"] .ck-col-add-btn:hover { background: #2d2d3f; color: var(--text-dark); }

[data-theme="dark"] .ck-cards.drag-over {
  outline-color: #3b3b5c;
  background: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .ck-card {
  background: #1e1e2d;
  border-color: var(--border-color);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
[data-theme="dark"] .ck-card:hover {
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.45);
  border-color: #4a4a6a;
}
[data-theme="dark"] .ck-expand-btn { color: var(--text-muted); }
[data-theme="dark"] .ck-expand-btn:hover {
  color: var(--danger);
  background: rgba(234, 84, 85, 0.12);
}

[data-theme="dark"] .ck-name { color: var(--text-dark); }
[data-theme="dark"] .ck-course { color: var(--text-muted); }
[data-theme="dark"] .ck-date-1 { color: var(--text-muted); }
[data-theme="dark"] .ck-assigned {
  color: var(--text-muted);
  border-top-color: var(--border-color);
}
[data-theme="dark"] .ck-empty { color: var(--text-muted); }

/* Приоритетные метки — приглушаем светлые фоны */
[data-theme="dark"] .badge-none {
  background: #252535;
  color: var(--text-muted);
  border-color: var(--border-color);
}
[data-theme="dark"] .badge-important { background: rgba(217, 119, 6, 0.18); color: #fbbf24; border-color: rgba(251, 191, 36, 0.4); }
[data-theme="dark"] .badge-urgent    { background: rgba(220, 38, 38, 0.18); color: #fca5a5; border-color: rgba(252, 165, 165, 0.4); }
[data-theme="dark"] .badge-vip       { background: rgba(146, 64, 14, 0.25); color: #fde047; border-color: rgba(253, 224, 71, 0.4); }
[data-theme="dark"] .badge-hot       { background: rgba(227, 52, 47, 0.18); color: #fc8181; border-color: rgba(252, 129, 129, 0.4); }
[data-theme="dark"] .badge-cold      { background: rgba(37, 99, 235, 0.18); color: #93c5fd; border-color: rgba(147, 197, 253, 0.4); }

[data-theme="dark"] .ck-priority-menu .dropdown-item:hover { background: rgba(0, 156, 77, 0.1); }

/* Modal (create / edit) */
[data-theme="dark"] .ck-modal .modal-content { border-color: var(--border-color); }
[data-theme="dark"] .ck-modal .modal-header,
[data-theme="dark"] .ck-modal .modal-footer { border-color: var(--border-color); }
[data-theme="dark"] .ck-modal .modal-title { color: var(--text-dark); }
[data-theme="dark"] .ck-modal .form-label { color: var(--text-dark); }
[data-theme="dark"] .ck-modal .form-control,
[data-theme="dark"] .ck-modal .form-select {
  background: #252535;
  border-color: var(--border-color);
  color: var(--text-dark);
}

/* Detail modal (.ckd-*) */
[data-theme="dark"] .ckd-content .modal-title { color: var(--text-dark); }
[data-theme="dark"] .ckd-sub { color: var(--text-muted); }
[data-theme="dark"] .ckd-label { color: var(--text-muted); }
[data-theme="dark"] .ckd-value { color: var(--text-dark); }
[data-theme="dark"] .ckd-desc { color: var(--text-body); }
[data-theme="dark"] .ckd-section-title {
  color: var(--text-dark);
  border-top-color: var(--border-color);
}
[data-theme="dark"] .ckd-hist-item {
  background: #252535;
  border-color: var(--border-color);
}
[data-theme="dark"] .ckd-hist-author { color: var(--text-dark); }
[data-theme="dark"] .ckd-hist-date { color: var(--text-muted); }
[data-theme="dark"] .ckd-hist-text { color: var(--text-body); }
[data-theme="dark"] .ckd-hist-empty { color: var(--text-muted); }
[data-theme="dark"] .ckd-comment-form textarea {
  background: #252535;
  border-color: var(--border-color);
  color: var(--text-dark);
}

/* Toast — оставляем цветным, но фон под тёмную тему */
[data-theme="dark"] .ck-toast.success { background: rgba(40, 199, 111, 0.15); color: #6ee7b7; }
[data-theme="dark"] .ck-toast.error   { background: rgba(234, 84, 85, 0.15); color: #fca5a5; }

/* ═══════════════════════════════════════════════════════════
   КОНСУЛЬТАЦИИ — Архив (.cka-*)
   ═══════════════════════════════════════════════════════════ */

[data-theme="dark"] .cka-title { color: var(--text-dark); }
[data-theme="dark"] .cka-table {
  background: #1e1e2d;
  border-color: var(--border-color);
}
[data-theme="dark"] .cka-table th {
  background: #252535;
  color: var(--text-muted);
  border-bottom-color: var(--border-color);
}
[data-theme="dark"] .cka-table td {
  color: var(--text-body);
  border-bottom-color: var(--border-color);
}
[data-theme="dark"] .cka-table tr:hover td { background: rgba(255, 255, 255, 0.03); }
[data-theme="dark"] .cka-name { color: var(--text-dark); }
[data-theme="dark"] .cka-muted { color: var(--text-muted); }
[data-theme="dark"] .cka-empty { color: var(--text-muted); }
[data-theme="dark"] .cka-btn-restore { background: rgba(5, 150, 105, 0.18); color: #6ee7b7; }
[data-theme="dark"] .cka-btn-restore:hover { background: rgba(5, 150, 105, 0.3); }
[data-theme="dark"] .cka-btn-del { background: rgba(220, 38, 38, 0.15); color: #fca5a5; }
[data-theme="dark"] .cka-btn-del:hover { background: rgba(220, 38, 38, 0.28); }

/* ── Отчёт по ученику ── */
[data-theme="dark"] .sr-text-output {
  background-color: #252535;
  border-color: var(--border-color);
  color: #e2e8f0;
}
[data-theme="dark"] .sr-history-row {
  border-bottom-color: var(--border-color);
}

/* ── Дровер создания преподавателя (list_simple.html, .sd-*) ── */
[data-theme="dark"] .sd-offcanvas { background: var(--bg-card); }
[data-theme="dark"] .sd-offcanvas .offcanvas-body { background: var(--bg-subtle); }
[data-theme="dark"] .sd-photo { background: var(--bg-card); border-bottom-color: var(--border-color); }
[data-theme="dark"] .sd-photo-circle { border-color: var(--border-color); background: var(--bg-subtle); }
[data-theme="dark"] .sd-photo-circle:hover { border-color: #00c060; background: rgba(0, 156, 77, 0.12); }
[data-theme="dark"] .sd-photo-circle i,
[data-theme="dark"] .sd-photo-circle span { color: var(--text-muted); }
[data-theme="dark"] .sd-photo-badge { border-color: var(--bg-card); }
[data-theme="dark"] .sd-photo-hint { color: var(--text-muted); }
[data-theme="dark"] .sd-section { background: var(--bg-card); border-color: var(--border-color); }
[data-theme="dark"] .sd-section-label { background: rgba(0, 156, 77, 0.12); border-bottom-color: var(--border-color); color: #00c060; }
[data-theme="dark"] .sd-row { border-bottom-color: var(--border-color); }
[data-theme="dark"] .sd-label { color: var(--text-body); }
[data-theme="dark"] .sd-optional { color: var(--text-muted); }
[data-theme="dark"] .sd-input .form-control,
[data-theme="dark"] .sd-input .form-select { background: var(--bg-subtle); border-color: var(--border-color); color: var(--text-dark); }
[data-theme="dark"] .sd-input .form-control:focus,
[data-theme="dark"] .sd-input .form-select:focus { background: var(--bg-card); border-color: #00c060; box-shadow: 0 0 0 3px rgba(0, 156, 77, 0.18); }
[data-theme="dark"] .sd-footer { background: var(--bg-card); border-top-color: var(--border-color); }
[data-theme="dark"] .sd-btn-cancel { background: var(--bg-subtle); border-color: var(--border-color); color: var(--text-body); }
[data-theme="dark"] .sd-btn-cancel:hover { border-color: var(--text-muted); color: var(--text-dark); }
[data-theme="dark"] #mentorCreateNonFieldErrors .alert-danger { background: rgba(220, 38, 38, 0.15); color: #fca5a5; border-color: rgba(220, 38, 38, 0.3); }
