/* Reset de estilos */
* { 
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
}

/* Colores para el modo claro */
:root {
    --color-fondo: url('img/fondoLogin.png');
    --color-primario: #3498db;
    --color-secundario: #2ecc71;
    --color-texto: #333;
    --color-texto-secundario: #fff;
    --color-borde: #34db7a;
    --color-sombra: rgba(192, 221, 192, 0.692);
    --color-fondo-formulario: rgba(255, 255, 255, 0.953);
    --color-hover: #2ecc71;
    --color-hover-texto: #fff;
    --color-menu: #fff;
    --color-boton: linear-gradient(45deg, #2ecc71, #3498db);
    --color-boton-hover: linear-gradient(45deg, #3498db, #2ecc71);
    --logo-url: url('img/LogoCompletoN.png');
}

/* Fondo del body */
body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: var(--color-fondo) no-repeat center center/cover;
    transition: background 0.3s ease-in-out;
    padding: 20px;
}

/* Logo */
.logo {
    margin-bottom: -45px;
    z-index: 10;
}

.logo img {
    width: 170px;
    max-width: 100%;
    box-shadow: 0px 5px 15px rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    transition: transform 0.3s ease-in-out;
}

/* Contenedor del login */
.contenedor {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

/* Caja de login */
.login-box {
    background: var(--color-fondo-formulario);
    padding: 50px;
    border-radius: 20px;
    box-shadow: 0px 10px 30px var(--color-sombra);
    text-align: center;
    width: 100%;
    max-width: 450px;
    min-width: 320px;
    transition: all 0.3s ease-in-out;
    color: var(--color-texto);
}

/* Estilo de los inputs */
.input-group input {
    width: 100%;
    padding: 14px;
    border-radius: 25px;
    text-align: center;
    background: var(--color-menu);
    border: 2px solid var(--color-primario);
    color: var(--color-texto);
    font-size: 18px;
    transition: all 0.3s ease-in-out;
    outline: none;
    margin-top: 15px;
}

.input-group input:focus {
    border-color: var(--color-secundario);
    box-shadow: 0px 0px 10px var(--color-sombra);
}

/* Botón de inicio de sesión */
.button-container {
    margin-top: 20px;
}

.button-container button {
    width: 100%;
    padding: 14px;
    border: none;
    border-radius: 25px;
    background: var(--color-boton);
    color: var(--color-texto-secundario);
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
    box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.2);
}

.button-container button:hover {
    background: var(--color-boton-hover);
    transform: scale(1.05);
    color: var(--color-hover-texto);
}

/* Animación de entrada */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.login-box, .logo {
    animation: fadeIn 0.8s ease-in-out;
}

/* Modo oscuro automático según el sistema */
@media (prefers-color-scheme: dark) {
    :root {
        --color-fondo: url('img/FondoLoginN.png');
        --color-primario: #e67e22;
        --color-secundario: #333;
        --color-texto: #ddd;
        --color-texto-secundario: #000;
        --color-borde: #e67e22;
        --color-sombra: rgba(255, 255, 255, 0.2);
        --color-fondo-formulario: #333333e1;
        --color-hover: #e67e22;
        --color-hover-texto: #333;
        --color-menu: #000;
        --color-boton: linear-gradient(45deg, #e67e22, #d35400);
        --color-boton-hover: linear-gradient(45deg, #d35400, #e67e22);
        --logo-url: url('img/LogoCompletoB.png');
    }
    
    /* Aplicar el logo oscuro usando content */
    .logo img {
        content: var(--logo-url);
    }
    }
