/* ============================================================================================
   H360-CUSTOM [H360_FA_COMPAT_SHIM]
   --------------------------------------------------------------------------------------------
   PROBLÈME : le V2 charge Font Awesome 5 (bundlé dans public/css/vendor.css, sans les
   « v4-shims »). Toutes les vues écrites à l'ère V1 (et les noms FA6 utilisés par endroits)
   utilisent des classes qui N'EXISTENT PAS dans ce bundle : l'icône <i> n'a alors aucun
   glyphe (::before.content = none) → l'icône est invisible (le bouton se réduit à son
   padding, ce qui casse aussi la mise en page).

   MESURE (audit navigateur) : 86 classes distinctes utilisées dans les vues noyau + modules
   sont invisibles à l'écran, alors que les 354 autres s'affichent.

   SOLUTION : ce fichier réassocie chaque ancien nom au glyphe réellement présent dans le
   bundle FA5 (codes lus dans la page, pas devinés). Aucun fichier de vue n'est modifié.

   CE FICHIER EST À CONSERVER LORS DE LA MIGRATION V1→V2 (idempotent, purement additif).
   ============================================================================================ */

.fa[class*="fa-"].fa-address-book-o::before { content: "\f2b9"; }
.fa[class*="fa-"].fa-address-card-o::before { content: "\f2bb"; }
.fa[class*="fa-"].fa-bell-o::before { content: "\f0f3"; }
.fa[class*="fa-"].fa-bookmark-o::before { content: "\f02e"; }
.fa[class*="fa-"].fa-building-o::before { content: "\f1ad"; }
.fa[class*="fa-"].fa-calendar-check-o::before { content: "\f274"; }
.fa[class*="fa-"].fa-calendar-plus-o::before { content: "\f271"; }
.fa[class*="fa-"].fa-calendar-times-o::before { content: "\f273"; }
.fa[class*="fa-"].fa-check-circle-o::before { content: "\f058"; }
.fa[class*="fa-"].fa-check-square-o::before { content: "\f14a"; }
.fa[class*="fa-"].fa-circle-o::before { content: "\f111"; }
.fa[class*="fa-"].fa-circle-o-notch::before { content: "\f1ce"; }
.fa[class*="fa-"].fa-clock-o::before { content: "\f017"; }
.fa[class*="fa-"].fa-comment-o::before { content: "\f075"; }
.fa[class*="fa-"].fa-comments-o::before { content: "\f086"; }
.fa[class*="fa-"].fa-file-contract-o::before { content: "\f56c"; }
.fa[class*="fa-"].fa-file-excel-o::before { content: "\f1c3"; }
.fa[class*="fa-"].fa-file-pdf-o::before { content: "\f1c1"; }
.fa[class*="fa-"].fa-file-text-o::before { content: "\f15c"; }
.fa[class*="fa-"].fa-files-o::before { content: "\f0c5"; }
.fa[class*="fa-"].fa-hand-pointer-o::before { content: "\f25a"; }
.fa[class*="fa-"].fa-handshake-o::before { content: "\f2b5"; }
.fa[class*="fa-"].fa-hdd-o::before { content: "\f0a0"; }
.fa[class*="fa-"].fa-heart-o::before { content: "\f004"; }
.fa[class*="fa-"].fa-id-card-o::before { content: "\f2c2"; }
.fa[class*="fa-"].fa-keyboard-o::before { content: "\f11c"; }
.fa[class*="fa-"].fa-lightbulb-o::before { content: "\f0eb"; }
.fa[class*="fa-"].fa-picture-o::before { content: "\f03e"; }
.fa[class*="fa-"].fa-square-o::before { content: "\f0c8"; }
.fa[class*="fa-"].fa-sun-o::before { content: "\f185"; }
.fa[class*="fa-"].fa-thumbs-o-up::before { content: "\f164"; }
.fa[class*="fa-"].fa-trash-o::before { content: "\f2ed"; }
.fa[class*="fa-"].fa-user-circle-o::before { content: "\f2bd"; }
.fa[class*="fa-"].fa-user-o::before { content: "\f007"; }

