/* /assets/css/themes.css — полностью переписанный */

[data-theme="dark"] {
    --color-primary: #3b4f8a;
    --color-primary-light: #4d63a5;
    --color-primary-dark: #2a3a6a;
    --color-primary-gradient: linear-gradient(135deg, #2a3a6a 0%, #3b4f8a 50%, #4d63a5 100%);
    
    --color-bg: #0f172a;
    --color-bg-card: #1e293b;
    --color-bg-hover: #334155;
    --color-bg-gradient: linear-gradient(180deg, #0f172a 0%, #1a2332 100%);
    
    --color-text: #f1f5f9;
    --color-text-secondary: #94a3b8;
    --color-text-muted: #64748b;
    
    --color-accent: #818cf8;
    --color-accent-light: #a5b4fc;
    --color-accent-bg: rgba(129, 140, 248, 0.12);
    
    --color-success: #34d399;
    --color-warning: #fbbf24;
    --color-danger: #f87171;
    --color-replacement: #fb923c;
    --color-replacement-bg: #2d1f1a;
    
    --color-border: #334155;
    --color-border-light: #2d3a4f;
    
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.3);
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.4);
    --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.6);
    --shadow-xl: 0 24px 60px rgba(0, 0, 0, 0.7);
}

/* Явные переопределения для карточек */
[data-theme="dark"] .lesson-card,
[data-theme="dark"] .bell-item,
[data-theme="dark"] .widget-now,
[data-theme="dark"] .day-nav,
[data-theme="dark"] .grade-chip,
[data-theme="dark"] .class-selector__dropdown,
[data-theme="dark"] .menu__panel,
[data-theme="dark"] .modal__content,
[data-theme="dark"] .notif-card,
[data-theme="dark"] .notif-section,
[data-theme="dark"] .contacts-card {
    background-color: var(--color-bg-card);
    color: var(--color-text);
    border-color: var(--color-border);
}

[data-theme="dark"] .lesson-card--replacement {
    background-color: var(--color-replacement-bg);
}

[data-theme="dark"] .bell-item--current {
    background-color: var(--color-accent-bg);
    border-left-color: var(--color-accent);
}

[data-theme="dark"] .day-nav {
    background-color: var(--color-bg-card);
}

[data-theme="dark"] .grade-chip {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .grade-chip--active {
    background: var(--color-primary-gradient);
    border-color: var(--color-primary);
    color: white;
}

[data-theme="dark"] .day-nav__item {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .day-nav__item:hover {
    background: var(--color-bg-hover);
    color: var(--color-accent);
}

[data-theme="dark"] .day-nav__item--active {
    background: var(--color-primary-gradient);
    color: white;
}

[data-theme="dark"] .widget-now {
    background-color: var(--color-bg-card);
    border-left-color: var(--color-accent);
}

[data-theme="dark"] .lesson-card__subject {
    color: var(--color-text);
}

/* Цвета времени урока в тёмной теме */
[data-theme="dark"] .lesson-card__start {
    color: var(--color-accent-light);
}

[data-theme="dark"] .lesson-card__end {
    color: var(--color-text-muted);
}

[data-theme="dark"] .lesson-card__teacher,
[data-theme="dark"] .lesson-card__room {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .lesson-card__group {
    background: var(--color-bg-hover);
}

[data-theme="dark"] .menu__link {
    color: var(--color-text);
}

[data-theme="dark"] .menu__link:hover {
    background: var(--color-bg-hover);
}

[data-theme="dark"] .menu__link--active {
    background: var(--color-accent-bg);
    color: var(--color-accent);
}

[data-theme="dark"] .modal__content {
    background-color: var(--color-bg-card);
}

[data-theme="dark"] .modal__title {
    color: var(--color-text);
}

[data-theme="dark"] .modal__text {
    color: var(--color-text-secondary);
}

[data-theme="dark"] .btn--secondary {
    background: var(--color-bg-hover);
    color: var(--color-text);
}

[data-theme="dark"] .btn--secondary:hover {
    background: var(--color-border);
}

[data-theme="dark"] .toast {
    background: var(--color-text);
    color: var(--color-bg-card);
}

[data-theme="dark"] .page__title {
    color: var(--color-text);
}

[data-theme="dark"] .contacts-item {
    color: var(--color-text-secondary);
    border-color: var(--color-border);
}

/* Уведомления */
[data-theme="dark"] .notif-card,
[data-theme="dark"] .notif-section {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
}

[data-theme="dark"] .notif-card--main {
    background: var(--color-accent-bg);
    border-color: var(--color-accent);
}

[data-theme="dark"] .notif-card__icon {
    background: var(--color-bg-hover);
}

[data-theme="dark"] .notif-card__title {
    color: var(--color-text);
}

[data-theme="dark"] .notif-card__desc {
    color: var(--color-text-muted);
}

[data-theme="dark"] .notif-status {
    background: rgba(52, 211, 153, 0.15);
    color: #6ee7b7;
}

[data-theme="dark"] .notif-section__header h3 {
    color: var(--color-text);
}

[data-theme="dark"] .notif-link {
    color: var(--color-accent);
}

[data-theme="dark"] .class-check,
[data-theme="dark"] .day-check,
[data-theme="dark"] .time-btn,
[data-theme="dark"] .quick-btn {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
    color: var(--color-text-secondary);
}

[data-theme="dark"] .class-check:hover,
[data-theme="dark"] .day-check:hover,
[data-theme="dark"] .time-btn:hover,
[data-theme="dark"] .quick-btn:hover {
    border-color: var(--color-accent-light);
}

[data-theme="dark"] .class-check--active {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: white;
}

[data-theme="dark"] .day-check--active {
    background: var(--color-accent-bg);
    border-color: var(--color-accent);
    color: var(--color-accent);
}

[data-theme="dark"] .time-btn--active {
    background: var(--color-accent);
    border-color: var(--color-accent);
    color: white;
}

[data-theme="dark"] .quick-btn--danger {
    color: var(--color-danger);
}

[data-theme="dark"] .quick-btn--danger:hover {
    border-color: var(--color-danger);
    background: rgba(239, 68, 68, 0.15);
}

[data-theme="dark"] .custom-time-input,
[data-theme="dark"] .dnd-time input {
    background: var(--color-bg);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .toggle__slider {
    background: var(--color-border);
}

[data-theme="dark"] .toggle input:checked + .toggle__slider {
    background: var(--color-success);
}

/* Кастомный селект */
[data-theme="dark"] .custom-select__trigger,
[data-theme="dark"] .custom-select__dropdown {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
    color: var(--color-text);
}

[data-theme="dark"] .custom-select__group {
    background: var(--color-bg-card);
    color: var(--color-text-muted);
}

[data-theme="dark"] .custom-select__option {
    color: var(--color-text);
}

[data-theme="dark"] .custom-select__option:hover {
    background: var(--color-bg-hover);
}

[data-theme="dark"] .custom-select__option--selected {
    background: var(--color-accent-bg);
    color: var(--color-accent);
}

/* Плавный переход */
body,
.header,
.menu__panel,
.modal__content,
.widget-now,
.lesson-card,
.bell-item,
.grade-chip,
.day-nav,
.notif-card,
.notif-section,
.contacts-card {
    transition: background-color 0.3s ease,
                color 0.3s ease,
                border-color 0.3s ease,
                box-shadow 0.3s ease;
}