VSN-2938 — Unifier le rendu des lignes désactivées + fix sélecteur mois/année du filtre date
Architecture & Navigation
• Aucun changement de routing ni de structure de dossiers — refactor purement visuel sur les composants de ligne existants et un fix de pile z-index sur le composant Calendar partagé.
Lists & Filters Management Features
• Rendu unifié des lignes désactivées sur toutes les listes du backoffice (usagers, circuits, trajets, avenants, contrats, clients, chauffeurs, établissements, attendance, secteurs/lots/départements/agences, véhicules + incidents + révisions + réparations, fournisseurs carburant, prestataires, marques/modèles, chauffeur-row, mobile-schedule-config).
• Filtre date des listes utilisable — le menu déroulant mois/année du calendrier de filtre s'ouvre maintenant correctement par-dessus le popover parent (était caché derrière avant).
Components Architecture
• Core Components: usager/shadcn/components/usager-table-row.tsx, circuit/shadcn/components/circuit-table-row.tsx — traitement complet (split-panel sticky + bande latérale gauche + hover atténué).
• Specialized Components: 19 autres *-table-row.tsx migrés du hack opacity-60 vers les classes canoniques (bg-[hsl(var(--muted))] text-muted-foreground/85 border-[hsl(var(--muted-foreground)/0.18)]).
• Interactive Elements: src/components/ui/calendar.tsx — sous-composant CalendarDropdown du sélecteur mois/année passé en z-[10200].
Key Features
• Fond muted plein au lieu d'opacity : suppression de opacity: 0.6 / opacity-60 qui rendait la ligne semi-transparente et laissait fuiter le contenu (texte fantôme superposé visible sur split-panel sticky + scrollable).
• Texte muté ciblé : remplacement de [&_*]:text-muted-foreground (qui écrasait aussi les badges) par text-muted-foreground/85 qui cascade naturellement — les status pills gardent leurs couleurs vives pour rester scannables.
• Bande latérale gauche en gris sur les lignes désactivées (usager + circuit) : remplace temporairement la couleur département / colorCode du circuit pour un signal « désactivé » immédiat.
• Hover atténué sur lignes désactivées : var(--neo-shadow-md) sans var(--glow-primary), bordure muted — la ligne reste cliquable mais ne se comporte plus comme une ligne active.
• Stack z-index des popovers de filtre corrigée : le popover du sélecteur mois/année passe de z-[10050] à z-[10200] pour rester au-dessus du date picker (z-[10100]).
Technical Implementation
• Surface réduite du diff : un seul remplacement chirurgical par fichier sur les 19 lignes secondaires — 'opacity-60' → triple classe canonique, sans toucher au reste du composant.
• Conservation des IDs / état par ligne : la transition n'altère aucun handler ni stockage — les lignes restent les mêmes, seul leur rendu change.
• Cohérence visuelle : tokens partagés (--muted, --muted-foreground, --neo-shadow-sm/md) — alignement avec l'identité dashboard (soft purple, neo-shadows).
• Z-index normalisé côté Calendar : le menu déroulant du caption est désormais garanti au-dessus de tout popover de filtre imbriqué dans le projet, pas seulement celui de la liste usagers.
Closes VSN-2938