/*
 * Tokens Kwisatz Controller — traduction CSS des tokens réellement utilisés.
 *
 * Source de référence : docs/design/tokens/ant_extrait.json (Ant Design v6) et
 * docs/design/tokens/kwisatz_pragminfo.json (redéfinitions Pragminfo, prioritaires).
 * Convention : le token « a.b.c » devient la variable « --a-b-c ». Une référence
 * « {x.y} » du JSON devient « var(--x-y) ». La valeur est celle de kwisatz/pragminfo si
 * le token y est redéfini, sinon celle d'ant/extrait. Le test ui/test_static.py vérifie
 * cette correspondance, et que chaque variable est utilisée par kwisatz.css.
 *
 * Les variables « --kz-* » sont des valeurs de maquette sans token : chacune cite sa source.
 */
:root {
  /* Couleurs : primaire et liens (kwisatz/pragminfo) */
  --color-primary-default: #2E3192;
  --color-primary-hover: #4A4DA8;
  --color-primary-active: #24267A;
  --color-link-default: #2E3192;
  --color-link-hover: #4A4DA8;
  --color-link-active: #24267A;

  /* Couleurs : texte, fonds, bordures (ant/extrait) */
  --color-text-default: rgba(0,0,0,0.88);
  --color-text-heading: rgba(0,0,0,0.88);
  --color-text-tertiary: rgba(0,0,0,0.45);
  --color-text-disabled: rgba(0,0,0,0.25);
  --color-text-light-solid: #fff;
  --color-bg-container-default: #ffffff;
  --color-bg-text-hover: rgba(0,0,0,0.06);
  --color-fill-alter: rgba(0,0,0,0.02);
  --color-fill-tertiary: rgba(0,0,0,0.04);
  --color-border-default: #d9d9d9;
  --color-border-secondary: #f0f0f0;
  --control-item-bg-active-default: #EEEFF8;

  /* Couleurs d'état : la teinte vient de kwisatz/pragminfo, fond et bordure d'ant/extrait
     (sauf information, entièrement redéfinie) */
  --color-error-default: #C8161D;
  --color-error-bg-default: #fff2f0;
  --color-error-border-default: #ffccc7;
  --color-warning-default: #D46B08;
  --color-warning-bg-default: #fffbe6;
  --color-warning-border-default: #ffe58f;
  --color-info-default: #4A6785;
  --color-info-bg-default: #EDF2F7;
  --color-info-border-default: #B9C9DA;
  --color-success-default: #2E8540;
  --color-success-bg-default: #f6ffed;
  --color-success-border-default: #b7eb8f;

  /* Typographie */
  --font-size-sm: 12px;
  --font-size-default: 14px;
  --font-size-lg: 16px;
  --font-weight-strong: 600;

  /* Formes et espacements */
  --border-radius-sm: 4px;
  --border-radius-default: 4px;
  --border-radius-lg: 6px;
  --line-width-default: 1px;
  --line-width-bold: 2px;
  --control-height-sm: 24px;
  --control-height-default: 32px;
  --padding-xs: 8px;
  --padding-sm: 12px;
  --padding-default: 16px;
  --padding-md: 20px;
  --padding-lg: 24px;
  --margin-xs: 8px;
  --margin-sm: 12px;

  /* Bouton */
  --button-padding-block-default: 4px;
  --button-padding-inline-default: 15px;
  --button-padding-block-sm: 0px;
  --button-padding-inline-sm: 7px;
  --button-content-font-size-sm: 14px;
  --button-icon-gap: 8px;
  --button-default-hover-color: #4A4DA8;
  --button-default-hover-border-color: #4A4DA8;
  --button-default-active-color: #24267A;
  --button-default-active-border-color: #24267A;
  --button-default-shadow: 0px 2px 0px 0px rgba(0,0,0,0.02);
  --button-primary-shadow: 0px 2px 0px 0px rgba(46,49,146,0.1);

  /* Tableau */
  --table-header-bg: var(--color-fill-alter);
  --table-header-color: var(--color-text-heading);
  --table-header-split-color: var(--color-border-secondary);
  --table-border-color: var(--color-border-secondary);
  --table-cell-font-size: var(--font-size-default);
  --table-cell-padding-block-default: var(--padding-xs);
  --table-cell-padding-inline-default: var(--padding-default);
  --table-row-selected-bg: var(--control-item-bg-active-default);

  /* Valeurs de maquette sans token */
  --kz-font-family: "Source Sans Pro", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; /* UX_DIRECTION.md §3 */
  --kz-font-family-code: "Source Code Pro", Consolas, "Liberation Mono", Menlo, monospace; /* UX_DIRECTION.md §3 */
  --kz-header-bg: #13007C; /* encre Pragminfo, UX_DIRECTION.md §3 */
  --kz-header-height: 56px; /* maquettes E1-E8, en-tête application */
  --kz-header-text: rgba(255,255,255,0.85); /* maquettes, nom de l'utilisateur */
  --kz-header-text-secondary: rgba(255,255,255,0.65); /* maquettes, libellé de l'espace */
  --kz-sider-width: 208px; /* maquettes E1-E8, navigation */
  --kz-layout-bg: #f5f5f5; /* maquettes, fond de page (colorBgLayout d'Ant, non extrait) */
  --kz-text-secondary: rgba(0,0,0,0.65); /* maquettes, résumé de page (colorTextSecondary d'Ant, non extrait) */
  --kz-page-title-size: 24px; /* maquettes, titre de page */
}
