/* Classes utilitaires de couleur — utilisées par HaText, HaIcon, HaSpinner, etc. */
/* HaIcon utilise background-color: currentColor dans son CSS — color suffit ici */
/* Toute couleur ajoutée ici (+ token dans theme.css) est disponible dans les 4 familles */
/* Pose aussi --ha-text-color, pour les mêmes raisons que --ha-bg-color/--ha-border-color
   (voir plus bas) — permet à un composant scopé de lire la couleur sans guerre de spécificité */

.ha-color--red       { color: var(--color-red);     --ha-text-color: var(--color-red); }
.ha-color--blue      { color: var(--color-blue);    --ha-text-color: var(--color-blue); }
.ha-color--green     { color: var(--color-green);   --ha-text-color: var(--color-green); }
.ha-color--orange    { color: var(--color-orange);  --ha-text-color: var(--color-orange); }
.ha-color--purple    { color: var(--color-purple);  --ha-text-color: var(--color-purple); }
.ha-color--pink      { color: var(--color-pink);    --ha-text-color: var(--color-pink); }
.ha-color--yellow    { color: var(--color-yellow);  --ha-text-color: var(--color-yellow); }
.ha-color--teal      { color: var(--color-teal);    --ha-text-color: var(--color-teal); }

.ha-color--primary   { color: var(--color-primary); --ha-text-color: var(--color-primary); }
.ha-color--danger    { color: var(--color-danger);  --ha-text-color: var(--color-danger); }
.ha-color--success   { color: var(--color-success); --ha-text-color: var(--color-success); }
.ha-color--warning   { color: var(--color-warning); --ha-text-color: var(--color-warning); }
.ha-color--info      { color: var(--color-info);    --ha-text-color: var(--color-info); }

.ha-color--secondary { color: var(--color-text-secondary); --ha-text-color: var(--color-text-secondary); }

/* ── background-color ── */
/* Pose aussi --ha-bg-color : permet à un composant scopé (CSS isolation Blazor)
   de lire la couleur sans perdre une guerre de spécificité contre sa propre
   règle de base (voir HaSwitch/HaCheckbox — l'attribut de scope [b-xxx] rend
   toute règle du composant plus spécifique qu'une simple classe utilitaire globale) */
.ha-background-color--red       { background-color: var(--color-red);     --ha-bg-color: var(--color-red); }
.ha-background-color--blue      { background-color: var(--color-blue);    --ha-bg-color: var(--color-blue); }
.ha-background-color--green     { background-color: var(--color-green);   --ha-bg-color: var(--color-green); }
.ha-background-color--orange    { background-color: var(--color-orange);  --ha-bg-color: var(--color-orange); }
.ha-background-color--purple    { background-color: var(--color-purple);  --ha-bg-color: var(--color-purple); }
.ha-background-color--pink      { background-color: var(--color-pink);    --ha-bg-color: var(--color-pink); }
.ha-background-color--yellow    { background-color: var(--color-yellow);  --ha-bg-color: var(--color-yellow); }
.ha-background-color--teal      { background-color: var(--color-teal);    --ha-bg-color: var(--color-teal); }

.ha-background-color--primary   { background-color: var(--color-primary); --ha-bg-color: var(--color-primary); }
.ha-background-color--danger    { background-color: var(--color-danger);  --ha-bg-color: var(--color-danger); }
.ha-background-color--success   { background-color: var(--color-success); --ha-bg-color: var(--color-success); }
.ha-background-color--warning   { background-color: var(--color-warning); --ha-bg-color: var(--color-warning); }
.ha-background-color--info      { background-color: var(--color-info);    --ha-bg-color: var(--color-info); }

.ha-background-color--secondary { background-color: var(--color-text-secondary); --ha-bg-color: var(--color-text-secondary); }

/* ── border-color ── */
/* Même principe — expose --ha-border-color */
.ha-border-color--red       { border-color: var(--color-red);     --ha-border-color: var(--color-red); }
.ha-border-color--blue      { border-color: var(--color-blue);    --ha-border-color: var(--color-blue); }
.ha-border-color--green     { border-color: var(--color-green);   --ha-border-color: var(--color-green); }
.ha-border-color--orange    { border-color: var(--color-orange);  --ha-border-color: var(--color-orange); }
.ha-border-color--purple    { border-color: var(--color-purple);  --ha-border-color: var(--color-purple); }
.ha-border-color--pink      { border-color: var(--color-pink);    --ha-border-color: var(--color-pink); }
.ha-border-color--yellow    { border-color: var(--color-yellow);  --ha-border-color: var(--color-yellow); }
.ha-border-color--teal      { border-color: var(--color-teal);    --ha-border-color: var(--color-teal); }

.ha-border-color--primary   { border-color: var(--color-primary); --ha-border-color: var(--color-primary); }
.ha-border-color--danger    { border-color: var(--color-danger);  --ha-border-color: var(--color-danger); }
.ha-border-color--success   { border-color: var(--color-success); --ha-border-color: var(--color-success); }
.ha-border-color--warning   { border-color: var(--color-warning); --ha-border-color: var(--color-warning); }
.ha-border-color--info      { border-color: var(--color-info);    --ha-border-color: var(--color-info); }

.ha-border-color--secondary { border-color: var(--color-text-secondary); --ha-border-color: var(--color-text-secondary); }

/* ── background-color-light — fond teinté clair (bannières HaAlert, etc.) ── */
/* Utilise les tokens --color-x-light (color-mix, définis dans theme.css light/dark) */
.ha-background-color-light--red       { background-color: var(--color-red-light); }
.ha-background-color-light--blue      { background-color: var(--color-blue-light); }
.ha-background-color-light--green     { background-color: var(--color-green-light); }
.ha-background-color-light--orange    { background-color: var(--color-orange-light); }
.ha-background-color-light--purple    { background-color: var(--color-purple-light); }
.ha-background-color-light--pink      { background-color: var(--color-pink-light); }
.ha-background-color-light--yellow    { background-color: var(--color-yellow-light); }
.ha-background-color-light--teal      { background-color: var(--color-teal-light); }

.ha-background-color-light--primary   { background-color: var(--color-primary-light); }
.ha-background-color-light--danger    { background-color: var(--color-danger-light); }
.ha-background-color-light--success   { background-color: var(--color-success-light); }
.ha-background-color-light--warning   { background-color: var(--color-warning-light); }
.ha-background-color-light--info      { background-color: var(--color-info-light); }

.ha-background-color-light--secondary { background-color: var(--color-surface-hover); }
