:root {
  --bg-primary: #111827;
  --bg-secondary: #1f2937;
  --bg-input: #374151;
  --text-primary: #ffffff;
  --text-secondary: #9ca3af;
  --text-muted: #6b7280;
  --border-color: #374151;
  --footer-bg: #111827;
}

[data-theme="light"] {
  --bg-primary: #f3f4f6;
  --bg-secondary: #ffffff;
  --bg-input: #e5e7eb;
  --text-primary: #111827;
  --text-secondary: #4b5563;
  --text-muted: #9ca3af;
  --border-color: #d1d5db;
  --footer-bg: #f3f4f6;
}

body { background-color: var(--bg-primary) !important; color: var(--text-primary) !important; }
.bg-gray-900 { background-color: var(--bg-primary) !important; }
.bg-gray-800 { background-color: var(--bg-secondary) !important; }
.bg-gray-700 { background-color: var(--bg-input) !important; }
.text-white { color: var(--text-primary) !important; }
.text-gray-400 { color: var(--text-secondary) !important; }
.text-gray-600 { color: var(--text-muted) !important; }
.border-gray-700 { border-color: var(--border-color) !important; }

/* Переключатель темы */
#themeToggle {
  cursor: pointer;
  background: none;
  border: 1px solid var(--border-color);
  color: var(--text-secondary);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 12px;
  transition: all 0.2s;
}
#themeToggle:hover {
  color: var(--text-primary);
  border-color: var(--text-secondary);
}

/* Бейджи статусов в светлой теме */
[data-theme="light"] .bg-yellow-500,
[data-theme="light"] .bg-green-500,
[data-theme="light"] .bg-red-500,
[data-theme="light"] .bg-gray-500,
[data-theme="light"] .bg-gray-600 {
  color: #ffffff !important;
}

[data-theme="light"] .bg-blue-600,
[data-theme="light"] .bg-blue-700,
[data-theme="light"] .bg-gray-600,
[data-theme="light"] .bg-gray-700 {
  color: #ffffff !important;
}

/* Текст в инпутах и селектах в светлой теме */
[data-theme="light"] input,
[data-theme="light"] select,
[data-theme="light"] textarea {
  color: #111827 !important;
}

/* Текст в зелёной кнопке */
[data-theme="light"] .bg-green-600,
[data-theme="light"] .bg-green-700 {
  color: #ffffff !important;
}

/* Текст заголовков и меток */
[data-theme="light"] .text-white:not(button):not(span) {
  color: #111827 !important;
}

/* Текст статистики и ролей */
[data-theme="light"] .text-blue-400 {
  color: #2563eb !important;
}

[data-theme="light"] .bg-gray-700 span,
[data-theme="light"] .bg-gray-700 {
  color: #111827 !important;
}

/* Текст в periodStats */
[data-theme="light"] #periodStats {
  color: #111827 !important;
}

/* Hover на строках таблицы */
[data-theme="light"] .hover\:bg-gray-800:hover {
  background-color: #e5e7eb !important;
}

/* Календарь в тёмной теме */
::-webkit-calendar-picker-indicator {
  filter: invert(1);
}

[data-theme="light"] ::-webkit-calendar-picker-indicator {
  filter: invert(0);
}