/* ==============================================================================
   VARIABLES GLOBALES & PALETA DE COLORES OFICIAL - SEMEDICAL / PREVISALUD
   ============================================================================== */
:root {
  /* 1. Paleta de Colores Principales */
  --primary-mint: rgb(46, 217, 195);        /* RGB: 46, 217, 195 -> #2ED9C3 (Principal) */
  --primary-cyan: rgb(0, 190, 214);         /* RGB: 0, 190, 214 -> #00BED6 (Principal) */
  --color-white: #ffffff;                   /* Blanco Puro (Fondo Principal) */

  /* 2. Paleta de Colores Secundarios */
  --primary-teal: rgb(0, 161, 155);         /* RGB: 0, 161, 155 -> #00A19B (Secundario) */
  --primary-teal-dark: #007e79;
  --primary-teal-light: #1ab2ac;
  --cmyk-grey: #808080;                     /* CMYK: 0%, 0%, 0%, 50% -> #808080 (Secundario) */
  --cmyk-dark-slate: #485455;               /* CMYK: 57%, 47%, 46%, 36% -> #485455 (Secundario) */

  /* 3. Colores de Apoyo y Textos */
  --bg-page: #ffffff;
  --bg-subtle: #f8fafb;
  --bg-card: #ffffff;
  --text-dark: #2d3748;
  --text-body: #485455;
  --text-muted: #808080;
  --border-color: #e2e8f0;
  --border-input: #cbd5e0;
  --border-focus: var(--primary-cyan);
  
  /* 4. Tipografía */
  --font-family: "Nunito Sans", system-ui, -apple-system, sans-serif;
  
  /* 5. Sombras y Transiciones */
  --shadow-sm: 0 2px 8px rgba(0, 161, 155, 0.05);
  --shadow-md: 0 8px 24px rgba(0, 70, 75, 0.07);
  --shadow-lg: 0 14px 38px rgba(0, 70, 75, 0.1);
  --transition-fast: 0.2s ease;
  --transition-normal: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  
  /* 6. Radios */
  --radius-sm: 4px;
  --radius-md: 10px;
  --radius-lg: 18px;
  --radius-pill: 50px;
}

*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-family);
  color: var(--text-body);
  background-color: var(--bg-page);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
