body {
    background-color: #0D0D2B;
    color: #FFFFFF;
    font-family: 'Roboto', sans-serif;
}

h1, h2, h3 {
    font-family: 'Montserrat', sans-serif;
}

.result-card {
    @apply bg-white p-4 sm:p-6 rounded-lg border border-gray-200 shadow-md mt-4 transition-all duration-500 text-left;
}
.loader {
    border-top-color: #3671E9; /* Light Blue */
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite;
}

/* Gradient Text */
.text-gradient {
    background: linear-gradient(90deg, #3671E9, #FFFFFF);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

/* Gentle Animations */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.animate-fadeInUp {
    animation: fadeInUp 0.6s ease-out forwards;
}

/* Staggered animation delays */
.delay-1 { animation-delay: 0.1s; }
.delay-2 { animation-delay: 0.2s; }
.delay-3 { animation-delay: 0.3s; }

.placeholder::after {
    content: '|';
    animation: blink 1s infinite;
}

@keyframes blink {
    50% {
        opacity: 0;
    }
}