/* Industrial SaaS Style */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;900&display=swap');

/* Industrial SaaS Style */
body {
    background-color: #020617;
    font-family: 'Inter', sans-serif;
}

/* Suggestion Text - FORCE VISIBILITY */
#leaving-list li,
#going-list li {
    color: #0f172a !important;
    /* Navy Black */
}

/* Search Button Shimmer Animation */
#search-btn {
    position: relative;
    overflow: hidden;
    background: #2563eb;
}

#search-btn::after {
    content: "";
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    transform: rotate(45deg);
    animation: shimmer 4s infinite;
}

@keyframes shimmer {
    0% {
        transform: translateX(-100%) rotate(45deg);
    }

    100% {
        transform: translateX(100%) rotate(45deg);
    }
}

/* Modal Blur & Animation */
#flight-modal {
    transition: opacity 0.3s ease-out;
}

/* Placeholder Visibility Fix */
input::placeholder {
    color: #94a3b8 !important;
    opacity: 1;
    font-weight: 600;
}

/* Suggestion List (High Contrast) */
#leaving-list li,
#going-list li {
    color: #0f172a !important;
    background: white;
    padding: 15px;
    border-bottom: 1px solid #f1f5f9;
}

#leaving-list li:hover,
#going-list li:hover {
    background: #2563eb !important;
    color: white !important;
}

/* Animated CTA Shimmer */
.cta-button {
    position: relative;
    overflow: hidden;
}

.cta-button::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transform: rotate(45deg);
    animation: shimmer 3s infinite;
}

@keyframes shimmer {
    0% {
        transform: translateX(-100%) rotate(45deg);
    }

    100% {
        transform: translateX(100%) rotate(45deg);
    }
}

/* Error Shake */
.shake-error {
    animation: shake 0.4s ease-in-out;
    border-color: #ef4444 !important;
}

@keyframes shake {

    0%,
    100% {
        transform: translateX(0);
    }

    25% {
        transform: translateX(-5px);
    }

    75% {
        transform: translateX(5px);
    }
}

/* Infinite Slider Animations */
.animate-slide-left {
    animation: slideLeft 40s linear infinite;
    display: flex;
    width: max-content;
}

.animate-slide-right {
    animation: slideRight 40s linear infinite;
    display: flex;
    width: max-content;
}

@keyframes slideLeft {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

@keyframes slideRight {
    0% {
        transform: translateX(-50%);
    }

    100% {
        transform: translateX(0);
    }
}

.slider-row:hover .animate-slide-left,
.slider-row:hover .animate-slide-right {
    animation-play-state: paused;
}

/* Auto-Slide for Destinations Section */
.animate-slide-destinations {
    animation: slideDestinations 35s linear infinite;
    min-width: max-content;
}

@keyframes slideDestinations {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}

/* Text Shine Animation */
.animate-text-shine {
    background-size: 200% auto;
    animation: textShine 3s linear infinite;
}

@keyframes textShine {
    from {
        background-position: 0% center;
    }

    to {
        background-position: -200% center;
    }
}