/*
 * AKB Mobile Bottom Menu
 * CSS totalmente escopado para não afetar menus, sidebars ou widgets do Elementor.
 */

#akb-mobile-bottom-menu-root,
#akb-mobile-bottom-menu-root *,
#akb-mobile-bottom-menu-root *::before,
#akb-mobile-bottom-menu-root *::after{
    box-sizing:border-box !important;
}

#akb-mobile-bottom-menu-root.akb-mbm-wrap{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:calc(var(--akb-mbm-bottom-space) + env(safe-area-inset-bottom)) !important;
    z-index:999999 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    pointer-events:none !important;
    padding:0 12px !important;
    margin:0 !important;
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    transform:none !important;
    isolation:isolate !important;
    contain:layout style !important;
}

#akb-mobile-bottom-menu-root .akb-mbm{
    pointer-events:auto !important;
    width:100% !important;
    max-width:var(--akb-mbm-max-width) !important;
    min-width:0 !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:2px !important;
    padding:12px 10px 10px !important;
    margin:0 auto !important;
    border:0 !important;
    border-radius:var(--akb-mbm-radius) !important;
    background:linear-gradient(135deg,var(--akb-mbm-bg-start),var(--akb-mbm-bg-end)) !important;
    box-shadow:0 15px 40px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.05) !important;
    backdrop-filter:blur(12px) !important;
    -webkit-backdrop-filter:blur(12px) !important;
    overflow:hidden !important;
    list-style:none !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-item,
#akb-mobile-bottom-menu-root a.akb-mbm-item,
#akb-mobile-bottom-menu-root button.akb-mbm-item{
    all:unset !important;
    flex:1 1 0 !important;
    min-width:0 !important;
    width:auto !important;
    height:auto !important;
    min-height:48px !important;
    max-height:none !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:2px !important;
    padding:4px 2px !important;
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    outline:none !important;
    text-decoration:none !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    line-height:1 !important;
    font-family:inherit !important;
    font-size:initial !important;
    font-weight:normal !important;
    color:var(--akb-mbm-icon-default) !important;
    cursor:pointer !important;
    appearance:none !important;
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
    position:relative !important;
    overflow:visible !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-item:hover,
#akb-mobile-bottom-menu-root .akb-mbm-item:focus,
#akb-mobile-bottom-menu-root .akb-mbm-item:active,
#akb-mobile-bottom-menu-root a.akb-mbm-item:hover,
#akb-mobile-bottom-menu-root button.akb-mbm-item:hover{
    background:transparent !important;
    background-image:none !important;
    box-shadow:none !important;
    outline:none !important;
    text-decoration:none !important;
    color:var(--akb-mbm-icon-active) !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-item.is-active{
    color:var(--akb-mbm-icon-active) !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    color:inherit !important;
    line-height:1 !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-icon svg,
#akb-mobile-bottom-menu-root .akb-mbm-item svg{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    max-width:28px !important;
    max-height:28px !important;
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    color:inherit !important;
    fill:currentColor !important;
    stroke:none !important;
    transform:none !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-icon svg path,
#akb-mobile-bottom-menu-root .akb-mbm-item svg path{
    fill:currentColor !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-label{
    display:none !important;
    font-size:10px !important;
    line-height:1.2 !important;
    font-weight:500 !important;
    color:inherit !important;
    opacity:.95 !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    white-space:nowrap !important;
    text-decoration:none !important;
}

#akb-mobile-bottom-menu-root .akb-mbm.show-labels .akb-mbm-label{
    display:block !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-bar{
    display:block !important;
    width:48px !important;
    max-width:70% !important;
    height:4px !important;
    min-height:4px !important;
    border-radius:999px !important;
    background:transparent !important;
    opacity:0 !important;
    margin:6px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
    transition:opacity .2s ease, background-color .2s ease !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-item.is-active .akb-mbm-bar{
    background:var(--akb-mbm-bar) !important;
    opacity:1 !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-avatar{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    max-width:34px !important;
    max-height:34px !important;
    border-radius:50% !important;
    overflow:hidden !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#222 !important;
    box-shadow:0 0 0 1px rgba(255,255,255,.08) !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-avatar img{
    width:100% !important;
    height:100% !important;
    min-width:100% !important;
    min-height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:cover !important;
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:50% !important;
    box-shadow:none !important;
}

#akb-mobile-bottom-menu-root .akb-mbm-profile.is-active .akb-mbm-avatar{
    box-shadow:0 0 0 2px rgba(255,255,255,.22) !important;
}

@media (min-width:768px){
    #akb-mobile-bottom-menu-root.akb-mbm-wrap{
        display:none !important;
    }
}

@media (max-width:360px){
    #akb-mobile-bottom-menu-root .akb-mbm{
        padding-left:8px !important;
        padding-right:8px !important;
    }

    #akb-mobile-bottom-menu-root .akb-mbm-icon,
    #akb-mobile-bottom-menu-root .akb-mbm-avatar{
        width:31px !important;
        height:31px !important;
        min-width:31px !important;
        min-height:31px !important;
    }

    #akb-mobile-bottom-menu-root .akb-mbm-icon svg,
    #akb-mobile-bottom-menu-root .akb-mbm-item svg{
        width:25px !important;
        height:25px !important;
        min-width:25px !important;
        min-height:25px !important;
        max-width:25px !important;
        max-height:25px !important;
    }

    #akb-mobile-bottom-menu-root .akb-mbm-bar{
        width:40px !important;
    }
}
