/* =============================================================================
 * largeurs.css — largeurs CONSTANTES de colonnes de tableau
 *
 * Une largeur figée est une règle de présentation : elle vit dans une feuille,
 * pas dans un attribut `style` (§ 5 de la NORME, contrôle `style-vue-figé`).
 * Ce fichier ne porte QUE des largeurs constantes. Une largeur CALCULÉE (barre
 * de progression, pourcentage issu d'une donnée) reste inline : c'est une
 * donnée, pas une règle — et l'audit ne la compte pas comme un écart.
 *
 * ⚠️ NE PAS NOMMER CES CLASSES `w-50` / `w-25` / `w-75` / `w-100` : Bootstrap
 * les définit déjà, et chez lui `w-50` vaut 50 POUR CENT, pas 50 pixels. Le
 * préfixe `w-px-` / `w-pc-` lève l'ambiguïté et évite d'écraser Bootstrap.
 * Pour 100 %, 50 %, 25 % et 75 %, on utilise directement `w-100`, `w-50`,
 * `w-25`, `w-75` de Bootstrap — inutile de les redéfinir ici.
 *
 * ⚠️ CE QUE J'AI VÉRIFIÉ AVANT D'ÉCRIRE CE FICHIER, parce que ce n'était pas
 * évident : DataTables 1.11.5 ne lit PAS la largeur dans la feuille de style.
 * Il la récupère par une expression régulière sur l'ATTRIBUT `style` du `<th>`
 * (`_fnColumnOptions`), et son propre commentaire le dit : « We can't get it
 * from CSS as we'd need to parse the CSS stylesheet ». Passer la largeur en
 * classe met donc `sWidthOrig` à `null`.
 *
 * MAIS C'EST SANS EFFET SUR LE RENDU, et c'est la mesure qui le dit : sur un
 * tableau de 14 colonnes dont les largeurs demandées dépassent le conteneur —
 * le cas où l'arbitrage se voit — l'écart entre les deux écritures est de
 * 0 px sur chaque colonne. DataTables mesure en clonant le tableau, et le
 * clone emporte les classes : le navigateur arbitre à l'identique.
 * Cela ne vaudrait plus avec `scrollX: true`, qui scinde la table en deux et
 * force les largeurs — l'application ne l'utilise nulle part, et plusieurs
 * commentaires du code expliquent pourquoi.
 * ========================================================================== */

/* --- largeurs en pixels ---------------------------------------------------- */
.w-px-30  { width: 30px; }
.w-px-32  { width: 32px; }
.w-px-36  { width: 36px; }
.w-px-40  { width: 40px; }
.w-px-50  { width: 50px; }
.w-px-60  { width: 60px; }
.w-px-70  { width: 70px; }
.w-px-80  { width: 80px; }
.w-px-90  { width: 90px; }
.w-px-100 { width: 100px; }
.w-px-110 { width: 110px; }
.w-px-120 { width: 120px; }
.w-px-130 { width: 130px; }
.w-px-140 { width: 140px; }
.w-px-150 { width: 150px; }
.w-px-160 { width: 160px; }
.w-px-170 { width: 170px; }
.w-px-180 { width: 180px; }
.w-px-200 { width: 200px; }

/* --- largeurs en pourcentage ----------------------------------------------- */
/* `w-pc-1` n'est pas « 1 % » au sens propre : c'est l'idiome qui demande à une
 * colonne de se réduire à son contenu. ⚠️ Sur une colonne qui porte un select,
 * il RETRÉCIT le champ au point de tronquer les libellés — c'est le défaut
 * corrigé sur les règles d'affectation. À réserver aux colonnes d'icônes. */
.w-pc-1   { width: 1%; }
.w-pc-5   { width: 5%; }
.w-pc-8   { width: 8%; }
.w-pc-10  { width: 10%; }
.w-pc-12  { width: 12%; }
.w-pc-14  { width: 14%; }
.w-pc-16  { width: 16%; }
.w-pc-18  { width: 18%; }
.w-pc-20  { width: 20%; }
.w-pc-24  { width: 24%; }

/* ⚠️ LES CINQ SUIVANTES PORTENT `!important`, ET IL NE FAUT PAS LE RETIRER. Ce ne sont pas les
 * seules classes du fichier à en avoir besoin « au cas où » : ce sont celles dont la largeur était
 * effectivement écrasée, chacune pour une raison mesurée.
 *
 *   • `w-pc-45`, `w-pc-46`, `w-pc-65` habillent des OFFCANVAS (panneaux latéraux : préavis et
 *     documents d'une affaire, journal d'audit). Le thème déclare
 *         .offcanvas.offcanvas-end { width: var(--vz-offcanvas-width) }   (assets/css/bootstrap.css)
 *     soit DEUX classes : plus spécifique qu'une classe seule, donc gagnant même si `largeurs.css`
 *     est chargé après. Sans `!important`, le panneau reste à la largeur du thème.
 *
 *   • `w-pc-30`, `w-pc-42` habillent des `<th>` de DataTables, qui mesure ses colonnes et écrit leur
 *     largeur en STYLE EN LIGNE. Un style en ligne bat n'importe quel sélecteur de classe ; seul
 *     `!important` reprend la main.
 *
 * Les autres classes du fichier n'entrent dans aucun de ces deux cas — leur en ajouter un par
 * symétrie ferait perdre le signal : ici, `!important` veut dire « quelque chose se battait ». */
.w-pc-30  { width: 30% !important; }
.w-pc-42  { width: 42% !important; }
.w-pc-45  { width: 45% !important; }
.w-pc-46  { width: 46% !important; }
.w-pc-65  { width: 65% !important; }
