/* ==============================================================
   RevisTEA · Design tokens
   Paleta derivada de la identidad real (azul / magenta / amarillo).
   ============================================================== */

:root {
  /* --- Colores de marca --- */
  --rt-blue: #2F3066;
  --rt-magenta: #C22363;
  --rt-yellow: #F0CA2B;

  /* Escala azul (estructura) */
  --rt-blue-50: #F3F4FA;
  --rt-blue-100: #E6E8F4;
  --rt-blue-200: #C9CDE6;
  --rt-blue-300: #A2A8CE;
  --rt-blue-400: #7378AC;
  --rt-blue-500: #4E5289;
  --rt-blue-600: #2F3066;
  --rt-blue-700: #262653;
  --rt-blue-800: #1C1C3D;
  --rt-blue-900: #12122A;

  /* Escala magenta (voz editorial) */
  --rt-magenta-50: #FDEFF4;
  --rt-magenta-100: #FBD9E4;
  --rt-magenta-300: #EE8AAE;
  --rt-magenta-500: #D63B70;
  --rt-magenta-600: #C22363;
  --rt-magenta-700: #9E1B52;

  /* Escala amarilla (acento) */
  --rt-yellow-100: #FEF6DD;
  --rt-yellow-300: #F8E08F;
  --rt-yellow-500: #F0C93F;
  --rt-yellow-600: #C9A318;

  /* Neutros */
  --rt-white: #FFFFFF;
  --rt-neutral-50: #F8F9FC;
  --rt-neutral-100: #F1F3F8;
  --rt-neutral-400: #4A4E5C;
  --rt-neutral-900: #1A1C28;

  /* --- Tokens semánticos --- */
  --rt-bg: var(--rt-white);
  --rt-bg-soft: var(--rt-neutral-50);
  --rt-surface: var(--rt-white);
  --rt-surface-2: var(--rt-neutral-100);
  --rt-text: var(--rt-neutral-900);
  --rt-text-soft: var(--rt-neutral-400);
  --rt-text-invert: var(--rt-white);
  --rt-border: #E6E7EF;
  --rt-border-strong: #CFD2E0;
  --rt-accent: var(--rt-magenta-600);
  --rt-accent-soft: var(--rt-magenta-50);
  --rt-accent-strong: var(--rt-magenta-700);
  --rt-link: var(--rt-magenta-600);
  --rt-link-hover: var(--rt-magenta-700);
  --rt-highlight: var(--rt-yellow-500);
  --rt-focus: var(--rt-magenta-500);
  --rt-ink: var(--rt-blue-800);
  --rt-ring: 0 0 0 4px rgba(194, 35, 99, .16);

  /* --- Degradados --- */
  --rt-gradient-brand: linear-gradient(120deg, var(--rt-magenta-600) 0%, var(--rt-magenta-500) 100%);
  --rt-gradient-deep: linear-gradient(150deg, var(--rt-blue-800) 0%, var(--rt-blue-700) 55%, var(--rt-blue-900) 100%);
  --rt-gradient-foot: linear-gradient(180deg, var(--rt-blue-800) 0%, var(--rt-blue-900) 100%);
  --rt-gradient-soft: linear-gradient(160deg, var(--rt-magenta-50) 0%, #FFF7F9 60%, var(--rt-blue-50) 100%);
  --rt-gradient-mask: linear-gradient(180deg, rgba(18, 18, 42, .10) 0%, rgba(18, 18, 42, .45) 45%, rgba(12, 12, 30, .92) 100%);

  /* --- Tipografía ---
     Titulares en sans de sistema (moderna y de carga inmediata) y Georgia
     reservada para las citas editoriales. Sin fuentes externas: el sitio no
     depende de ninguna CDN. */
  --rt-font-display: "Inter", "Segoe UI Variable Display", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --rt-font-text: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Helvetica Neue", Arial, sans-serif;
  --rt-font-serif: Georgia, "Iowan Old Style", "Times New Roman", serif;
  --rt-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --rt-fs-display: clamp(2.25rem, 1.35rem + 3.4vw, 4.5rem);
  --rt-fs-h1: clamp(1.9rem, 1.35rem + 2vw, 3.05rem);
  --rt-fs-h2: clamp(1.55rem, 1.25rem + 1.15vw, 2.25rem);
  --rt-fs-h3: clamp(1.2rem, 1.08rem + .5vw, 1.5rem);
  --rt-fs-lead: clamp(1.05rem, 1rem + .35vw, 1.25rem);
  --rt-fs-body: clamp(1rem, .97rem + .13vw, 1.075rem);
  --rt-fs-sm: .875rem;
  --rt-fs-xs: .78rem;
  --rt-fs-eyebrow: .72rem;

  --rt-lh-tight: 1.08;
  --rt-lh-title: 1.18;
  --rt-lh-body: 1.68;
  --rt-tracking-eyebrow: .18em;
  --rt-measure: 68ch;

  /* --- Espaciado (escala 4px) --- */
  --rt-space-1: .25rem;
  --rt-space-2: .5rem;
  --rt-space-3: .75rem;
  --rt-space-4: 1rem;
  --rt-space-5: 1.25rem;
  --rt-space-6: 1.5rem;
  --rt-space-8: 2rem;
  --rt-space-10: 2.5rem;
  --rt-space-12: 3rem;
  --rt-space-16: 4rem;
  --rt-space-20: 5rem;
  --rt-space-24: 6rem;

  /* --- Forma --- */
  --rt-radius-sm: 8px;
  --rt-radius: 12px;
  --rt-radius-lg: 18px;
  --rt-radius-xl: 24px;
  --rt-radius-2xl: 32px;
  --rt-radius-pill: 999px;
  --rt-shadow-1: 0 1px 2px rgba(18, 18, 42, .05), 0 1px 3px rgba(18, 18, 42, .04);
  --rt-shadow-2: 0 18px 40px -28px rgba(18, 18, 42, .45);
  --rt-shadow-3: 0 30px 70px -45px rgba(18, 18, 42, .55);
  --rt-shadow-card: 0 22px 45px -34px rgba(18, 18, 42, .40);

  /* --- Layout --- */
  --rt-shell: 1240px;
  --rt-shell-wide: 1560px;
  --rt-shell-narrow: 46rem;
  --rt-gutter: clamp(1.125rem, .6rem + 2.6vw, 3rem);
  --rt-max-read: 70ch;

  /* --- Movimiento --- */
  --rt-dur-fast: 140ms;
  --rt-dur: 220ms;
  --rt-dur-slow: 420ms;
  --rt-ease: cubic-bezier(.2, .7, .3, 1);
  --rt-ease-out: cubic-bezier(.22, .61, .36, 1);

  /* --- Planos --- */
  --rt-z-header: 50;
  --rt-z-overlay: 80;

  /* --- Tipografía ampliada (modernización) --- */
  --rt-fs-micro: .7rem;
  --rt-fs-h4: clamp(1.05rem, .98rem + .3vw, 1.2rem);
  --rt-tracking-tight: -.02em;
  --rt-tracking-wide: .1em;

  /* --- Espaciado extra --- */
  --rt-space-7: 1.75rem;
  --rt-space-14: 3.5rem;
  --rt-space-18: 4.5rem;

  /* --- Iconos (Lucide) --- */
  --rt-icon-sm: .95rem;
  --rt-icon: 1.15rem;
  --rt-icon-lg: 1.5rem;
  --rt-icon-xl: 2.1rem;
}
