/*!
 * Font Awesome Free 6.7.2 (compatible build for FechaFlex)
 * Matches woff2 font files included in /public/assets/webfonts/
 */

/* ===== Font Faces ===== */
@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../webfonts/fa-solid-900.woff2") format("woff2");
}
@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-regular-400.woff2") format("woff2");
}
@font-face {
  font-family: "Font Awesome 6 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-brands-400.woff2") format("woff2");
}
@font-face {
  font-family: "FontAwesome";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../webfonts/fa-v4compatibility.woff2") format("woff2");
}

/* ===== Base Styles ===== */
.fa,
.fas,
.far,
.fal,
.fad,
.fab,
.fa-solid,
.fa-regular,
.fa-light,
.fa-brands,
.fa-classic {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.fa,
.fas,
.fa-solid,
.fa-classic {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}

.far,
.fa-regular {
  font-family: "Font Awesome 6 Free";
  font-weight: 400;
}

.fab,
.fa-brands {
  font-family: "Font Awesome 6 Brands";
  font-weight: 400;
}

/* ===== Animations ===== */
.fa-spin {
  animation: fa-spin 2s infinite linear;
}
.fa-spin-reverse {
  animation-direction: reverse;
}
@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}

/* ===== Sizing ===== */
.fa-xs { font-size: .75em; line-height: .0833em; vertical-align: .125em; }
.fa-sm { font-size: .875em; line-height: .0714em; vertical-align: .0535em; }
.fa-lg { font-size: 1.25em; line-height: .05em; vertical-align: -.075em; }
.fa-xl { font-size: 1.5em; line-height: .0417em; vertical-align: -.125em; }
.fa-2xl { font-size: 2em; line-height: .03125em; vertical-align: -.1875em; }
.fa-fw { text-align: center; width: 1.25em; }
.fa-ul { list-style-type: none; margin-left: 2.5em; padding-left: 0; }
.fa-ul > li { position: relative; }
.fa-li { left: calc(-1 * 2.5em); position: absolute; text-align: center; width: 2.5em; }

