/*!
 * Font Awesome Free 6.6.0
 * License - https://fontawesome.com/license/free
 * 本地字型版本 - 僅包含專案所需圖示
 */

/* Font Awesome 6 - Font Face Definitions */
:root {
  --fa-style-family-classic: "Font Awesome 6 Free";
  --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
  --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
  --fa-style-family-brands: "Font Awesome 6 Brands";
  --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
}

@font-face {
  font-family: "Font Awesome 6 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("/fontawesome/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("/fontawesome/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("/fontawesome/fa-brands-400.woff2") format("woff2");
}

/* Base Styles */
.fa,
.fas,
.far,
.fab,
.fa-solid,
.fa-regular,
.fa-brands {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
}

/* Ensure Tailwind's .hidden overrides FA's display: inline-block */
.fa.hidden,
.fas.hidden,
.far.hidden,
.fab.hidden {
  display: none;
}

.fa,
.fas,
.fa-solid {
  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;
}

/* Sizing */
.fa-xs { font-size: 0.75em; }
.fa-sm { font-size: 0.875em; }
.fa-lg { font-size: 1.25em; line-height: 0.05em; vertical-align: -0.075em; }
.fa-xl { font-size: 1.5em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }

/* Fixed Width */
.fa-fw {
  text-align: center;
  width: 1.25em;
}

/* Spinning */
.fa-spin {
  animation: fa-spin 2s infinite linear;
}

@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* ===== Icon Definitions ===== */
/* Solid Icons (fas) */
.fa-allergies::before { content: "\f461"; }
.fa-ambulance::before { content: "\f0f9"; }
.fa-apple-alt::before { content: "\f5d1"; }
.fa-arrow-left::before { content: "\f060"; }
.fa-arrow-right::before { content: "\f061"; }
.fa-award::before { content: "\f559"; }
.fa-baby::before { content: "\f77c"; }
.fa-baby-carriage::before { content: "\f77d"; }
.fa-ban::before { content: "\f05e"; }
.fa-band-aid::before { content: "\f462"; }
.fa-bars::before { content: "\f0c9"; }
.fa-bed::before { content: "\f236"; }
.fa-bolt::before { content: "\f0e7"; }
.fa-bone::before { content: "\f5d7"; }
.fa-book-medical::before { content: "\f7e6"; }
.fa-bookmark::before { content: "\f02e"; }
.fa-box::before { content: "\f466"; }
.fa-box-open::before { content: "\f49e"; }
.fa-brain::before { content: "\f5dc"; }
.fa-briefcase::before { content: "\f0b1"; }
.fa-bullhorn::before { content: "\f0a1"; }
.fa-bullseye::before { content: "\f140"; }
.fa-bus::before { content: "\f207"; }
.fa-calendar::before { content: "\f133"; }
.fa-calendar-alt::before { content: "\f073"; }
.fa-calendar-check::before { content: "\f274"; }
.fa-calendar-plus::before { content: "\f271"; }
.fa-car::before { content: "\f1b9"; }
.fa-car-crash::before { content: "\f5e1"; }
.fa-certificate::before { content: "\f0a3"; }
.fa-chart-line::before { content: "\f201"; }
.fa-check::before { content: "\f00c"; }
.fa-check-circle::before { content: "\f058"; }
.fa-chevron-down::before { content: "\f078"; }
.fa-chevron-left::before { content: "\f053"; }
.fa-chevron-right::before { content: "\f054"; }
.fa-chevron-up::before { content: "\f077"; }
.fa-child::before { content: "\f1ae"; }
.fa-circle::before { content: "\f111"; }
.fa-clinic-medical::before { content: "\f7f2"; }
.fa-clipboard-check::before { content: "\f46c"; }
.fa-clipboard-list::before { content: "\f46d"; }
.fa-clock::before { content: "\f017"; }
.fa-cloud-sun::before { content: "\f6c4"; }
.fa-comments::before { content: "\f086"; }
.fa-compress::before { content: "\f066"; }
.fa-cut::before { content: "\f0c4"; }
.fa-desktop::before { content: "\f108"; }
.fa-digital-tachograph::before { content: "\f566"; }
.fa-dna::before { content: "\f471"; }
.fa-ear::before { content: "\f5f0"; } /* Note: using ear-listen as fallback */
.fa-envelope::before { content: "\f0e0"; }
.fa-envelope-open-text::before { content: "\f658"; }
.fa-exclamation-triangle::before { content: "\f071"; }
.fa-eye::before { content: "\f06e"; }
.fa-eye-dropper::before { content: "\f1fb"; }
.fa-fax::before { content: "\f1ac"; }
.fa-female::before { content: "\f182"; }
.fa-file-alt::before { content: "\f15c"; }
.fa-file-contract::before { content: "\f56c"; }
.fa-file-medical::before { content: "\f477"; }
.fa-filter::before { content: "\f0b0"; }
.fa-fire::before { content: "\f06d"; }
.fa-flask::before { content: "\f0c3"; }
.fa-folder::before { content: "\f07b"; }
.fa-glasses::before { content: "\f530"; }
.fa-graduation-cap::before { content: "\f19d"; }
.fa-h-square::before { content: "\f0fd"; }
.fa-hand-dots::before { content: "\f461"; }
.fa-hand-holding-heart::before { content: "\f4be"; }
.fa-hand-holding-medical::before { content: "\e05c"; }
.fa-hand-paper::before { content: "\f256"; }
.fa-hands-helping::before { content: "\f4c4"; }
.fa-handshake::before { content: "\f2b5"; }
.fa-head-side-mask::before { content: "\e063"; }
.fa-head-side-virus::before { content: "\e064"; }
.fa-headset::before { content: "\f590"; }
.fa-heart::before { content: "\f004"; }
.fa-heart-broken::before { content: "\f7a9"; }
.fa-heart-pulse::before { content: "\f21e"; }
.fa-heartbeat::before { content: "\f21e"; }
.fa-history::before { content: "\f1da"; }
.fa-home::before { content: "\f015"; }
.fa-hospital::before { content: "\f0f8"; }
.fa-hospital-alt::before { content: "\f47d"; }
.fa-hospital-symbol::before { content: "\f47e"; }
.fa-hospital-user::before { content: "\f80d"; }
.fa-house-medical::before { content: "\e3b2"; }
.fa-images::before { content: "\f302"; }
.fa-info-circle::before { content: "\f05a"; }
.fa-kidneys::before { content: "\f5fb"; } /* Note: custom icon */
.fa-leaf::before { content: "\f06c"; }
.fa-lightbulb::before { content: "\f0eb"; }
.fa-link::before { content: "\f0c1"; }
.fa-list::before { content: "\f03a"; }
.fa-list-ol::before { content: "\f0cb"; }
.fa-liver::before { content: "\f5fc"; } /* Note: custom icon */
.fa-lungs::before { content: "\f604"; }
.fa-lungs-virus::before { content: "\e067"; }
.fa-magic::before { content: "\f0d0"; }
.fa-male::before { content: "\f183"; }
.fa-map-marked-alt::before { content: "\f5a0"; }
.fa-map-marker-alt::before { content: "\f3c5"; }
.fa-medkit::before { content: "\f0fa"; }
.fa-microscope::before { content: "\f610"; }
.fa-money-bill-wave::before { content: "\f53a"; }
.fa-moon::before { content: "\f186"; }
.fa-newspaper::before { content: "\f1ea"; }
.fa-notes-medical::before { content: "\f481"; }
.fa-phone::before { content: "\f095"; }
.fa-phone-alt::before { content: "\f879"; }
.fa-pills::before { content: "\f484"; }
.fa-pause::before { content: "\f04c"; }
.fa-play::before { content: "\f04b"; }
.fa-plus::before { content: "\f067"; }
.fa-plus-square::before { content: "\f0fe"; }
.fa-prescription-bottle-medical::before { content: "\f486"; }
.fa-procedures::before { content: "\f487"; }
.fa-project-diagram::before { content: "\f542"; }
.fa-question-circle::before { content: "\f059"; }
.fa-quote-left::before { content: "\f10d"; }
.fa-receipt::before { content: "\f543"; }
.fa-redo::before { content: "\f01e"; }
.fa-ribbon::before { content: "\f4d6"; }
.fa-route::before { content: "\f4d7"; }
.fa-running::before { content: "\f70c"; }
.fa-search::before { content: "\f002"; }
.fa-shield-alt::before { content: "\f3ed"; }
.fa-shield-heart::before { content: "\e574"; }
.fa-skull-crossbones::before { content: "\f714"; }
.fa-smile::before { content: "\f118"; }
.fa-smoking-ban::before { content: "\f54d"; }
.fa-spa::before { content: "\f5bb"; }
.fa-spine::before { content: "\f5dc"; } /* Using brain as fallback */
.fa-star::before { content: "\f005"; }
.fa-stethoscope::before { content: "\f0f1"; }
.fa-stomach::before { content: "\f623"; } /* Note: custom icon */
.fa-subway::before { content: "\f239"; }
.fa-sun::before { content: "\f185"; }
.fa-sync-alt::before { content: "\f2f1"; }
.fa-syringe::before { content: "\f48e"; }
.fa-teeth::before { content: "\f62e"; }
.fa-th-large::before { content: "\f009"; }
.fa-times::before { content: "\f00d"; }
.fa-tint::before { content: "\f043"; }
.fa-tooth::before { content: "\f5c9"; }
.fa-umbrella-beach::before { content: "\f5ca"; }
.fa-user::before { content: "\f007"; }
.fa-user-md::before { content: "\f0f0"; }
.fa-user-nurse::before { content: "\f82f"; }
.fa-user-plus::before { content: "\f234"; }
.fa-user-shield::before { content: "\f505"; }
.fa-users::before { content: "\f0c0"; }
.fa-users-cog::before { content: "\f509"; }
.fa-utensils::before { content: "\f2e7"; }
.fa-venus::before { content: "\f221"; }
.fa-video::before { content: "\f03d"; }
.fa-virus::before { content: "\e074"; }
.fa-walking::before { content: "\f554"; }
.fa-wave-square::before { content: "\f83e"; }
.fa-wheelchair::before { content: "\f193"; }
.fa-wind::before { content: "\f72e"; }
.fa-rss::before { content: "\f09e"; }
.fa-x-ray::before { content: "\f497"; }

/* Brand Icons (fab) */
.fa-facebook-f::before { content: "\f39e"; }
.fa-instagram::before { content: "\f16d"; }
.fa-line::before { content: "\f3c0"; }
.fa-linkedin-in::before { content: "\f0e1"; }
.fa-twitter::before { content: "\f099"; }
.fa-youtube::before { content: "\f167"; }
.fa-gem::before { content: "\f3a5"; }
.fa-docker::before { content: "\f395"; }
.fa-diamond::before { content: "\f219"; }
