/* ============================================
   Nexora EDS v2 — "Midnight Aurora" Design System
   ============================================ */

:root {
    /* ── Шрифты ── */
    --font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-mono: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace;

    /* ── Размеры шрифтов ── */
    --text-xs: 0.75rem;
    --text-sm: 0.8125rem;
    --text-base: 0.9375rem;
    --text-lg: 1.0625rem;
    --text-xl: 1.25rem;
    --text-2xl: 1.5rem;
    --text-3xl: 2rem;
    --text-4xl: 2.5rem;

    /* ── Скругления ── */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 20px;
    --radius-2xl: 24px;
    --radius-full: 9999px;

    /* ── Отступы ── */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --spacing-xl: 32px;
    --spacing-2xl: 48px;
    --spacing-3xl: 64px;

    /* ── Анимации ── */
    --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 400ms cubic-bezier(0.4, 0, 0.2, 1);
    --transition-theme: 350ms cubic-bezier(0.4, 0, 0.2, 1);

    /* ── Градиент Aurora (общий) ── */
    --gradient-aurora: linear-gradient(135deg, #7C3AED, #2563EB, #06B6D4);
    --gradient-aurora-hover: linear-gradient(135deg, #8B5CF6, #3B82F6, #22D3EE);
    --gradient-aurora-subtle: linear-gradient(135deg, rgba(124,58,237,0.12), rgba(37,99,235,0.12), rgba(6,182,212,0.12));
    --gradient-text: linear-gradient(135deg, #A78BFA, #60A5FA, #22D3EE);
}

/* ============================================
   Тёмная тема (основная)
   ============================================ */
[data-theme="dark"] {
    --bg-body: #050510;
    --bg-primary: #0A0A1A;
    --bg-secondary: #0E0E22;
    --bg-tertiary: #14142B;
    --bg-elevated: #1A1A35;
    --bg-hover: rgba(255, 255, 255, 0.04);
    --bg-active: rgba(255, 255, 255, 0.08);

    --text-primary: #E8ECF4;
    --text-secondary: #8B92A8;
    --text-tertiary: #555B70;
    --text-placeholder: #3D4256;
    --text-inverse: #050510;

    --border-primary: rgba(255, 255, 255, 0.06);
    --border-secondary: rgba(255, 255, 255, 0.10);
    --border-hover: rgba(255, 255, 255, 0.15);
    --border-focus: #7C3AED;

    --accent-primary: #7C3AED;
    --accent-secondary: #2563EB;
    --accent-tertiary: #06B6D4;
    --accent-hover: #8B5CF6;
    --accent-active: #6D28D9;
    --accent-text: #FFFFFF;
    --accent-glow: rgba(124, 58, 237, 0.25);
    --accent-glow-strong: rgba(124, 58, 237, 0.4);

    --color-success: #10B981;
    --color-success-soft: rgba(16, 185, 129, 0.1);
    --color-warning: #F59E0B;
    --color-warning-soft: rgba(245, 158, 11, 0.1);
    --color-error: #EF4444;
    --color-error-soft: rgba(239, 68, 68, 0.1);
    --color-info: #3B82F6;
    --color-info-soft: rgba(59, 130, 246, 0.1);

    --card-bg: rgba(14, 14, 34, 0.6);
    --card-border: rgba(255, 255, 255, 0.06);
    --card-border-hover: rgba(255, 255, 255, 0.12);
    --card-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);

    --input-bg: rgba(255, 255, 255, 0.03);
    --input-border: rgba(255, 255, 255, 0.08);
    --input-border-hover: rgba(255, 255, 255, 0.15);
    --input-border-focus: #7C3AED;
    --input-text: #E8ECF4;
    --input-placeholder: #3D4256;
    --input-glow: 0 0 0 3px rgba(124, 58, 237, 0.15), 0 0 20px rgba(124, 58, 237, 0.08);

    --sidebar-bg: rgba(8, 8, 20, 0.85);
    --sidebar-border: rgba(255, 255, 255, 0.04);
    --sidebar-item-active-bg: rgba(124, 58, 237, 0.12);
    --sidebar-item-active-border: #7C3AED;

    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.35);
    --shadow-lg: 0 12px 40px rgba(0, 0, 0, 0.45);
    --shadow-glow: 0 0 30px rgba(124, 58, 237, 0.15);
}

/* ============================================
   Светлая тема
   ============================================ */
[data-theme="light"] {
    --bg-body: #F4F4FB;
    --bg-primary: #FFFFFF;
    --bg-secondary: #FAFAFF;
    --bg-tertiary: #F0F0FA;
    --bg-elevated: #FFFFFF;
    --bg-hover: rgba(124, 58, 237, 0.04);
    --bg-active: rgba(124, 58, 237, 0.08);

    --text-primary: #0F0F2D;
    --text-secondary: #4A4A6A;
    --text-tertiary: #8888A8;
    --text-placeholder: #B0B0C8;
    --text-inverse: #FFFFFF;

    --border-primary: rgba(15, 15, 45, 0.07);
    --border-secondary: rgba(15, 15, 45, 0.12);
    --border-hover: rgba(15, 15, 45, 0.18);
    --border-focus: #7C3AED;

    --accent-primary: #7C3AED;
    --accent-secondary: #2563EB;
    --accent-tertiary: #06B6D4;
    --accent-hover: #6D28D9;
    --accent-active: #5B21B6;
    --accent-text: #FFFFFF;
    --accent-glow: rgba(124, 58, 237, 0.15);
    --accent-glow-strong: rgba(124, 58, 237, 0.25);

    --color-success: #059669;
    --color-success-soft: rgba(5, 150, 105, 0.08);
    --color-warning: #D97706;
    --color-warning-soft: rgba(217, 119, 6, 0.08);
    --color-error: #DC2626;
    --color-error-soft: rgba(220, 38, 38, 0.08);
    --color-info: #2563EB;
    --color-info-soft: rgba(37, 99, 235, 0.08);

    --card-bg: #FFFFFF;
    --card-border: rgba(15, 15, 45, 0.07);
    --card-border-hover: rgba(124, 58, 237, 0.2);
    --card-shadow: 0 4px 24px rgba(15, 15, 45, 0.06);

    --input-bg: #FFFFFF;
    --input-border: rgba(15, 15, 45, 0.12);
    --input-border-hover: rgba(15, 15, 45, 0.22);
    --input-border-focus: #7C3AED;
    --input-text: #0F0F2D;
    --input-placeholder: #B0B0C8;
    --input-glow: 0 0 0 3px rgba(124, 58, 237, 0.12), 0 0 16px rgba(124, 58, 237, 0.06);

    --sidebar-bg: #FFFFFF;
    --sidebar-border: rgba(15, 15, 45, 0.06);
    --sidebar-item-active-bg: rgba(124, 58, 237, 0.08);
    --sidebar-item-active-border: #7C3AED;

    --shadow-sm: 0 1px 3px rgba(15, 15, 45, 0.04);
    --shadow-md: 0 4px 12px rgba(15, 15, 45, 0.06);
    --shadow-lg: 0 12px 40px rgba(15, 15, 45, 0.08);
    --shadow-glow: 0 0 30px rgba(124, 58, 237, 0.08);
}
