﻿/* Fallback fonts */
@font-face {
  font-family: 'Inter-Fallback';
  src: local('Inter'), local('Segoe UI'), local('Roboto'), local('Helvetica Neue'), local('Arial');
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
}

body, .btn, .form-control, .form-input, .card, .badge {
  font-family: 'Inter', 'Inter-Fallback', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', sans-serif !important;
}

/* ============================================================
   ICON SYSTEM — Unicode fallbacks for Font Awesome icons
   Font Awesome is NOT installed. These unicode mappings are
   the primary icon rendering system for the entire app.
   NOTE: !important is required to override Tailwind preflight
   which resets ::before content via --tw-content variable.
   ============================================================ */

.fa, .fas, .far, .fab {
  font-family: 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', 'Twemoji Mozilla', sans-serif;
  font-weight: normal;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  display: inline-block;
  -webkit-font-smoothing: antialiased;
}

/* Navigation & UI */
.fa-arrow-down::before          { content: "\2193" !important; }
.fa-arrow-left::before          { content: "\2190" !important; }
.fa-arrow-right::before         { content: "\2192" !important; }
.fa-arrow-up::before            { content: "\2191" !important; }
.fa-bars::before                { content: "\2630" !important; }
.fa-bell::before                { content: "\1F514" !important; }
.fa-bell-slash::before          { content: "\1F515" !important; }
.fa-bolt::before                { content: "\26A1" !important; }
.fa-bookmark::before            { content: "\1F516" !important; }
.fa-check::before               { content: "\2713" !important; }
.fa-check-circle::before        { content: "\2713" !important; }
.fa-check-double::before        { content: "\2713\2713" !important; }
.fa-chevron-down::before        { content: "\25BE" !important; }
.fa-chevron-left::before        { content: "\2039" !important; }
.fa-chevron-right::before       { content: "\203A" !important; }
.fa-chevron-up::before          { content: "\25B4" !important; }
.fa-cog::before                 { content: "\2699" !important; }
.fa-copy::before                { content: "\29C9" !important; }
.fa-download::before            { content: "\2193" !important; }
.fa-edit::before                { content: "\270F" !important; }
.fa-ellipsis-h::before          { content: "\00B7\00B7\00B7" !important; }
.fa-external-link-alt::before   { content: "\2197" !important; }
.fa-eye::before                 { content: "\1F441" !important; }
.fa-eye-slash::before           { content: "\1F6AB" !important; }
.fa-filter::before              { content: "\25BD" !important; }
.fa-flag::before                { content: "\2691" !important; }
.fa-hashtag::before             { content: "#" !important; }
.fa-history::before             { content: "\21BA" !important; }
.fa-home::before                { content: "\2302" !important; }
.fa-info-circle::before         { content: "\2139" !important; }
.fa-key::before                 { content: "\1F511" !important; }
.fa-link::before                { content: "\1F517" !important; }
.fa-list::before                { content: "\2261" !important; }
.fa-list-ol::before             { content: "\2261" !important; }
.fa-list-ul::before             { content: "\2261" !important; }
.fa-lock::before                { content: "\1F512" !important; }
.fa-magic::before               { content: "\2728" !important; }
.fa-minus::before               { content: "\2212" !important; }
.fa-moon::before                { content: "\1F319" !important; }
.fa-paper-plane::before         { content: "\27A4" !important; }
.fa-paperclip::before           { content: "\1F4CE" !important; }
.fa-play-circle::before         { content: "\25B6" !important; }
.fa-plug::before                { content: "\1F50C" !important; }
.fa-plus::before                { content: "+" !important; }
.fa-plus-circle::before         { content: "+" !important; }
.fa-print::before               { content: "\1F5A8" !important; }
.fa-question-circle::before     { content: "?" !important; }
.fa-redo::before                { content: "\21BB" !important; }
.fa-refresh::before             { content: "\21BB" !important; }
.fa-save::before                { content: "\1F4BE" !important; }
.fa-search::before              { content: "\1F50D" !important; }
.fa-shield-alt::before          { content: "\1F6E1" !important; }
.fa-sign-in-alt::before         { content: "\2192" !important; }
.fa-sign-out-alt::before        { content: "\2190" !important; }
.fa-sitemap::before             { content: "\229E" !important; }
.fa-sliders-h::before           { content: "\2699" !important; }
.fa-spinner::before             { content: "\27F3" !important; }
.fa-star::before                { content: "\2605" !important; }
.fa-stop-circle::before         { content: "\23F9" !important; }
.fa-stream::before              { content: "\2261" !important; }
.fa-sun::before                 { content: "\2600" !important; }
.fa-sync::before                { content: "\21BB" !important; }
.fa-sync-alt::before            { content: "\21BB" !important; }
.fa-table::before               { content: "\229E" !important; }
.fa-tachometer-alt::before      { content: "\25C9" !important; }
.fa-tag::before                 { content: "\1F3F7" !important; }
.fa-tags::before                { content: "\1F3F7" !important; }
.fa-times::before               { content: "\00D7" !important; }
.fa-times-circle::before        { content: "\00D7" !important; }
.fa-tools::before               { content: "\1F527" !important; }
.fa-trash::before               { content: "\1F5D1" !important; }
.fa-trash-alt::before           { content: "\1F5D1" !important; }
.fa-undo::before                { content: "\21A9" !important; }
.fa-upload::before              { content: "\2191" !important; }
.fa-wave-square::before         { content: "\223F" !important; }

