*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family: Arial, Helvetica, sans-serif;
}

body{
    min-height:100vh;
    overflow:hidden;
}

/* ===== CONTENEDOR ===== */

.login-admin-section{
    min-height:100vh;

    background:
    linear-gradient(rgba(0,0,0,.35), rgba(0,0,0,.35)),
    url('../img/fondo_login.jpeg');

    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;

    display:flex;
    justify-content:center;
    align-items:center;

    padding:20px;
}

/* ===== CARD LOGIN ===== */

.login-box{
    width:100%;
    max-width:420px;

    background:rgba(255,255,255,0.96);

    backdrop-filter:blur(8px);

    border-radius:25px;

    padding:45px 35px;

    box-shadow:
    0 10px 30px rgba(0,0,0,.25);

    animation:fadeIn 0.7s ease;
}

/* ===== LOGO ===== */

.login-logo{
    text-align:center;
    margin-bottom:20px;
}

.login-logo img{
    width:120px;
    height:auto;

    transition:.3s;
}

.login-logo img:hover{
    transform:scale(1.05);
}

/* ===== TITULO ===== */

.login-title{
    text-align:center;

    color:#8b1235;

    font-size:34px;

    font-weight:bold;

    margin-bottom:35px;
}

/* ===== INPUTS ===== */

.input-group{
    margin-bottom:25px;
}

.input-group label{
    display:block;

    margin-bottom:8px;

    font-size:14px;

    font-weight:600;

    color:#444;
}

.input-group input{
    width:100%;

    padding:15px 20px;

    border:1px solid #ddd;

    border-radius:50px;

    background:#fff;

    outline:none;

    font-size:14px;

    transition:0.3s;

    box-shadow:
    inset 0 2px 4px rgba(0,0,0,0.05);
}

.input-group input:focus{
    border-color:#8b1235;

    box-shadow:
    0 0 0 4px rgba(139,18,53,.15);
}

/* ===== BOTON ===== */

.login-btn{
    width:100%;

    padding:15px;

    border:none;

    border-radius:50px;

    background:#8b1235;

    color:white;

    font-size:16px;

    font-weight:bold;

    cursor:pointer;

    transition:0.3s;
}

.login-btn:hover{
    background:#6f0e2b;

    transform:translateY(-2px);

    box-shadow:
    0 6px 15px rgba(0,0,0,.2);
}

/* ===== ERROR ===== */

.login-error{
    background:#ffe2e2;

    color:#b30000;

    padding:14px;

    border-radius:12px;

    margin-bottom:20px;

    text-align:center;

    font-size:14px;

    border:1px solid #ffb3b3;
}
/* ===== ERROR ICON ===== */

.login-error i{
    margin-right:8px;
    font-size:16px;
}
/* ===== ANIMACION ===== */

@keyframes fadeIn{

    from{
        opacity:0;
        transform:translateY(20px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/* ===== RESPONSIVE ===== */

@media(max-width:480px){

    .login-box{
        padding:35px 25px;
    }

    .login-title{
        font-size:28px;
    }

}
/* INPUTS BOOTSTRAP */

.form-control{
    width:100%;
    padding:15px 20px;
    border:1px solid #ddd;
    border-radius:50px;
    background:#fefefe;
    outline:none;
    font-size:14px;
    transition:.3s;
    box-shadow:inset 0 2px 4px rgba(0,0,0,.05);
}

.form-control:focus{
    border-color:#8b1235;
    box-shadow:0 0 0 4px rgba(139,18,53,.15);
}

/* LABELS */

.form-label{
    color:#444;
    font-size:14px;
    margin-bottom:8px;
}

/* ALERTA */

.alert{
    border-radius:15px;
    font-size:14px;
}

/* ICONO BOTÓN */

.login-btn i{
    font-size:18px;
}