/* FontAwesome subset with only used icons - saves ~150KB */
@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/webfonts/fa-solid-900.woff2") format("woff2");
}

@font-face {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/webfonts/fa-brands-400.woff2") format("woff2");
}

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

.fas {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.fab {
  font-family: "Font Awesome 5 Brands";
  font-weight: 400;
}

/* Only the icons you actually use */
.fa-linkedin:before { content: "\f08c"; }
.fa-times:before { content: "\f00d"; }
.fa-chevron-left:before { content: "\f053"; }
.fa-chevron-right:before { content: "\f054"; }
.fa-chevron-up:before { content: "\f077"; }
.fa-chevron-down:before { content: "\f078"; }
.fa-arrow-left:before { content: "\f060"; }
.fa-arrow-right:before { content: "\f061"; }
.fa-hand-point-up:before { content: "\f0a6"; }
.fa-mouse-pointer:before { content: "\f245"; }
.fa-skull:before { content: "\f54c"; }
.fa-heart:before { content: "\f004"; }
.fa-heart-broken:before { content: "\f7a9"; }
.fa-redo:before { content: "\f01e"; }
.fa-robot:before { content: "\f544"; }
.fa-check:before { content: "\f00c"; }
.fa-paper-plane:before { content: "\f1d8"; }
.fa-map-pin:before { content: "\f276"; }
.fa-book:before { content: "\f02d"; }
.fa-music:before { content: "\f001"; }
.fa-plus:before { content: "\f067"; }
.fa-sitemap:before { content: "\f0e8"; }
.fa-brain:before { content: "\f5dc"; }
.fa-universal-access:before { content: "\f29a"; }
.fa-eye:before { content: "\f06e"; }
.fa-eye-slash:before { content: "\f070"; }

/* Utility classes */
.btn-icon {
  margin-right: 0.5rem;
}

.swipe-icon {
  font-size: 1.5rem;
  margin: 0 0.5rem;
}

.dismiss-icon {
  color: #ef4444;
}

.favorite-icon {
  color: #f59e0b;
}

.success-icon {
  color: #10b981;
}

.pulsing {
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}