/* VIVEO.TV cliente QR nav unificado v134
   Barra superior comun para paginas cliente/carta de todos los canales.
   El comportamiento real lo refuerza /canales/assets/js/cliente-mobile-nav.js. */
html.viveo-client-mobile-html,
body.viveo-client-mobile-body{
    min-height:100dvh!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-behavior:smooth;
    background:var(--mobile-bars-color,#20111d)!important;
}

body.viveo-client-mobile-body::after{
    content:"";
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    height:env(safe-area-inset-bottom,0px);
    background:var(--mobile-bars-color,#20111d);
    z-index:2147482999;
    pointer-events:none;
}

body.viveo-client-mobile-body .viveo-client-nav{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    z-index:2147483000!important;
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(0,1fr)!important;
    grid-template-columns:none!important;
    gap:7px!important;
    padding:calc(9px + env(safe-area-inset-top,0px)) 9px 9px!important;
    border-radius:0!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
    background:color-mix(in srgb, var(--mobile-bars-color,#20111d) 88%, #000 12%)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.35)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    transform:none!important;
    contain:none!important;
}
body.viveo-client-mobile-body .viveo-client-nav::-webkit-scrollbar{display:none!important;}

body.viveo-client-mobile-body .viveo-client-nav a{
    min-height:38px!important;
    height:38px!important;
    padding:0 10px!important;
    border-radius:13px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    color:#fff!important;
    text-decoration:none!important;
    font-weight:900!important;
    font-size:12px!important;
    line-height:1!important;
    background:rgba(255,255,255,.09)!important;
    border:1px solid rgba(255,255,255,.13)!important;
    box-shadow:none!important;
    transform:none!important;
}

body.viveo-client-mobile-body .viveo-client-nav a:active,
body.viveo-client-mobile-body .viveo-client-nav a:hover{
    background:rgba(255,255,255,.16)!important;
}

#viveoClientNavSpacer{
    display:block!important;
    width:100%!important;
    height:calc(58px + env(safe-area-inset-top,0px))!important;
    min-height:calc(58px + env(safe-area-inset-top,0px))!important;
    flex:0 0 auto!important;
}

body.viveo-client-mobile-body main{
    overflow:visible!important;
    height:auto!important;
    min-height:calc(100dvh - 58px)!important;
    transform:none!important;
    contain:none!important;
}

body.viveo-client-mobile-body #inicio,
body.viveo-client-mobile-body #menu-dia,
body.viveo-client-mobile-body #contacto,
body.viveo-client-mobile-body #carta,
body.viveo-client-mobile-body #tarifas,
body.viveo-client-mobile-body #reservas,
body.viveo-client-mobile-body #actividades,
body.viveo-client-mobile-body #horario,
body.viveo-client-mobile-body #inmuebles,
body.viveo-client-mobile-body #servicios,
body.viveo-client-mobile-body #tratamientos{
    scroll-margin-top:calc(76px + env(safe-area-inset-top,0px))!important;
}

@media(max-width:390px){
    body.viveo-client-mobile-body .viveo-client-nav{gap:5px!important;padding-left:7px!important;padding-right:7px!important;}
    body.viveo-client-mobile-body .viveo-client-nav a{font-size:11px!important;min-width:auto!important;padding-left:8px!important;padding-right:8px!important;}
}


/* v150 ajuste barra QR: evitar que menus de 5 opciones rompan el ancho */
body.viveo-client-mobile-body .viveo-client-nav{
    grid-auto-columns:minmax(76px,1fr)!important;
}
@media(max-width:420px){
    body.viveo-client-mobile-body .viveo-client-nav{
        grid-auto-columns:minmax(70px,1fr)!important;
        overflow-x:auto!important;
    }
}


/* v151 auditoria: ultimo refuerzo comun para QR cliente.
   Mantiene la barra fija fuera de contenedores y evita recortes laterales/verticales. */
html.viveo-client-mobile-html,
body.viveo-client-mobile-body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
}
body.viveo-client-mobile-body *{
    box-sizing:border-box;
}
body.viveo-client-mobile-body main{
    width:min(780px,100%)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
body.viveo-client-mobile-body img{
    max-width:100%;
}
body.viveo-client-mobile-body .viveo-client-nav{
    min-width:0!important;
}
body.viveo-client-mobile-body .viveo-client-nav a{
    min-width:0!important;
}
@media(max-width:420px){
    body.viveo-client-mobile-body .viveo-client-nav{
        grid-auto-columns:minmax(66px,1fr)!important;
        gap:5px!important;
        padding-left:7px!important;
        padding-right:7px!important;
    }
    body.viveo-client-mobile-body .viveo-client-nav a{
        font-size:11px!important;
        padding-left:6px!important;
        padding-right:6px!important;
    }
}
