/*
 * Polices de l'interface, hébergées par l'application (arbitrage du 26/10/2026).
 *
 * font-display: optional — sur une connexion lente, la page ne bascule jamais d'une
 * police à l'autre sous les yeux de l'agent : si le fichier n'est pas là au premier
 * affichage, la police de repli tient la page et la bonne police sert au chargement
 * suivant, depuis le cache. Les replis « … Repli » ont les métriques de la police
 * attendue : même dans ce cas, rien ne bouge.
 *
 * Fichiers : jeu latin des polices variables Fontsource (licences OFL / Apache à côté).
 */

@font-face {
  font-family: 'Montserrat';
  src: url('/fonts/montserrat.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: optional;
}

@font-face {
  font-family: 'Open Sans';
  src: url('/fonts/opensans.woff2') format('woff2');
  font-weight: 300 800;
  font-style: normal;
  font-display: optional;
}

@font-face {
  font-family: 'Roboto';
  src: url('/fonts/roboto.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: optional;
}

/* Arimo : métriques d'Arial, la police « Helvetica (Arial) » des états */
@font-face {
  font-family: 'Arimo';
  src: url('/fonts/arimo.woff2') format('woff2');
  font-weight: 400 700;
  font-style: normal;
  font-display: optional;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('/fonts/ibm-plex-mono-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: optional;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('/fonts/ibm-plex-mono-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: optional;
}

@font-face {
  font-family: 'IBM Plex Mono';
  src: url('/fonts/ibm-plex-mono-600.woff2') format('woff2');
  font-weight: 600 700;
  font-style: normal;
  font-display: optional;
}

/* Replis à métriques ajustées : Arial (ou Liberation Sans) redimensionné à la police attendue */

@font-face {
  font-family: 'Montserrat Repli';
  src: local('Arial'), local('ArialMT'), local('Liberation Sans');
  ascent-override: 84.95%;
  descent-override: 22.03%;
  line-gap-override: 0%;
  size-adjust: 113.39%;
}

@font-face {
  font-family: 'Open Sans Repli';
  src: local('Arial'), local('ArialMT'), local('Liberation Sans');
  ascent-override: 101.18%;
  descent-override: 27.73%;
  line-gap-override: 0%;
  size-adjust: 105.69%;
}

@font-face {
  font-family: 'Roboto Repli';
  src: local('Arial'), local('ArialMT'), local('Liberation Sans');
  ascent-override: 92.77%;
  descent-override: 24.41%;
  line-gap-override: 0%;
  size-adjust: 100.3%;
}