/* ===== Flip / Rotate / Stack ===== */
.fa-rotate-90 { transform: rotate(90deg); }
.fa-rotate-180 { transform: rotate(180deg); }
.fa-rotate-270 { transform: rotate(270deg); }
.fa-flip-horizontal { transform: scale(-1, 1); }
.fa-flip-vertical { transform: scale(1, -1); }
.fa-flip-both { transform: scale(-1, -1); }
.fa-stack { display: inline-block; height: 2em; line-height: 2em; position: relative; vertical-align: middle; width: 2.5em; }
.fa-stack-1x, .fa-stack-2x { left: 0; position: absolute; text-align: center; width: 100%; z-index: auto; }
.fa-stack-1x { line-height: inherit; }
.fa-stack-2x { font-size: 2em; }
.fa-inverse { color: #fff; }

/* ===== Icons ===== */
.fa-arrow-left::before { content: "\f060"; }
.fa-arrow-right::before { content: "\f061"; }
.fa-arrow-up-right-from-square::before { content: "\f08e"; }
.fa-barcode::before { content: "\f02a"; }
.fa-bars::before { content: "\f0c9"; }
.fa-boxes-stacked::before { content: "\f58d"; }
.fa-building::before { content: "\f1ad"; }
.fa-calendar::before { content: "\f133"; }
.fa-calendar-check::before { content: "\f274"; }
.fa-certificate::before { content: "\f0a3"; }
.fa-chart-line::before { content: "\f201"; }
.fa-check::before { content: "\f00c"; }
.fa-circle::before { content: "\f111"; }
.fa-circle-check::before { content: "\f058"; }
.fa-circle-info::before { content: "\f05a"; }
.fa-circle-question::before { content: "\f059"; }
.fa-circle-xmark::before { content: "\f057"; }
.fa-clock::before { content: "\f017"; }
.fa-clock-rotate-left::before { content: "\f1da"; }
.fa-cloud::before { content: "\f0c2"; }
.fa-code::before { content: "\f121"; }
.fa-code-branch::before { content: "\f126"; }
.fa-copy::before { content: "\f0c5"; }
.fa-credit-card::before { content: "\f09d"; }
.fa-database::before { content: "\f1c0"; }
.fa-envelope::before { content: "\f0e0"; }
.fa-eye::before { content: "\f06e"; }
.fa-file-contract::before { content: "\f56c"; }
.fa-file-invoice::before { content: "\f570"; }
.fa-floppy-disk::before { content: "\f0c7"; }
.fa-gear::before { content: "\f013"; }
.fa-gift::before { content: "\f06b"; }
.fa-hammer::before { content: "\f6e3"; }
.fa-headset::before { content: "\f590"; }
.fa-icons::before { content: "\f86d"; }
.fa-layer-group::before { content: "\f5fd"; }
.fa-link::before { content: "\f0c1"; }
.fa-list-check::before { content: "\f0ae"; }
.fa-lock::before { content: "\f023"; }
.fa-magnifying-glass::before { content: "\f002"; }
.fa-mobile-alt::before { content: "\f3cd"; }
.fa-pen-to-square::before { content: "\f044"; }
.fa-pix::before { content: "\e43a"; }
.fa-plus-circle::before { content: "\f055"; }
.fa-print::before { content: "\f02f"; }
.fa-file-pdf::before { content: "\f1c1"; }
.fa-file-excel::before { content: "\f1c3"; }
.fa-qrcode::before { content: "\f029"; }
.fa-receipt::before { content: "\f543"; }
.fa-right-from-bracket::before { content: "\f2f5"; }
.fa-right-to-bracket::before { content: "\f2f6"; }
.fa-rocket::before { content: "\f135"; }
.fa-rotate-left::before { content: "\f0e2"; }
.fa-sack-dollar::before { content: "\f81d"; }
.fa-server::before { content: "\f233"; }
.fa-shield-halved::before { content: "\e23b"; }
.fa-spinner::before { content: "\f110"; }
.fa-star::before { content: "\f005"; }
.fa-tag::before { content: "\f02b"; }
.fa-trash::before { content: "\f1f8"; }
.fa-trash-can::before { content: "\f2ed"; }
.fa-triangle-exclamation::before { content: "\f071"; }
.fa-user::before { content: "\f007"; }
.fa-user-tie::before { content: "\f508"; }
.fa-users::before { content: "\f0c0"; }
.fa-xmark::before { content: "\f00d"; }

/* ===== Brand Icons ===== */
.fa-css3-alt::before { content: "\f38b"; }
.fa-js::before { content: "\f3b8"; }
.fa-php::before { content: "\f457"; }
.fa-whatsapp::before { content: "\f232"; }

/* ===== Aliases (FA5/FA4 compatibility) ===== */
.fa-save::before { content: "\f0c7"; }
.fa-search::before { content: "\f002"; }
.fa-edit::before { content: "\f044"; }
.fa-cog::before { content: "\f013"; }
.fa-cogs::before { content: "\f085"; }
.fa-times::before { content: "\f00d"; }
.fa-times-circle::before { content: "\f057"; }
.fa-check-circle::before { content: "\f058"; }
.fa-info-circle::before { content: "\f05a"; }
.fa-exclamation-triangle::before { content: "\f071"; }
.fa-warning::before { content: "\f071"; }
.fa-history::before { content: "\f1da"; }
.fa-undo::before { content: "\f0e2"; }
.fa-external-link-alt::before { content: "\f08e"; }
.fa-sign-out-alt::before { content: "\f2f5"; }
.fa-sign-in-alt::before { content: "\f2f6"; }
.fa-trash-alt::before { content: "\f2ed"; }
.fa-mobile::before { content: "\f3cd"; }
.fa-plus::before { content: "\f067"; }
.fa-minus::before { content: "\f068"; }
.fa-home::before { content: "\f015"; }
.fa-question-circle::before { content: "\f059"; }
.fa-navicon::before { content: "\f0c9"; }
