﻿:root{
    --am-login-pink:#ff1ed2;
    --am-login-fuchsia:#b936ff;
    --am-login-cyan:#28d7ff;
    --am-login-blue:#3b74ff;
    --am-login-ink:#050512;
    --am-login-panel:rgba(8,9,25,.74);
    --am-login-line:rgba(255,255,255,.14);
    --am-login-soft:rgba(255,255,255,.72);
}

html body.am-body{
    background:#02020a!important;
    min-height:100vh;
}

html body.am-body .am-top-actions,
html body.am-body .am-public-nav,
html body.am-body .am-bottom-nav{
    display:none!important;
}

html body.am-body .am-topbar{
    min-height:58px!important;
    height:58px!important;
    background:rgba(2,2,10,.96)!important;
    border-bottom:1px solid rgba(255,30,210,.22)!important;
    box-shadow:0 10px 30px rgba(0,0,0,.46)!important;
}

html body.am-body .am-brand{
    gap:9px!important;
}

html body.am-body .am-brand-logo,
html body.am-body .am-brand img{
    width:42px!important;
    height:42px!important;
}

html body.am-body .am-brand-title{
    font-size:1.02rem!important;
    line-height:1!important;
}

html body.am-body .am-brand-subtitle{
    font-size:.66rem!important;
    line-height:1.1!important;
}

html body.am-body .am-page-shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    min-height:calc(100svh - 58px)!important;
    overflow:hidden!important;
}

html body.am-body .am-install-card{
    display:none!important;
}

.am-login-v482{
    position:relative;
    min-height:calc(100svh - 58px);
    height:calc(100svh - 58px);
    width:100%;
    overflow:hidden;
    isolation:isolate;
    color:#fff;
    background:#02020a;
    font-family:inherit;
}

.am-login-v482__bg,
.am-login-v482__texture{
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:-4;
}

.am-login-v482__bg{
    background:
        radial-gradient(circle at 72% 29%, rgba(255,30,210,.20), transparent 30%),
        radial-gradient(circle at 22% 72%, rgba(40,215,255,.16), transparent 35%),
        linear-gradient(90deg, rgba(2,2,10,.90) 0%, rgba(2,2,10,.55) 43%, rgba(2,2,10,.82) 100%),
        linear-gradient(180deg, rgba(2,2,10,.08) 0%, rgba(2,2,10,.45) 54%, #02020a 100%),
        url('../Content/images/amclub-login-bg-v482.jpg') center center/cover no-repeat;
    filter:saturate(1.12) contrast(1.03) brightness(.92);
    transform:scale(1.012);
}

.am-login-v482__texture{
    opacity:.15;
    mix-blend-mode:screen;
    background:
        linear-gradient(180deg, rgba(2,2,10,.06), rgba(2,2,10,.82)),
        url('../Content/images/amclub-login-texture-v482.jpg') left bottom/410px auto no-repeat;
    z-index:-3;
}

.am-login-v482::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(115deg, rgba(255,30,210,.10), transparent 24%, transparent 68%, rgba(40,215,255,.08)),
        repeating-linear-gradient(90deg, rgba(255,255,255,.014) 0 1px, transparent 1px 112px);
    pointer-events:none;
    z-index:-2;
}

.am-login-v482::after{
    content:"";
    position:absolute;
    inset:auto -20% -34% -20%;
    height:42%;
    background:radial-gradient(ellipse at center, rgba(255,30,210,.15), transparent 58%), radial-gradient(ellipse at 38% 64%, rgba(40,215,255,.12), transparent 56%);
    filter:blur(20px);
    z-index:-1;
}

.am-login-v482__aura{
    position:absolute;
    width:280px;
    height:280px;
    border-radius:999px;
    filter:blur(42px);
    opacity:.34;
    z-index:-1;
    pointer-events:none;
    animation:amLoginFloat 9s ease-in-out infinite;
}

.am-login-v482__aura--pink{
    left:-90px;
    top:80px;
    background:rgba(255,30,210,.20);
}

.am-login-v482__aura--cyan{
    right:-100px;
    bottom:70px;
    background:rgba(40,215,255,.15);
    animation-delay:-3s;
}

.am-login-v482__shell{
    position:relative;
    z-index:1;
    width:min(900px, calc(100% - 30px));
    height:100%;
    margin:0 auto;
    padding:14px 0 14px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    box-sizing:border-box;
}

.am-login-v482__brand{
    display:flex;
    align-items:center;
    gap:11px;
    margin:0 0 10px 0;
    filter:drop-shadow(0 12px 22px rgba(255,30,210,.16));
}

.am-login-v482__brand-logo{
    width:66px;
    height:auto;
    object-fit:contain;
    display:block;
}

