/**
 * Theme System - Light, Dark, and Auto modes
 * CSS Variables for theming the entire application
 */

:root {
    /* Light Mode (Default) */
    --bg-primary: #ffffff;
    --bg-secondary: #f9fafb;
    --bg-tertiary: #f3f4f6;
    --bg-hover: #e5e7eb;
    
    --text-primary: #1f2937;
    --text-secondary: #4b5563;
    --text-tertiary: #6b7280;
    --text-on-primary: #ffffff;
    
    --border-color: #e5e7eb;
    --border-light: #f3f4f6;
    
    --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);
    
    /* Color Palette - Light Mode */
    --blue-50: #eff6ff;
    --blue-100: #dbeafe;
    --blue-600: #2563eb;
    --blue-700: #1d4ed8;
    
    --indigo-50: #eef2ff;
    --indigo-100: #e0e7ff;
    --indigo-600: #4f46e5;
    --indigo-700: #4338ca;
    
    --green-50: #f0fdf4;
    --green-100: #dcfce7;
    --green-600: #16a34a;
    --green-700: #15803d;
    
    --red-50: #fef2f2;
    --red-100: #fee2e2;
    --red-600: #dc2626;
    --red-700: #b91c1c;
    
    --amber-50: #fffbeb;
    --amber-100: #fef3c7;
    --amber-600: #d97706;
    --amber-700: #b45309;
    
    --purple-50: #faf5ff;
    --purple-100: #f3e8ff;
    --purple-600: #9333ea;
    --purple-700: #7e22ce;
    
    --gray-50: #f9fafb;
    --gray-100: #f3f4f6;
    --gray-200: #e5e7eb;
    --gray-300: #d1d5db;
    --gray-600: #4b5563;
    --gray-700: #374151;
    
    /* Sidebar styles - Light Mode */
    --sidebar-bg: #ffffff;
    --sidebar-text: #1f2937;
    --sidebar-border: #e5e7eb;
    --sidebar-hover-bg: #f3f4f6;
    --sidebar-active-bg: #dbeafe;
    --sidebar-active-text: #2563eb;
    
    /* Topbar styles - Light Mode */
    --topbar-bg: #ffffff;
    --topbar-text: #1f2937;
    --topbar-border: #e5e7eb;
    
    /* Card styles - Light Mode */
    --card-bg: #ffffff;
    --card-border: #e5e7eb;
    --card-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    
    /* Input styles - Light Mode */
    --input-bg: #ffffff;
    --input-text: #1f2937;
    --input-border: #e5e7eb;
    --input-focus: #2563eb;
    --input-placeholder: #9ca3af;
}

/* Dark Mode */
html[data-theme="dark"] {
    --bg-primary: #1f2937;
    --bg-secondary: #111827;
    --bg-tertiary: #0f1419;
    --bg-hover: #374151;
    
    --text-primary: #f3f4f6;
    --text-secondary: #d1d5db;
    --text-tertiary: #b4bcc9;
    --text-on-primary: #1f2937;
    
    --border-color: #374151;
    --border-light: #282c34;
    
    --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);
    
    /* Color Palette - Dark Mode */
    --blue-50: #0c2340;
    --blue-100: #1e3a5f;
    --blue-600: #3b82f6;
    --blue-700: #60a5fa;
    
    --indigo-50: #1e1b4b;
    --indigo-100: #303f5f;
    --indigo-600: #6366f1;
    --indigo-700: #818cf8;
    
    --green-50: #0c2818;
    --green-100: #1a3a2a;
    --green-600: #4ade80;
    --green-700: #86efac;
    
    --red-50: #4c1f1f;
    --red-100: #7f2626;
    --red-600: #f87171;
    --red-700: #fca5a5;
    
    --amber-50: #4c3b1d;
    --amber-100: #7c5a1f;
    --amber-600: #fbbf24;
    --amber-700: #fcd34d;
    
    --purple-50: #3f1f4f;
    --purple-100: #6b2d7f;
    --purple-600: #c084fc;
    --purple-700: #d8b4fe;
    
    --gray-50: #111827;
    --gray-100: #1f2937;
    --gray-200: #374151;
    --gray-300: #4b5563;
    --gray-600: #d1d5db;
    --gray-700: #e5e7eb;
    
    /* Sidebar styles - Dark Mode */
    --sidebar-bg: #1f2937;
    --sidebar-text: #f3f4f6;
    --sidebar-border: #374151;
    --sidebar-hover-bg: #374151;
    --sidebar-active-bg: #1e3a5f;
    --sidebar-active-text: #60a5fa;
    
    /* Topbar styles - Dark Mode */
    --topbar-bg: #1f2937;
    --topbar-text: #f3f4f6;
    --topbar-border: #374151;
    
    /* Card styles - Dark Mode */
    --card-bg: #111827;
    --card-border: #374151;
    --card-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    
    /* Input styles - Dark Mode */
    --input-bg: #111827;
    --input-text: #f3f4f6;
    --input-border: #374151;
    --input-focus: #3b82f6;
    --input-placeholder: #6b7280;
}

/* Apply theme transition */
html {
    transition: background-color 0.3s ease, color 0.3s ease;
}

body {
    transition: background-color 0.3s ease, color 0.3s ease;
    background-color: var(--bg-secondary);
    color: var(--text-primary);
}

/* Transitions for interactive elements */
.btn,
.form-input,
.form-select,
.card,
.sidebar,
.topbar,
input,
select,
textarea {
    transition: all 0.2s ease;
}
