@font-face {
  font-family: "Sora";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/sora-600.ttf") format("truetype");
}

@font-face {
  font-family: "Sora";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/sora-700.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/plus-jakarta-sans-400.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/plus-jakarta-sans-600.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/plus-jakarta-sans-700.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("fonts/plus-jakarta-sans-800.ttf") format("truetype");
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/jetbrains-mono-400.ttf") format("truetype");
}

@font-face {
  font-family: "JetBrains Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/jetbrains-mono-700.ttf") format("truetype");
}

:root {
  /* Cupperlab v3 · el carbón manda, el cyan emite, el naranja avisa. */
  --cyan-50: #e9f9fe;
  --cyan-100: #c8f0fb;
  --cyan-200: #93e4f7;
  --cyan-300: #56d2ef;
  --cyan-400: #25c2e8;
  --cyan-500: #1cbce4;
  --cyan-600: #0f9bc2;
  --cyan-700: #0b7ea0;
  --cyan-800: #11647d;
  --cyan-900: #134f63;

  --orange-50: #ffede6;
  --orange-100: #ffded2;
  --orange-200: #ffbda6;
  --orange-300: #fb9269;
  --orange-400: #f7713f;
  --orange-500: #f46434;
  --orange-600: #e24d1c;
  --orange-700: #bd3c15;
  --orange-800: #973317;
  --orange-900: #7a2e17;

  --ink-50: #f7f9fb;
  --ink-75: #f1f4f7;
  --ink-100: #e8ecf1;
  --ink-150: #dee3e9;
  --ink-200: #c6cdd5;
  --ink-300: #a3adba;
  --ink-400: #7b8694;
  --ink-500: #58626f;
  --ink-600: #3b4450;
  --ink-700: #283038;
  --ink-800: #1a2029;
  --ink-900: #11151c;
  --ink-950: #0b1016;

  --color-page: var(--ink-50);
  --color-bg: var(--ink-50);
  --color-surface: #ffffff;
  --color-text: var(--ink-900);

  --color-neutral-100: var(--ink-50);
  --color-neutral-200: var(--ink-100);
  --color-neutral-300: var(--ink-150);
  --color-neutral-400: var(--ink-300);
  --color-neutral-500: var(--ink-400);
  --color-neutral-600: var(--ink-500);
  --color-neutral-700: var(--ink-700);
  --color-neutral-800: var(--ink-800);
  --color-neutral-900: var(--ink-900);

  --color-accent-100: var(--cyan-50);
  --color-accent-200: var(--cyan-100);
  --color-accent-300: var(--cyan-200);
  --color-accent-400: var(--cyan-300);
  --color-accent-500: var(--cyan-500);
  --color-accent-600: var(--cyan-600);
  --color-accent-700: var(--cyan-700);
  --color-accent-800: var(--cyan-800);
  --color-accent-900: var(--cyan-900);
  --color-accent: var(--cyan-500);

  --color-action: var(--cyan-500);
  --color-action-hover: var(--cyan-600);
  --color-action-soft: var(--cyan-50);
  --color-alerta: var(--orange-500);
  --color-alerta-hover: var(--orange-600);
  --color-alerta-soft: var(--orange-50);

  --color-exito: #1f9d6b;
  --color-exito-fondo: #e4f6ee;
  --color-advertencia: #d9920a;
  --color-advertencia-fondo: #fdf2dc;
  --color-negativo: #d0402a;
  --color-negativo-fondo: #fbe7e5;
  --color-informativo: var(--cyan-700);

  --font-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-titular: "Sora", "Plus Jakarta Sans", sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --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;

  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;

  --shadow-sm: 0 1px 2px rgba(11, 16, 22, .05), 0 10px 28px rgba(11, 16, 22, .06);
  --shadow-md: 0 2px 4px rgba(11, 16, 22, .06), 0 22px 56px rgba(11, 16, 22, .12);
  --shadow-focus: 0 0 0 4px rgba(37, 194, 232, .22);

  --contenido: 1180px;
  --padding-lateral: clamp(20px, 4vw, 56px);
}
