/* Charte du portail client (2026-10-03) : thème clair, couleurs du logo SB2. Aucune couleur en dur
   dans les composants (ENGSTD §12.5). */
@font-face { font-family: "IBM Plex Sans"; font-weight: 400; font-display: swap; src: url("../fonts/IBMPlexSans-Regular.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 500; font-display: swap; src: url("../fonts/IBMPlexSans-Medium.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Sans"; font-weight: 600; font-display: swap; src: url("../fonts/IBMPlexSans-SemiBold.woff2") format("woff2"); }

:root {
  --sb2-canvas: #F4F6F8;
  --sb2-surface: #FFFFFF;
  --sb2-ink: #24292E;
  --sb2-muted: #5B6570;
  --sb2-line: #DDE2E7;
  /* Filet léger entre les lignes d'une liste, plus doux que la bordure d'un panneau. */
  --sb2-line-soft: #EEF0F3;
  /* Bleu du logo : repères seulement (onglet actif, piste), jamais du texte (contraste insuffisant). */
  --sb2-brand: #29A8E0;
  --sb2-action: #0A6EA3;
  --sb2-action-hover: #075A86;
  --sb2-action-disabled: #9FB8C8;
  --sb2-focus: #9BD4F0;
  --sb2-ok: #1E7A4F;   --sb2-ok-bg: #E5F3EC;   --sb2-ok-line: #BFE0CD; --sb2-ok-hover: #17603E;
  --sb2-env-dev: #6B7280; --sb2-env-preprod: #F59E0B; --sb2-env-ink: #FFFFFF;
  --sb2-wait: #8A5300; --sb2-wait-bg: #FDF3E1; --sb2-wait-line: #F0D9AE;
  /* Alerte (recette du 2026-10-09) : une démarche dont SB2 examine l'annulation doit sauter aux yeux, distincte de l'ambre
     « à décider ». Texte et pastille pleine --sb2-alert (AA sur la teinte et sous texte blanc), liseré épais --sb2-alert-strong
     (3:1), teinte --sb2-alert-bg, filet --sb2-alert-line. Garde-fou : StyleSheetTests. */
  --sb2-alert: #A63C06; --sb2-alert-bg: #FEF3E8; --sb2-alert-line: #F5C9A3; --sb2-alert-strong: #DC6803;
  /* Danger (refus, bouton danger ; recette TKT-2026-45BC22A9 : valeur exigée et vide de la fiche V2, pastille pleine, ligne teintée
     et liserée, compteur « N à renseigner » sur sa teinte avec le filet --sb2-ko-line). Rouge, distinct de l'orange --sb2-alert et
     de l'ambre --sb2-wait. Garde-fou : StyleSheetTests. */
  --sb2-ko: #B42318;   --sb2-ko-bg: #FDECEA; --sb2-ko-hover: #912018; --sb2-ko-line: #F4C2BC;
  /* Fond d'une saisie exigée et vide, bordée de --sb2-ko (recette TKT-2026-D336A5AF) : à peine teinté, le texte saisi reste AA. */
  --sb2-ko-field: #FFFBFA;
  --sb2-todo: #5B6570; --sb2-todo-bg: #F0F2F5;
  --sb2-info-bg: #E6F4FB; --sb2-info-line: #BFE3F4;
  /* Catégories d'un document (propositions, contrats, autres) : se distinguent des pastilles de statut. */
  --sb2-cat-proposal: #0A6EA3;
  --sb2-cat-contract: #6B3FA0;
  --sb2-cat-other: #5B6570;
  --sb2-cat-quote: #9A5B00;
  --sb2-cat-amendment: #1F7A5C;
  /* Fiche V2 (ADR-022, maquette de la revue) : une couleur par établissement (signe, bénéficie, paie) et par rôle de contact. */
  --sb2-entity-contracting: #1D4E89; --sb2-entity-contracting-bg: #EAF0F8; --sb2-entity-contracting-line: #C9D6E8;
  --sb2-entity-beneficiary: #0E6E7E; --sb2-entity-beneficiary-bg: #E3F3F5; --sb2-entity-beneficiary-line: #BEE1E6;
  --sb2-entity-payer: #9B2C5F; --sb2-entity-payer-bg: #FAECF2; --sb2-entity-payer-line: #EDC7D8;
  --sb2-role-commercial: #6B3FA0; --sb2-role-commercial-bg: #F2ECF9; --sb2-role-commercial-line: #D9C8EE;
  --sb2-role-technical: #1F7A5C; --sb2-role-technical-bg: #E5F3EC; --sb2-role-technical-line: #BFE0CD;
  --sb2-role-accounting: #9A5B00; --sb2-role-accounting-bg: #FDF3E1; --sb2-role-accounting-line: #F0D9AE;
  /* Fond de la visionneuse de PDF (aperçu intégré). */
  --sb2-viewer: #525659;
  --sb2-viewer-ink: #E8EAED;
  /* Ombres : fenêtres modales et segment actif seulement (brief de la refonte) ; voile derrière une fenêtre modale. */
  --sb2-shadow-dialog: rgba(20, 26, 33, .28);
  --sb2-shadow-segment: rgba(20, 26, 33, .12);
  --sb2-backdrop: rgba(20, 26, 33, .48);
  /* Rayons : 8 px boutons et champs, 10 px panneaux, 12 px fenêtres. */
  --sb2-radius: 8px;
  --sb2-radius-panel: 10px;
  --sb2-radius-dialog: 12px;
  --sb2-topbar-height: 56px;
  /* Vue client (ADR-010) : hauteur du bandeau sur une ligne (bouton de 30 px, marges, filet) ; plus haute sur un écran étroit (site.css). */
  --sb2-support-banner-height: 47px;
  /* Accueil repensé (TKT-2026-64F969F1) : barre de 72 px ; le dégradé du bandeau finit sur un bleu lisible sous un texte blanc (A7 :
     4,75:1, le bleu du logo n'en donne que 2,6:1) ; une couleur par société, calculée (A3), chacune AA sous des initiales blanches.
     Garde-fou : StyleSheetTests. */
  --sb2-topbar-height-redesigned: 72px;
  --sb2-banner-end: #1279B5;
  /* Accueils compacts (spec du 2026-10-12 §3.1) : barre d'une étape faite de la frise du bandeau (3:1 au moins sur le dégradé, élément
     graphique), fond du contact du bandeau (texte blanc AA : un voile blanc à 13 % n'en donnait que 3,8:1). */
  --sb2-banner-done: #9BE7BE;
  --sb2-banner-panel: #0B5A87;
  --sb2-company-1: #1D4E89; --sb2-company-2: #0E6E7E; --sb2-company-3: #9B2C5F; --sb2-company-4: #6B3FA0;
  --sb2-company-5: #1F7A5C; --sb2-company-6: #0A6EA3; --sb2-company-7: #5B4636; --sb2-company-8: #3A4046;
  --sb2-font: "IBM Plex Sans", system-ui, sans-serif;
}