/* Anciens noms V1 renommés en FA5 */
.fa[class*="fa-"].fa-money::before { content: "\f3d1"; }
.fa[class*="fa-"].fa-arrows-h::before { content: "\f337"; }
.fa[class*="fa-"].fa-arrows-v::before { content: "\f338"; }
.fa[class*="fa-"].fa-bar-chart::before { content: "\f080"; }
.fa[class*="fa-"].fa-pie-chart::before { content: "\f200"; }
.fa[class*="fa-"].fa-line-chart::before { content: "\f201"; }
.fa[class*="fa-"].fa-close::before { content: "\f00d"; }
.fa[class*="fa-"].fa-cutlery::before { content: "\f2e7"; }
.fa[class*="fa-"].fa-dashboard::before { content: "\f3fd"; }
.fa[class*="fa-"].fa-tachometer::before { content: "\f3fd"; }
.fa[class*="fa-"].fa-exchange::before { content: "\f362"; }
.fa[class*="fa-"].fa-external-link::before { content: "\f35d"; }
.fa[class*="fa-"].fa-file-text::before { content: "\f15c"; }
.fa[class*="fa-"].fa-floppy-disk::before { content: "\f0c7"; }
.fa[class*="fa-"].fa-legal::before { content: "\f0e3"; }
.fa[class*="fa-"].fa-level-down::before { content: "\f3be"; }
.fa[class*="fa-"].fa-long-arrow-right::before { content: "\f30b"; }
.fa[class*="fa-"].fa-pencil::before { content: "\f303"; }
.fa[class*="fa-"].fa-pencil-square-o::before { content: "\f044"; }
.fa[class*="fa-"].fa-refresh::before { content: "\f2f1"; }
.fa[class*="fa-"].fa-repeat::before { content: "\f01e"; }
.fa[class*="fa-"].fa-rotate-left::before { content: "\f0e2"; }
.fa[class*="fa-"].fa-rotate-right::before { content: "\f01e"; }
.fa[class*="fa-"].fa-send::before { content: "\f1d8"; }
.fa[class*="fa-"].fa-shield::before { content: "\f3ed"; }
.fa[class*="fa-"].fa-sign-in::before { content: "\f2f6"; }
.fa[class*="fa-"].fa-sign-out::before { content: "\f2f5"; }
.fa[class*="fa-"].fa-sliders::before { content: "\f1de"; }
.fa[class*="fa-"].fa-ticket::before { content: "\f3ff"; }
.fa[class*="fa-"].fa-warning::before { content: "\f071"; }

/* Noms FA6 (utilisés par les pages récentes) → glyphes FA5 présents dans le bundle */
.fa[class*="fa-"].fa-circle-info::before { content: "\f05a"; }
.fa[class*="fa-"].fa-circle-question::before { content: "\f059"; }
.fa[class*="fa-"].fa-circle-xmark::before { content: "\f057"; }
.fa[class*="fa-"].fa-triangle-exclamation::before { content: "\f071"; }
.fa[class*="fa-"].fa-xmark::before { content: "\f00d"; }
.fa[class*="fa-"].fa-badge-check::before { content: "\f0a3"; }
.fa[class*="fa-"].fa-arrow-trend-up::before { content: "\f062"; }
.fa[class*="fa-"].fa-boxes-stacked::before { content: "\f468"; }
.fa[class*="fa-"].fa-cloud-download::before { content: "\f381"; }
.fa[class*="fa-"].fa-cloud-upload::before { content: "\f382"; }
.fa[class*="fa-"].fa-commenting::before { content: "\f4ad"; }
.fa[class*="fa-"].fa-link-slash::before { content: "\f127"; }
.fa[class*="fa-"].fa-pen-to-square::before { content: "\f044"; }
.fa[class*="fa-"].fa-scale-balanced::before { content: "\f24e"; }
.fa[class*="fa-"].fa-shield-check::before { content: "\f3ed"; }
.fa[class*="fa-"].fa-sparkles::before { content: "\f0d0"; }
.fa[class*="fa-"].fa-trash-can::before { content: "\f2ed"; }
.fa[class*="fa-"].fa-up-right-from-square::before { content: "\f35d"; }
.fa[class*="fa-"].fa-usd::before { content: "\f155"; }
.fa[class*="fa-"].fa-user-gear::before { content: "\f4fe"; }
.fa[class*="fa-"].fa-user-group::before { content: "\f0c0"; }
.fa[class*="fa-"].fa-wand-magic-sparkles::before { content: "\f0d0"; }
.fa[class*="fa-"].fa-wifi-slash::before { content: "\f1eb"; }
.fa[class*="fa-"].fa-sort-amount-asc::before { content: "\f161"; }
.fa[class*="fa-"].fa-sort-amount-desc::before { content: "\f160"; }

