﻿/* ==========================================================================
   INTER (300, 400, 600)
   ========================================================================== */
@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/inter-300.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/inter-400.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/inter-600.woff2') format('woff2');
}

/* ==========================================================================
   JETBRAINS MONO (300, 400, 700)
   ========================================================================== */
@font-face {
    font-family: 'JetBrains Mono';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/jetbrains-mono-300.woff2') format('woff2');
}

@font-face {
    font-family: 'JetBrains Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/jetbrains-mono-400.woff2') format('woff2');
}

@font-face {
    font-family: 'JetBrains Mono';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/jetbrains-mono-700.woff2') format('woff2');
}

/* ==========================================================================
   ORBITRON (500, 900)
   ========================================================================== */
@font-face {
    font-family: 'Orbitron';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/orbitron-500.woff2') format('woff2');
}

@font-face {
    font-family: 'Orbitron';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('../fonts/orbitron-900.woff2') format('woff2');
}

/* ==========================================================================
   MATERIAL ICONS
   ========================================================================== */
@font-face {
    font-family: 'Material Icons';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/MaterialIcons-Regular.woff2') format('woff2');
}

/* ==========================================================================
   FONT AWESOME LOCAL (Essential Icons Only)
   ========================================================================== */
@font-face {
    font-family: 'Font Awesome 6 Free';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url('../fonts/fa-solid-900.woff2') format('woff2');
}

.fas, .fa-solid {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}

/* ==========================================================================
   ICON MAPPINGS (Comprehensive Studio List)
   ========================================================================== */

/* Viewport, Layout & Studio */
.fa-desktop::before {
    content: "\f108";
}

.fa-tablet-alt::before {
    content: "\f3fa";
}

.fa-mobile-alt::before {
    content: "\f3cd";
}

.fa-layer-group::before {
    content: "\f5fd";
}

.fa-th-large::before {
    content: "\f009";
}

.fa-external-link-alt::before {
    content: "\f08e";
}

/* Actions & Editor */
.fa-plus::before {
    content: "\f067";
}

.fa-plus-circle::before {
    content: "\f055";
}

.fa-folder-plus::before {
    content: "\f65e";
}

.fa-copy::before {
    content: "\f0c5";
}

.fa-paste::before {
    content: "\f0ea";
}

.fa-trash::before {
    content: "\f1f8";
}

.fa-trash-alt::before {
    content: "\f2ed";
}

.fa-check::before {
    content: "\f00c";
}

.fa-check-circle::before {
    content: "\f058";
}

.fa-times::before, .fa-xmark::before {
    content: "\f00d";
}

.fa-mouse-pointer::before {
    content: "\f245";
}

.fa-palette::before {
    content: "\f53f";
}

.fa-pen-to-square::before, .fa-edit::before {
    content: "\f044";
}

.fa-file-lines::before, .fa-file-alt::before {
    content: "\f15c";
}

.fa-file-word::before {
    content: "\f1c2";
}

.fa-save::before {
    content: "\f0c7";
}

.fa-search::before {
    content: "\f002";
}

.fa-play::before {
    content: "\f04b";
}

.fa-upload::before {
    content: "\f093";
}

/* Files, Tags & VCS (Version Control) */
.fa-tag::before {
    content: "\f02b";
}

.fa-tags::before {
    content: "\f02c";
}

.fa-camera::before {
    content: "\f030";
}

.fa-file-import::before {
    content: "\f56c";
}

.fa-cloud-upload-alt::before {
    content: "\f382";
}

.fa-history::before, .fa-clock-rotate-left::before {
    content: "\f1da";
}

.fa-clock::before {
    content: "\f017";
}

.fa-code-branch::before {
    content: "\f126";
}

.fa-sync-alt::before, .fa-rotate::before, .fa-sync::before {
    content: "\f2f1";
}

/* Logic, Data & Engineering */
.fa-sitemap::before {
    content: "\f0e8";
}

.fa-random::before {
    content: "\f074";
}

.fa-bolt::before {
    content: "\f0e7";
}

.fa-database::before {
    content: "\f1c0";
}

.fa-diagram-project::before, .fa-project-diagram::before {
    content: "\f542";
}

.fa-gears::before, .fa-cogs::before {
    content: "\f085";
}

.fa-gear::before, .fa-cog::before {
    content: "\f013";
}

.fa-microchip::before {
    content: "\f2db";
}

.fa-cubes::before {
    content: "\f1b3";
}

.fa-laptop-code::before {
    content: "\f5fc";
}

.fa-table::before {
    content: "\f0ce";
}

/* Users & Communication */
.fa-user::before {
    content: "\f007";
}

.fa-user-check::before {
    content: "\f4fc";
}

