:root {
    /* Default Light Theme */
    --bg-primary: #FAFAFA;
    --bg-secondary: #FFFFFF;
    --bg-sidebar: #FFFFFF;
    --bg-card: #FFFFFF;
    --card-bg: #FFFFFF;
    --input-bg: #F3F4F6;

    /* Primary/Accent Colors - Black & Gold */
    --primary-color: #000000;
    --primary-dark: #121212;
    --primary-light: #4B5563;
    --primary-gradient: linear-gradient(135deg, #000000 0%, #1a1a1a 100%);
    --accent-color: #D4AF37;
    --gold-accent: #D4AF37;
    --gold-dark: #B8941F;
    --gold-light: #E8D4A0;
    --gold-accent-faint: rgba(212, 175, 55, 0.15);

    /* Semantic Colors - Status Indicators */
    --success-color: #10B981;
    --success-light: #86EFAC;
    --success-dark: #047857;
    --success-bg: rgba(16, 185, 129, 0.1);

    --warning-color: #F59E0B;
    --warning-light: #FCD34D;
    --warning-dark: #D97706;
    --warning-bg: rgba(245, 158, 11, 0.1);

    --danger-color: #EF4444;
    --danger-light: #FCA5A5;
    --danger-dark: #DC2626;
    --danger-bg: rgba(239, 68, 68, 0.1);

    --info-color: #64748b;
    --info-light: #94a3b8;
    --info-dark: #475569;
    --info-bg: rgba(100, 116, 139, 0.1);

    /* Icon Colors */
    --icon-primary: #111827;
    --icon-secondary: #6B7280;
    --icon-success: #10B981;
    --icon-warning: #F59E0B;
    --icon-danger: #EF4444;
    --icon-info: #64748b;

    /* Neutral Colors */
    --text-primary: #111827;
    --text-secondary: #4B5563;
    --text-muted: #9CA3AF;
    --text-white: #FFFFFF;
    --border-color: #E5E7EB;

    /* Popup/Modal Colors */
    --popup-bg: #FFFFFF;
    --popup-overlay: rgba(0, 0, 0, 0.5);
    --popup-border: #E5E7EB;

    /* Shadow Refinement */
    --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.05);

    /* Sidebar Border */
    --sidebar-border: #F3F4F6;

    /* Glassmorphism */
    --glass-bg: rgba(255, 255, 255, 0.7);
    --glass-border: rgba(212, 175, 55, 0.2);
    --glass-backdrop-filter: blur(10px);
    --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.05);

    /* Text on Inverted Backgrounds */
    --text-on-primary: #FFFFFF;

    /* Theme Transition */
    --theme-transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
}

[data-theme="dark"] {
    --bg-primary: #0A0A0A;
    --bg-secondary: #121212;
    --bg-sidebar: #121212;
    --bg-card: #121212;
    --card-bg: #121212;
    --input-bg: #1E1E1E;

    /* Inverted Primary Colors */
    --primary-color: #FFFFFF;
    --primary-dark: #F3F4F6;
    --primary-light: #9CA3AF;
    --primary-gradient: linear-gradient(135deg, #FFFFFF 0%, #E5E7EB 100%);

    /* Gold accent stays the same in dark mode for brand consistency */
    --gold-accent: #D4AF37;
    --gold-dark: #B8941F;
    --gold-light: #E8D4A0;
    --gold-accent-faint: rgba(212, 175, 55, 0.2);

    /* Semantic Colors - Brighter in dark mode for better visibility */
    --success-color: #059669;
    /* Darker, less vibrant green */
    --success-light: #34D399;
    --success-dark: #047857;
    --success-bg: rgba(5, 150, 105, 0.15);

    --warning-color: #FBBF24;
    --warning-light: #FDE047;
    --warning-dark: #F59E0B;
    --warning-bg: rgba(251, 191, 36, 0.15);

    --danger-color: #F87171;
    --danger-light: #FCA5A5;
    --danger-dark: #EF4444;
    --danger-bg: rgba(248, 113, 113, 0.15);

    --info-color: #60A5FA;
    --info-light: #93C5FD;
    --info-dark: #3B82F6;
    --info-bg: rgba(96, 165, 250, 0.15);

    /* Icon Colors - Brighter for dark mode */
    --icon-primary: #F9FAFB;
    --icon-secondary: #9CA3AF;
    --icon-success: #22C55E;
    --icon-warning: #FBBF24;
    --icon-danger: #F87171;
    --icon-info: #60A5FA;

    /* Text Inversion */
    --text-primary: #F9FAFB;
    --text-secondary: #9CA3AF;
    --text-muted: #6B7280;
    --text-white: #FFFFFF;
    --text-on-primary: #000000;

    /* Popup/Modal Colors */
    --popup-bg: #1A1A1A;
    --popup-overlay: rgba(0, 0, 0, 0.75);
    --popup-border: #262626;

    /* Border & Shadow Inversion */
    --border-color: #262626;
    --sidebar-border: #1E1E1E;
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.5), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3);

    /* Glassmorphism Inversion */
    --glass-bg: rgba(0, 0, 0, 0.4);
    --glass-border: rgba(212, 175, 55, 0.1);
    --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
}

/* Global Transitions */
body {
    transition: var(--theme-transition);
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.card,
.stat-card,
.sidebar,
.sidebar-nav,
.nav-link,
.user-profile,
.modal-content,
.popup,
.popup-overlay,
.table,
.form-control,
.btn,
.badge,
.status-badge,
.icon,
svg,
.alert,
.notification {
    transition: var(--theme-transition);
}