/* Minicart geometry: single authoritative layout, after generated theme CSS.
   PHP design settings own colors, spacing and widths, never display/overflow. */
.minicart-outer-wrapper{
    position:fixed;
    top:0;
    right:0;
    height:100vh;
    height:100dvh;
    max-height:100vh;
    max-height:100dvh;
    z-index:999995;
    display:none;
    box-sizing:border-box;
    overflow:hidden;
}
.minicart-outer-wrapper.fade-in{display:block;}
#minicart.minicart-inner-wrapper{
    position:fixed;
    top:var(--nm-b-v3-admin-bar-offset,0px);
    right:0;
    z-index:999996;
    display:none;
    box-sizing:border-box;
    min-height:0;
    max-height:calc(100vh - var(--nm-b-v3-admin-bar-offset,0px));
    max-height:calc(100dvh - var(--nm-b-v3-admin-bar-offset,0px));
    height:var(--nm-minicart-height-desktop,96%);
    overflow:hidden;
}
#minicart.minicart-inner-wrapper.fade-in-body{
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    justify-content:flex-start;
}
#minicart.minicart-inner-wrapper.fade-in-body>.minicart-head{
    flex:0 0 auto;
    min-width:0;
}
#minicart.minicart-inner-wrapper.fade-in-body>.minicart-body{
    position:relative;
    flex:1 1 auto;
    min-height:0;
    min-width:0;
    height:auto;
    max-height:none;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
}
#minicart.minicart-inner-wrapper.fade-in-body>.minicart-footer{
    flex:0 0 auto;
    min-width:0;
    align-self:stretch;
}
@media (min-width:769px) and (max-width:992px){
    #minicart.minicart-inner-wrapper{height:var(--nm-minicart-height-tablet,96%)}
}
@media (max-width:768px){
    #minicart.minicart-inner-wrapper{height:var(--nm-minicart-height-phone,96%)}
}
