/* =================================================
   LOCAL FONT AWESOME - V6.4.0
   =================================================
   Lokale Einbindung von Font Awesome 6.4.0.
   Keine externen Requests zu CDNJS oder Cloudflare mehr.
   ================================================= */

/* Font Awesome - Solid (900) */
@font-face {
    font-family: 'Font Awesome 6 Free';
    src: url('../fonts/fontawesome/webfonts/fa-solid-900.woff2') format('woff2'),
         url('../fonts/fontawesome/webfonts/fa-solid-900.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Font Awesome - Regular (400) */
@font-face {
    font-family: 'Font Awesome 6 Free';
    src: url('../fonts/fontawesome/webfonts/fa-regular-400.woff2') format('woff2'),
         url('../fonts/fontawesome/webfonts/fa-regular-400.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* Font Awesome - Brands (400) - Optional, falls benötigt */
@font-face {
    font-family: 'Font Awesome 6 Brands';
    src: url('../fonts/fontawesome/webfonts/fa-brands-400.woff2') format('woff2'),
         url('../fonts/fontawesome/webfonts/fa-brands-400.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

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

.fas {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
}

.far {
    font-family: 'Font Awesome 6 Free';
    font-weight: 400;
}

.fab {
    font-family: 'Font Awesome 6 Brands';
    font-weight: 400;
}

/* =================================================
   ICON UNICODE MAPPINGS (Solid Icons)
   ================================================= */
/* Die wichtigsten Icons, die im Projekt verwendet werden */

/* Edit & Actions */
.fa-edit:before { content: "\f044"; }
.fa-pencil:before { content: "\f303"; }
.fa-eye:before { content: "\f06e"; }
.fa-key:before { content: "\f084"; }
.fa-user-edit:before { content: "\f4ff"; }
.fa-trash:before { content: "\f2ed"; }
.fa-save:before { content: "\f0c7"; }
.fa-times:before { content: "\f00d"; }
.fa-check:before { content: "\f00c"; }
.fa-plus:before { content: "\f067"; }
.fa-minus:before { content: "\f068"; }

/* Devices & Tech */
.fa-laptop:before { content: "\f109"; }
.fa-desktop:before { content: "\f108"; }
.fa-mobile:before { content: "\f3ce"; }
.fa-server:before { content: "\f233"; }
.fa-cog:before { content: "\f013"; }
.fa-cogs:before { content: "\f085"; }

/* User & Account */
.fa-user:before { content: "\f007"; }
.fa-users:before { content: "\f0c0"; }
.fa-user-plus:before { content: "\f234"; }
.fa-user-minus:before { content: "\f503"; }
.fa-user-shield:before { content: "\f505"; }
.fa-user-circle:before { content: "\f4bd"; }

/* Navigation & UI */
.fa-bars:before { content: "\f0c9"; }
.fa-home:before { content: "\f015"; }
.fa-arrow-left:before { content: "\f060"; }
.fa-arrow-right:before { content: "\f061"; }
.fa-arrow-up:before { content: "\f062"; }
.fa-arrow-down:before { content: "\f063"; }

/* Status & Feedback */
.fa-spinner:before { content: "\f110"; }
.fa-exclamation-triangle:before { content: "\f071"; }
.fa-exclamation-circle:before { content: "\f06a"; }
.fa-info-circle:before { content: "\f05a"; }
.fa-check-circle:before { content: "\f058"; }
.fa-times-circle:before { content: "\f057"; }
.fa-question-circle:before { content: "\f059"; }
.fa-inbox:before { content: "\f01c"; }

/* Communication */
.fa-envelope:before { content: "\f0e0"; }
.fa-phone:before { content: "\f095"; }
.fa-comment:before { content: "\f075"; }
.fa-comments:before { content: "\f086"; }

/* Files & Downloads */
.fa-download:before { content: "\f019"; }
.fa-upload:before { content: "\f093"; }
.fa-file:before { content: "\f15b"; }
.fa-file-alt:before { content: "\f15c"; }
.fa-folder:before { content: "\f07b"; }

/* Security */
.fa-lock:before { content: "\f023"; }
.fa-unlock:before { content: "\f09c"; }
.fa-shield-alt:before { content: "\f3ed"; }
.fa-key:before { content: "\f084"; }

/* Tickets & Lists */
.fa-ticket-alt:before { content: "\f145"; } /* Alias for fa-ticket */
.fa-ticket:before { content: "\f145"; }
.fa-clipboard-list:before { content: "\f46d"; }
.fa-clipboard:before { content: "\f328"; }
.fa-list:before { content: "\f03a"; }
.fa-list-alt:before { content: "\f022"; }

/* Time & History */
.fa-clock:before { content: "\f017"; }
.fa-history:before { content: "\f1da"; }
.fa-calendar:before { content: "\f133"; }
.fa-calendar-alt:before { content: "\f073"; }
.fa-calendar-day:before { content: "\f783"; }

/* Database & Storage */
.fa-database:before { content: "\f1c0"; }
.fa-hdd:before { content: "\f0a0"; }
.fa-cloud:before { content: "\f0c2"; }

/* Misc */
.fa-search:before { content: "\f002"; }
.fa-filter:before { content: "\f0b0"; }
.fa-sort:before { content: "\f0dc"; }
.fa-sort-up:before { content: "\f0de"; }
.fa-sort-down:before { content: "\f0dd"; }
.fa-ellipsis-v:before { content: "\f142"; }
.fa-ellipsis-h:before { content: "\f141"; }
.fa-sign-out-alt:before { content: "\f2f5"; }
.fa-sign-in-alt:before { content: "\f2f6"; }

/* Education & Learning */
.fa-graduation-cap:before { content: "\f19d"; }
.fa-book:before { content: "\f02d"; }
.fa-book-open:before { content: "\f518"; }

/* Files & Documents */
.fa-file-csv:before { content: "\f6dd"; }
.fa-file-code:before { content: "\f1c9"; }
.fa-file-pdf:before { content: "\f1c1"; }
.fa-file-image:before { content: "\f1c5"; }

/* Actions & Undo */
.fa-undo:before { content: "\f0e2"; }
.fa-redo:before { content: "\f01e"; }
.fa-sync:before { content: "\f021"; }
.fa-sync-alt:before { content: "\f2f1"; }

/* Folders */
.fa-folder-open:before { content: "\f07c"; }
.fa-folder:before { content: "\f07b"; }

/* Target & Window */
.fa-crosshairs:before { content: "\f05b"; }
.fa-bullseye:before { content: "\f140"; }
.fa-window-restore:before { content: "\f2d2"; }

/* Keyboard & Input */
.fa-keyboard:before { content: "\f11c"; }
.fa-bolt:before { content: "\f0e7"; }

/* Exchange & Transfer */
.fa-exchange-alt:before { content: "\f362"; }
.fa-file-export:before { content: "\f56e"; }
.fa-file-import:before { content: "\f56f"; }

/* Layer & Group */
.fa-layer-group:before { content: "\f5fd"; }

/* License & Premium */
.fa-seedling:before { content: "\f4d8"; }
.fa-infinity:before { content: "\f534"; }
.fa-crown:before { content: "\f521"; }

/* =================================================
   MISSING ICONS - HOTFIX 2026-06-01
   ================================================= */

/* Status & Signals */
.fa-signal:before { content: "\f012"; }
.fa-chart-line:before { content: "\f201"; }
.fa-tachometer-alt:before { content: "\f3fd"; }
.fa-ban:before { content: "\f05e"; }
.fa-circle:before { content: "\f111"; }
.fa-stop:before { content: "\f04d"; }
.fa-stop-circle:before { content: "\f28d"; }
.fa-play:before { content: "\f04b"; }
.fa-flag:before { content: "\f024"; }
.fa-star:before { content: "\f005"; }

/* Chevrons & Navigation */
.fa-chevron-down:before { content: "\f078"; }
.fa-chevron-left:before { content: "\f053"; }
.fa-chevron-right:before { content: "\f054"; }

/* Actions & Checks */
.fa-check-double:before { content: "\f560"; }
.fa-copy:before { content: "\f0c5"; }
.fa-external-link-alt:before { content: "\f35d"; }
.fa-eye-slash:before { content: "\f070"; }
.fa-tag:before { content: "\f02b"; }

/* Code & Development */
.fa-code-branch:before { content: "\f126"; }
.fa-microchip:before { content: "\f2db"; }
.fa-wrench:before { content: "\f0ad"; }

/* Communication & Social */
.fa-comment-slash:before { content: "\f4b3"; }
.fa-discord:before { content: "\f392"; }
.fa-paper-plane:before { content: "\f1d8"; }
.fa-paperclip:before { content: "\f0c6"; }

/* Files & Archives */
.fa-file-archive:before { content: "\f1c6"; }

/* UI & Windows */
.fa-window-maximize:before { content: "\f2d0"; }
.fa-lightbulb:before { content: "\f0eb"; }
.fa-life-ring:before { content: "\f1cd"; }

/* Users & Security */
.fa-user-check:before { content: "\f4fc"; }
.fa-user-slash:before { content: "\f506"; }
.fa-skull-crossbones:before { content: "\f714"; }

/* Special Effects */
.fa-sparkles:before { content: "\f890"; }
.fa-rocket:before { content: "\f135"; }

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

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