/* Sales sidebar controller — desktop collapse + mobile drawer + independent navigation scrolling. */
.nfx-mobile-nav-backdrop{display:none}
.nfx-mobile-sidebar-close{display:none}
.nfx-sidebar-toggle{display:none}

.sidebar{overflow:visible!important;transition:width .2s ease!important}
.sidebar .side-brand{flex:0 0 auto!important;position:relative!important}
.sidebar .side-nav{display:flex!important;flex-direction:column!important;gap:4px!important;flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:contain!important;scrollbar-width:thin!important}
.sidebar .side-nav::-webkit-scrollbar{width:5px}
.sidebar .side-nav::-webkit-scrollbar-track{background:transparent}
.sidebar .side-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:99px}
.sidebar .side-nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.32)}
.sidebar .side-bottom{flex:0 0 auto!important}
.topbar,.main{transition:left .2s ease,margin-left .2s ease!important}

@media (min-width:981px){
  .nfx-mobile-nav-backdrop,.nfx-mobile-sidebar-close{display:none!important}
  .nfx-sidebar-toggle{
    position:absolute!important;
    display:grid!important;
    place-items:center!important;
    right:-13px!important;
    top:92px!important;
    width:28px!important;
    height:28px!important;
    padding:0!important;
    border:1px solid #d7e0ec!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#334155!important;
    box-shadow:0 4px 12px rgba(15,23,42,.14)!important;
    z-index:55!important;
    cursor:pointer!important;
    transition:background .14s ease,color .14s ease,transform .2s ease!important;
  }
  .nfx-sidebar-toggle:hover{background:#f8fbff!important;color:#0b63f6!important}
  .nfx-sidebar-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
  body.nfx-sidebar-collapsed{--sidebar:78px!important}
  body.nfx-sidebar-collapsed .sidebar .side-brand{justify-content:center!important;padding-left:10px!important;padding-right:10px!important}
  body.nfx-sidebar-collapsed .sidebar .side-brand img{width:36px!important;height:36px!important;margin:0!important}
  body.nfx-sidebar-collapsed .sidebar .side-brand-copy{display:none!important}
  body.nfx-sidebar-collapsed .sidebar .side-nav{padding-left:8px!important;padding-right:8px!important}
  body.nfx-sidebar-collapsed .sidebar .nav-item{justify-content:center!important;gap:0!important;padding-left:0!important;padding-right:0!important;font-size:0!important;white-space:nowrap!important}
  body.nfx-sidebar-collapsed .sidebar .nav-item .nav-label{display:none!important}
  body.nfx-sidebar-collapsed .sidebar .nav-item .ico{width:20px!important;height:20px!important;margin:0!important;color:#d5e2f2!important;stroke:currentColor!important}
  body.nfx-sidebar-collapsed .sidebar .nav-item.active .ico{color:#fff!important}
  body.nfx-sidebar-collapsed .sidebar .cc-nav-caption{display:none!important}
  body.nfx-sidebar-collapsed .sidebar [data-cc-nav-group]{display:flex!important;flex-direction:column!important;gap:4px!important}
  body.nfx-sidebar-collapsed .sidebar .side-bottom{padding:6px!important;min-height:10px!important}
  body.nfx-sidebar-collapsed .sidebar .side-live,body.nfx-sidebar-collapsed .sidebar .side-version{display:none!important}
  body.nfx-sidebar-collapsed .nfx-sidebar-toggle svg{transform:rotate(180deg)}
}

@media (max-width:980px){
  body.nfx-mobile-nav-open{overflow:hidden!important}
  body.nfx-sidebar-collapsed{--sidebar:224px!important}
  .nfx-sidebar-toggle{display:none!important}
  .sidebar{
    position:fixed!important;
    top:0!important;
    bottom:0!important;
    left:0!important;
    width:min(88vw,310px)!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    overscroll-behavior:contain!important;
    transform:translate3d(-105%,0,0)!important;
    transition:transform .22s ease,box-shadow .22s ease!important;
    box-shadow:none!important;
    z-index:50!important;
    touch-action:pan-y!important;
  }
  .sidebar.mobile-open{transform:translate3d(0,0,0)!important;box-shadow:18px 0 42px rgba(2,12,27,.34)!important}
  .sidebar .side-brand{
    min-height:78px!important;
    height:auto!important;
    padding-top:max(14px,env(safe-area-inset-top))!important;
    background:linear-gradient(180deg,var(--navy),#0a2444)!important;
    z-index:2!important;
  }
  .sidebar .side-nav{
    overflow-y:scroll!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    padding:5px 10px 18px!important;
  }
  .sidebar .side-nav .nav-item{flex:0 0 44px!important}
  .sidebar .side-bottom{
    margin-top:0!important;
    padding:10px 12px max(14px,env(safe-area-inset-bottom))!important;
    background:linear-gradient(0deg,#081d36,#0a2444)!important;
    border-top:1px solid rgba(255,255,255,.08)!important;
  }
  .nfx-mobile-sidebar-close{
    display:grid!important;
    place-items:center!important;
    flex:0 0 36px!important;
    width:36px!important;
    height:36px!important;
    margin-left:auto!important;
    border:1px solid rgba(255,255,255,.18)!important;
    border-radius:9px!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:25px!important;
    line-height:1!important;
    cursor:pointer!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .nfx-mobile-sidebar-close:active{background:rgba(255,255,255,.18)!important}
  .nfx-mobile-nav-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    z-index:49!important;
    border:0!important;
    margin:0!important;
    padding:0!important;
    background:rgba(5,16,31,.5)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .2s ease,visibility .2s ease!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .nfx-mobile-nav-backdrop.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .mobile-menu{display:grid!important}
}
