/**
 * Variables CSS Globales
 * Sistema de Tienda Online - Restaurante
 */

:root {
    /* === COLORES === */

    /* Colores primarios - Paleta Big Boy */
    --primary: #000000;          /* Negro principal */
    --primary-dark: #000000;
    --primary-light: #333333;
    --secondary: #fcc600;        /* Amarillo dorado */
    --secondary-dark: #e6b300;
    --secondary-light: #ffd633;

    /* Colores de estado */
    --success: #4caf50;
    --success-light: #81c784;
    --danger: #ff4757;
    --danger-light: #ff6b7a;
    --warning: #fcc600;          /* Amarillo Big Boy */
    --warning-light: #ffd633;
    --info: #000000;
    --info-light: #333333;

    /* Colores neutrales */
    --dark: #000000;
    --dark-light: #1a1a1a;
    --gray: #666666;
    --gray-light: #cccccc;
    --light: #f8f9fa;
    --white: #ffffff;
    --black: #000000;

    /* === SOMBRAS === */

    --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
    --shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.12);
    --shadow-xl: 0 12px 28px rgba(0, 0, 0, 0.18);

    /* === RADIO DE BORDES === */

    --radius-sm: 0.25rem;    /* 4px */
    --radius-md: 0.5rem;     /* 8px */
    --radius: 12px;
    --radius-lg: 0.75rem;    /* 12px */
    --radius-xl: 1rem;       /* 16px */
    --radius-full: 9999px;   /* Circular */

    /* === TRANSICIONES === */

    --transition-fast: 0.15s ease;
    --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 0.5s ease;
    --transition-smooth: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

    /* === Z-INDEX === */

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

    /* === ESPACIADO === */

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

    /* === TIPOGRAFÍA === */

    --font-family-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-family-heading: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-family-mono: 'Courier New', Courier, monospace;

    --font-size-xs: 0.75rem;     /* 12px */
    --font-size-sm: 0.875rem;    /* 14px */
    --font-size-base: 1rem;      /* 16px */
    --font-size-lg: 1.125rem;    /* 18px */
    --font-size-xl: 1.25rem;     /* 20px */
    --font-size-2xl: 1.5rem;     /* 24px */
    --font-size-3xl: 1.875rem;   /* 30px */
    --font-size-4xl: 2.25rem;    /* 36px */

    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    --line-height-tight: 1.25;
    --line-height-normal: 1.5;
    --line-height-relaxed: 1.75;

    /* === ANCHOS DE CONTENEDOR === */

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

    /* === BREAKPOINTS (para referencia en JS) === */

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

    /* === DIMENSIONES === */

    --header-height: 70px;
    --sidebar-width: 260px;
    --footer-height: auto;

    /* === OPACIDAD === */

    --opacity-disabled: 0.5;
    --opacity-hover: 0.8;
    --opacity-light: 0.1;
    --opacity-medium: 0.5;
    --opacity-heavy: 0.9;
}

/* Respeto por preferencias de accesibilidad */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* Opcional: Smooth scroll para navegación */
@media (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}
