/* DriverLog AU V8.9.0 — Bottom Navigation Professional Hotfix 9
   Narrow-screen-only repair. Desktop/left sidebar is intentionally untouched.
   Goals: no squeezed Driver Pulse, no floating Driver Brief over records, no vertical labels,
   stable tap targets, predictable safe-area spacing, and graceful horizontal scrolling. */

@media (max-width:899px){
  :root{--dl-bottom-nav-h:72px;--dl-bottom-item-min:68px}

  /* Mobile/tablet must never inherit the desktop Driver Pulse/footer as another nav item. */
  body.driverlog-pro-web:not(.auth-locked) .dl-left-pulse,
  body.driverlog-pro-web:not(.auth-locked) .web-sidebar-foot{
    display:none!important;
  }

  /* Reserve exactly one clean navigation zone. */
  body.driverlog-pro-web:not(.auth-locked){
    padding-bottom:calc(var(--dl-bottom-nav-h) + env(safe-area-inset-bottom))!important;
  }
  body.driverlog-pro-web:not(.auth-locked) #appShell>main{
    padding-bottom:calc(var(--dl-bottom-nav-h) + 22px + env(safe-area-inset-bottom))!important;
  }

  body.driverlog-pro-web:not(.auth-locked) #appShell>nav{
    position:fixed!important;
    left:0!important;right:0!important;bottom:0!important;top:auto!important;
    z-index:190!important;
    width:100%!important;
    height:calc(var(--dl-bottom-nav-h) + env(safe-area-inset-bottom))!important;
    min-height:calc(var(--dl-bottom-nav-h) + env(safe-area-inset-bottom))!important;
    max-height:calc(var(--dl-bottom-nav-h) + env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;

    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:var(--dl-bottom-item-min)!important;
    grid-template-columns:none!important;
    align-items:center!important;
    align-content:center!important;
    justify-content:start!important;
    gap:2px!important;

    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    scroll-snap-type:x proximity!important;

    padding:5px max(6px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))!important;
    background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(247,250,255,.995))!important;
    border-top:1px solid #b9c9dc!important;
    box-shadow:0 -7px 24px rgba(18,46,78,.13)!important;
    contain:layout paint!important;
  }
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}

  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button{
    width:var(--dl-bottom-item-min)!important;
    min-width:var(--dl-bottom-item-min)!important;
    max-width:var(--dl-bottom-item-min)!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    margin:0!important;
    padding:5px 3px!important;
    box-sizing:border-box!important;

    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;

    overflow:hidden!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;

    border:1px solid transparent!important;
    border-radius:11px!important;
    background:transparent!important;
    color:#254561!important;
    box-shadow:none!important;
    transform:none!important;
    scroll-snap-align:center!important;
    touch-action:manipulation!important;
  }

  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button:hover,
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button:active{
    transform:none!important;
    background:#edf5ff!important;
  }
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button.active{
    background:linear-gradient(180deg,#edf6ff,#e4f0ff)!important;
    border-color:#a9c7e7!important;
    color:#0d5fc1!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)!important;
  }

  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button .nav-icon{
    display:block!important;flex:0 0 auto!important;
    margin:0!important;font-size:18px!important;line-height:19px!important;
  }
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button .nav-label{
    display:block!important;flex:0 0 auto!important;
    width:100%!important;margin:0!important;
    overflow:hidden!important;text-overflow:ellipsis!important;
    white-space:nowrap!important;text-align:center!important;
    font-size:9.5px!important;font-weight:800!important;line-height:11px!important;
    writing-mode:horizontal-tb!important;word-break:keep-all!important;
  }

  /* Driver Brief becomes an eighth real bottom-nav item instead of a floating message
     that can cover Delete/Save buttons and table rows. JS moves the existing button here. */
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>.dl-brief-toggle.nav-brief-button{
    display:flex!important;
    position:static!important;
    inset:auto!important;
    width:var(--dl-bottom-item-min)!important;
    min-width:var(--dl-bottom-item-min)!important;
    max-width:var(--dl-bottom-item-min)!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:5px 3px!important;
    border:1px solid #d1c9ee!important;
    border-radius:11px!important;
    background:linear-gradient(180deg,#f7f3ff,#f0edff)!important;
    color:#55408a!important;
    box-shadow:none!important;
    font-size:inherit!important;
    z-index:auto!important;
  }
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>.dl-brief-toggle.nav-brief-button .nav-icon{font-size:18px!important;line-height:19px!important}
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>.dl-brief-toggle.nav-brief-button .nav-label{font-size:9.5px!important;line-height:11px!important}

  /* Any brief toggle that has not yet been moved is hidden so there is never a temporary overlap. */
  body.driverlog-pro-web:not(.auth-locked) body>.dl-brief-toggle{display:none!important}
}

/* Split laptop / iPad portrait: all 8 controls fit as equal professional cells when space allows. */
@media (min-width:610px) and (max-width:899px){
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav{
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
    grid-auto-columns:auto!important;
    overflow-x:hidden!important;
  }
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>button,
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav>.dl-brief-toggle.nav-brief-button{
    width:100%!important;min-width:0!important;max-width:none!important;
  }
}

/* Phones: never shrink. Swipe the bar horizontally instead. */
@media (max-width:609px){
  :root{--dl-bottom-item-min:70px}
  body.driverlog-pro-web:not(.auth-locked) #appShell>nav{
    grid-template-columns:none!important;
    grid-auto-columns:var(--dl-bottom-item-min)!important;
    overflow-x:auto!important;
  }
}