/* H360-CUSTOM [H360_FA_COMPAT_SHIM] compléments (2026-10-08, passage visuel module
   H360StockReconciliation) : 2 glyphes encore invisibles à l'écran — repérés par la sonde
   `getComputedStyle(i,'::before').content === 'none'`.
   Sélecteurs SANS exigence de la classe `.fa` : certains boutons récents n'ont que `fas`
   (ex. bouton « Nouvelle conversation » du chat Copilot), donc les règles
   `.fa[class*="fa-"]...` ci-dessus ne les atteignaient pas. */
.fa-bank::before { content: "\f19c"; }            /* nom FA4 « bank » → university (f19c) */
.fa-pen-to-square::before { content: "\f044"; }   /* nom FA6 → edit (f044) */

/* Garde-fou : ces glyphes vivent dans la fonte « Font Awesome 5 Free » en graisse 900 (solid).
   Si une vue pose la classe sans `fa`/`fas`, l'icône restait vide — on force la fonte. */
.fa-address-book-o, .fa-address-card-o, .fa-bell-o, .fa-bookmark-o, .fa-building-o,
.fa-calendar-check-o, .fa-calendar-plus-o, .fa-calendar-times-o, .fa-check-circle-o,
.fa-check-square-o, .fa-circle-o, .fa-circle-o-notch, .fa-clock-o, .fa-comment-o,
.fa-comments-o, .fa-file-contract-o, .fa-file-excel-o, .fa-file-pdf-o, .fa-file-text-o,
.fa-files-o, .fa-hand-pointer-o, .fa-handshake-o, .fa-hdd-o, .fa-heart-o, .fa-id-card-o,
.fa-keyboard-o, .fa-lightbulb-o, .fa-picture-o, .fa-square-o, .fa-sun-o, .fa-thumbs-o-up,
.fa-trash-o, .fa-user-circle-o, .fa-user-o, .fa-money, .fa-arrows-h, .fa-arrows-v,
.fa-bar-chart, .fa-pie-chart, .fa-line-chart, .fa-close, .fa-cutlery, .fa-dashboard,
.fa-tachometer, .fa-exchange, .fa-external-link, .fa-file-text, .fa-floppy-disk, .fa-legal,
.fa-level-down, .fa-long-arrow-right, .fa-pencil, .fa-pencil-square-o, .fa-refresh,
.fa-repeat, .fa-rotate-left, .fa-rotate-right, .fa-send, .fa-shield, .fa-sign-in,
.fa-sign-out, .fa-sliders, .fa-ticket, .fa-warning, .fa-bank, .fa-circle-info, .fa-circle-question,
.fa-circle-xmark, .fa-triangle-exclamation, .fa-xmark, .fa-badge-check, .fa-arrow-trend-up,
.fa-boxes-stacked, .fa-cloud-download, .fa-cloud-upload, .fa-commenting, .fa-link-slash,
.fa-pen-to-square, .fa-scale-balanced, .fa-shield-check, .fa-sparkles, .fa-trash-can,
.fa-up-right-from-square, .fa-usd, .fa-user-gear, .fa-user-group, .fa-wand-magic-sparkles,
.fa-wifi-slash, .fa-sort-amount-asc, .fa-sort-amount-desc {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
}
