/**
 * UNIFIED THEME VARIABLES
 * Единая система CSS переменных для светлой и тёмной темы
 * Версия: 1.0
 * Дата: 2025-12-09
 */

:root {
  /* ============================================
     СВЕТЛАЯ ТЕМА (по умолчанию)
     ============================================ */
  
  /* Основные цвета фона */
  --color-bg-primary: #ffffff;
  --color-bg-secondary: #f8f9fa;
  --color-bg-tertiary: #e9ecef;
  --color-bg-elevated: #ffffff;
  
  /* Цвета текста */
  --color-text-primary: #182137;
  --color-text-secondary: #4e5567;
  --color-text-tertiary: #7e879d;
  --color-text-inverse: #ffffff;
  
  /* Акцентные цвета */
  --color-accent-primary: #8B5CF6;
  --color-accent-secondary: #7c3aed;
  --color-accent-hover: #7c3aed;
  
  /* Статусные цвета */
  --color-success: #1E9754;
  --color-success-bg: #d1fae5;
  --color-danger: #D12222;
  --color-danger-bg: #fee2e2;
  --color-warning: #ffc107;
  --color-warning-bg: #fef3c7;
  --color-info: #0dcaf0;
  --color-info-bg: #cff4fc;
  
  /* Границы */
  --color-border-primary: #C9CED5;
  --color-border-secondary: #e3e5ea;
  --color-border-focus: #3586FF;
  
  /* Компоненты */
  --color-card-bg: #ffffff;
  --color-card-border: #e3e5ea;
  --color-modal-bg: #ffffff;
  --color-modal-overlay: rgba(0, 0, 0, 0.5);
  --color-dropdown-bg: #ffffff;
  --color-dropdown-border: #C9CED5;
  --color-dropdown-hover: #f8f9fa;
  --color-table-bg: #ffffff;
  --color-table-hover: #E9F0FF;
  --color-table-border: #C9CED5;
  --color-sidebar-bg: #ffffff;
  --color-sidebar-border: #e3e5ea;
  
  /* Кнопки */
  --color-btn-primary-bg: #8B5CF6;
  --color-btn-primary-text: #ffffff;
  --color-btn-primary-hover: #7c3aed;
  --color-btn-secondary-bg: #7e879d;
  --color-btn-secondary-text: #ffffff;
  --color-btn-secondary-hover: #6c757d;
  
  /* Формы */
  --color-input-bg: #ffffff;
  --color-input-border: #C9CED5;
  --color-input-text: #182137;
  --color-input-placeholder: #7e879d;
  --color-input-focus-border: #8B5CF6;
  --color-input-focus-shadow: rgba(139, 92, 246, 0.25);
  
  /* Тени */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  
  /* Радиусы скругления */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 12px;
  
  /* Переходы */
  --transition-fast: 150ms ease;
  --transition-base: 200ms ease;
  --transition-slow: 300ms ease;
  
  /* Дополнительные переменные для Bootstrap */
  --color-text-tertiary: rgba(78, 85, 103, 0.5);
  --color-accent-focus: rgba(139, 92, 246, 0.25);
  --color-table-hover: rgba(139, 92, 246, 0.05);
  --color-dropdown-hover: #f8f9fa;
}