.fa-user-astronaut::before {
    content: "\f4fb";
}

.fa-envelope::before {
    content: "\f0e0";
}

.fa-envelope-open-text::before {
    content: "\f658";
}

.fa-comment-sms::before, .fa-sms::before {
    content: "\f7cd";
}

.fa-comments::before {
    content: "\f086";
}

.fa-paper-plane::before {
    content: "\f1d8";
}

.fa-handshake::before {
    content: "\f2b5";
}

/* AI, Status & Navigation */
.fa-magic::before {
    content: "\f0d0";
}

.fa-wand-magic-sparkles::before {
    content: "\e2ca";
}

.fa-brain::before {
    content: "\f5dc";
}

.fa-robot::before {
    content: "\f544";
}

.fa-circle-notch::before {
    content: "\f1ce";
}

.fa-spinner::before {
    content: "\f110";
}

.fa-exclamation-triangle::before {
    content: "\f071";
}

.fa-arrow-left::before {
    content: "\f060";
}

.fa-arrow-right::before {
    content: "\f061";
}

.fa-chevron-down::before {
    content: "\f078";
}

.fa-chevron-up::before {
    content: "\f077";
}

.fa-sliders-h::before, .fa-sliders::before {
    content: "\f1de";
}

.fa-heart-pulse::before, .fa-heartbeat::before {
    content: "\f21e";
}

.fa-thermometer-half::before {
    content: "\f2c9";
}

.fa-shield-alt::before, .fa-check-shield::before {
    content: "\f3ed";
}

.fa-fingerprint::before {
    content: "\f577";
}

.fa-snowflake::before {
    content: "\f2dc";
}

.fa-fire::before {
    content: "\f06d";
}

.fa-wind::before {
    content: "\f72e";
}

.fa-book::before {
    content: "\f02d";
}
/* ==========================================================================
   FONT AWESOME: MISSING MAPPINGS (Aus JS-Dateien extrahiert)
   ========================================================================== */

/* HTML Studio: Editor, Layout & Design Controls */
.fa-box::before {
    content: "\f466";
}

.fa-box-open::before {
    content: "\f49e";
}

.fa-cube::before {
    content: "\f1b2";
}

.fa-columns::before {
    content: "\f0db";
}

.fa-font::before {
    content: "\f031";
}

.fa-bold::before {
    content: "\f032";
}

.fa-italic::before {
    content: "\f033";
}

.fa-underline::before {
    content: "\f0cd";
}

.fa-heading::before {
    content: "\f1dc";
}

.fa-paint-roller::before {
    content: "\f5aa";
}

.fa-paint-brush::before {
    content: "\f1fc";
}

.fa-eraser::before {
    content: "\f12d";
}

.fa-clone::before {
    content: "\f24d";
}

.fa-lock::before {
    content: "\f023";
}

.fa-lock-open::before {
    content: "\f3c1";
}

.fa-eye::before {
    content: "\f06e";
}

.fa-eye-slash::before {
    content: "\f070";
}

.fa-star::before {
    content: "\f005";
}

/* BPMN & Navigation */
.fa-folder::before {
    content: "\f07b";
}

.fa-ghost::before {
    content: "\f6e2";
}

.fa-map-marker-alt::before {
    content: "\f3c5";
}

.fa-globe::before {
    content: "\f0ac";
}

.fa-users::before {
    content: "\f0c0";
}

.fa-list-check::before {
    content: "\f0ae";
}

.fa-caret-down::before {
    content: "\f0d7";
}

.fa-arrow-up::before {
    content: "\f062";
}

.fa-arrow-down::before {
    content: "\f063";
}

.fa-square::before {
    content: "\f0c8";
}

.fa-circle::before {
    content: "\f111";
}

.fa-gem::before, .fa-diamond::before {
    content: "\f3a5";
}

/* AI, Orchestrator & Code */
.fa-code::before {
    content: "\f121";
}

.fa-file-code::before {
    content: "\f1cb";
}

.fa-hammer::before {
    content: "\f6e3";
}

.fa-exclamation-circle::before {
    content: "\f06a";
}

/* Marketplace */
.fa-download::before {
    content: "\f019";
}

.fa-user-tie::before {
    content: "\f508";
}

/* ==========================================================================
   FONT AWESOME: UTILITIES, ANIMATIONS & FALLBACKS
   ========================================================================== */

/* Lade-Animationen (wichtig für Orchestrator, Marketplace & Speichern-Button) */
.fa-spin {
    animation: fa-spin 2s infinite linear;
}

@keyframes fa-spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(359deg);
    }
}

/* Fallback für .far (Regular): Mappt Regular-Icons auf die vorhandene Solid-Schrift um */
.far, .fas, .fa-solid, .fa-regular {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}