.am-login-v482__brand-copy{
    display:grid;
    gap:1px;
}

.am-login-v482__brand-name{
    display:block;
    font-size:clamp(1.62rem, 2.45vw, 2.55rem);
    font-weight:300;
    line-height:.92;
    letter-spacing:.02em;
    color:#fff;
    text-shadow:0 0 22px rgba(40,215,255,.14);
}

.am-login-v482__brand-name span{
    background:linear-gradient(135deg,var(--am-login-pink),var(--am-login-cyan));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.am-login-v482__brand-copy small{
    color:rgba(255,255,255,.78);
    font-size:clamp(.58rem, .78vw, .78rem);
    letter-spacing:.32em;
    text-transform:uppercase;
}

.am-login-v482__card{
    width:min(390px, 100%);
    position:relative;
    border-radius:22px;
    padding:18px 22px 18px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.024)),
        rgba(8,9,25,.80);
    border:1px solid rgba(255,255,255,.13);
    box-shadow:
        0 0 0 1px rgba(255,30,210,.17),
        0 0 34px rgba(255,30,210,.16),
        0 0 42px rgba(40,215,255,.08),
        0 20px 58px rgba(0,0,0,.68);
    backdrop-filter:blur(18px) saturate(1.06);
    -webkit-backdrop-filter:blur(18px) saturate(1.06);
    overflow:hidden;
    box-sizing:border-box;
}

.am-login-v482__card-glow{
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 8% 0%, rgba(255,30,210,.15), transparent 32%),
        radial-gradient(circle at 98% 8%, rgba(40,215,255,.14), transparent 34%);
    pointer-events:none;
}

.am-login-v482__eyebrow,
.am-login-v482__card h1,
.am-login-v482__lead,
.am-login-v482__form,
.am-login-v482__alert{
    position:relative;
    z-index:1;
}

.am-login-v482__eyebrow{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin:0 0 8px;
    color:rgba(255,255,255,.78);
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:.61rem;
    font-weight:950;
}

.am-login-v482__eyebrow span{
    width:7px;
    height:7px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--am-login-pink),var(--am-login-cyan));
    box-shadow:0 0 14px var(--am-login-pink), 0 0 16px var(--am-login-cyan);
}

.am-login-v482__card h1{
    margin:0;
    font-size:clamp(2rem, 4.2vw, 2.85rem);
    line-height:.92;
    letter-spacing:-.052em;
    font-weight:950;
    background:linear-gradient(135deg,#fff 4%,#fff 38%,var(--am-login-pink) 62%,var(--am-login-cyan) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    text-shadow:0 0 24px rgba(255,255,255,.08);
}

.am-login-v482__lead{
    margin:8px 0 12px;
    color:rgba(255,255,255,.74);
    font-size:.82rem;
    line-height:1.3;
    font-weight:750;
}

.am-login-v482__form{
    display:grid;
    gap:8px;
}

.am-login-v482__field{
    display:grid;
    gap:5px;
    margin:0;
}

.am-login-v482__label{
    color:rgba(255,255,255,.84);
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.018em;
}

.am-login-v482__input-wrap{
    position:relative;
    display:grid;
    align-items:center;
}

.am-login-v482__input-icon,
.am-login-v482__eye{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    color:rgba(255,255,255,.55);
    z-index:2;
}

.am-login-v482__input-icon{
    left:9px;
    pointer-events:none;
}

.am-login-v482__input-icon svg,
.am-login-v482__eye svg{
    width:17px;
    height:17px;
    fill:currentColor;
}

.am-login-v482__eye{
    right:8px;
    border:0;
    border-radius:999px;
    background:transparent;
    cursor:pointer;
    transition:background .2s ease,color .2s ease,transform .2s ease;
}

.am-login-v482__eye:hover,
.am-login-v482__eye.is-on{
    color:#fff;
    background:rgba(255,255,255,.08);
}

.am-login-v482__eye:hover{
    transform:translateY(-50%) scale(1.04);
}

.am-login-v482__input{
    width:100%!important;
    height:42px!important;
    border-radius:14px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    background:rgba(2,4,18,.62)!important;
    color:#fff!important;
    outline:none!important;
    padding:0 45px 0 45px!important;
    font-size:.86rem!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
    line-height:42px!important;
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.025),
        0 8px 18px rgba(0,0,0,.18)!important;
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s ease;
    box-sizing:border-box!important;
}

.am-login-v482__input::placeholder{
    color:rgba(255,255,255,.36)!important;
    font-weight:750!important;
}

