body {
    font-family: 'Inter', sans-serif;
    background-color: #f9f9ff;
    min-height: 100dvh;
}

.login-card {
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.05);
    border: 1px solid #E2E8F0;
}

.input-focus-ring:focus {
    outline: none;
    border-color: #00193c;
    box-shadow: 0 0 0 2px rgba(0, 25, 60, 0.1);
}

.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.carousel-item {
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.carousel-item.active {
    opacity: 1;
}

@keyframes shake {

    0%,
    100% {
        transform: translateX(0);
    }

    25% {
        transform: translateX(-4px);
    }

    75% {
        transform: translateX(4px);
    }
}

.animate-shake {
    animation: shake 0.2s cubic-bezier(.36, .07, .19, .97) both;
    animation-iteration-count: 2;
}

.animate-spin {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}