/* ==========================================================================
   sortmaj — design tokens (v5 « pixel blanc »)
   Source unique des couleurs, typos, rayons et espacements.
   ========================================================================== */

/* Polices hébergées localement (SIL OFL 1.1, voir ../fonts/OFL-*.txt) : aucun CDN. */
@font-face {
  font-family: "Space Grotesk"; font-style: normal; font-weight: 300 700; font-display: swap;
  src: url("../fonts/space-grotesk-latin-ext.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: "Space Grotesk"; font-style: normal; font-weight: 300 700; font-display: swap;
  src: url("../fonts/space-grotesk-latin.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: "Space Mono"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/space-mono-400-latin-ext.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: "Space Mono"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("../fonts/space-mono-400-latin.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: "Space Mono"; font-style: normal; font-weight: 700; font-display: swap;
  src: url("../fonts/space-mono-700-latin-ext.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: "Space Mono"; font-style: normal; font-weight: 700; font-display: swap;
  src: url("../fonts/space-mono-700-latin.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;
}

:root {
  /* --- Échelle des mentions (de la meilleure à la pire) --------------- */
  --mj-excellent:        #14166B;
  --mj-tres-bien:        #3A43DB;
  --mj-bien:             #7B9CFF;
  --mj-assez-bien:       #BFD0FF;
  --mj-passable:         #E3E1EA;
  --mj-insuffisant:      #FF9FC8;
  --mj-a-rejeter:        #CC2775;

  /* Couleur du texte posé sur chaque mention (contraste ≥ 4.5:1) */
  --mj-excellent-ink:    #FFFFFF;
  --mj-tres-bien-ink:    #FFFFFF;
  --mj-bien-ink:         #14131A;
  --mj-assez-bien-ink:   #14131A;
  --mj-passable-ink:     #14131A;
  --mj-insuffisant-ink:  #14131A;
  --mj-a-rejeter-ink:    #FFFFFF;

  /* --- Interface ------------------------------------------------------ */
  --color-bg:            #FFFFFF;
  --color-dot:           #E4E3EC;  /* trame de points du fond */
  --color-surface:       #F6F6FA;  /* cartes secondaires, lignes de tableau */
  --color-border:        #E6E4EE;
  --color-ink:           #14131A;  /* texte principal, ligne de médiane */
  --color-ink-2:         #3A3848;  /* texte secondaire fort */
  --color-muted:         #5E5C6E;  /* texte d'accompagnement */
  --color-accent:        #14166B;  /* liens, bouton actif, contour gagnant */
  --color-accent-2:      #3A43DB;  /* étiquettes en majuscules */
  --color-pixel-off:     #ECEBF2;  /* pixel éteint des chiffres pixel */
  --color-highlight:     #CC2775;  /* pastille « clos », accents roses */

  /* --- Typographie ---------------------------------------------------- */
  --font-sans: "Space Grotesk", system-ui, sans-serif;
  --font-mono: "Space Mono", ui-monospace, monospace;

  --fs-display: clamp(46px, 6.4vw, 92px);   /* h1 accueil */
  --fs-h1:      clamp(38px, 5.5vw, 76px);   /* h1 résultats */
  --fs-h2:      clamp(30px, 4vw, 52px);
  --fs-h3:      24px;
  --fs-lead:    19px;
  --fs-body:    16px;
  --fs-small:   15px;
  --fs-label:   13px;                       /* mono, majuscules */

  --tracking-display: -0.05em;
  --tracking-heading: -0.04em;
  --tracking-label:    0.12em;

  /* --- Rayons --------------------------------------------------------- */
  --radius-xs: 3px;    /* pixels, segments */
  --radius-sm: 6px;    /* pastilles de mention, barres */
  --radius-md: 20px;   /* cartes */
  --radius-lg: 28px;   /* grandes sections */

  /* --- Espacements ---------------------------------------------------- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;

  --page-max: 1320px;
  --page-gutter: clamp(16px, 3vw, 40px);
}
