@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

* {
  font-family: 'Cairo', 'Inter', system-ui, -apple-system, sans-serif;
}

html[dir="ltr"] * {
  font-family: 'Inter', 'Cairo', system-ui, -apple-system, sans-serif;
}

html[dir="ltr"] i.fas,
html[dir="ltr"] i.far,
html[dir="ltr"] i.fab,
html[dir="ltr"] .fas,
html[dir="ltr"] .far,
html[dir="ltr"] .fab,
html[dir="ltr"] .fa-solid,
html[dir="ltr"] .fa-regular,
html[dir="ltr"] .fa-brands {
  font-family: "Font Awesome 6 Free";
}
html[dir="ltr"] i.fab,
html[dir="ltr"] .fab,
html[dir="ltr"] .fa-brands {
  font-family: "Font Awesome 6 Brands";
  font-weight: 400;
}
html[dir="ltr"] i.fas,
html[dir="ltr"] .fas,
html[dir="ltr"] .fa-solid {
  font-weight: 900;
}

.hero-gradient {
  background: linear-gradient(135deg, #0b1f22 0%, #1D4C53 40%, #2d7a84 70%, #4fa0ab 100%);
}

.flight-card {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.flight-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(29,76,83,0.15);
}

.animate-float {
  animation: float 6s ease-in-out infinite;
}

@keyframes float {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
}

@keyframes slideUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-slide-up {
  animation: slideUp 0.6s ease-out forwards;
}

.animate-slide-up-delay-1 { animation-delay: 0.1s; opacity: 0; }
.animate-slide-up-delay-2 { animation-delay: 0.2s; opacity: 0; }
.animate-slide-up-delay-3 { animation-delay: 0.3s; opacity: 0; }
.animate-slide-up-delay-4 { animation-delay: 0.4s; opacity: 0; }

@keyframes pulse-glow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(29,76,83,0.4); }
  50% { box-shadow: 0 0 0 12px rgba(29,76,83,0); }
}

.pulse-glow { animation: pulse-glow 2s infinite; }

@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

.shimmer {
  background: linear-gradient(90deg, transparent 33%, rgba(255,255,255,0.3) 50%, transparent 66%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}

.glass {
  background: rgba(255,255,255,0.9);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(226,232,228,0.5);
}

.ticket-shape {
  background: white;
  border-radius: 16px;
  position: relative;
  overflow: hidden;
  border: 1px solid #E2E8E4;
}
.ticket-shape::before,
.ticket-shape::after {
  content: '';
  position: absolute;
  width: 24px;
  height: 24px;
  background: #f8faf9;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
  border: 1px solid #E2E8E4;
}
.ticket-shape::before { left: -12px; }
.ticket-shape::after { right: -12px; }

/* Gold accent button */
.btn-gold {
  background: linear-gradient(135deg, #C5A059 0%, #d5b878 50%, #C5A059 100%);
  color: #fff;
  font-weight: 700;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(197,160,89,0.3);
}
.btn-gold:hover {
  background: linear-gradient(135deg, #b08c3e 0%, #C5A059 50%, #b08c3e 100%);
  box-shadow: 0 6px 20px rgba(197,160,89,0.4);
  transform: translateY(-1px);
}

/* Dark teal header bar */
.teal-header {
  background: linear-gradient(135deg, #1D4C53 0%, #2d7a84 100%);
}

/* Custom scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f0f7f8; }
::-webkit-scrollbar-thumb { background: #7ebfc8; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #4fa0ab; }

/* Print styles */
@media print {
  .no-print { display: none !important; }
  body { background: white !important; }
}

/* Sidebar active indicator */
.sidebar-active {
  position: relative;
}
.sidebar-active::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 60%;
  background: #C5A059;
  border-radius: 0 3px 3px 0;
}
