/*
 * branding.css - l'identite du cabinet, servie HORS BUNDLE (T112.2).
 *
 * Ce fichier-ci est le DEFAUT livre dans l'image : il ne definit rien, et c'est
 * volontaire. Sans surcharge, le produit garde exactement la palette de
 * `globals.css` - l'etat d'avant ce sprint.
 *
 * En deploiement, le role Ansible ecrit un fichier de meme nom dans le
 * repertoire monte (`/srv/lexchat/branding/`) que Caddy sert AVANT le frontend.
 * Il remplace celui-ci sans qu'aucune image soit reconstruite : c'est tout
 * l'objet de la tache. La chaine complete est decrite dans
 * [[ADR-079-branding-a-l-execution]].
 *
 * ─── LA FORME EST IMPOSEE, ET ELLE EST MESUREE ───────────────────────────────
 *
 * Une surcharge s'ecrit sur `:root:root`, JAMAIS sur `:root` :
 *
 *   :root:root {
 *       --primary: #0a2540;             couleur d'accent du cabinet
 *       --primary-foreground: #ffffff;  ce qui s'ecrit DESSUS
 *       --cabinet-logo: url("/branding/logo.svg");
 *   }
 *
 * Raison, verifiee dans le paquet construit le 2026-08-13 : Vite emet le lien
 * du CSS applicatif A LA FIN du `<head>`, apres le lien de ce fichier (ligne 55
 * contre ligne 24 de `dist/index.html`). A specificite egale, c'est donc
 * `globals.css` qui gagne, et une surcharge ecrite sur `:root` ne ferait
 * **rien du tout** - sans erreur, sans avertissement, exactement le defaut que
 * [[BLOCKERS]] B-150 decrit : « promis, configure, et consomme par personne ».
 * `:root:root` porte deux fois la specificite d'un attribut et l'emporte quel
 * que soit l'ordre des feuilles ; c'est plus sur que de compter sur une
 * position dans le `<head>` que le constructeur choisit.
 *
 * ─── POURQUOI UNE VARIABLE SUFFIT ────────────────────────────────────────────
 *
 * `globals.css` fait pointer le token Tailwind `--color-primary` sur
 * `--primary`. Chaque `bg-primary`, `text-primary` et `border-primary` du depot
 * suit donc la surcharge sans qu'un seul composant soit touche.
 *
 * **Poser `--primary` sans `--primary-foreground` est le piege a eviter** : un
 * bleu marine derriere du texte clair reste lisible, un jaune pale ne l'est
 * pas, et rien ne le signale. Les deux se choisissent ensemble ; le role
 * Ansible refuse d'ecrire l'une sans l'autre.
 */
