/* ==========================================================================
   CSS Variables - Design System
   ========================================================================== */

:root {
  /* ==========================================================================
     Cores Principais
     ========================================================================== */

  /* Cores Primárias */
  --primary-color: #2c5f7c; /* Azul - Confiança, Serenidade */
  --primary-light: #3a7a9c; /* Azul Claro */
  --primary-dark: #1d3f52; /* Azul Escuro */

  --secondary-color: #4a9b8e; /* Verde - Esperança, Renovação */
  --secondary-light: #5fb5a6; /* Verde Claro */
  --secondary-dark: #357366; /* Verde Escuro */

  --accent-color: #f4a261; /* Laranja - Acolhimento, Energia */
  --accent-light: #f7b77f; /* Laranja Claro */
  --accent-dark: #e08844; /* Laranja Escuro */

  /* ==========================================================================
     Cores Neutras
     ========================================================================== */

  --dark: #1a1a1a; /* Textos Principais */
  --gray-dark: #333333; /* Cinza Escuro */
  --gray: #666666; /* Textos Secundários */
  --gray-light: #999999; /* Cinza Claro */
  --gray-lighter: #cccccc; /* Cinza Muito Claro */
  --light-gray: #f5f5f5; /* Backgrounds */
  --white: #ffffff; /* Branco */

  /* ==========================================================================
     Cores de Estado
     ========================================================================== */

  --success: #4caf50; /* Verde Sucesso */
  --success-light: #66bb6a;
  --success-dark: #388e3c;

  --warning: #ff9800; /* Laranja Aviso */
  --warning-light: #ffb74d;
  --warning-dark: #f57c00;

  --error: #f44336; /* Vermelho Erro */
  --error-light: #ef5350;
  --error-dark: #d32f2f;

  --info: #2196f3; /* Azul Informação */
  --info-light: #42a5f5;
  --info-dark: #1976d2;

  /* ==========================================================================
     Tipografia
     ========================================================================== */

  /* Famílias de Fonte */
  --font-primary: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;
  --font-secondary: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;

  /* Tamanhos de Fonte */
  --font-size-xs: 0.75rem; /* 12px */
  --font-size-sm: 0.875rem; /* 14px */
  --font-size-base: 1rem; /* 16px */
  --font-size-md: 1.125rem; /* 18px */
  --font-size-lg: 1.25rem; /* 20px */
  --font-size-xl: 1.5rem; /* 24px */
  --font-size-2xl: 1.75rem; /* 28px */
  --font-size-3xl: 2rem; /* 32px */
  --font-size-4xl: 2.5rem; /* 40px */
  --font-size-5xl: 3rem; /* 48px */
  --font-size-6xl: 3.5rem; /* 56px */

  /* Pesos de Fonte */
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;

  /* Alturas de Linha */
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.6;
  --line-height-loose: 1.8;

  /* ==========================================================================
     Espaçamentos
     ========================================================================== */

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

  /* ==========================================================================
     Bordas e Cantos Arredondados
     ========================================================================== */

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

  --border-width-thin: 1px;
  --border-width-medium: 2px;
  --border-width-thick: 4px;

  /* ==========================================================================
     Sombras
     ========================================================================== */

  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 12px 24px rgba(0, 0, 0, 0.15);
  --shadow-2xl: 0 16px 32px rgba(0, 0, 0, 0.2);

  /* ==========================================================================
     Transições e Animações
     ========================================================================== */

  --transition-fast: 150ms ease-in-out;
  --transition-base: 250ms ease-in-out;
  --transition-slow: 350ms ease-in-out;

  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);

  /* ==========================================================================
     Z-Index Hierarchy
     ========================================================================== */

  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;

  /* ==========================================================================
     Container e Breakpoints
     ========================================================================== */

  --container-sm: 640px;
  --container-md: 768px;
  --container-lg: 1024px;
  --container-xl: 1280px;
  --container-2xl: 1536px;

  --container-padding: var(--spacing-md);

  /* ==========================================================================
     Opacidades
     ========================================================================== */

  --opacity-disabled: 0.5;
  --opacity-hover: 0.9;
  --opacity-overlay: 0.8;

  /* ==========================================================================
     Gradientes
     ========================================================================== */

  --gradient-primary: linear-gradient(
    135deg,
    var(--primary-color) 0%,
    var(--primary-dark) 100%
  );
  --gradient-secondary: linear-gradient(
    135deg,
    var(--secondary-color) 0%,
    var(--secondary-dark) 100%
  );
  --gradient-accent: linear-gradient(
    135deg,
    var(--accent-color) 0%,
    var(--accent-dark) 100%
  );
  --gradient-overlay: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.6) 100%
  );
}

/* ==========================================================================
   Dark Mode Variables (Opcional - Fase 2)
   ========================================================================== */

@media (prefers-color-scheme: dark) {
  :root {
    /* Implementação futura para modo escuro */
  }
}
