/**
 * MISTER FAST LiveMapChat WEB V3.5.6
 * Enterprise Sidebar Menu Cleanup
 * Base: V3.5.3.4 Recovery Baseline
 */

@media (min-width:901px){
  body.mf-desktop-shell-body .mf514-sidebar{
    overflow:hidden!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu{
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
    padding:8px 9px 12px!important;
    margin:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    scrollbar-width:none!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu::-webkit-scrollbar{
    display:none!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a{
    position:relative!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 14px!important;
    align-items:center!important;
    column-gap:8px!important;
    width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    height:52px!important;
    padding:5px 9px!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.20)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.075)!important;
    color:#fff!important;
    box-shadow:none!important;
    text-decoration:none!important;
    overflow:hidden!important;
    transform:none!important;
    transition:background .16s ease,border-color .16s ease,color .16s ease!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button:hover,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a:hover{
    background:rgba(255,255,255,.14)!important;
    border-color:rgba(255,255,255,.34)!important;
    transform:none!important;
  }

  /* Menu icon */
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button > span:first-child,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a > span:first-child{
    grid-column:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    margin:0!important;
    border-radius:11px!important;
    background:rgba(255,255,255,.12)!important;
    font-size:18px!important;
    line-height:1!important;
    overflow:hidden!important;
  }

  /* Full menu label; no ellipsis. */
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button > b,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a > b{
    grid-column:2!important;
    display:block!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
    text-overflow:clip!important;
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:700!important;
    text-align:left!important;
  }

  /* One arrow only; suppress legacy duplicate arrows. */
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button::before,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a::before{
    display:none!important;
    content:none!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button::after,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a::after{
    content:'›'!important;
    grid-column:3!important;
    position:static!important;
    display:block!important;
    width:14px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:none!important;
    color:currentColor!important;
    opacity:.72!important;
    font-size:20px!important;
    line-height:1!important;
    text-align:center!important;
    transform:none!important;
  }

  /* Active means current operation only. */
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button.is-active,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a.is-active{
    background:#ffc400!important;
    border-color:#ffc400!important;
    color:#003da5!important;
    box-shadow:0 7px 16px rgba(0,38,102,.16)!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > button.is-active > span:first-child,
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu > a.is-active > span:first-child{
    background:rgba(255,255,255,.58)!important;
  }

  /* Dashboard remains an ordinary menu item unless routing marks it active. */
  body.mf-desktop-shell-body .mf514-sidebar .mf320-dashboard-link:not(.is-active){
    background:rgba(255,255,255,.075)!important;
    border-color:rgba(255,255,255,.20)!important;
    color:#fff!important;
  }

  /* Login/logout are account actions, not active navigation. */
  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu .mf3243-sidebar-auth{
    margin-top:7px!important;
    background:#fff!important;
    border-color:#fff!important;
    color:#003da5!important;
    box-shadow:none!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu .mf3243-sidebar-auth:hover{
    background:#eef5ff!important;
    border-color:#eef5ff!important;
    color:#003da5!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu .mf3243-sidebar-auth > span:first-child{
    background:#edf4ff!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu .mf3243-sidebar-auth.is-logout{
    background:rgba(255,255,255,.10)!important;
    border-color:rgba(255,255,255,.32)!important;
    color:#fff!important;
  }

  body.mf-desktop-shell-body .mf514-sidebar .mf514-menu .mf3243-sidebar-auth.is-logout:hover{
    background:#c62828!important;
    border-color:#c62828!important;
    color:#fff!important;
  }

  /* Management/request action separated visually from navigation. */
  body.mf-desktop-shell-body .mf351-customer-request-link{
    position:relative!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 14px!important;
    align-items:center!important;
    column-gap:8px!important;
    min-height:66px!important;
    margin:10px 9px 14px!important;
    padding:7px 9px!important;
    border:1px solid rgba(255,255,255,.34)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }

  body.mf-desktop-shell-body .mf351-customer-request-link:hover{
    background:rgba(255,255,255,.16)!important;
    color:#fff!important;
  }

  body.mf-desktop-shell-body .mf351-customer-request-link .mf351-customer-request-icon{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    border-radius:11px!important;
    background:rgba(255,255,255,.13)!important;
  }

  body.mf-desktop-shell-body .mf351-customer-request-link > span:nth-child(2){
    min-width:0!important;
    overflow:hidden!important;
  }

  body.mf-desktop-shell-body .mf351-customer-request-link b{
    display:block!important;
    overflow:visible!important;
    white-space:nowrap!important;
    text-overflow:clip!important;
    font-size:13px!important;
  }

  body.mf-desktop-shell-body .mf351-customer-request-link small{
    display:block!important;
    margin-top:2px!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    font-size:9px!important;
    color:rgba(255,255,255,.66)!important;
  }

  body.mf-desktop-shell-body .mf351-customer-request-link em{
    font-size:20px!important;
    color:#fff!important;
    opacity:.72!important;
  }
}

/* Collapsed sidebar: icons only, preserving tooltips/titles. */
body.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu > button,
body.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu > a{
  display:flex!important;
  justify-content:center!important;
  width:52px!important;
  min-width:52px!important;
  padding:5px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu > button > b,
body.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu > a > b,
body.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu > button::after,
body.mf212-sidebar-collapsed .mf514-sidebar .mf514-menu > a::after{
  display:none!important;
}

body.mf212-sidebar-collapsed .mf351-customer-request-link{
  display:flex!important;
  justify-content:center!important;
  width:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:5px!important;
}

body.mf212-sidebar-collapsed .mf351-customer-request-link > span:nth-child(2),
body.mf212-sidebar-collapsed .mf351-customer-request-link em{
  display:none!important;
}
