/* Kischool — identité visuelle. Surcharges des jetons du design system (design/README.md,
   « Brand hooks ») puis quelques retouches globales. Aucune couleur en dur hors des jetons :
   le thème sombre suit.

   Direction : un outil institutionnel sérieux, dense sans être serré. Encre marine pour la
   structure, un bleu franc pour l'action, des gris neutres (presque pas teintés), et une
   typographie Inter auto-hébergée (pas de Google Fonts : l'IP des visiteurs n'a pas à partir chez
   Google, cf. CNIL). */

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/inter-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fonts/inter-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root,
:root[data-preset="navy"] {
  --brand: #2451c9;
  --brand-contrast: #ffffff;
  --brand-dark: #8fb0ff;
  --brand-dark-contrast: #0b1633;
  --font-ui: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-display: var(--font-ui);
  --fs-base: 14.5px;
  --radius-base: 9px;
  --density: 1.04;
  --neutral-hue: 255;
  --neutral-chroma: 0.006;
  --chrome-bg: #0e1b30;
  --chrome-text: #dfe6f1;
  --chrome-muted: #8d9bb3;
  --chrome-accent: #8fb0ff;
  --chrome-border: #1c2c47;
  --btn-radius: 8px;

  /* Couleurs des types de séance : un repère constant dans toute l'application. */
  --type-cm: #4f46e5;
  --type-td: #0f8a7e;
  --type-tp: #c26a07;
  --type-ds: #d02f45;
  --type-autre: #64748b;
}

/* Titres plus nets, chiffres alignés dans les tableaux. */
body {
  font-feature-settings: "cv11", "ss01";
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 {
  letter-spacing: -0.015em;
}
.ui-page-header h1 {
  font-weight: 700;
}
.ui-table td,
.ui-table th,
.ui-stat-value,
.pl-chiffre {
  font-variant-numeric: tabular-nums;
}

/* Les liens de tableau ne sont pas soulignés : la ligne entière se lit comme une entrée. */
.ui-table td a {
  color: var(--text);
  font-weight: 600;
  text-decoration: none;
}
.ui-table td a:hover {
  color: var(--accent-text, var(--accent));
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ui-table tbody tr {
  transition: background-color .12s;
}
.ui-table tbody tr:hover {
  background: var(--surface-2);
}

/* Cartes : un contour discret plutôt qu'une ombre lourde. */
.ui-card {
  box-shadow: 0 1px 2px color-mix(in oklab, var(--text) 6%, transparent);
}
