/* Contenedor que llena toda la altura y centra vertical y horizontal */
.login-container {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    background-color: #f4f4f4;
}

/* Tarjeta del formulario */
.login-card {
    width: 100%;
    max-width: 400px;
    border-radius: 1rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    animation: fadeInDown 0.6s ease;
}

/* Logo */
.login-logo {
    max-height: 100px;
    width: auto;
    margin-bottom: 1rem;
    display: inline-block;
    animation: logoFadeIn 0.8s ease-in-out;
}

/* Contenido interno */
.login-card .card-body {
    padding: 2rem;
}

/* Botón */
.login-card .btn {
    font-size: 1rem;
    padding: 0.75rem;
}

/* Animaciones */
@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes logoFadeIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Ajustes en móviles */
@media (max-width: 576px) {
    .login-container {
        padding: 1rem;
    }

    .login-card .card-body {
        padding: 1.5rem;
    }
}

