:root {
    /* Light theme (default) - Professional Payment Platform Colors */
    --primary-dark: #1e3a8a;
    --primary-main: #3b82f6;
    --primary-light: #93c5fd;
    --primary-accent: #6366f1;

    --secondary-dark: #064e3b;
    --secondary-main: #059669;
    --secondary-light: #6ee7b7;

    --accent-success: #059669;
    --accent-warning: #d97706;
    --accent-danger: #dc2626;
    --accent-info: #0ea5e9;

    --neutral-dark: #1f2937;
    --neutral-main: #374151;
    --neutral-light: #6b7280;
    --neutral-lighter: #9ca3af;

    --background-primary: #ffffff;
    --background-secondary: #f9fafb;
    --background-tertiary: #f3f4f6;
    --background-nav: #ffffff;
    --background-paper: #ffffff;

    --text-primary: #111827;
    --text-secondary: #374151;
    --text-muted: #6b7280;
    --text-light: #9ca3af;

    /* Navigation specific colors */
    --nav-bg: rgba(255, 255, 255, 0.98);
    --nav-border: rgba(59, 130, 246, 0.2);
    --nav-link-color: #374151;
    --nav-link-hover: #1f2937;
    --nav-link-active: #3b82f6;
    --nav-dropdown-bg: #ffffff;
    --nav-dropdown-shadow: rgba(0, 0, 0, 0.15);

    /* Crypto accent colors (subtle) */
    --crypto-accent-primary: #f59e0b;
    --crypto-accent-secondary: #8b5cf6;
    --border-color: rgba(0, 0, 0, 0.18);
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.1);
    --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.14);
}

/* Dark theme */
[data-theme="dark"] {
    --primary-dark: #60a5fa;
    --primary-main: #3b82f6;
    --primary-light: #1e40af;
    --primary-accent: #8b5cf6;

    --secondary-dark: #34d399;
    --secondary-main: #059669;
    --secondary-light: #047857;

    --accent-success: #10b981;
    --accent-warning: #f59e0b;
    --accent-danger: #ef4444;
    --accent-info: #06b6d4;

    --neutral-dark: #f9fafb;
    --neutral-main: #e5e7eb;
    --neutral-light: #9ca3af;
    --neutral-lighter: #6b7280;

    --background-primary: #111827;
    --background-secondary: #1f2937;
    --background-tertiary: #374151;
    --background-nav: rgba(17, 24, 39, 0.95);
    --background-paper: #1f2937;

    --text-primary: #f9fafb;
    --text-secondary: #e5e7eb;
    --text-muted: #9ca3af;
    --text-light: #6b7280;

    /* Navigation specific colors for dark theme */
    --nav-bg: rgba(17, 24, 39, 0.98);
    --nav-border: rgba(96, 165, 250, 0.3);
    --nav-link-color: #e5e7eb;
    --nav-link-hover: #f9fafb;
    --nav-link-active: #60a5fa;
    --nav-dropdown-bg: #1f2937;
    --nav-dropdown-shadow: rgba(0, 0, 0, 0.4);

    /* Crypto accent colors (subtle) for dark theme */
    --crypto-accent-primary: #fbbf24;
    --crypto-accent-secondary: #a78bfa;
    --border-color: rgba(255, 255, 255, 0.18);
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.5);
}

/* Apply theme variables to common elements */
body {
    background-color: var(--background-primary);
    color: var(--text-primary);
    transition: background-color 0.3s ease, color 0.3s ease;
}

.card {
    background-color: var(--background-paper);
    border-color: var(--border-color);
    box-shadow: var(--shadow-sm);
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.btn-primary {
    background-color: var(--primary-main);
    border-color: var(--primary-main);
}

.btn-primary:hover {
    background-color: var(--primary-dark);
    border-color: var(--primary-dark);
}

.text-muted {
    color: var(--text-muted) !important;
}

.border {
    border-color: var(--border-color) !important;
}