.am-login-v482__input:focus{
    border-color:rgba(40,215,255,.76)!important;
    background:rgba(3,6,22,.76)!important;
    box-shadow:
        0 0 0 3px rgba(40,215,255,.10),
        0 0 0 1px rgba(255,30,210,.14),
        0 0 26px rgba(40,215,255,.14)!important;
    transform:translateY(-1px);
}

.am-login-v482__input-wrap--password .am-login-v482__input{
    padding-right:48px!important;
}

.am-login-v482__btn{
    min-height:42px;
    border-radius:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:100%;
    font-size:.84rem;
    font-weight:950;
    letter-spacing:.025em;
    text-decoration:none!important;
    border:1px solid transparent;
    cursor:pointer;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
    box-sizing:border-box;
}

.am-login-v482__btn--primary{
    margin-top:6px;
    color:#fff!important;
    background:linear-gradient(105deg,var(--am-login-pink) 0%,var(--am-login-fuchsia) 42%,var(--am-login-cyan) 100%)!important;
    border:0!important;
    box-shadow:0 12px 26px rgba(255,30,210,.22), 0 8px 24px rgba(40,215,255,.16)!important;
}

.am-login-v482__btn--ghost{
    color:#fff!important;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025));
    border-color:rgba(255,255,255,.14);
    box-shadow:inset 0 0 0 1px rgba(255,30,210,.16), 0 10px 24px rgba(0,0,0,.16);
}

.am-login-v482__btn--ghost span{
    color:var(--am-login-pink);
    text-shadow:0 0 14px var(--am-login-pink);
}

.am-login-v482__btn:hover{
    transform:translateY(-2px);
    filter:saturate(1.08);
}

.am-login-v482__btn--primary:hover{
    box-shadow:0 16px 38px rgba(255,30,210,.28), 0 10px 34px rgba(40,215,255,.20)!important;
}

.am-login-v482__btn--ghost:hover{
    border-color:rgba(40,215,255,.50);
    box-shadow:inset 0 0 0 1px rgba(40,215,255,.20), 0 0 26px rgba(40,215,255,.12);
}

.am-login-v482__forgot{
    justify-self:center;
    color:#ff6ce0!important;
    text-decoration:none!important;
    font-size:.78rem;
    font-weight:850;
    margin-top:0;
    text-shadow:0 0 18px rgba(255,30,210,.24);
}

.am-login-v482__forgot:hover{
    color:#fff!important;
}

.am-login-v482__alert{
    margin:0 0 10px;
    padding:9px 11px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.07);
    color:#fff;
    font-size:.80rem;
    font-weight:850;
    line-height:1.32;
}

.am-login-v482__alert--ok{
    border-color:rgba(73,222,175,.38);
    background:rgba(73,222,175,.12);
    color:#eafff8;
}

.am-login-v482__alert--error{
    border-color:rgba(255,30,210,.38);
    background:rgba(255,30,210,.12);
    color:#ffe8fb;
}

.am-login-v482__footer-note{
    display:flex;
    align-items:center;
    gap:8px;
    margin:10px 0 0 2px;
    color:rgba(255,255,255,.68);
    font-size:.76rem;
    font-weight:700;
    letter-spacing:.012em;
    text-shadow:0 0 18px rgba(0,0,0,.50);
}

.am-login-v482__footer-note span{
    width:24px;
    height:24px;
    border-radius:9px;
    display:grid;
    place-items:center;
    color:#fff;
    border:1px solid rgba(255,30,210,.44);
    box-shadow:0 0 18px rgba(255,30,210,.18), inset 0 0 12px rgba(255,30,210,.06);
}

@keyframes amLoginFloat{
    0%,100%{ transform:translate3d(0,0,0) scale(1); }
    50%{ transform:translate3d(12px,-12px,0) scale(1.05); }
}

@media (min-width: 1120px){
    .am-login-v482__shell{
        padding-left:14px;
    }
}

@media (max-height: 720px) and (min-width: 821px){
    html body.am-body .am-topbar{
        min-height:54px!important;
        height:54px!important;
    }

    html body.am-body .am-page-shell,
    .am-login-v482{
        min-height:calc(100svh - 54px)!important;
        height:calc(100svh - 54px)!important;
    }

    .am-login-v482__shell{
        padding-top:8px;
        padding-bottom:8px;
    }

    .am-login-v482__brand{
        margin-bottom:7px;
    }

    .am-login-v482__brand-logo{
        width:54px;
    }

    .am-login-v482__brand-name{
        font-size:1.85rem;
    }

    .am-login-v482__brand-copy small{
        font-size:.56rem;
        letter-spacing:.28em;
    }

    .am-login-v482__card{
        width:min(370px,100%);
        padding:15px 19px 15px;
        border-radius:20px;
    }

    .am-login-v482__eyebrow{
        margin-bottom:6px;
        font-size:.57rem;
    }

    .am-login-v482__card h1{
        font-size:2.32rem;
    }

    .am-login-v482__lead{
        margin:6px 0 10px;
        font-size:.78rem;
    }

    .am-login-v482__form{
        gap:7px;
    }

    .am-login-v482__label{
        font-size:.72rem;
    }

    .am-login-v482__input{
        height:38px!important;
        line-height:38px!important;
        font-size:.82rem!important;
        border-radius:13px!important;
    }

    .am-login-v482__btn{
        min-height:38px;
        border-radius:13px;
        font-size:.80rem;
    }

    .am-login-v482__forgot{
        font-size:.74rem;
    }

    .am-login-v482__footer-note{
        display:none;
    }
}

