/* =========================================
   RESET GENERAL
========================================= */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,body{
    height:100%;
    font-family:'Poppins',sans-serif;

    /* 🔥 FONDO TOTALMENTE BLANCO */
    background:
        linear-gradient(135deg,#ffffff,#f4f7fb);

    overflow:hidden;
    display:flex;
    justify-content:center;
    align-items:center;

    color:#1f2937;
}

/* =========================================
   PARTICULAS
========================================= */
#particles-js{
    position:absolute;
    width:100%;
    height:100%;
    z-index:0;

    /* 🔥 EFECTO CLARO */
    background:
        radial-gradient(circle at top left,#ffffff,#eef5ff);
}

/* =========================================
   LOGIN BOX
========================================= */
.login-box{
    position:relative;
    z-index:1;

    width:100%;
    max-width:550px;

    padding:2.8rem 2.3rem;

    border-radius:1.8rem;

    /* 🔥 CAJA BLANCA */
    background:#ffffff;

    border:1px solid #dbe4f0;

    box-shadow:
        0 15px 45px rgba(0,0,0,0.08),
        0 0 25px rgba(0,123,255,0.08);

    animation:fadeIn .8s ease forwards;
}

/* =========================================
   ANIMACION
========================================= */
@keyframes fadeIn{
    from{
        opacity:0;
        transform:translateY(-25px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* =========================================
   TITULO
========================================= */
.login-box h2{
    text-align:center;

    color:#0f172a;

    font-weight:700;

    margin-bottom:2rem;

    font-size:1.5rem;
}

.login-box h2 i{
    color:#2563eb;
}

/* =========================================
   FORM GROUP
========================================= */
.form-group{
    position:relative;
    width:100%;
    margin-bottom:1.2rem;
}

/* =========================================
   INPUTS
========================================= */
.form-control{
    width:100%;
    height:50px;

    padding:0 1rem 0 2.8rem;

    border-radius:1rem;

    border:1px solid #d6dce5;

    background:#f8fafc;

    color:#111827;

    font-size:.95rem;

    transition:all .3s ease;
}

/* placeholder */
.form-control::placeholder{
    color:#6b7280;
}

/* focus */
.form-control:focus{
    border-color:#2563eb;

    background:#ffffff;

    box-shadow:
        0 0 12px rgba(37,99,235,.18);

    outline:none;
}

/* =========================================
   ICONOS
========================================= */
.input-icon{
    position:absolute;

    left:14px;
    top:50%;

    transform:translateY(-50%);

    color:#2563eb;

    font-size:.95rem;
}

.toggle-password{
    position:absolute;

    right:14px;
    top:50%;

    transform:translateY(-50%);

    cursor:pointer;

    color:#2563eb;
}

/* =========================================
   BOTONES BASE
========================================= */
.btn{
    width:100%;
    height:48px;

    border:none;

    border-radius:1rem;

    font-size:1rem;
    font-weight:700;

    cursor:pointer;

    transition:all .3s ease;

    display:flex;
    align-items:center;
    justify-content:center;

    text-decoration:none;
}

/* =========================================
   BOTON INGRESAR
========================================= */
button.btn{
    background:
        linear-gradient(135deg,#2563eb,#1d4ed8);

    color:#fff;

    box-shadow:
        0 8px 20px rgba(37,99,235,.25);
}

button.btn:hover{
    transform:translateY(-2px);

    box-shadow:
        0 12px 28px rgba(37,99,235,.35);

    background:
        linear-gradient(135deg,#1d4ed8,#2563eb);
}

/* =========================================
   BOTON RECUPERAR
========================================= */
.btn-recover{
    background:
        linear-gradient(135deg,#ef4444,#dc2626);

    color:#fff !important;

    border:none;
}

.btn-recover:hover{
    transform:translateY(-2px);

    box-shadow:
        0 10px 24px rgba(239,68,68,.30);
}

/* =========================================
   BOTON REGISTRO
========================================= */
a.btn{
    background:
        linear-gradient(135deg,#16a34a,#15803d);

    color:#fff !important;

    border:none;
}

a.btn:hover{
    transform:translateY(-2px);

    box-shadow:
        0 10px 24px rgba(22,163,74,.28);
}

/* =========================================
   FOOTER
========================================= */
.footer{
    text-align:center;

    margin-top:1.5rem;

    font-size:.82rem;

    color:#64748b;
}

/* =========================================
   RESPONSIVE
========================================= */
@media (max-width:480px){

    .login-box{
        max-width:92%;
        padding:2rem;
    }

}