/* ==========================================================================
   DentalPartners — tokens de diseño. UN solo sitio.
   --------------------------------------------------------------------------
   Antes vivían duplicados literalmente en `dentalpartners.css` y en
   `gestion.css`: 24 de 26 idénticos, escritos dos veces. Cambiar un color
   obligaba a acordarse de la otra hoja, y el fallo era mudo — el portal del
   colaborador y el back-office se iban separando sin que nadie lo viera.

   Las dos bases cargan ESTA hoja primero y luego la suya.
   ========================================================================== */

/* --------------------------------------------------------------------
   Las dos familias, servidas por nosotros.
   Hasta hoy las dos bases las pedían a `fonts.googleapis.com`, y eso manda
   la IP del colaborador a Google en cada carga: son autónomos identificados,
   es el supuesto exacto de la sentencia del LG München (20-01-2022). No
   hacía ninguna falta — OdontoHR ya autoalojaba ESTAS MISMAS dos desde el
   2026-08-09 y aquí faltó por inercia, no por criterio.

   Los subconjuntos son de eje variable 400–700 y solo redonda, los mismos
   que OdontoHR lleva en producción. DentalPartners pedía a Google el rango
   300..800 con itálicas y de todo eso usa: **una** regla a 800
   (`.propuesta-mes-titulo strong`, que el eje recorta a 700) y **dos**
   itálicas de texto secundario, que el navegador inclina. Nada que valga
   una petición a un tercero en cada visita.
   -------------------------------------------------------------------- */

@font-face {
  font-family: 'Host Grotesk';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/host-grotesk-latin.6bfa4df5095f.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                 U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                 U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                 U+FFFD;
}
@font-face {
  font-family: 'Host Grotesk';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/host-grotesk-latin-ext.6f77e4c4c937.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
                 U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF,
                 U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0,
                 U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/jetbrains-mono-latin.b636a65da4f0.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                 U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                 U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                 U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/jetbrains-mono-latin-ext.bd4781a31b42.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
                 U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF,
                 U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0,
                 U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
  /* Superficies — claras y ligeramente cálidas */
  --bg: #FFFFFF;
  --surface: #FBF8F3;
  --surface-2: #F5F0E7;
  --surface-3: #EDE5D7;
  --border: rgba(43, 36, 32, 0.08);
  --border-strong: rgba(43, 36, 32, 0.16);

  /* Texto.
     `--muted` era #9B8B7D y no llegaba a AA sobre NINGUNA de las cuatro
     superficies (3,29 · 3,11 · 2,90 · 2,63). El valor de hoy pasa en las
     cuatro (6,21 · 5,86 · 5,47 · 4,97) y sigue leyéndose como terciario:
     más claro que `--text-2`, que es el secundario. La cuarta —sobre
     `--surface-3`, la más oscura— es la que manda: con #756557 se quedaba
     en 4,47 y aprobaba en tres de cuatro, que es no aprobar. */
  --text: #1A1412;
  --text-2: #5A4A42;
  --muted: #6E5E50;

  /* Paleta terracota */
  --terracotta: #B04A2E;
  --terracotta-deep: #8E3920;
  --terracotta-soft: #F5D4C4;
  --terracotta-foreground: #FFE9DA;
  --ochre: #C9821F;
  --ochre-soft: #F6E2BD;
  --petrol: #2C5F5D;
  --petrol-soft: #BCD1CF;
  --success: #5D8A2E;
  --danger: #B04A2E;

  /* Tintas: el tono de la familia que SÍ se puede leer sobre su propio
     fondo suave. `--ochre` sobre `--ochre-soft` daba 2,47 — la píldora
     «Aceptada — pendiente factura» del colaborador—, y `--success` sobre
     su fondo al 12 % daba 3,37. Los tokens de arriba siguen siendo el
     color de marca (rellenos, bordes, iconos); estos son para TEXTO. */
  --ochre-ink: #8A560E;    /* 4,84 sobre --ochre-soft · 6,14 sobre --bg */
  --success-ink: #4C7025;  /* 4,75 sobre su fondo    · 5,75 sobre --bg */

  /* Radios */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 20px;

  /* Métricas de disposición */
  --touch-target: 44px;
  --sidebar-width: 260px;
  --header-height: 64px;

  /* Anillo de foco — un solo grosor, un solo desplazamiento, un solo color.
     Llegó a estar escrito seis veces con tres alfas distintas. */
  --focus-ring: 2px solid var(--terracotta);
  --focus-offset: 2px;

  --font-ui: "Host Grotesk", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, monospace;
}
