/* =============================================
   AURUM DEFENSE - Design System & Themes
   ============================================= */

/* Importação de fontes */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap');

/* =============================================
   TEMA ESCURO (Padrão)
   ============================================= */
:root {
    /* === Paleta Principal === */
    --preto: #0D0D0D;
    --preto-suave: #1A1A1A;
    --dourado: #D4AF37;
    --dourado-claro: #E5C158;
    --dourado-escuro: #B8960F;
    --dourado-opaco: rgba(212, 175, 55, 0.1);
    --dourado-medio-opaco: rgba(212, 175, 55, 0.2);
    
    /* === Cinzas === */
    --cinza-escuro: #252525;
    --cinza-medio: #3A3A3A;
    --cinza-claro: #4A4A4A;
    --cinza-borda: #353535;
    
    /* === Texto === */
    --branco: #F5F5F5;
    --texto-primario: #F5F5F5;
    --texto-secundario: #A0A0A0;
    --texto-terciario: #6A6A6A;
    --texto-inverso: #0D0D0D;
    
    /* === Status === */
    --sucesso: #4CAF50;
    --sucesso-bg: rgba(76, 175, 80, 0.15);
    --alerta: #FF9800;
    --alerta-bg: rgba(255, 152, 0, 0.15);
    --erro: #F44336;
    --erro-bg: rgba(244, 67, 54, 0.15);
    --info: #2196F3;
    --info-bg: rgba(33, 150, 243, 0.15);
    
    /* === Backgrounds === */
    --bg-primario: #0D0D0D;
    --bg-secundario: #252525;
    --bg-terciario: #1A1A1A;
    --bg-elevado: #2A2A2A;
    --bg-hover: rgba(212, 175, 55, 0.05);
    --bg-overlay: rgba(0, 0, 0, 0.7);
    
    /* === Bordas === */
    --borda-fina: 1px solid rgba(212, 175, 55, 0.1);
    --borda-media: 1px solid rgba(212, 175, 55, 0.3);
    --borda-dourada: 2px solid var(--dourado);
    --borda-input: 1px solid #3A3A3A;
    
    /* === Sombras === */
    --sombra-suave: 0 2px 8px rgba(0, 0, 0, 0.3);
    --sombra-media: 0 4px 16px rgba(0, 0, 0, 0.4);
    --sombra-forte: 0 8px 32px rgba(0, 0, 0, 0.6);
    --sombra-dourada: 0 4px 16px rgba(212, 175, 55, 0.2);
    
    /* === Tipografia === */
    --fonte-primaria: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --fonte-mono: 'JetBrains Mono', monospace;
    --font-size-xs: 0.75rem;
    --font-size-sm: 0.85rem;
    --font-size-base: 1rem;
    --font-size-lg: 1.1rem;
    --font-size-xl: 1.25rem;
    --font-size-2xl: 1.5rem;
    --font-size-3xl: 2rem;
    --font-size-4xl: 2.5rem;
    --font-size-5xl: 3rem;
    
    /* === Layout === */
    --sidebar-width: 280px;
    --sidebar-collapsed: 80px;
    --header-height: 70px;
    --header-publico-height: 70px;
    --container-max: 1200px;
    --container-padding: 2rem;
    
    /* === Espaçamento === */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 1rem;
    --space-4: 1.5rem;
    --space-5: 2rem;
    --space-6: 3rem;
    --space-7: 4rem;
    --space-8: 6rem;
    
    /* === Bordas Arredondadas === */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-2xl: 20px;
    --radius-full: 50%;
    
    /* === Transições === */
    --transition-fast: 150ms ease;
    --transition-base: 250ms ease;
    --transition-slow: 350ms ease;
    --transition-spring: 300ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
    
    /* === Z-index === */
    --z-base: 1;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-overlay: 300;
    --z-modal: 400;
    --z-toast: 500;
    --z-tooltip: 600;
    
    /* === Layout Components === */
    --sidebar-bg: #252525;
    --sidebar-border: rgba(212, 175, 55, 0.1);
    --card-bg: #252525;
    --card-hover-bg: #2A2A2A;
    --input-bg: #1A1A1A;
    --input-focus-bg: #1F1F1F;
}

/* =============================================
   TEMA CLARO
   ============================================= */
body.light-mode {
    /* === Paleta Principal === */
    --preto: #FFFFFF;
    --preto-suave: #F8F9FA;
    --dourado: #B8960F;
    --dourado-claro: #D4AF37;
    --dourado-escuro: #8B6914;
    --dourado-opaco: rgba(184, 150, 15, 0.08);
    --dourado-medio-opaco: rgba(184, 150, 15, 0.15);
    
    /* === Cinzas === */
    --cinza-escuro: #F0F0F0;
    --cinza-medio: #E0E0E0;
    --cinza-claro: #D0D0D0;
    --cinza-borda: #E5E5E5;
    
    /* === Texto === */
    --branco: #0D0D0D;
    --texto-primario: #0D0D0D;
    --texto-secundario: #6A6A6A;
    --texto-terciario: #A0A0A0;
    --texto-inverso: #FFFFFF;
    
    /* === Status === */
    --sucesso: #2E7D32;
    --sucesso-bg: rgba(46, 125, 50, 0.1);
    --alerta: #E65100;
    --alerta-bg: rgba(230, 81, 0, 0.1);
    --erro: #C62828;
    --erro-bg: rgba(198, 40, 40, 0.1);
    --info: #1565C0;
    --info-bg: rgba(21, 101, 192, 0.1);
    
    /* === Backgrounds === */
    --bg-primario: #FFFFFF;
    --bg-secundario: #F5F5F5;
    --bg-terciario: #FAFAFA;
    --bg-elevado: #FFFFFF;
    --bg-hover: rgba(184, 150, 15, 0.05);
    --bg-overlay: rgba(0, 0, 0, 0.4);
    
    /* === Bordas === */
    --borda-fina: 1px solid rgba(184, 150, 15, 0.15);
    --borda-media: 1px solid rgba(184, 150, 15, 0.3);
    --borda-dourada: 2px solid #B8960F;
    --borda-input: 1px solid #E0E0E0;
    
    /* === Sombras === */
    --sombra-suave: 0 2px 8px rgba(0, 0, 0, 0.06);
    --sombra-media: 0 4px 16px rgba(0, 0, 0, 0.08);
    --sombra-forte: 0 8px 32px rgba(0, 0, 0, 0.12);
    --sombra-dourada: 0 4px 16px rgba(184, 150, 15, 0.15);
    
    /* === Sidebar & Cards === */
    --sidebar-bg: #FAFAFA;
    --sidebar-border: rgba(0, 0, 0, 0.08);
    --card-bg: #FFFFFF;
    --card-hover-bg: #FAFAFA;
    --input-bg: #F5F5F5;
    --input-focus-bg: #FFFFFF;
}

/* =============================================
   TRANSIÇÃO DE TEMA
   ============================================= */
body {
    transition: background-color var(--transition-slow),
                color var(--transition-slow);
}

*, *::before, *::after {
    transition: background-color var(--transition-base),
                border-color var(--transition-base),
                box-shadow var(--transition-base);
}