/*==================================================
        WOLFSTORE LOGIN V4
==================================================*/

/*==================================================
                VARIABLES
==================================================*/

:root{
    --bg:#05070c;
    --card:#111827;
    --border:rgba(255,255,255,.08);
    --text:#ffffff;
    --muted:#9ca3af;
    --input:#1a2434;
    --red:#ff1744;
    --blue:#00b8ff;
    --radius:22px;
}

/*==================================================
                RESET
==================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body{
    width:100%;
    height:100%;
    font-family:'Segoe UI',sans-serif;
    color:var(--text);
    background:#05070c;
    overflow:hidden;
}

/*==================================================
                FONDO
==================================================*/

body{
    background-image:url("../image/login/fondo.jpeg");
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
}

.login-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.05);
    backdrop-filter:blur(.2px);
    -webkit-backdrop-filter:blur(.2px);
}
.logo-area{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:100%;
    margin-bottom:18px;
}
.login-slogan{
    display:block;
    width:100%;
    text-align:center;
    margin-top:6px;
    color:#d9d9d9;
    font-size:15px;
    font-weight:400;
    letter-spacing:.5px;
}

/*==================================================
                CONTENEDOR
==================================================*/

.login-page{
    position:relative;
    width:100%;
    min-height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    background:transparent;
}

/*==================================================
                TARJETA
==================================================*/

.login-card{
    position:relative;
    width:100%;
    max-width:470px;
    padding:20px 32px;
    border-radius:26px;
    overflow:hidden;
    background:rgba(18,22,35,.62);
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
    box-shadow:
        0 0 18px rgba(255,80,120,.35),
        0 0 18px rgba(0,220,255,.35);
}

/*==================================================
            BORDE NEÓN
==================================================*/

.login-card::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:26px;
    background:linear-gradient(
        90deg,
        rgba(255,70,120,.14) 0%,
        rgba(255,70,120,.05) 25%,
        rgba(0,0,0,0) 50%,
        rgba(0,220,255,.05) 75%,
        rgba(0,220,255,.14) 100%
    );
    opacity:.75;
    pointer-events:none;
}

/*==================================================
            EFECTOS
==================================================*/

.top-line{
    position:absolute;
    top:0;
    left:35px;
    right:35px;
    height:2px;
    background:linear-gradient(
        90deg,
        transparent,
        var(--red),
        var(--blue),
        transparent
    );
}

.glass{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(255,255,255,.05),
        transparent 30%,
        transparent 70%,
        rgba(255,255,255,.02)
    );
    pointer-events:none;
}

.neon-red{
    position:absolute;
    width:170px;
    height:170px;
    background:var(--red);
    filter:blur(120px);
    top:-80px;
    left:-90px;
    opacity:.12;
}

.neon-blue{
    position:absolute;
    width:170px;
    height:170px;
    background:var(--blue);
    filter:blur(120px);
    right:-90px;
    bottom:-90px;
    opacity:.18;
}

/*==================================================
                HEADER
==================================================*/

.login-header{
    position:relative;
    z-index:2;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:8px;
}

.login-logo{
    width:300px;
    max-width:100%;
    display:block;
    transition:.35s;
    margin:0 auto;
}

.login-logo:hover{
    transform:scale(1.02);
    filter:
        drop-shadow(0 0 15px rgba(255,23,68,.35))
        drop-shadow(0 0 22px rgba(0,184,255,.35));
}

/*==================================================
                CUERPO
==================================================*/

.login-body{
    position:relative;
    z-index:2;
}

#frmLogin{
    display:flex;
    flex-direction:column;
    gap:6px;
}

/*==================================================
                FORMULARIO
==================================================*/

.form-group{
    display:flex;
    flex-direction:column;
    gap:7px;
}

.form-group label{
    color:#dbe5ef;
    font-size:13px;
    font-weight:600;
    letter-spacing:.4px;
}

/*==================================================
                INPUTS
==================================================*/

.input-control{
    position:relative;
    display:flex;
    align-items:center;
    height:54px;
    background:#182335;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    transition:.30s;
}

.input-control:hover{
    border-color:rgba(0,184,255,.45);
}

.input-control:focus-within{
    border-color:var(--blue);
    box-shadow:
        0 0 0 3px rgba(0,184,255,.10);
}

.input-control i:first-child{
    width:55px;
    text-align:center;
    color:#9fb0c6;
    font-size:22px;
}

.input-control input{
    flex:1;
    height:100%;
    border:none;
    outline:none;
    background:transparent;
    color:#fff;
    font-size:15px;
    padding-right:20px;
}

.input-control input::placeholder{
    color:#8293aa;
}

/*==================================================
            OPCIONES LOGIN
==================================================*/

.login-options{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:8px;
    margin-bottom:2px;
}

.remember-me{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    color:#fff;
}

.forgot-password{
    display:block;
    text-align:right;
    color:#7fdfff;
    margin-bottom:8px;
    text-decoration:none;
    font-size:13px;
    white-space:nowrap;
    margin-top:0px;
}

.forgot-password:hover{
    color:#fff;
}

