/**
 * CSS Custom Properties (Variables)
 * Zentrale Design-Tokens für die gesamte App
 */

:root {
    /* ==================== FARBEN ==================== */

    /* Primärfarben */
    --color-primary: #3498db;
    --color-primary-dark: #2980b9;
    --color-primary-light: #5dade2;

    /* Semantische Farben */
    --color-success: #27ae60;
    --color-success-light: #2ecc71;
    --color-warning: #f39c12;
    --color-warning-light: #f1c40f;
    --color-error: #e74c3c;
    --color-error-light: #ec7063;
    --color-info: #3498db;

    /* Neutrale Farben */
    --color-text: #2c3e50;
    --color-text-light: #7f8c8d;
    --color-text-muted: #95a5a6;
    --color-bg: #f5f6fa;
    --color-bg-dark: #ecf0f1;
    --color-white: #ffffff;
    --color-black: #1a1a2e;

    /* Karten & Borders */
    --color-border: #dfe6e9;
    --color-card-bg: #ffffff;
    --color-card-shadow: rgba(0, 0, 0, 0.1);

    /* Einnahmen/Ausgaben spezifisch */
    --color-income: #27ae60;
    --color-expense: #e74c3c;


    /* ==================== SPACING ==================== */

    --spacing-xs: 0.25rem;   /* 4px */
    --spacing-sm: 0.5rem;    /* 8px */
    --spacing-md: 1rem;      /* 16px */
    --spacing-lg: 1.5rem;    /* 24px */
    --spacing-xl: 2rem;      /* 32px */
    --spacing-2xl: 3rem;     /* 48px */


    /* ==================== TYPOGRAPHY ==================== */

    --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
                   'Helvetica Neue', Arial, sans-serif;
    --font-family-mono: 'SF Mono', 'Fira Code', 'Consolas', monospace;

    --font-size-xs: 0.75rem;   /* 12px */
    --font-size-sm: 0.875rem;  /* 14px */
    --font-size-md: 1rem;      /* 16px */
    --font-size-lg: 1.125rem;  /* 18px */
    --font-size-xl: 1.25rem;   /* 20px */
    --font-size-2xl: 1.5rem;   /* 24px */
    --font-size-3xl: 2rem;     /* 32px */

    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    --line-height-tight: 1.25;
    --line-height-normal: 1.5;
    --line-height-relaxed: 1.75;


    /* ==================== BORDERS & RADIUS ==================== */

    --border-width: 1px;
    --border-radius-sm: 4px;
    --border-radius-md: 8px;
    --border-radius-lg: 12px;
    --border-radius-xl: 16px;
    --border-radius-full: 9999px;


    /* ==================== SHADOWS ==================== */

    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.15);


    /* ==================== TRANSITIONS ==================== */

    --transition-fast: 150ms ease;
    --transition-normal: 250ms ease;
    --transition-slow: 350ms ease;


    /* ==================== Z-INDEX ==================== */

    --z-dropdown: 100;
    --z-sticky: 200;
    --z-modal: 300;
    --z-tooltip: 400;


    /* ==================== LAYOUT ==================== */

    --container-max-width: 1200px;
    --sidebar-width: 250px;
    --header-height: 60px;
    --nav-height: 50px;

    /* ==================== GRADIENT & GLASSMORPHISM ==================== */

    /* Gradient-Farben */
    --gradient-start: #667eea;
    --gradient-end: #764ba2;
    --gradient-primary: linear-gradient(135deg, var(--gradient-start), var(--gradient-end));
    --color-gradient-fallback: #6f5ce5;

    /* Glassmorphism */
    --glass-bg: rgba(255, 255, 255, 0.12);
    --glass-border: rgba(255, 255, 255, 0.2);
    --glass-blur: 12px;

    /* Navigation Pills */
    --nav-pill-bg: rgba(255, 255, 255, 0.1);
    --nav-pill-bg-hover: rgba(255, 255, 255, 0.18);
    --nav-pill-bg-active: #ffffff;
    --nav-pill-color: rgba(255, 255, 255, 0.9);
    --nav-pill-color-active: var(--gradient-start);

    /* Unified Header */
    --unified-header-height: 100px;
    --unified-header-height-mobile: 56px;

    /* Mobile Navigation */
    --mobile-nav-height: 64px;
    --mobile-nav-bg: rgba(255, 255, 255, 0.98);
}


/* ==================== DARK MODE (Optional für später) ==================== */

@media (prefers-color-scheme: dark) {
    :root {
        /* Kann später für Dark Mode aktiviert werden */
        /* --color-bg: #1a1a2e; */
        /* --color-text: #f5f6fa; */
    }
}