html.dark-theme {
  /* ============================================
     ТЁМНАЯ ТЕМА
     ============================================ */
  
  /* Основные цвета фона */
  --color-bg-primary: #0f172a;
  --color-bg-secondary: #1e293b;
  --color-bg-tertiary: #334155;
  --color-bg-elevated: #1e293b;
  
  /* Цвета текста */
  --color-text-primary: #f1f5f9;
  --color-text-secondary: #cbd5e1;
  --color-text-tertiary: #94a3b8;
  --color-text-inverse: #0f172a;
  
  /* Акцентные цвета */
  --color-accent-primary: #8B5CF6;
  --color-accent-secondary: #A78BFA;
  --color-accent-hover: #7c3aed;
  
  /* Статусные цвета */
  --color-success: #10b981;
  --color-success-bg: #064e3b;
  --color-danger: #ef4444;
  --color-danger-bg: #7f1d1d;
  --color-warning: #f59e0b;
  --color-warning-bg: #78350f;
  --color-info: #06b6d4;
  --color-info-bg: #164e63;
  
  /* Границы */
  --color-border-primary: #334155;
  --color-border-secondary: #475569;
  --color-border-focus: #8B5CF6;
  
  /* Компоненты */
  --color-card-bg: #1e293b;
  --color-card-border: #334155;
  --color-modal-bg: #1e293b;
  --color-modal-overlay: rgba(0, 0, 0, 0.75);
  --color-dropdown-bg: #1e293b;
  --color-dropdown-border: #334155;
  --color-dropdown-hover: #334155;
  --color-table-bg: #1e293b;
  --color-table-hover: rgba(139, 92, 246, 0.1);
  --color-table-border: #334155;
  --color-sidebar-bg: #1e293b;
  --color-sidebar-border: #334155;
  
  /* Кнопки */
  --color-btn-primary-bg: #8B5CF6;
  --color-btn-primary-text: #ffffff;
  --color-btn-primary-hover: #7c3aed;
  --color-btn-secondary-bg: #475569;
  --color-btn-secondary-text: #f1f5f9;
  --color-btn-secondary-hover: #64748b;
  
  /* Формы */
  --color-input-bg: rgba(30, 41, 55, 0.5);
  --color-input-border: #334155;
  --color-input-text: #f1f5f9;
  --color-input-placeholder: #94a3b8;
  --color-input-focus-border: #8B5CF6;
  --color-input-focus-shadow: rgba(139, 92, 246, 0.25);
  
  /* Тени */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.6);
  
  /* Дополнительные переменные для Bootstrap */
  --color-text-tertiary: rgba(148, 163, 184, 0.5);
  --color-accent-focus: rgba(139, 92, 246, 0.25);
}

/* ============================================
   ПЕРЕОПРЕДЕЛЕНИЕ BOOTSTRAP ПЕРЕМЕННЫХ
   ============================================ */

:root {
  /* Bootstrap цвета */
  --bs-body-bg: var(--color-bg-primary);
  --bs-body-color: var(--color-text-primary);
  --bs-primary: var(--color-accent-primary);
  --bs-secondary: var(--color-text-tertiary);
  --bs-success: var(--color-success);
  --bs-danger: var(--color-danger);
  --bs-warning: var(--color-warning);
  --bs-info: var(--color-info);
  
  /* Bootstrap компоненты */
  --bs-border-color: var(--color-border-primary);
  --bs-card-bg: var(--color-card-bg);
  --bs-card-border-color: var(--color-card-border);
  --bs-modal-bg: var(--color-modal-bg);
  --bs-dropdown-bg: var(--color-dropdown-bg);
  --bs-dropdown-border-color: var(--color-dropdown-border);
  --bs-dropdown-link-hover-bg: var(--color-dropdown-hover);
  --bs-dropdown-link-hover-color: var(--color-text-primary);
  --bs-table-bg: var(--color-table-bg);
  --bs-table-hover-bg: var(--color-table-hover);
  --bs-table-border-color: var(--color-table-border);
  
  /* Bootstrap формы */
  --bs-input-bg: var(--color-input-bg);
  --bs-input-border-color: var(--color-input-border);
  --bs-input-color: var(--color-input-text);
  --bs-input-placeholder-color: var(--color-input-placeholder);
  --bs-input-focus-border-color: var(--color-input-focus-border);
  --bs-input-focus-box-shadow: 0 0 0 0.25rem var(--color-input-focus-shadow);
  
  /* Bootstrap кнопки */
  --bs-btn-bg: var(--color-btn-primary-bg);
  --bs-btn-color: var(--color-btn-primary-text);
  --bs-btn-hover-bg: var(--color-btn-primary-hover);
}

html.dark-theme {
  /* Переопределяем Bootstrap переменные для тёмной темы */
  --bs-body-bg: var(--color-bg-primary);
  --bs-body-color: var(--color-text-primary);
  --bs-primary: var(--color-accent-primary);
  --bs-border-color: var(--color-border-primary);
  --bs-card-bg: var(--color-card-bg);
  --bs-modal-bg: var(--color-modal-bg);
  --bs-dropdown-bg: var(--color-dropdown-bg);
  --bs-dropdown-link-hover-bg: var(--color-dropdown-hover);
  --bs-table-hover-bg: var(--color-table-hover);
  --bs-input-bg: var(--color-input-bg);
  --bs-input-border-color: var(--color-input-border);
  --bs-input-focus-border-color: var(--color-input-focus-border);
}
