/* Hostbility icon compatibility layer
 *
 * Fixes missing icons across store/public pages when templates use Font Awesome Pro-only
 * style prefixes (e.g. `fal`, `fad`). We remap them to Font Awesome Free (solid) so glyphs render.
 *
 * This file is intentionally tiny and safe to load globally for both logged-in and public views.
 */

/* FA5 Pro "light" prefix -> Free solid */
.fal,
.fa-light,
/* FA5 Pro "duotone" prefix -> Free solid */
.fad,
.fa-duotone {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
}

/* Some themes/styles set `font-family: inherit` on icons; keep FA in control */
.fal::before,
.fa-light::before,
.fad::before,
.fa-duotone::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
}

/* Ensure FA5 classic prefixes resolve even when WHMCS ships FA6 CSS locally.
 * Many templates still use FA5 icon names like `fa-exchange-alt`, so we pin
 * the font-family back to the FA5 CDN families. */
.fas,
.fa-solid {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
}
.far,
.fa-regular {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 400 !important;
}
.fab,
.fa-brands {
  font-family: "Font Awesome 5 Brands" !important;
  font-weight: 400 !important;
}

.fas::before,
.fa-solid::before,
.far::before,
.fa-regular::before,
.fab::before,
.fa-brands::before {
  font-family: inherit;
  font-weight: inherit;
}

/* Hard fallbacks for the domain pages when FA6 CSS overrides/omits FA5 glyph mappings. */
.fas.fa-globe::before { content: "\f0ac"; }
.fas.fa-exchange-alt::before { content: "\f362"; }
.fas.fa-sync::before { content: "\f021"; }
.fas.fa-tags::before { content: "\f02c"; }

/* Ensure consistent baseline alignment when icons appear inside buttons/labels */
.fal,
.fa-light,
.fad,
.fa-duotone,
.fas,
.far,
.fab {
  display: inline-block;
  line-height: 1;
  vertical-align: -0.125em;
}
