/* Smooth Entrance Animations */
.fade-in-up {
    animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;
    opacity: 0;
    transform: translateY(15px);
}

.delay-100 {
    animation-delay: 100ms;
}

.delay-200 {
    animation-delay: 200ms;
}

@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Input Focus Transitions */
.input-group:focus-within label {
    color: #2563eb;
}

.input-group:focus-within i.icon-left {
    color: #2563eb;
}

.input-wrapper:focus-within {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

/* Text Cycler Transition */
#changing-punchline {
    transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

.text-fade-out {
    opacity: 0;
    transform: translateY(-5px);
}

.text-fade-in {
    opacity: 1;
    transform: translateY(0);
}

/* Pure Light White & Blue Background */
.bg-light-cloud {
    background: linear-gradient(135deg, #ffffff 0%, #eff6ff 50%, #e0f2fe 100%);
}
