body {
    font-family: 'Inter', sans-serif;
    background-color: #020617;
    color: #ffffff;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

.glass-header {
    background: rgba(2, 6, 23, 0.85);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.custom-scrollbar::-webkit-scrollbar {
    width: 4px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.02);
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(16, 185, 129, 0.2);
    border-radius: 10px;
}

/* Animations */
@keyframes shimmer {
  0% { transform: translateX(-150%); }
  50% { transform: translateX(150%); }
  100% { transform: translateX(150%); }
}

.animate-shimmer {
  animation: shimmer 3s infinite linear;
}

@keyframes slow-float {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-10px) scale(1.05); }
}

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

@keyframes banner-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-banner-scroll {
  animation: banner-scroll 35s linear infinite;
}

.banner-pause:hover .animate-banner-scroll {
  animation-play-state: paused;
}

/* Modal Transitions */
.modal-enter {
  animation: modal-slide-in 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes modal-slide-in {
  from { opacity: 0; transform: translateX(100%); }
  to { opacity: 1; transform: translateX(0); }
}

/* Placeholder Specific Animations */
@keyframes placeholder-scan {
  0% { top: 0%; opacity: 0; }
  50% { opacity: 0.5; }
  100% { top: 100%; opacity: 0; }
}