/* 
 * DSGVO-konforme lokale Font-Lösung
 * Ersetzt Google Fonts und FontAwesome
 * Keine externen Server-Aufrufe
 */

/* System-Fonts statt Inter (DSGVO-konform) */
body,
.inter-font {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Icon-Ersetzungen mit Unicode-Zeichen (keine externen Fonts) */
.fa,
.fas,
.far,
.fab {
  font-family: inherit;
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
}

/* Wichtige Icon-Ersetzungen */
.fa-eye::before {
  content: "👁";
}

.fa-eye-slash::before {
  content: "🚫";
}

.fa-lock::before {
  content: "🔒";
}

.fa-unlock::before {
  content: "🔓";
}

.fa-user::before {
  content: "👤";
}

.fa-users::before {
  content: "👥";
}

.fa-search::before {
  content: "🔍";
}

.fa-magnifying-glass::before {
  content: "🔍";
}

.fa-home::before,
.fa-house::before {
  content: "🏠";
}

.fa-settings::before,
.fa-cog::before,
.fa-gear::before {
  content: "⚙️";
}

.fa-check::before {
  content: "✓";
}

.fa-times::before,
.fa-xmark::before {
  content: "✕";
}

.fa-plus::before {
  content: "+";
}

.fa-minus::before {
  content: "−";
}

.fa-edit::before,
.fa-pen::before {
  content: "✏️";
}

.fa-trash::before {
  content: "🗑️";
}

.fa-save::before {
  content: "💾";
}

.fa-download::before {
  content: "⬇️";
}

.fa-upload::before {
  content: "⬆️";
}

.fa-arrow-left::before {
  content: "←";
}

.fa-arrow-right::before {
  content: "→";
}

.fa-arrow-up::before {
  content: "↑";
}

.fa-arrow-down::before {
  content: "↓";
}

.fa-calendar::before {
  content: "📅";
}

.fa-clock::before {
  content: "🕐";
}

.fa-bell::before {
  content: "🔔";
}

.fa-envelope::before {
  content: "✉️";
}

.fa-phone::before {
  content: "📞";
}

.fa-info::before,
.fa-info-circle::before {
  content: "ℹ️";
}

.fa-warning::before,
.fa-exclamation-triangle::before {
  content: "⚠️";
}

.fa-shield::before {
  content: "🛡️";
}

.fa-shield-alt::before {
  content: "🛡️";
}

.fa-key::before {
  content: "🔑";
}

.fa-sync::before,
.fa-refresh::before {
  content: "🔄";
}

.fa-bars::before {
  content: "☰";
}

.fa-ellipsis::before {
  content: "⋯";
}

.fa-heart::before {
  content: "❤️";
}

.fa-star::before {
  content: "⭐";
}

.fa-bookmark::before {
  content: "🔖";
}

.fa-share::before {
  content: "📤";
}

.fa-link::before {
  content: "🔗";
}

.fa-external-link::before {
  content: "↗️";
}

.fa-print::before {
  content: "🖨️";
}

.fa-file::before {
  content: "📄";
}

.fa-folder::before {
  content: "📁";
}

.fa-image::before {
  content: "🖼️";
}

.fa-video::before {
  content: "🎥";
}

.fa-music::before {
  content: "🎵";
}

.fa-comment::before {
  content: "💬";
}

.fa-comments::before {
  content: "💬";
}

/* Admin-spezifische Icons */
.fa-dashboard::before,
.fa-tachometer::before {
  content: "📊";
}

.fa-chart-bar::before {
  content: "📊";
}

.fa-chart-line::before {
  content: "📈";
}

.fa-database::before {
  content: "🗄️";
}

.fa-server::before {
  content: "🖥️";
}

.fa-code::before {
  content: "💻";
}

.fa-bug::before {
  content: "🐛";
}

.fa-wrench::before {
  content: "🔧";
}

.fa-tools::before {
  content: "🛠️";
}

/* 2FA Icons */
.fa-qrcode::before {
  content: "📱";
}

.fa-mobile::before {
  content: "📱";
}

.fa-smartphone::before {
  content: "📱";
}

/* Status Icons */
.fa-check-circle::before,
.fa-circle-check::before {
  content: "✅";
}

.fa-times-circle::before,
.fa-circle-xmark::before {
  content: "❌";
}

.fa-exclamation-circle::before,
.fa-circle-exclamation::before {
  content: "⚠️";
}

/* Missing Icons */
.fa-leaf::before {
  content: "🍃";
}

.fa-seedling::before {
  content: "🌱";
}

.fa-tint::before {
  content: "💧";
}

.fa-lightbulb::before {
  content: "💡";
}

.fa-apple::before {
  content: "";
}

.fa-play::before {
  content: "▶";
}

.fa-cube::before {
  content: "📦";
}

.fa-mobile-alt::before {
  content: "📱";
}

.fa-shield-check::before {
  content: "🛡️";
}

/* Social Icons */
.fa-instagram::before {
  content: "📸";
}

.fa-twitter::before {
  content: "🐦";
}

.fa-youtube::before {
  content: "▶️";
}

.fa-discord::before {
  content: "💬";
}

/* Pfeile und Navigation */
.fa-chevron-left::before {
  content: "‹";
}

.fa-chevron-right::before {
  content: "›";
}

.fa-chevron-up::before {
  content: "‹";
  transform: rotate(90deg);
}

.fa-chevron-down::before {
  content: "›";
  transform: rotate(90deg);
}

/* Größen-Klassen */
.fa-xs {
  font-size: 0.75em;
}

.fa-sm {
  font-size: 0.875em;
}

.fa-lg {
  font-size: 1.25em;
}

.fa-xl {
  font-size: 1.5em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

/* Margin-Klassen */
.fa {
  margin-right: 0.3em;
}

.fa-fw {
  width: 1.25em;
  text-align: center;
}

/* Hover-Effekte */
.fa:hover {
  opacity: 0.8;
  transition: opacity 0.2s ease;
}

/* 
 * Fallback für nicht definierte Icons
 * Zeigt ein neutrales Symbol
 */
[class*="fa-"]:not([class*="fa-"]):before {
  content: "•";
  color: #6b7280;
}

/* 
 * Dark Mode Unterstützung
 */
@media (prefers-color-scheme: dark) {
  [class*="fa-"] {
    filter: brightness(0.9);
  }
}

/* 
 * Performance-Optimierung
 */
.fa,
.fas,
.far,
.fab {
  will-change: transform;
  backface-visibility: hidden;
}