/* TurnoDoc: tokens de marca en CSS plano.
   Generado por scripts/estilo-base/exportar-tokens.mjs a partir de la landing; no editar a mano.
   Sin Tailwind ni dependencias. Prefijo --td- para no chocar con el CSS del motor.
   Cada línea indica la variable o el elemento de origen. Solo tema claro (la landing no tiene tema oscuro). */

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

:root {
  /* Color */
  --td-fondo: oklch(99.5% .002 165);/* --background */
  --td-texto: oklch(27% .032 165);/* --foreground */
  --td-superficie: oklch(100% 0 0);/* --card */
  --td-primario: oklch(47.5% .092 164);/* --primary */
  --td-primario-texto: oklch(100% 0 0);/* --primary-foreground */
  --td-secundario: oklch(94.6% .019 161);/* --secondary */
  --td-secundario-texto: oklch(37% .063 164);/* --secondary-foreground */
  --td-suave: oklch(97% .006 161);/* --muted */
  --td-atenuado: oklch(48% .022 164);/* --muted-foreground */
  --td-borde: oklch(90% .013 161);/* --border */
  --td-campo-borde: oklch(79% .022 161);/* --input */
  --td-foco: oklch(47.5% .092 164);/* --ring */
  --td-error: oklch(51% .15 27);/* --destructive */
  --td-error-texto: oklch(100% 0 0);/* --destructive-foreground */
  --td-tinta: #20392e;/* --design-ink */
  --td-tinta-suave: #52645b;/* --design-muted */
  --td-linea: #d9e3dd;/* --design-line */
  --td-lectura-texto: #52675f;/* --reading-ink */
  --td-lectura-fondo: #f3f6f5;/* --reading-paper */
  --td-lectura-acento: #e6f2ec;/* --reading-accent */
  --td-superficie-menta: oklch(94.6% .019 161);/* --surface-mint */
  --td-verde-profundo: #123e34;/* --trust-deep */
  --td-verde-profundo-texto: #fff;/* --trust-deep-fg */
  --td-verde-profundo-suave: #ddebe5;/* --trust-deep-muted */
  --td-verde-profundo-linea: oklab(92.7896% -.0165533 .0033738 / .28);/* --trust-deep-rule */
  --td-velo: oklch(22% .02 160 / .55);/* --overlay */
  --td-agenda-ahora: oklch(62% .18 25);/* --agenda-line */

  /* Color: pie del sitio y estados de la agenda (literales en la landing) */
  --td-pie-fondo: rgb(24, 59, 46); /* .site-footer background */
  --td-pie-texto: rgb(244, 247, 239); /* .site-footer color */
  --td-agenda-confirmado: rgb(74, 115, 178); /* .agenda-legend agenda-confirmado */
  --td-agenda-seña: rgb(51, 132, 80); /* .agenda-legend agenda-seña */
  --td-agenda-pendiente: rgb(194, 147, 41); /* .agenda-legend agenda-pendiente */

  /* Tipografía */
  --td-fuente: "Plus Jakarta Sans", system-ui, sans-serif; /* body font-family */
  --td-cuerpo-interlineado: 26.4px; /* body line-height */
  --td-cuerpo-peso: 400; /* body font-weight */
  --td-titulo-peso: 600; /* h2 font-weight */
  --td-titulo-interletrado: -0.95px; /* h2 letter-spacing */
  --td-titulo-interlineado: 47.5px; /* h2 line-height */

  /* Tamaños y títulos */
  --td-fs-xs: 13px;/* --fs-xs */
  --td-fs-sm: 14px;/* --fs-sm */
  --td-fs-base: 16px;/* --fs-base */
  --td-fs-md: 18px;/* --fs-md */
  --td-fs-lg: 22px;/* --fs-lg */
  --td-fs-xl: 28px;/* --fs-xl */
  --td-fs-2xl: 36px;/* --fs-2xl */
  --td-fs-3xl: 48px;/* --fs-3xl */
  --td-titulo-seccion: 38px;/* --title-section */
  --td-titulo-pagina: 48px;/* --title-page */
  --td-titulo-hero: 56px;/* --title-hero */

  /* Espaciado y forma */
  --td-espacio: 8px;/* --space */
  --td-seccion-separacion: 80px;/* --section-gap */
  --td-intro-separacion: 48px;/* --intro-gap */
  --td-control-alto: 48px;/* --control-height */
  --td-encabezado-alto: 80px;/* --site-header-height */
  --td-radio: .75rem;/* --radius */
  --td-radio-control: 10px;/* --radius-control */
  --td-radio-tarjeta: 14px;/* --radius-card */
  --td-radio-medio: 16px;/* --radius-media */
  --td-sombra-suave: 0 12px 40px #142a2508;/* --shadow-soft */
  --td-sombra-flotante: 0 16px 48px #142a2514;/* --shadow-float */
  --td-sombra-aviso: 0 4px 16px color-mix(in oklab, oklch(27% .032 165) 8%, transparent);/* --shadow-notice */

  /* Movimiento */
  --td-movimiento-duracion: .22s;/* --motion-duration */
  --td-movimiento-distancia: 10px;/* --motion-distance */
  --td-movimiento-escalonado: 40ms;/* --motion-stagger */
  --td-movimiento-curva: cubic-bezier(.22, 1, .36, 1);/* --motion-ease */

  /* Componentes: valores medidos en la landing */
  --td-boton-fondo: oklch(0.475 0.092 164); /* botón primario background */
  --td-boton-texto: oklch(1 0 0); /* botón primario color */
  --td-boton-radio: 11px; /* botón primario radius */
  --td-boton-peso: 600; /* botón primario weight */
  --td-boton-alto: 48px; /* botón primario min-height */
  --td-boton-secundario-fondo: oklch(0.995 0.002 165); /* botón secundario background */
  --td-boton-secundario-texto: oklch(0.27 0.032 165); /* botón secundario color */
  --td-boton-secundario-borde: oklch(0.79 0.022 161); /* botón secundario border */
  --td-campo-fondo: oklch(1 0 0); /* campo background */
  --td-campo-texto: oklch(0.27 0.032 165); /* campo color */
  --td-campo-radio: 10px; /* campo radius */
  --td-campo-alto: 44px; /* campo min-height */
  --td-campo-relleno: 12px; /* campo padding */
  --td-tarjeta-fondo: rgb(255, 255, 255); /* tarjeta background */
  --td-tarjeta-borde: oklch(0.9 0.013 161); /* tarjeta border */
  --td-tarjeta-radio: 8px; /* tarjeta radius */
  --td-tarjeta-sombra: none; /* tarjeta shadow */
  --td-tarjeta-relleno: 28px; /* tarjeta padding */
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --td-movimiento-duracion: 0ms;
    --td-movimiento-distancia: 0px;
    --td-movimiento-escalonado: 0ms;
  }
}