/*==================================================
            MENSAJES
==================================================*/

.login-errors{
    min-height:24px;
    margin-bottom:6px;
}

/*==================================================
            BOTÓN LOGIN
==================================================*/

.btn-login{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    text-shadow: 0 0 8px rgba(255,255,255,.55);
    width:100%;
    height:50px;
    margin-top:-12px;
    border:none;
    border-radius:16px;
    cursor:pointer;
    color:#fff;
    font-size:16px;
    font-weight:700;
    background:linear-gradient(
        90deg,
        var(--red),
        var(--blue)
    );
    transition:.30s;
    overflow:hidden;
}

.btn-login:hover{
    transform:translateY(-2px);
    box-shadow:
        0 12px 35px rgba(0,184,255,.25),
        0 12px 35px rgba(255,23,68,.20);
}

.btn-login::after{
    content:"";
    position:absolute;
    inset:-3px;
    border-radius:18px;
    background:linear-gradient(
        90deg,
        var(--red),
        var(--blue)
    );
    filter:blur(18px);
    opacity:.25;
    z-index:-1;
}

/*==================================================
            SEPARADOR
==================================================*/

.separator{
    display:flex;
    align-items:center;
    margin:18px 0;
}

.separator::before,
.separator::after{
    content:"";
    flex:1;
    height:1px;
    background:rgba(255,255,255,.10);
}

.separator span{
    padding:0 14px;
    color:#9ca3af;
    font-size:13px;
}

/*==================================================
            BOTONES
==================================================*/

.login-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}

.btn-outline{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    height:48px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.03);
    color:#dce6f2;
    text-decoration:none;
    transition:.30s;
}

.btn-outline:hover{
    color:#fff;
}

/*==========================================
      BOTÓN ROJO
==========================================*/

.btn-red{
    border:2px solid #ff3b5c;
    background:rgba(255,59,92,.08);
    color:#fff;
    transition:.30s;
}

.btn-red:hover{
    border-color:#ff1744;
    background:rgba(255,23,68,.18);
    box-shadow:
        0 0 18px rgba(255,23,68,.45);
    color:#fff;
}

/*==========================================
      BOTÓN AZUL
==========================================*/

.btn-blue{
    border:2px solid #20d7ff;
    background:rgba(32,215,255,.08);
    color:#fff;
    transition:.30s;
}

.btn-blue:hover{
    border-color:#00c8ff;
    background:rgba(0,200,255,.18);
    box-shadow:
        0 0 18px rgba(0,200,255,.45);
    color:#fff;
}

/*==================================================
            FOOTER
==================================================*/

.login-footer{
    position:relative;
    z-index:2;
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.08);
    display:flex;
    flex-direction:column;
    gap:4px;
    text-align:center;
}

.login-footer small{
    color:#ffffff;
    font-size:12px;
}

.login-footer span{
    color:#8d9caf;
    font-size:11px;
}

/*==================================================
            ANIMACIONES
==================================================*/

.login-card{
    animation:fadeUp .6s ease;
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(25px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes shine{
    from{
        transform:rotate(0deg);
    }
    to{
        transform:rotate(360deg);
    }
}

.login-card::after{
    content:"";
    position:absolute;
    top:-60%;
    left:-60%;
    width:220%;
    height:220%;
    background:radial-gradient(
        circle,
        rgba(255,255,255,.06),
        transparent 60%
    );
    animation:shine 12s linear infinite;
    pointer-events:none;
}

/* ============================================================
   RESPONSIVE — MÓVIL
   ============================================================ */

@media(max-width:576px){

    .login-card{
        width:calc(100% - 30px) !important;
        max-width:370px !important;

        /* Reduce la altura interna */
        padding:10px 15px !important;

        margin:0 auto !important;
    }

    .login-logo{
        width:180px;
        max-width:80%;
        height:auto;
    }

    .login-body{
        padding:0 5px;
    }

    /* ========================================================
       BOTONES: 2 COLUMNAS TAMBIÉN EN MÓVIL
       Tienda | Registrarse
       WhatsApp | Telegram
       ======================================================== */

    .login-actions{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:7px !important;
    }

    .btn-outline{
        height:40px !important;
        min-height:40px !important;
        border-radius:11px !important;
        font-size:12px !important;
        gap:5px !important;
        padding:0 5px !important;
    }

    .btn-outline i{
        font-size:15px !important;
    }

    /* Reduce espacio del separador */
    .separator{
        margin:10px 0 !important;
    }

    /* Reduce espacio del pie */
    .login-footer{
        margin-top:10px !important;
        padding-top:9px !important;
        gap:2px !important;
    }

    .login-footer small{
        font-size:10px !important;
    }

    .login-footer span{
        font-size:9px !important;
    }

    .login-options{
        flex-direction:column;
        gap:6px;
        align-items:flex-start;
    }
}
/* ============================================================
   SUBIR TODO EL LOGIN — SOLO MÓVIL
   ============================================================ */

@media (max-width:576px){

    .login-page{
        transform: translateY(-40px);
    }

}