/**
 * VARIABLES CSS - SISTEMA DE DISEÑO MEDIFOLIOS
 * Inspirado en diseños modernos de salud (Maxcare)
 *
 * COLORES OFICIALES MEDIFOLIOS:
 * Azul Principal: #0066CC
 * Azul Oscuro: #004C99
 * Gradiente: linear-gradient(135deg, #0066CC 0%, #004C99 100%)
 */

:root {
    /* ===== COLORES PRINCIPALES ===== */
    --primary-color: #0066CC;
    --primary-dark: #004C99;
    --primary-light: #3385D6;
    --secondary-color: #686877;
    --accent-color: #00B4D8;

    /* ===== COLORES NEUTROS ===== */
    --dark-color: #00194C;
    --gray-dark: #2C2C3E;
    --gray-medium: #686877;
    --gray-light: #E8E8EA;
    --gray-lighter: #F5F5F7;
    --white: #FFFFFF;

    /* ===== COLORES DE ESTADO ===== */
    --success-color: #00B894;
    --warning-color: #FDCB6E;
    --error-color: #D63031;
    --info-color: #74B9FF;

    /* ===== GRADIENTES ===== */
    --gradient-primary: linear-gradient(135deg, #0066CC 0%, #004C99 100%);
    --gradient-light: linear-gradient(135deg, #3385D6 0%, #0066CC 100%);
    --gradient-dark: linear-gradient(135deg, #004C99 0%, #00194C 100%);
    --gradient-overlay: linear-gradient(180deg, rgba(0, 102, 204, 0.9) 0%, rgba(0, 76, 153, 0.9) 100%);

    /* ===== TIPOGRAFÍA ===== */
    --font-primary: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-secondary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-display: 'Poppins', sans-serif;

    /* Tamaños de fuente (sistema escalable) */
    --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.875rem;    /* 30px */
    --font-size-3xl: 2.25rem;     /* 36px */
    --font-size-4xl: 3rem;        /* 48px */
    --font-size-5xl: 3.75rem;     /* 60px */

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

    /* ===== ESPACIADO (Sistema 8px) ===== */
    --space-xs: 0.25rem;     /* 4px */
    --space-sm: 0.5rem;      /* 8px */
    --space-md: 1rem;        /* 16px */
    --space-lg: 1.5rem;      /* 24px */
    --space-xl: 2rem;        /* 32px */
    --space-2xl: 3rem;       /* 48px */
    --space-3xl: 4rem;       /* 64px */
    --space-4xl: 6rem;       /* 96px */
    --space-5xl: 8rem;       /* 128px */

    /* ===== BORDES Y RADIOS ===== */
    --border-radius-sm: 0.25rem;   /* 4px */
    --border-radius-md: 0.5rem;    /* 8px */
    --border-radius-lg: 1rem;      /* 16px */
    --border-radius-xl: 1.5rem;    /* 24px */
    --border-radius-full: 9999px;  /* Circular */

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

    /* ===== SOMBRAS (estilo Maxcare) ===== */
    --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 6px rgba(0, 0, 0, 0.1);
    --shadow-lg: 6px 6px 12px rgba(0, 0, 0, 0.15);
    --shadow-xl: 8px 8px 20px rgba(0, 0, 0, 0.2);
    --shadow-2xl: 12px 12px 30px rgba(0, 0, 0, 0.25);

    /* Sombras de color */
    --shadow-primary: 0 8px 16px rgba(0, 102, 204, 0.3);
    --shadow-primary-lg: 0 12px 24px rgba(0, 102, 204, 0.4);

    /* ===== TRANSICIONES ===== */
    --transition-fast: 150ms ease-in-out;
    --transition-base: 250ms ease-in-out;
    --transition-slow: 350ms ease-in-out;

    /* ===== Z-INDEX (capas) ===== */
    --z-dropdown: 1000;
    --z-sticky: 1020;
    --z-fixed: 1030;
    --z-modal-backdrop: 1040;
    --z-modal: 1050;
    --z-popover: 1060;
    --z-tooltip: 1070;

    /* ===== BREAKPOINTS (para JavaScript) ===== */
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --breakpoint-xxl: 1400px;

    /* ===== CONTENEDOR ===== */
    --container-max-width: 1200px;
    --container-padding: var(--space-lg);
}

/* ===== TEMA OSCURO (opcional para futuro) ===== */
@media (prefers-color-scheme: dark) {
    :root {
        /* Se puede implementar tema oscuro aquí */
        /* Por ahora mantenemos tema claro */
    }
}

/* ===== VARIABLES PARA COMPONENTES ESPECÍFICOS ===== */
:root {
    /* Navbar */
    --navbar-height: 80px;
    --navbar-bg: var(--white);
    --navbar-shadow: var(--shadow-md);

    /* Botones */
    --btn-padding-y: 0.75rem;
    --btn-padding-x: 2rem;
    --btn-border-radius: var(--border-radius-full);

    /* Cards */
    --card-padding: var(--space-xl);
    --card-border-radius: var(--border-radius-lg);
    --card-shadow: var(--shadow-lg);
    --card-shadow-hover: var(--shadow-xl);

    /* Inputs */
    --input-padding-y: 0.75rem;
    --input-padding-x: 1rem;
    --input-border-radius: var(--border-radius-md);
    --input-border-color: var(--gray-light);
    --input-focus-border-color: var(--primary-color);
}
