
/* V6.2.2 — HOME LIMPA + LOGIN SEM BARRA DE ROLAGEM */

/* HOME: quick actions become the first content after the top bar. */
.raffle-modern-home{
    padding-top:12px!important;
}
.raffle-modern-home .v6-quick-nav{
    margin-top:0!important;
}

/* LOGIN:
   Use exactly one viewport:
   header + centered main + compact footer.
   Body remains an overflow container so mobile browser pull-to-refresh still works,
   but there is no scrollable excess and the scrollbar is hidden. */
body.customer-body:has(.raffle-auth-page){
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior-y:auto!important;
    scrollbar-width:none!important;
    display:flex!important;
    flex-direction:column!important;
    padding:0!important;
    margin:0!important;
}
body.customer-body:has(.raffle-auth-page)::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
}

/* Top remains visible and consumes only its own height. */
body.customer-body:has(.raffle-auth-page) .app-header{
    flex:0 0 auto!important;
    position:relative!important;
    top:auto!important;
}

/* Main gets exactly the remaining space and centers the card. */
body.customer-body:has(.raffle-auth-page) .raffle-auth-page{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    width:100%!important;
    margin:0!important;
    padding:10px!important;
    display:grid!important;
    place-items:center!important;
    overflow:hidden!important;
}

/* Card stays centered and never creates page overflow. */
body.customer-body:has(.raffle-auth-page) .raffle-auth-card{
    width:min(100%,760px)!important;
    max-height:100%!important;
    margin:auto!important;
    align-self:center!important;
    justify-self:center!important;
    overflow:hidden!important;
}

/* Internal form stays normal; tiny screens may scroll internally only if absolutely necessary. */
body.customer-body:has(.raffle-auth-page) .raffle-auth-form{
    max-height:100%!important;
    overflow:auto!important;
    scrollbar-width:none!important;
}
body.customer-body:has(.raffle-auth-page) .raffle-auth-form::-webkit-scrollbar{
    display:none!important;
    width:0!important;
}

/* Footer is always visible on login and consumes only compact height. */
body.customer-body:has(.raffle-auth-page) .mz-footer-v621{
    flex:0 0 auto!important;
    margin:0!important;
}

/* Pull-to-refresh remains available in normal mobile browser access. */
@media(max-width:900px){
    body.customer-body:has(.raffle-auth-page){
        overscroll-behavior-y:auto!important;
    }
    body.customer-body:has(.raffle-auth-page) .raffle-auth-page{
        padding:8px!important;
    }
    body.customer-body:has(.raffle-auth-page) .raffle-auth-card{
        width:min(100%,500px)!important;
    }
}
@media(max-width:700px){
    body.customer-body:has(.raffle-auth-page) .raffle-auth-card{
        width:min(100%,460px)!important;
    }
}