@media (max-width: 820px){
    html body.am-body .am-topbar{
        min-height:56px!important;
        height:56px!important;
    }

    html body.am-body .am-page-shell{
        min-height:calc(100svh - 56px)!important;
    }

    .am-login-v482{
        min-height:calc(100svh - 56px);
        height:auto;
        overflow-y:auto;
        -webkit-overflow-scrolling:touch;
    }

    .am-login-v482__bg{
        background:
            radial-gradient(circle at 72% 24%, rgba(255,30,210,.16), transparent 32%),
            radial-gradient(circle at 20% 74%, rgba(40,215,255,.16), transparent 36%),
            linear-gradient(180deg, rgba(2,2,10,.38) 0%, rgba(2,2,10,.72) 38%, #02020a 100%),
            linear-gradient(90deg, rgba(2,2,10,.74), rgba(2,2,10,.48), rgba(2,2,10,.78)),
            url('../Content/images/amclub-login-bg-v482.jpg') 64% center/cover no-repeat;
        transform:scale(1.03);
    }

    .am-login-v482__texture{
        background:
            linear-gradient(180deg, rgba(2,2,10,.02), rgba(2,2,10,.80)),
            url('../Content/images/amclub-login-texture-v482.jpg') left bottom/320px auto no-repeat;
        opacity:.14;
    }

    .am-login-v482__shell{
        min-height:calc(100svh - 56px);
        height:auto;
        width:min(100% - 18px, 390px);
        padding:10px 0 max(14px, env(safe-area-inset-bottom));
        justify-content:center;
        align-items:center;
    }

    .am-login-v482__brand{
        width:100%;
        margin:0 0 8px;
        gap:9px;
        justify-content:flex-start;
    }

    .am-login-v482__brand-logo{
        width:50px;
    }

    .am-login-v482__brand-name{
        font-size:1.42rem;
    }

    .am-login-v482__brand-copy small{
        font-size:.54rem;
        letter-spacing:.24em;
    }

    .am-login-v482__card{
        border-radius:20px;
        padding:16px 15px 15px;
        width:100%;
        box-shadow:
            0 0 0 1px rgba(255,30,210,.16),
            0 0 30px rgba(255,30,210,.13),
            0 18px 56px rgba(0,0,0,.70);
    }

    .am-login-v482__eyebrow{
        margin-bottom:6px;
        font-size:.56rem;
    }

    .am-login-v482__card h1{
        font-size:2rem;
        letter-spacing:-.048em;
    }

    .am-login-v482__lead{
        font-size:.78rem;
        margin:7px 0 10px;
    }

    .am-login-v482__form{
        gap:7px;
    }

    .am-login-v482__field{
        gap:4px;
    }

    .am-login-v482__label{
        font-size:.72rem;
    }

    .am-login-v482__input-icon,
    .am-login-v482__eye{
        width:30px;
        height:30px;
    }

    .am-login-v482__input-icon{
        left:7px;
    }

    .am-login-v482__eye{
        right:7px;
    }

    .am-login-v482__input{
        height:40px!important;
        line-height:40px!important;
        border-radius:13px!important;
        font-size:.82rem!important;
        padding-left:40px!important;
        padding-right:40px!important;
    }

    .am-login-v482__input-wrap--password .am-login-v482__input{
        padding-right:44px!important;
    }

    .am-login-v482__btn{
        min-height:40px;
        border-radius:13px;
        font-size:.80rem;
    }

    .am-login-v482__forgot{
        font-size:.74rem;
    }

    .am-login-v482__footer-note{
        width:100%;
        margin:9px 0 0;
        justify-content:center;
        text-align:center;
        font-size:.70rem;
        gap:7px;
    }

    .am-login-v482__footer-note span{
        width:22px;
        height:22px;
        border-radius:8px;
    }
}

@media (max-width: 380px){
    .am-login-v482__shell{
        width:calc(100% - 14px);
        padding-top:8px;
        padding-bottom:12px;
    }

    .am-login-v482__brand-logo{
        width:46px;
    }

    .am-login-v482__brand-name{
        font-size:1.30rem;
    }

    .am-login-v482__brand-copy small{
        font-size:.50rem;
    }

    .am-login-v482__card{
        padding:14px 13px 13px;
        border-radius:18px;
    }

    .am-login-v482__card h1{
        font-size:1.82rem;
    }

    .am-login-v482__lead{
        font-size:.74rem;
    }

    .am-login-v482__input{
        height:38px!important;
        line-height:38px!important;
    }

    .am-login-v482__btn{
        min-height:38px;
    }
}


/* =========================================================
   AFTERMAN v485 - Login mobile full viewport + compact alignment
   Mantiene el diseño v482/v484, pero comprime el alto móvil,
   evita scroll innecesario y fuerza botones al 100% del card.
   ========================================================= */

html body.am-body .am-login-v482 .am-login-v482__form{
    width:100%!important;
}

html body.am-body .am-login-v482 .am-login-v482__btn,
html body.am-body .am-login-v482 .am-login-v482__btn--primary,
html body.am-body .am-login-v482 .am-login-v482__btn--ghost{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
}

html body.am-body .am-login-v482 input.am-login-v482__btn,
html body.am-body .am-login-v482 input.am-login-v482__btn--primary{
    display:block!important;
    text-align:center!important;
}

html body.am-body .am-login-v482 .am-login-v482__input-wrap{
    width:100%!important;
}

html body.am-body .am-login-v482 .am-login-v482__input{
    width:100%!important;
    max-width:none!important;
    box-sizing:border-box!important;
}

@media (max-width: 820px){
    html body.am-body{
        overflow:hidden!important;
    }

    html body.am-body .am-topbar{
        min-height:50px!important;
        height:50px!important;
        padding-top:0!important;
        padding-bottom:0!important;
    }

    html body.am-body .am-brand{
        min-width:0!important;
    }

    html body.am-body .am-brand strong{
        font-size:.92rem!important;
        line-height:1!important;
    }

    html body.am-body .am-brand small{
        font-size:.58rem!important;
        line-height:1!important;
    }

    html body.am-body .am-page-shell{
        min-height:calc(100dvh - 50px)!important;
        height:calc(100dvh - 50px)!important;
        max-height:calc(100dvh - 50px)!important;
        overflow:hidden!important;
        padding:0!important;
    }

    .am-login-v482{
        min-height:calc(100dvh - 50px)!important;
        height:calc(100dvh - 50px)!important;
        max-height:calc(100dvh - 50px)!important;
        overflow:hidden!important;
    }

    .am-login-v482__bg{
        background:
            radial-gradient(circle at 72% 21%, rgba(255,30,210,.15), transparent 30%),
            radial-gradient(circle at 18% 82%, rgba(40,215,255,.14), transparent 34%),
            linear-gradient(180deg, rgba(2,2,10,.26) 0%, rgba(2,2,10,.68) 42%, #02020a 100%),
            linear-gradient(90deg, rgba(2,2,10,.70), rgba(2,2,10,.44), rgba(2,2,10,.76)),
            url('../Content/images/amclub-login-bg-v482.jpg') 64% center/cover no-repeat!important;
        filter:saturate(1.08) contrast(1.03) brightness(.78)!important;
        transform:scale(1.02)!important;
    }

    .am-login-v482__texture{
        opacity:.10!important;
        background:
            linear-gradient(180deg, rgba(2,2,10,.03), rgba(2,2,10,.84)),
            url('../Content/images/amclub-login-texture-v482.jpg') left bottom/280px auto no-repeat!important;
    }

    .am-login-v482__shell{
        width:calc(100% - 20px)!important;
        max-width:390px!important;
        height:100%!important;
        min-height:0!important;
        margin:0 auto!important;
        padding:clamp(6px, 1.1svh, 10px) 0 max(8px, env(safe-area-inset-bottom))!important;
        justify-content:center!important;
        align-items:stretch!important;
        gap:6px!important;
    }

    .am-login-v482__brand{
        width:100%!important;
        min-height:38px!important;
        margin:0 0 4px!important;
        gap:8px!important;
        justify-content:flex-start!important;
        transform:none!important;
    }

    .am-login-v482__brand-logo{
        width:42px!important;
        max-height:38px!important;
    }

    .am-login-v482__brand-name{
        font-size:1.18rem!important;
        line-height:.92!important;
    }

    .am-login-v482__brand-copy small{
        font-size:.48rem!important;
        letter-spacing:.22em!important;
    }

    .am-login-v482__card{
        width:100%!important;
        border-radius:18px!important;
        padding:12px 16px 13px!important;
        box-shadow:
            0 0 0 1px rgba(255,30,210,.16),
            0 0 24px rgba(255,30,210,.11),
            0 14px 42px rgba(0,0,0,.64)!important;
    }

    .am-login-v482__eyebrow{
        margin:0 0 5px!important;
        font-size:.53rem!important;
        letter-spacing:.145em!important;
    }

    .am-login-v482__card h1{
        font-size:clamp(1.62rem, 7.6vw, 2.02rem)!important;
        line-height:.92!important;
        letter-spacing:-.048em!important;
    }

    .am-login-v482__lead{
        margin:5px 0 8px!important;
        font-size:.72rem!important;
        line-height:1.20!important;
    }

    .am-login-v482__form{
        display:grid!important;
        gap:6px!important;
    }

    .am-login-v482__field{
        gap:3px!important;
    }

    .am-login-v482__label{
        font-size:.68rem!important;
        line-height:1.1!important;
    }

    .am-login-v482__input-icon,
    .am-login-v482__eye{
        width:29px!important;
        height:29px!important;
    }

    .am-login-v482__input-icon{
        left:8px!important;
    }

    .am-login-v482__eye{
        right:8px!important;
    }

    .am-login-v482__input-icon svg,
    .am-login-v482__eye svg{
        width:15px!important;
        height:15px!important;
    }

    .am-login-v482__input{
        height:38px!important;
        min-height:38px!important;
        line-height:38px!important;
        border-radius:13px!important;
        font-size:.80rem!important;
        padding-left:38px!important;
        padding-right:38px!important;
    }

    .am-login-v482__input-wrap--password .am-login-v482__input{
        padding-right:43px!important;
    }

    .am-login-v482__btn{
        height:38px!important;
        min-height:38px!important;
        border-radius:13px!important;
        font-size:.80rem!important;
        line-height:38px!important;
        padding:0 12px!important;
    }

    .am-login-v482__btn--primary{
        margin-top:5px!important;
    }

    .am-login-v482__forgot{
        font-size:.70rem!important;
        line-height:1.12!important;
        margin-top:0!important;
    }

    .am-login-v482__footer-note{
        width:100%!important;
        margin:5px 0 0!important;
        justify-content:center!important;
        text-align:center!important;
        font-size:.64rem!important;
        line-height:1.15!important;
        gap:6px!important;
    }

    .am-login-v482__footer-note span{
        width:20px!important;
        height:20px!important;
        border-radius:7px!important;
        flex:0 0 20px!important;
    }

    .am-login-v482__alert{
        margin:0 0 7px!important;
        padding:8px 10px!important;
        font-size:.74rem!important;
        border-radius:12px!important;
    }
}

@media (max-width: 820px) and (max-height: 780px){
    .am-login-v482__brand{
        min-height:34px!important;
        margin-bottom:3px!important;
    }

    .am-login-v482__brand-logo{
        width:38px!important;
        max-height:34px!important;
    }

    .am-login-v482__brand-name{
        font-size:1.06rem!important;
    }

    .am-login-v482__brand-copy small{
        font-size:.44rem!important;
    }

    .am-login-v482__card{
        padding:11px 15px 12px!important;
    }

    .am-login-v482__card h1{
        font-size:1.72rem!important;
    }

    .am-login-v482__lead{
        margin:4px 0 7px!important;
    }

    .am-login-v482__input{
        height:36px!important;
        min-height:36px!important;
        line-height:36px!important;
    }

    .am-login-v482__btn{
        height:36px!important;
        min-height:36px!important;
        line-height:36px!important;
    }
}

@media (max-width: 820px) and (max-height: 690px){
    .am-login-v482__brand,
    .am-login-v482__footer-note{
        display:none!important;
    }

    .am-login-v482__card{
        padding:10px 14px 11px!important;
    }

    .am-login-v482__eyebrow{
        margin-bottom:4px!important;
    }

    .am-login-v482__card h1{
        font-size:1.55rem!important;
    }

    .am-login-v482__lead{
        font-size:.68rem!important;
        margin:3px 0 6px!important;
    }

    .am-login-v482__form{
        gap:5px!important;
    }
}


/* =========================================================
   AFTERMAN v486 - Hotfix placeholder/iconos Login
   Corrige el solapamiento del icono con el placeholder/texto.
   Mantiene el diseño móvil compacto del v485.
   ========================================================= */

html body.am-body .am-login-v482 .am-login-v482__input-wrap{
    position:relative!important;
    display:block!important;
    width:100%!important;
}

html body.am-body .am-login-v482 .am-login-v482__input-icon{
    left:14px!important;
    width:22px!important;
    height:22px!important;
    z-index:4!important;
    opacity:.72!important;
    pointer-events:none!important;
}

html body.am-body .am-login-v482 .am-login-v482__input-icon svg{
    width:15px!important;
    height:15px!important;
    display:block!important;
}

html body.am-body .am-login-v482 .am-login-v482__eye{
    right:12px!important;
    width:26px!important;
    height:26px!important;
    z-index:5!important;
}

html body.am-body .am-login-v482 .am-login-v482__input{
    display:block!important;
    width:100%!important;
    padding-left:52px!important;
    padding-right:46px!important;
    text-indent:0!important;
    box-sizing:border-box!important;
}

html body.am-body .am-login-v482 .am-login-v482__input-wrap--password .am-login-v482__input{
    padding-left:52px!important;
    padding-right:52px!important;
}

html body.am-body .am-login-v482 .am-login-v482__input::placeholder{
    opacity:1!important;
    color:rgba(255,255,255,.42)!important;
}

@media (max-width: 820px){
    html body.am-body .am-login-v482 .am-login-v482__input-icon{
        left:13px!important;
        width:22px!important;
        height:22px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__eye{
        right:12px!important;
        width:26px!important;
        height:26px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input,
    html body.am-body .am-login-v482 .am-login-v482__input-wrap--password .am-login-v482__input{
        padding-left:50px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input{
        padding-right:44px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input-wrap--password .am-login-v482__input{
        padding-right:50px!important;
    }
}

@media (max-width: 360px){
    html body.am-body .am-login-v482 .am-login-v482__input-icon{
        left:12px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input,
    html body.am-body .am-login-v482 .am-login-v482__input-wrap--password .am-login-v482__input{
        padding-left:48px!important;
    }
}


/* =========================================================
   AFTERMAN v487 - Login móvil: subir bloque principal
   Sube el branding + card + footer en móvil para evitar
   exceso de espacio superior y aprovechar mejor el alto.
   ========================================================= */

@media (max-width: 820px){
    html body.am-body .am-page-shell{
        overflow:hidden!important;
    }

    html body.am-body .am-login-v482{
        overflow:hidden!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__shell{
        justify-content:flex-start!important;
        padding-top:clamp(10px, 4.2svh, 34px)!important;
        padding-bottom:max(8px, env(safe-area-inset-bottom))!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__brand{
        margin-bottom:5px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__card{
        margin-top:0!important;
    }
}

@media (max-width: 820px) and (max-height: 780px){
    html body.am-body .am-login-v482 .am-login-v482__shell{
        padding-top:clamp(6px, 2.4svh, 16px)!important;
        gap:5px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__brand{
        margin-bottom:3px!important;
    }
}

@media (max-width: 820px) and (max-height: 690px){
    html body.am-body .am-login-v482 .am-login-v482__shell{
        justify-content:center!important;
        padding-top:6px!important;
    }
}


/* =========================================================
   AFTERMAN v488 - Login móvil con capas de textura neon
   Agrega capas sobrepuestas tipo grunge/splash + reflejo húmedo
   solo en móvil, manteniendo legible el formulario compacto v487.
   ========================================================= */

@media (max-width: 820px){
    html body.am-body .am-login-v482{
        background:#02020a!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__bg{
        background:
            radial-gradient(circle at 74% 14%, rgba(255,30,210,.20), transparent 28%),
            radial-gradient(circle at 14% 82%, rgba(40,215,255,.18), transparent 34%),
            linear-gradient(180deg, rgba(2,2,10,.18) 0%, rgba(2,2,10,.56) 36%, rgba(2,2,10,.82) 72%, #02020a 100%),
            linear-gradient(90deg, rgba(2,2,10,.74), rgba(2,2,10,.45), rgba(2,2,10,.82)),
            url('../Content/images/amclub-login-bg-v482.jpg') 64% center/cover no-repeat!important;
        filter:saturate(1.22) contrast(1.08) brightness(.80)!important;
        transform:scale(1.025)!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__texture{
        inset:0!important;
        z-index:-3!important;
        opacity:.62!important;
        mix-blend-mode:screen!important;
        background:
            url('../Content/images/amclub-login-overlay-top-v488.jpg') left -14px/72% auto no-repeat,
            url('../Content/images/amclub-login-overlay-bottom-v488.jpg') center bottom/112% auto no-repeat,
            url('../Content/images/amclub-login-texture-v482.jpg') right 44%/74% auto no-repeat!important;
        filter:saturate(1.30) contrast(1.08)!important;
    }

    html body.am-body .am-login-v482::before{
        z-index:-2!important;
        background:
            radial-gradient(circle at 8% 14%, rgba(255,0,204,.24), transparent 32%),
            radial-gradient(circle at 88% 60%, rgba(0,210,255,.16), transparent 30%),
            linear-gradient(135deg, rgba(255,30,210,.10) 0%, transparent 26%, transparent 58%, rgba(40,215,255,.10) 100%),
            repeating-linear-gradient(90deg, rgba(255,255,255,.020) 0 1px, transparent 1px 76px)!important;
        opacity:1!important;
    }

    html body.am-body .am-login-v482::after{
        content:""!important;
        position:absolute!important;
        inset:0!important;
        height:auto!important;
        z-index:-1!important;
        pointer-events:none!important;
        background:
            linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.18) 22%, rgba(0,0,0,.34) 54%, rgba(0,0,0,.68) 100%),
            radial-gradient(circle at 50% 46%, transparent 0 32%, rgba(0,0,0,.18) 68%, rgba(0,0,0,.44) 100%)!important;
        filter:none!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__card{
        background:
            linear-gradient(180deg, rgba(255,255,255,.060), rgba(255,255,255,.024)),
            linear-gradient(135deg, rgba(255,30,210,.060), rgba(40,215,255,.038)),
            rgba(9,11,27,.88)!important;
        border-color:rgba(255,255,255,.16)!important;
        box-shadow:
            0 0 0 1px rgba(255,30,210,.22),
            0 0 22px rgba(255,30,210,.14),
            0 0 24px rgba(40,215,255,.08),
            0 16px 48px rgba(0,0,0,.72)!important;
        backdrop-filter:blur(16px) saturate(1.12)!important;
        -webkit-backdrop-filter:blur(16px) saturate(1.12)!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__brand{
        text-shadow:0 0 22px rgba(255,30,210,.18)!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__footer-note{
        color:rgba(255,255,255,.74)!important;
        text-shadow:0 2px 14px rgba(0,0,0,.80)!important;
    }
}

@media (max-width: 820px) and (max-height: 720px){
    html body.am-body .am-login-v482 .am-login-v482__texture{
        background:
            url('../Content/images/amclub-login-overlay-top-v488.jpg') left -18px/64% auto no-repeat,
            url('../Content/images/amclub-login-overlay-bottom-v488.jpg') center bottom/104% auto no-repeat,
            url('../Content/images/amclub-login-texture-v482.jpg') right 42%/66% auto no-repeat!important;
        opacity:.55!important;
    }
}


/* =========================================================
   AFTERMAN v489 - Login móvil: controles del mismo tamaño
   Unifica ancho y alto de cajas de texto y botones en móvil.
   ========================================================= */

html body.am-body .am-login-v482 .am-login-v482__field,
html body.am-body .am-login-v482 .am-login-v482__input-wrap,
html body.am-body .am-login-v482 .am-login-v482__input,
html body.am-body .am-login-v482 .am-login-v482__btn{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
}

@media (max-width: 820px){
    html body.am-body .am-login-v482 .am-login-v482__form{
        width:100%!important;
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:7px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__field{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:4px!important;
        margin:0!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input-wrap{
        display:block!important;
        position:relative!important;
        height:46px!important;
        min-height:46px!important;
        margin:0!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input,
    html body.am-body .am-login-v482 .am-login-v482__btn,
    html body.am-body .am-login-v482 input.am-login-v482__btn{
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        height:46px!important;
        min-height:46px!important;
        max-height:46px!important;
        line-height:46px!important;
        border-radius:14px!important;
        margin-left:0!important;
        margin-right:0!important;
        padding-top:0!important;
        padding-bottom:0!important;
        box-sizing:border-box!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input{
        display:block!important;
        padding-left:50px!important;
        padding-right:46px!important;
        font-size:.86rem!important;
        text-align:left!important;
        background:rgba(15,18,35,.82)!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input-wrap--password .am-login-v482__input{
        padding-left:50px!important;
        padding-right:50px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__btn{
        font-size:.84rem!important;
        text-align:center!important;
        white-space:nowrap!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__btn--primary{
        margin-top:6px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input-icon,
    html body.am-body .am-login-v482 .am-login-v482__eye{
        top:50%!important;
        transform:translateY(-50%)!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__input-icon{
        left:15px!important;
    }

    html body.am-body .am-login-v482 .am-login-v482__eye{
        right:13px!important;
    }
}

@media (max-width: 360px){
    html body.am-body .am-login-v482 .am-login-v482__input-wrap,
    html body.am-body .am-login-v482 .am-login-v482__input,
    html body.am-body .am-login-v482 .am-login-v482__btn,
    html body.am-body .am-login-v482 input.am-login-v482__btn{
        height:44px!important;
        min-height:44px!important;
        max-height:44px!important;
        line-height:44px!important;
        border-radius:13px!important;
    }
}
