/* assets/css/variables.css */
:root {
    /* 
     * Design Philosophy: "Clean Fintech"
     * Light Mode: Authoritative, legible, similar to official documents but modern.
     * Dark Mode: High contrast, reduced eye strain, premium dashboard feel.
     */

    /* Metrics & Shared Values */
    --font-family-base: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-family-display: 'Outfit', sans-serif;

    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-2xl: 3rem;
    --spacing-3xl: 5rem;

    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-full: 9999px;

    --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 300ms cubic-bezier(0.4, 0, 0.2, 1);

    --container-width: 1320px;
    --header-height: 60px;
}

/* 
 * Light Theme (Default) 
 * Inspired by Intuit/Stripe - Trustworthy Blue & Crisp White
 */
:root,
[data-theme="light"] {
    --color-brand-primary: #0f172a;
    /* Slate 900 */
    --color-brand-secondary: #334155;
    /* Slate 700 */

    /* Action Colors */
    --color-accent: #2563eb;
    /* Royal Blue 600 - More standard for "Links/Actions" than Cyan */
    --color-accent-hover: #1d4ed8;
    /* Blue 700 */

    --color-success: #059669;
    /* Emerald 600 */
    --color-warning: #d97706;
    /* Amber 600 */
    --color-danger: #dc2626;
    /* Red 600 */

    /* Backgrounds */
    --color-bg-body: #f8fafc;
    /* Slate 50 - Very subtle grey, easier on eyes than #FFF */
    --color-bg-surface: #ffffff;
    --color-bg-surface-alt: #f1f5f9;
    /* Slate 100 */
    --color-bg-surface-glass: rgba(255, 255, 255, 0.85);

    /* Borders */
    --color-border: #e2e8f0;
    /* Slate 200 */
    --color-border-hover: #cbd5e1;
    /* Slate 300 */

    /* Text */
    --color-text-main: #1e293b;
    /* Slate 800 */
    --color-text-muted: #64748b;
    /* Slate 500 */
    --color-text-inverted: #ffffff;

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgb(15 23 42 / 0.05);
    --shadow-md: 0 4px 6px -1px rgb(15 23 42 / 0.1), 0 2px 4px -2px rgb(15 23 42 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(15 23 42 / 0.1), 0 4px 6px -4px rgb(15 23 42 / 0.1);
    --shadow-glow: 0 0 20px rgba(37, 99, 235, 0.15);
    /* Blue glow */
}

/* 
 * Dark Theme 
 * Deep Slate approach - Professional, not "Matrix Green"
 */
[data-theme="dark"] {
    --color-brand-primary: #f8fafc;
    /* Slate 50 */
    --color-brand-secondary: #cbd5e1;
    /* Slate 300 */

    /* Action Colors - Brighter for dark bg */
    --color-accent: #3b82f6;
    /* Blue 500 */
    --color-accent-hover: #60a5fa;
    /* Blue 400 */

    --color-success: #10b981;
    /* Emerald 500 */
    --color-warning: #f59e0b;
    /* Amber 500 */
    --color-danger: #ef4444;
    /* Red 500 */

    /* Backgrounds */
    --color-bg-body: #020617;
    /* Slate 950 - Almost black, incredibly deep blue */
    --color-bg-surface: #0f172a;
    /* Slate 900 */
    --color-bg-surface-alt: #1e293b;
    /* Slate 800 */
    --color-bg-surface-glass: rgba(15, 23, 42, 0.85);

    /* Borders */
    --color-border: #1e293b;
    /* Slate 800 */
    --color-border-hover: #334155;
    /* Slate 700 */

    /* Text */
    --color-text-main: #f1f5f9;
    /* Slate 100 */
    --color-text-muted: #94a3b8;
    /* Slate 400 */
    --color-text-inverted: #0f172a;

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.5);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.5), 0 2px 4px -2px rgb(0 0 0 / 0.5);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.5), 0 4px 6px -4px rgb(0 0 0 / 0.5);
    --shadow-glow: 0 0 25px rgba(59, 130, 246, 0.2);
}