/* ============================================================
   VARIABLES.CSS — Design Tokens
   Plataforma Reservación Sala de Juntas · Ibero CDMX
   ============================================================ */

:root {
  /* ── COLORES PRIMARIOS ── */
  --color-primary:        #ef3e42;
  --color-primary-dark:   #c62d30;
  --color-primary-light:  #f87275;
  --color-primary-bg:     #fef2f2;

  /* ── COLORES SECUNDARIOS ── */
  --color-secondary:       #333333;
  --color-secondary-mid:   #555555;
  --color-secondary-light: #888888;

  /* ── FONDOS ── */
  --color-bg:         #ffffff;
  --color-bg-alt:     #f5f5f5;
  --color-bg-hover:   #eeeeee;
  --color-border:     #e0e0e0;

  /* ── ESTADOS ── */
  --color-success:     #28a745;
  --color-success-bg:  #f0fff4;
  --color-error:       #dc3545;
  --color-error-bg:    #fff5f5;
  --color-warning:     #ffc107;
  --color-warning-bg:  #fffdf0;
  --color-info:        #17a2b8;
  --color-info-bg:     #f0fbff;

  /* ── CALENDARIO ── */
  --cal-occupied:   #ef3e42;
  --cal-available:  #28a745;
  --cal-holiday:    #ffc107;
  --cal-closed:     #6c757d;
  --cal-today:      #17a2b8;
  --cal-recurring:  #6f42c1;
  --cal-evento:     #0284c7;

  /* ── TIPOGRAFÍA ── */
  --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-md:   18px;
  --font-size-lg:   20px;
  --font-size-xl:   24px;
  --font-size-2xl:  28px;
  --font-size-3xl:  32px;

  --font-weight-regular:  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;

  /* ── ESPACIADO (base 8px) ── */
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-8:  32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;

  /* ── BORDER RADIUS ── */
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-xl:   16px;
  --radius-full: 9999px;

  /* ── SOMBRAS ── */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.12);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.07);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.10);
  --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.10);

  /* ── LAYOUT ── */
  --container-max: 1200px;
  --sidebar-width: 260px;
  --sidebar-width-collapsed: 72px;
  --sidebar-anim: 0.3s;
  --sidebar-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --header-height: 64px;

  /* ── TRANSICIONES ── */
  --transition-fast:   0.15s ease;
  --transition-normal: 0.25s ease;
  --transition-slow:   0.4s ease;
}