/* People & Users */
.fa-child::before               { content: "\1F464" !important; }
.fa-chalkboard-teacher::before  { content: "\1F4CB" !important; }
.fa-graduation-cap::before      { content: "\1F393" !important; }
.fa-id-card::before             { content: "\1F4C7" !important; }
.fa-user::before                { content: "\1F464" !important; }
.fa-user-circle::before         { content: "\1F464" !important; }
.fa-user-edit::before           { content: "\270F" !important; }
.fa-user-friends::before        { content: "\1F465" !important; }
.fa-user-graduate::before       { content: "\1F393" !important; }
.fa-user-plus::before           { content: "\002B\1F464" !important; }
.fa-user-shield::before         { content: "\1F6E1" !important; }
.fa-user-tag::before            { content: "\1F464" !important; }
.fa-user-tie::before            { content: "\1F454" !important; }
.fa-users::before               { content: "\1F465" !important; }
.fa-users-cog::before           { content: "\1F465" !important; }

/* Finance & Money */
.fa-balance-scale::before       { content: "\2696" !important; }
.fa-balance-scale-right::before { content: "\2696" !important; }
.fa-calculator::before          { content: "\1F9EE" !important; }
.fa-coins::before               { content: "\1F4B0" !important; }
.fa-credit-card::before         { content: "\1F4B3" !important; }
.fa-dollar-sign::before         { content: "$" !important; }
.fa-file-invoice::before        { content: "\1F4C4" !important; }
.fa-file-invoice-dollar::before { content: "\1F4B0" !important; }
.fa-hand-holding-usd::before    { content: "\1F4B5" !important; }
.fa-landmark::before            { content: "\1F3DB" !important; }
.fa-money-bill::before          { content: "\1F4B5" !important; }
.fa-money-bill-transfer::before { content: "\1F4B8" !important; }
.fa-money-bill-wave::before     { content: "\1F4B5" !important; }
.fa-money-check-alt::before     { content: "\1F4B3" !important; }
.fa-percentage::before          { content: "%" !important; }
.fa-receipt::before             { content: "\1F9FE" !important; }
.fa-university::before          { content: "\1F3DB" !important; }
.fa-wallet::before              { content: "\1F45B" !important; }

/* Documents & Files */
.fa-book::before                { content: "\1F4DA" !important; }
.fa-book-open::before           { content: "\1F4D6" !important; }
.fa-clipboard-check::before     { content: "\1F4CB" !important; }
.fa-clipboard-list::before      { content: "\1F4CB" !important; }
.fa-file-alt::before            { content: "\1F4C4" !important; }
.fa-file-excel::before          { content: "\1F4CA" !important; }
.fa-file-pdf::before            { content: "\1F4C4" !important; }
.fa-file-upload::before         { content: "\2191" !important; }
.fa-folder-open::before         { content: "\1F4C2" !important; }
.fa-image::before               { content: "\1F5BC" !important; }
.fa-images::before              { content: "\1F5BC" !important; }

