/* Coloration syntaxique POO²L (chantier 9) — remplace les chips atomiques.
   Les constructs @@@ sont colorés sur du texte resté éditable. Utilise les
   tokens --izi-* pour rester cohérent avec les thèmes clair/sombre. */

.poo2l { border-radius: 3px; padding: 0 1px; }

/* La couleur de CHAQUE sigil (un par mot-clé) est injectée par index-themes.js
   (règles .poo2l-<id> lisant les tokens --izi-sig-<id>-(fg|bg)) — source unique
   = la liste SIGILS. Les paires kw / end-kw partagent le même id (donc la même
   couleur). Fallback avant chargement du thème : couleur de texte héritée. */

/* Diagnostics (décorés par decorateTagsWithWarnings depuis la vérification).
   Souligné ondulé + survol = message. Sévérité par data-warning-type. */
.poo2l[data-warning-type] {
  text-decoration: underline wavy;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  cursor: help;
}
/* Erreurs dures : include manquant / ambigu / cyclique / section virtuelle. */
.poo2l[data-warning-type="missing"],
.poo2l[data-warning-type="ambiguous"],
.poo2l[data-warning-type="circular"],
.poo2l[data-warning-type="virtual"] {
  text-decoration-color: var(--izi-danger, #dc2626);
  background: var(--izi-danger-bg, rgba(220, 38, 38, 0.10));
}
/* Avertissements doux : déprécié / désactivé / autre. */
.poo2l[data-warning-type="deprecated"],
.poo2l[data-warning-type="disabled"],
.poo2l[data-warning-type="warning"] {
  text-decoration-color: var(--izi-warning, #d97706);
  background: var(--izi-warning-bg, rgba(217, 119, 6, 0.10));
}
/* Plafond de niveau POO²L personnel (index-poolevel.js) — ni une erreur ni
   un warning engine, un blocage d'édition local. Teinte distincte
   (violet, cohérente avec le badge L5 — components-dialogs.css) pour ne
   pas se confondre avec les vrais diagnostics du moteur. */
.poo2l[data-warning-type="poolLevel"] {
  text-decoration-color: var(--izi-primary, #5b21b6);
  background: rgba(91, 33, 182, 0.10);
}
