/* ===============================================
   REBOOT MENTAL - TEMA PRODUTIVIDADE
   Variáveis Globais de Design
   =============================================== */

:root {
    /* ===== CORES PRINCIPAIS ===== */
    --primary-color: #4F46E5;        /* Roxo/Índigo vibrante */
    --primary-light: #6366F1;        /* Roxo mais claro */
    --primary-dark: #4338CA;         /* Roxo mais escuro */
    
    --secondary-color: #06B6D4;      /* Azul ciano */
    --secondary-light: #22D3EE;      /* Azul ciano claro */
    --secondary-dark: #0891B2;       /* Azul ciano escuro */
    
    /* ===== CORES DE STATUS ===== */
    --success-color: #10B981;        /* Verde sucesso */
    --success-light: #34D399;        /* Verde claro */
    --success-dark: #059669;         /* Verde escuro */
    
    --warning-color: #F59E0B;        /* Laranja alerta */
    --warning-light: #FBBF24;        /* Laranja claro */
    --warning-dark: #D97706;         /* Laranja escuro */
    
    --danger-color: #EF4444;         /* Vermelho erro */
    --danger-light: #F87171;         /* Vermelho claro */
    --danger-dark: #DC2626;          /* Vermelho escuro */
    
    --info-color: #3B82F6;           /* Azul info */
    
    /* ===== CORES DE FUNDO ===== */
    --bg-primary: #F9FAFB;           /* Fundo principal (cinza clarinho) */
    --bg-secondary: #FFFFFF;         /* Fundo cards/containers */
    --bg-tertiary: #F3F4F6;          /* Fundo alternativo */
    --bg-dark: #1F2937;              /* Fundo escuro */
    
    /* ===== CORES DE TEXTO ===== */
    --text-primary: #1F2937;         /* Texto principal (escuro) */
    --text-secondary: #6B7280;       /* Texto secundário (cinza) */
    --text-tertiary: #9CA3AF;        /* Texto terciário (cinza claro) */
    --text-white: #FFFFFF;           /* Texto branco */
    
    /* ===== GRADIENTES ===== */
    --gradient-primary: linear-gradient(135deg, #4F46E5 0%, #7C3AED 100%);
    --gradient-secondary: linear-gradient(135deg, #06B6D4 0%, #3B82F6 100%);
    --gradient-success: linear-gradient(135deg, #10B981 0%, #059669 100%);
    --gradient-warm: linear-gradient(135deg, #F59E0B 0%, #EF4444 100%);
    
    /* ===== SOMBRAS ===== */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    --shadow-primary: 0 10px 25px -5px rgba(79, 70, 229, 0.3);
    --shadow-success: 0 10px 25px -5px rgba(16, 185, 129, 0.3);
    
    /* ===== BORDAS ===== */
    --border-radius-sm: 6px;
    --border-radius-md: 10px;
    --border-radius-lg: 16px;
    --border-radius-xl: 24px;
    --border-radius-full: 9999px;
    
    --border-color: #E5E7EB;
    --border-color-dark: #D1D5DB;
    
    /* ===== ESPAÇAMENTOS ===== */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --spacing-xl: 32px;
    --spacing-2xl: 48px;
    
    /* ===== TIPOGRAFIA ===== */
    --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    
    --font-size-xs: 12px;
    --font-size-sm: 14px;
    --font-size-base: 16px;
    --font-size-lg: 18px;
    --font-size-xl: 20px;
    --font-size-2xl: 24px;
    --font-size-3xl: 30px;
    --font-size-4xl: 36px;
    
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    
    /* ===== TRANSIÇÕES ===== */
    --transition-fast: 0.15s ease;
    --transition-base: 0.3s ease;
    --transition-slow: 0.5s ease;
    
    /* ===== Z-INDEX ===== */
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;
}

/* ===== RESET GLOBAL ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: var(--font-family);
    font-size: var(--font-size-base);
    color: var(--text-primary);
    background-color: var(--bg-primary);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ===== CLASSES UTILITÁRIAS ===== */

/* Gradientes */
.gradient-primary {
    background: var(--gradient-primary);
}

.gradient-secondary {
    background: var(--gradient-secondary);
}

.gradient-success {
    background: var(--gradient-success);
}

/* Sombras */
.shadow-sm { box-shadow: var(--shadow-sm); }
.shadow-md { box-shadow: var(--shadow-md); }
.shadow-lg { box-shadow: var(--shadow-lg); }
.shadow-xl { box-shadow: var(--shadow-xl); }
.shadow-primary { box-shadow: var(--shadow-primary); }

/* Bordas Arredondadas */
.rounded-sm { border-radius: var(--border-radius-sm); }
.rounded-md { border-radius: var(--border-radius-md); }
.rounded-lg { border-radius: var(--border-radius-lg); }
.rounded-xl { border-radius: var(--border-radius-xl); }
.rounded-full { border-radius: var(--border-radius-full); }

/* Cores de Texto */
.text-primary { color: var(--text-primary); }
.text-secondary { color: var(--text-secondary); }
.text-white { color: var(--text-white); }

/* Cores de Fundo */
.bg-primary { background-color: var(--primary-color); }
.bg-secondary { background-color: var(--secondary-color); }
.bg-success { background-color: var(--success-color); }
.bg-warning { background-color: var(--warning-color); }
.bg-danger { background-color: var(--danger-color); }

/* Transições */
.transition { transition: all var(--transition-base); }
.transition-fast { transition: all var(--transition-fast); }
.transition-slow { transition: all var(--transition-slow); }