/* Charts & Analytics */
.fa-analytics::before           { content: "\1F4CA" !important; }
.fa-chart-bar::before           { content: "\1F4CA" !important; }
.fa-chart-line::before          { content: "\1F4C8" !important; }
.fa-chart-pie::before           { content: "\1F4CA" !important; }
.fa-layer-group::before         { content: "\229E" !important; }
.fa-trending-up::before         { content: "\1F4C8" !important; }

/* School & Education */
.fa-chalkboard::before          { content: "\1F4CB" !important; }
.fa-school::before              { content: "\1F3EB" !important; }

/* Shop & Inventory */
.fa-box::before                 { content: "\1F4E6" !important; }
.fa-box-open::before            { content: "\1F4E6" !important; }
.fa-boxes::before               { content: "\1F4E6" !important; }
.fa-shopping-bag::before        { content: "\1F6CD" !important; }
.fa-shopping-cart::before       { content: "\1F6D2" !important; }
.fa-store::before               { content: "\1F3EA" !important; }
.fa-store-slash::before         { content: "\1F3EA" !important; }

/* Communication */
.fa-comment-alt::before         { content: "\1F4AC" !important; }
.fa-envelope::before            { content: "\2709" !important; }
.fa-envelope-open-text::before  { content: "\2709" !important; }
.fa-inbox::before               { content: "\1F4E5" !important; }
.fa-mobile-alt::before          { content: "\1F4F1" !important; }
.fa-phone::before               { content: "\1F4DE" !important; }
.fa-sms::before                 { content: "\1F4AC" !important; }

/* Status & Alerts */
.fa-ban::before                 { content: "\1F6AB" !important; }
.fa-exclamation::before         { content: "!" !important; }
.fa-exclamation-circle::before  { content: "\26A0" !important; }
.fa-exclamation-triangle::before { content: "\26A0" !important; }
.fa-hourglass-half::before      { content: "\23F3" !important; }
.fa-infinity::before            { content: "\221E" !important; }
.fa-lightbulb::before           { content: "\1F4A1" !important; }

/* Transport */
.fa-bus::before                 { content: "\1F68C" !important; }
.fa-route::before               { content: "\1F5FA" !important; }
.fa-truck::before               { content: "\1F69A" !important; }

/* Calendar & Time */
.fa-calendar::before            { content: "\1F4C5" !important; }
.fa-calendar-alt::before        { content: "\1F4C5" !important; }
.fa-calendar-check::before      { content: "\1F4C5" !important; }
.fa-calendar-week::before       { content: "\1F4C5" !important; }
.fa-clock::before               { content: "\1F550" !important; }

/* Misc */
.fa-briefcase::before           { content: "\1F4BC" !important; }
.fa-camera::before              { content: "\1F4F7" !important; }
.fa-cloud-upload-alt::before    { content: "\2191" !important; }
.fa-desktop::before             { content: "\1F5A5" !important; }
.fa-door-open::before           { content: "\1F6AA" !important; }
.fa-exchange-alt::before        { content: "\21C4" !important; }
.fa-gem::before                 { content: "\1F48E" !important; }
.fa-globe::before               { content: "\1F310" !important; }
.fa-heart::before               { content: "\2665" !important; }
.fa-map-marker-alt::before      { content: "\1F4CD" !important; }
.fa-flask::before               { content: "\1F9EA" !important; }
.fa-dove::before                { content: "\1F54A" !important; }
.fa-futbol::before              { content: "\26BD" !important; }
.fa-hands-helping::before       { content: "\1F91D" !important; }
.fa-laptop::before              { content: "\1F4BB" !important; }

/* Social / Brands */
.fa-facebook::before            { content: "f" !important; }
.fa-instagram::before           { content: "\1F4F7" !important; }
.fa-twitter::before             { content: "\1D54F" !important; }
.fa-whatsapp::before            { content: "\1F4AC" !important; }
.fa-youtube::before             { content: "\25B6" !important; }

/* Icon sizing */
.fa-xs  { font-size: 0.75em; }
.fa-sm  { font-size: 0.875em; }
.fa-lg  { font-size: 1.33em; }
.fa-2x  { font-size: 2em; }
.fa-3x  { font-size: 3em; }

/* Button icon spacing */
.btn .fas, .btn .far, .btn .fab, .btn .fa { margin-right: 0.3rem; }
.btn-sm .fas, .btn-sm .far, .btn-sm .fab  { font-size: 0.8rem; }
