.dsr-global-nav{position:fixed;right:18px;bottom:18px;z-index:9999;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;filter:drop-shadow(0 7px 16px rgba(0,30,70,.18))}.dsr-nav-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border-radius:10px;border:1px solid #9cc8e8;background:rgba(255,255,255,.96);color:#063d7b;font:800 12px/1 Arial,sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 5px 15px rgba(0,35,70,.12)}.dsr-nav-btn:hover{transform:translateY(-1px);background:#eef8ff}.dsr-dashboard{background:#063f91;color:#fff;border-color:#063f91}@media(max-width:600px){.dsr-global-nav{display:none!important}.dsr-nav-btn{min-height:36px;padding:8px 10px;font-size:11px}}
/* DSR unified mobile drawer navigation */
.dsr-mobile-menu-btn{display:none}
.dsr-mobile-drawer,.dsr-mobile-backdrop{display:none}
@media(max-width:760px){
  body.dsr-menu-open{overflow:hidden}
  .dsr-mobile-menu-btn{display:flex;position:absolute;left:10px;top:50%;transform:translateY(-50%);width:42px;height:42px;border:1px solid #9fc8e6;border-radius:11px;background:rgba(255,255,255,.96);align-items:center;justify-content:center;flex-direction:column;gap:4px;z-index:60;box-shadow:0 5px 15px rgba(0,35,70,.15)}
  .dsr-mobile-menu-btn span{display:block;width:19px;height:2px;border-radius:2px;background:#063d7b}
  .dsr-mobile-drawer{display:block;position:fixed;top:0;left:0;bottom:0;width:min(320px,86vw);z-index:10001;background:linear-gradient(180deg,#061b45,#0a397f);color:#fff;box-shadow:18px 0 45px rgba(0,20,55,.35);transform:translateX(-105%);transition:transform .22s ease;overflow:auto}
  body.dsr-menu-open .dsr-mobile-drawer{transform:translateX(0)}
  .dsr-mobile-drawer-head{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid #ffffff24;font-size:15px}
  .dsr-mobile-close{border:0;background:#ffffff18;color:#fff;border-radius:9px;width:38px;height:38px;font-size:25px;line-height:1;cursor:pointer}
  .dsr-mobile-drawer-body{padding:12px}
  .dsr-mobile-clone{display:flex!important;flex-direction:column!important;gap:5px!important;width:100%!important;overflow:visible!important}
  .dsr-mobile-clone a{display:flex!important;align-items:center;gap:10px;width:100%;padding:13px 12px;border-radius:10px;color:#e9f4ff;text-decoration:none;font-weight:800;font-size:13px;background:transparent}
  .dsr-mobile-clone a:hover,.dsr-mobile-clone a.active{background:#0b73ef;color:#fff}
  .dsr-mobile-clone .section-title{display:block!important;color:#83b5df;margin:16px 8px 5px;font-size:9px}
  .dsr-mobile-clone .profile,.dsr-mobile-clone .side-service{display:block!important;margin-top:16px}
  .dsr-mobile-clone .side-logout{position:static!important;margin-top:10px!important;border-top:1px solid #ffffff22!important;color:#ffb0b6!important}
  .dsr-mobile-backdrop{display:block;position:fixed;inset:0;background:rgba(0,16,40,.48);z-index:10000;opacity:0;pointer-events:none;transition:opacity .2s}
  body.dsr-menu-open .dsr-mobile-backdrop{opacity:1;pointer-events:auto}
  .dsr-mobile-customer-trigger{position:absolute!important}
  .dsr-mobile-agent-trigger,.dsr-mobile-admin-trigger,.dsr-mobile-public-trigger,.dsr-mobile-home-trigger{position:absolute!important}
}
@media(max-width:760px){
 .dsr-mobile-clone.side,.dsr-mobile-clone.sidebar{position:static!important;left:auto!important;top:auto!important;bottom:auto!important;width:100%!important;height:auto!important;min-height:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
 .dsr-mobile-clone.side .logo-link,.dsr-mobile-clone.sidebar .side-brand{display:block!important;text-align:center!important;padding-bottom:12px!important;margin-bottom:10px!important;border-bottom:1px solid #ffffff22!important}
 .dsr-mobile-clone.side .logo-link img{width:78px!important;height:70px!important}
 .dsr-mobile-clone.sidebar .side-brand img{width:92px!important;height:70px!important;background:#07152d!important}
 .dsr-mobile-clone.side .brand-name,.dsr-mobile-clone.sidebar .side-brand b{display:block!important;font-size:10px!important;text-align:center!important}
 .dsr-mobile-clone.sidebar .side-brand small{display:block!important;text-align:center!important}
 .dsr-mobile-clone .side-service{border:1px solid #ffffff22!important;background:#ffffff0b!important;padding:12px!important;border-radius:12px!important}
}

/* FINAL MOBILE RULE: one hamburger button only; desktop sidebars/navbars are hidden on phones. */
@media(max-width:760px){
  .dsr-mobile-host{position:relative!important;padding-left:62px!important;min-height:58px!important;}
  .dsr-mobile-menu-btn{position:absolute!important;left:10px!important;top:50%!important;transform:translateY(-50%)!important;width:42px!important;height:42px!important;display:flex!important;}
  .app > .side,.shell > .sidebar{display:none!important;}
  .app > .main{margin-left:0!important;width:100%!important;}
  .shell{display:block!important;min-height:100vh!important;}
  .site-nav nav,header.nav nav,.admin-top nav{display:none!important;}
  .site-nav,.nav,.admin-top{position:relative!important;padding-left:62px!important;min-height:62px!important;}
  .top,.topbar{padding-left:62px!important;}
  .portal-header{position:relative!important;padding-left:62px!important;min-height:78px!important;}
  .portal-header .brand{display:flex!important;min-width:0!important;}
  .dsr-mobile-drawer{display:block!important;}
  .dsr-mobile-fallback-nav{display:flex!important;flex-direction:column!important;gap:5px!important;}
  .dsr-mobile-fallback-nav a{display:flex!important;align-items:center!important;width:100%!important;padding:13px 12px!important;border-radius:10px!important;color:#e9f4ff!important;text-decoration:none!important;font-weight:800!important;font-size:13px!important;}
  .dsr-mobile-fallback-nav a:hover{background:#0b73ef!important;color:#fff!important;}
  .dsr-mobile-fallback-nav .dsr-mobile-logout{margin-top:10px!important;border-top:1px solid #ffffff22!important;color:#ffb0b6!important;}
}
@media(max-width:760px){
  /* Override legacy responsive sidebar rules from customer/agent/admin stylesheets. */
  .customer .dsr-mobile-clone.side,.agent .dsr-mobile-clone.sidebar,.admin .dsr-mobile-clone.side{display:flex!important;}
  .dsr-mobile-drawer .side,.dsr-mobile-drawer .sidebar{display:flex!important;}
}
@media(max-width:760px){
 .dsr-mobile-clone{display:none!important}.dsr-mobile-text-nav{display:flex;flex-direction:column;gap:4px}.dsr-mobile-text-nav a{display:block!important;width:100%;padding:14px 13px!important;border-radius:9px;color:#f1f7ff!important;background:transparent;text-decoration:none;font-size:14px!important;font-weight:800!important}.dsr-mobile-text-nav a:hover,.dsr-mobile-text-nav a:focus{background:#1267e8!important;color:#fff!important}.dsr-mobile-text-nav a.mobile-logout{margin-top:10px;border-top:1px solid rgba(255,255,255,.18);color:#ffb8bf!important;padding-top:18px!important}.dsr-mobile-drawer-body{padding:12px 14px 25px!important}.dsr-mobile-drawer-head{font-size:16px!important}.dsr-mobile-menu-btn{background:#fff!important}.dsr-mobile-menu-btn span{background:#063d7b!important}
}

/* DSR unified mobile menu V5 */
@media(max-width:760px){
 .dsr-mobile-drawer{width:min(340px,88vw)!important;background:linear-gradient(180deg,#04183d 0%,#073b7c 62%,#05204b 100%)!important;}
 .dsr-mobile-drawer-body{padding:10px 12px 26px!important;}
 .dsr-mobile-text-nav{display:flex!important;flex-direction:column!important;gap:6px!important;}
 .dsr-mobile-text-nav a{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;min-height:46px!important;padding:11px 13px!important;border-radius:10px!important;color:#eef8ff!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.06)!important;font-size:14px!important;font-weight:800!important;line-height:1.2!important;box-sizing:border-box!important;}
 .dsr-mobile-text-nav a:hover,.dsr-mobile-text-nav a:focus,.dsr-mobile-text-nav a.mobile-first{background:linear-gradient(90deg,#0876ef,#18a94b)!important;color:#fff!important;border-color:rgba(255,255,255,.18)!important;}
 .dsr-mobile-text-nav a.mobile-logout{margin-top:12px!important;padding-top:13px!important;border-top:2px solid rgba(255,255,255,.16)!important;background:rgba(220,35,55,.12)!important;color:#ffd0d4!important;}
 .mobile-nav-icon{width:29px!important;height:29px!important;flex:0 0 29px!important;display:grid!important;place-items:center!important;border-radius:8px!important;background:rgba(255,255,255,.13)!important;font-size:15px!important;}
 .dsr-mobile-text-nav a:nth-child(3n+2) .mobile-nav-icon{background:rgba(22,169,75,.22)!important;color:#91f0b0!important;}
 .dsr-mobile-text-nav a:nth-child(3n+3) .mobile-nav-icon{background:rgba(8,118,239,.24)!important;color:#a9d9ff!important;}
}
/* Vehicle journey quick card */
.vehicle-journey{padding:8px 14px 14px;}
.journey-line{position:relative;height:54px;display:flex;align-items:center;gap:0;}
.journey-line:before{content:"";position:absolute;left:12px;right:12px;top:27px;height:4px;border-radius:999px;background:linear-gradient(90deg,#16a34a,#0b73ef,#dce9f2);box-shadow:0 0 0 1px #d8e9f2;}
.journey-segment{position:relative;z-index:1;width:12.5%;height:12px;border-radius:50%;border:3px solid #fff;background:#9fb5c5;box-shadow:0 2px 7px rgba(0,50,90,.15);}
.journey-car{position:absolute;z-index:3;top:2px;left:var(--journey-pos,0%);transform:translateX(-50%);font-size:30px;line-height:1;filter:drop-shadow(0 4px 5px rgba(0,55,100,.22));transition:left .55s cubic-bezier(.2,.8,.2,1);animation:dsrCarFloat 1.8s ease-in-out infinite;}
.journey-label{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;background:#eaf7ff;border:1px solid #c6e1ef;}
.journey-label strong{font-size:13px;color:#0757ad}.journey-label span{font-size:9px;color:#668094;font-weight:800;text-transform:uppercase;letter-spacing:.4px;}
@keyframes dsrCarFloat{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-3px)}}
.quick-agent-card{margin:0 14px 14px;display:flex;align-items:center;gap:12px;padding:11px;border-radius:12px;background:linear-gradient(135deg,#f4fbff,#e8f7ff);border:1px solid #c7e2ef;}
.quick-agent-card img{width:64px;height:64px;object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:0 5px 14px rgba(0,50,90,.14);flex:0 0 64px;}
.quick-agent-info{min-width:0;display:flex;flex-direction:column;gap:4px}.quick-agent-info strong{font-size:12px;overflow-wrap:anywhere}.quick-agent-info>span{font-size:9px;color:#667d90}.quick-agent-actions{display:flex;gap:6px;flex-wrap:wrap}.quick-agent-actions a{display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;border-radius:8px;color:#fff;font-size:9px;font-weight:900;text-decoration:none}.quick-call{background:#0aa63e}.quick-whatsapp{background:#149c5b}.quick-agent-card.awaiting{background:#fffaf0;border-color:#f1ddb1}.quick-agent-card.awaiting .agent-placeholder{font-size:28px}.quick-agent-card.awaiting span:last-child{display:block;font-size:9px;color:#6b7e8c;margin-top:4px;}
@media(max-width:600px){.journey-line{height:50px}.journey-car{font-size:27px}.journey-label{display:block}.journey-label span{display:block;margin-top:3px}.quick-agent-card img{width:56px;height:56px;flex-basis:56px}}
/* Keep full-progress agent photographs contained on every screen size. */
.assigned-agent{min-width:0;overflow:hidden}.assigned-agent img{width:96px!important;height:96px!important;max-width:96px!important;max-height:96px!important;flex:0 0 96px!important;object-fit:cover!important}.assigned-agent>div{min-width:0;flex:1}.assigned-agent h4,.assigned-agent p{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:760px){.assigned-agent{align-items:flex-start!important;gap:10px!important}.assigned-agent img{width:72px!important;height:72px!important;max-width:72px!important;max-height:72px!important;flex-basis:72px!important}.assigned-agent .call-agent{white-space:normal!important;overflow-wrap:anywhere}.order-detail{min-width:0!important;overflow:hidden!important}}

/* DSR FINAL MOBILE MENU: same ordered list structure as desktop, never compressed into a single text block. */
@media(max-width:760px){
 .dsr-mobile-drawer{width:min(360px,88vw)!important;max-width:360px!important;overflow-y:auto!important;box-shadow:14px 0 38px rgba(0,0,0,.28)!important}
 .dsr-mobile-drawer-head{min-height:64px!important;padding:14px 16px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;font-size:16px!important;border-bottom:1px solid rgba(255,255,255,.14)!important}
 .dsr-mobile-drawer-body{padding:14px 14px 28px!important}
 .dsr-mobile-text-nav{display:flex!important;flex-direction:column!important;gap:7px!important}
 .dsr-mobile-text-nav a{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:11px!important;width:100%!important;min-height:47px!important;padding:10px 12px!important;border-radius:10px!important;font-size:14px!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important}
 .dsr-mobile-text-nav a .mobile-nav-icon{width:31px!important;height:31px!important;margin:0!important}
 .dsr-mobile-text-nav a span:last-child{display:block!important;white-space:normal!important;overflow-wrap:anywhere!important}
 .dsr-mobile-text-nav a.mobile-logout{margin-top:9px!important}
}
/* DSR mobile grouped menu items: same button language/style, with expandable children. */
@media(max-width:760px){
 .mobile-nav-group{display:flex;flex-direction:column;gap:5px;width:100%;}
 .mobile-nav-group-toggle{display:grid;grid-template-columns:34px minmax(0,1fr) 22px;align-items:center;gap:11px;width:100%;min-height:47px;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.055);color:#eef8ff;font-size:14px;font-weight:800;line-height:1.2;text-align:left;cursor:pointer;box-sizing:border-box;}
 .mobile-nav-group-toggle:hover,.mobile-nav-group.is-open .mobile-nav-group-toggle{background:linear-gradient(90deg,#0876ef,#18a94b);color:#fff;border-color:rgba(255,255,255,.18);}
 .mobile-nav-group-caret{justify-self:end;font-size:23px;line-height:1;transition:transform .18s ease;}
 .mobile-nav-group.is-open .mobile-nav-group-caret{transform:rotate(90deg);}
 .mobile-nav-group-items{display:flex;flex-direction:column;gap:5px;padding:2px 0 2px 18px;}
 .mobile-nav-group-items a{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:center;gap:9px;width:100%;min-height:42px!important;padding:8px 10px!important;border-radius:9px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.05)!important;color:#dceeff!important;text-decoration:none;font-size:12px!important;font-weight:800;}
 .mobile-nav-group-items a:hover,.mobile-nav-group-items a:focus{background:#1267e8!important;color:#fff!important;}
 .mobile-nav-group-items .mobile-nav-icon{width:27px!important;height:27px!important;font-size:12px!important;}
}

@media(max-width:760px){.dsr-mobile-menu-btn{z-index:10003!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important}}

/* DSR ADMIN MOBILE DASHBOARD ACCESS FIX — 2026-08-28
   The desktop global Back/Dashboard controls were previously hidden on phones.
   Keep the existing mobile drawer intact, but make the global controls available
   on mobile as well.  This is intentionally limited to the global portal controls. */
@media (max-width:760px){
  .dsr-global-nav{
    display:flex!important;
    position:fixed!important;
    right:10px!important;
    bottom:10px!important;
    left:10px!important;
    z-index:10004!important;
    gap:7px!important;
    flex-wrap:nowrap!important;
    justify-content:flex-end!important;
    align-items:center!important;
    pointer-events:none!important;
    filter:drop-shadow(0 6px 14px rgba(0,30,70,.22))!important;
  }
  .dsr-global-nav .dsr-nav-btn{
    pointer-events:auto!important;
    min-height:40px!important;
    padding:9px 12px!important;
    font-size:12px!important;
    white-space:nowrap!important;
    box-sizing:border-box!important;
  }
}
@media (max-width:420px){
  .dsr-global-nav{right:8px!important;left:8px!important;bottom:8px!important;gap:5px!important;}
  .dsr-global-nav .dsr-nav-btn{padding:8px 10px!important;font-size:11px!important;min-height:38px!important;}
}
