/* Cabby dispatch workspace: navy, turquoise and quiet data surfaces. */
:root{--ops-navy:#001840;--ops-teal:#007F8A;--ops-ice:#E9FBFC;--ops-paper:#F4F7F9;--ops-line:#DFE7ED;--ops-gold:#D09840}
body{background:var(--ops-paper)!important;color:var(--ops-navy)}
.ssls-global-header{background:var(--ops-navy)!important;border-radius:16px!important;box-shadow:0 4px 16px #00184012!important}
.main{border-radius:18px!important;border:1px solid var(--ops-line)!important;box-shadow:0 6px 24px #00184006!important}
.main::before{display:none!important}
.topbar{background:#fff!important;border-bottom:1px solid var(--ops-line)!important;min-height:74px!important}
.topbar-page-title{font-size:22px!important;letter-spacing:-.5px}
.topbar-breadcrumb{font-size:10px!important;color:#718299!important}
.sidebar{background:#fff!important;border-color:var(--ops-line)!important}
.sidebar .nav-item{border-radius:10px!important;min-height:44px!important}
.sidebar .nav-item.active{background:var(--ops-ice)!important;color:var(--ops-teal)!important;box-shadow:none!important}
.section-block{box-shadow:none!important;border:1px solid var(--ops-line)!important;border-radius:14px!important}
.form-input:focus{border-color:var(--ops-teal)!important;box-shadow:0 0 0 3px #007f8a12!important}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #00CBD4!important;outline-offset:3px!important}
#page-upcoming .ops-overview{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:0;border:1px solid var(--ops-line);border-radius:14px;background:#fff;margin-bottom:18px;flex:none;overflow:hidden}
.ops-overview>div{padding:16px 20px;border-right:1px solid var(--ops-line);display:flex;flex-direction:column;gap:4px}
.ops-overview>div:last-child{border:0}
.ops-overview .ops-overview-heading{background:var(--ops-navy);color:#fff;justify-content:center}
.ops-overview-heading strong{font-size:14px}.ops-overview-heading small{color:#aac3d7;font-size:9px}
.ops-metric-label{font-size:10px;color:#64748a}.ops-metric-value{font-size:26px;font-weight:700;line-height:1.3;font-variant-numeric:tabular-nums;color:var(--ops-navy)}
.ops-metric-value[data-count="waiting"]{color:#9c6a18}.ops-metric-value[data-count="sent"]{color:var(--ops-teal)}
#page-upcoming .upcoming-date-bar{background:transparent;border:0;padding:0;min-height:40px;margin-bottom:14px;gap:10px}
#page-upcoming .upcoming-date-bar label{font-size:11px}
#page-upcoming .btn-show-all{min-height:38px;border-radius:9px!important;font-size:10px!important}
#page-upcoming .upcoming-filter-strip{background:#fff;border:1px solid var(--ops-line);border-radius:12px;min-height:62px;padding:10px;gap:10px;flex-wrap:wrap}
#page-upcoming .filter-tabs{gap:4px;background:#f1f5f8;border-radius:9px;padding:3px}
#page-upcoming .filter-tab{font-size:10px!important;min-height:36px!important;border:0!important;background:transparent!important;border-radius:7px!important;color:#64748a!important}
#page-upcoming .filter-tab.active{background:var(--ops-navy)!important;color:#fff!important;box-shadow:0 2px 4px #00184015!important}
#page-upcoming .upcoming-search-wrap{min-width:180px;flex:1;max-width:300px;background:#f7f9fb!important;border:1px solid var(--ops-line)!important;border-radius:9px!important}
#page-upcoming .upcoming-search-wrap input{font-size:11px!important}
#page-upcoming #upcomingExportBtn{background:#fff!important;border:1px solid var(--ops-line)!important;color:var(--ops-teal)!important;font-size:10px!important}
#page-upcoming .upcoming-page-size>span{font-size:9px!important}
#page-upcoming .upcoming-table-scroll{border:1px solid var(--ops-line);border-radius:12px;min-height:250px}
#page-upcoming #upcomingTable{width:100%!important;min-width:1000px!important;table-layout:fixed!important;border-collapse:collapse}
#page-upcoming #upcomingTable th{background:#f7f9fb!important;color:#64748a!important;font-size:9px!important;font-weight:600!important;padding:14px 12px!important;white-space:normal!important}
#page-upcoming #upcomingTable td{padding:16px 12px!important;font-size:11px!important;vertical-align:top!important;border-bottom:1px solid #edf1f4!important;white-space:normal!important}
#page-upcoming #upcomingTable tbody tr{cursor:pointer}
#page-upcoming #upcomingTable tr:hover td{background:#f4fbfc}
#page-upcoming #upcomingTable tbody tr:focus{outline:3px solid rgba(0,184,196,.24);outline-offset:-3px}
#page-upcoming #upcomingTable tbody tr:focus td{background:#f4fbfc}
#page-upcoming #upcomingTable th:nth-child(1){width:17%}#page-upcoming #upcomingTable th:nth-child(2){width:12%}#page-upcoming #upcomingTable th:nth-child(3){width:11%}#page-upcoming #upcomingTable th:nth-child(4){width:24%}#page-upcoming #upcomingTable th:nth-child(5){width:13%}#page-upcoming #upcomingTable th:nth-child(6){width:11%}#page-upcoming #upcomingTable th:nth-child(7){width:12%}
.upcoming-job-cell>*,.upcoming-schedule-cell>*,.upcoming-type-cell>*,.upcoming-detail-cell>*{max-width:100%}
.upcoming-job-cell>*+*,.upcoming-schedule-cell>*+*,.upcoming-type-cell>*+*,.upcoming-detail-cell>*+*{margin-top:7px}
.upcoming-job-head{display:flex;align-items:center;gap:7px}.upcoming-sequence{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:7px;background:#edf3f6;color:#6a7d91;font-size:9px;font-weight:700}
.upcoming-job-cell .cust-name{color:var(--ops-navy);font-weight:650}.upcoming-job-cell .cust-phone,.upcoming-schedule-cell span,.upcoming-type-cell small,.upcoming-detail-cell small{display:flex;align-items:center;gap:5px;color:#718299}
.upcoming-schedule-cell strong{color:var(--ops-navy)}.upcoming-type-cell small{line-height:1.5}.upcoming-detail-cell>span{display:flex;align-items:flex-start;gap:5px;color:var(--ops-navy)}
.upcoming-detail-cell .note-clamp{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.55}
.ops-job-link{border:0;background:none;color:var(--ops-navy);padding:0;text-align:left;cursor:pointer;font-size:11px;font-weight:700;overflow-wrap:anywhere}.ops-job-link:hover{text-decoration:underline}
.ops-subline{display:block;margin-top:5px;color:#718299;font-size:9px;line-height:1.6}
.ops-route{display:flex;gap:8px;align-items:baseline;line-height:1.6}.ops-route+.ops-route{margin-top:6px}.ops-route small{flex:none;color:#718299;font-size:8px;width:24px}.ops-route strong{font-weight:600;color:var(--ops-navy)}
#page-upcoming .advance-driver-assignment{background:transparent;border:0;border-radius:0;padding:0;margin-top:8px}
#page-upcoming .advance-driver-assignment strong{font-size:10px}#page-upcoming .advance-driver-assignment span{font-size:9px}
#page-upcoming .status-badge{font-size:8px!important;white-space:normal!important;padding:5px 8px!important}
#page-upcoming .upcoming-action-group{display:flex;flex-direction:column;align-items:stretch;gap:7px}
#page-upcoming .table-match-btn,#page-upcoming .table-send-driver-btn{font-size:9px!important;min-height:34px!important;border-radius:8px!important;padding:7px 9px!important}
#page-upcoming .table-match-btn:not(.match-locked){background:var(--ops-navy)!important;color:white!important;border-color:var(--ops-navy)!important}
#page-upcoming .action-dropdown-btn{font-size:9px!important;background:transparent!important;border:1px solid var(--ops-line)!important;color:#64748a!important;border-radius:8px!important}
#page-upcoming #upcomingEmpty{min-height:240px;flex-direction:column;gap:8px;color:#64748a;font-size:13px}
.ops-empty-hint{font-size:10px;font-weight:400}
#page-upcoming #upcoming-pagination{font-size:10px!important;padding:12px 16px!important}
@media(max-width:720px){#page-upcoming .ops-overview{grid-template-columns:repeat(3,1fr)}.ops-overview .ops-overview-heading{grid-column:1/-1;padding:12px 16px}.ops-overview>div{padding:12px}.ops-metric-value{font-size:22px}#page-upcoming .upcoming-filter-strip{flex-direction:row}#page-upcoming .filter-tabs{width:100%}#page-upcoming .upcoming-search-wrap{max-width:none;width:100%}.topbar-page-title{font-size:18px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Balanced card geometry across the booking workspace. */
:root{--ops-card-gap:16px;--ops-card-padding:18px;--ops-card-radius:14px}
#page-upcoming .ops-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:transparent;border:0;overflow:visible;margin-bottom:var(--ops-card-gap)}
#page-upcoming .ops-overview .ops-overview-heading{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;min-height:0;padding:0 2px 2px;background:transparent;border:0;color:var(--ops-navy)}
#page-upcoming .ops-overview-heading strong{font-size:13px;line-height:1.6}
#page-upcoming .ops-overview-heading small{color:#718299;font-size:10px}
#page-upcoming .ops-overview>div:not(.ops-overview-heading){box-sizing:border-box;min-width:0;min-height:104px;padding:16px var(--ops-card-padding);border:1px solid var(--ops-line);border-radius:var(--ops-card-radius);background:#fff;justify-content:space-between;gap:8px}
#page-upcoming .ops-metric-label{font-size:10px;line-height:1.6;min-height:20px}
#page-upcoming .ops-metric-value{font-size:26px;line-height:1.2}
#page-upcoming .upcoming-date-bar{box-sizing:border-box;width:100%;min-height:60px;padding:10px 14px;gap:10px;margin-bottom:12px;border:1px solid var(--ops-line);border-radius:var(--ops-card-radius);background:#fff;flex-wrap:wrap}
#page-upcoming .upcoming-filter-strip{box-sizing:border-box;min-height:64px;padding:10px 14px;margin-bottom:var(--ops-card-gap);border-radius:var(--ops-card-radius);align-items:center;gap:10px}
#page-upcoming .upcoming-search-wrap{box-sizing:border-box;min-height:40px;max-width:none;min-width:200px}
#page-upcoming .filter-tabs{box-sizing:border-box;min-height:40px;align-items:center}
#page-upcoming .btn-show-all,#page-upcoming .per-page-select,#page-upcoming #upcomingDateFilterText{box-sizing:border-box;min-height:40px}
#page-upcoming .upcoming-table-scroll{border-radius:var(--ops-card-radius)}
#page-create .create-grid{gap:var(--ops-card-gap)!important;align-items:stretch}
#page-create .form-col{min-width:0;gap:var(--ops-card-gap)!important}
#page-create .section-block{border-radius:var(--ops-card-radius)!important}
#page-create .section-head{box-sizing:border-box;min-height:60px;padding:14px var(--ops-card-padding)!important}
#page-create .section-body{padding:var(--ops-card-padding)!important}
#page-dispatchtest .abt-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ops-card-gap);align-items:stretch}
#page-dispatchtest .abt-card{box-sizing:border-box;min-width:0;padding:var(--ops-card-padding);border-radius:var(--ops-card-radius);box-shadow:none;border-color:var(--ops-line)}
#page-dispatchtest .abt-match-card{position:static}
#page-dispatchtest .abt-card-head{min-height:44px;box-sizing:border-box;padding-bottom:14px;margin-bottom:16px;flex-wrap:wrap}
#page-dispatchtest .abt-card-head strong{font-size:14px;line-height:1.5}
#page-dispatchtest .abt-sent-card{margin-top:var(--ops-card-gap)}
#page-dispatchtest .abt-sent-list{gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
#page-dispatchtest .abt-sent-item{padding:14px;min-width:0;border-radius:12px;overflow-wrap:anywhere}
@media(max-width:1100px){#page-dispatchtest .abt-flow{grid-template-columns:1fr}#page-dispatchtest .abt-sent-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){:root{--ops-card-gap:12px;--ops-card-padding:14px}#page-upcoming .ops-overview{gap:8px}#page-upcoming .ops-overview>div:not(.ops-overview-heading){min-height:108px;padding:12px;gap:6px}#page-upcoming .ops-metric-label{min-height:38px;font-size:9px}#page-upcoming .ops-metric-value{font-size:23px}#page-upcoming .upcoming-search-wrap{min-width:0;flex-basis:100%}#page-upcoming .upcoming-filter-strip .filter-tabs{width:100%}#page-dispatchtest .abt-sent-list{grid-template-columns:1fr}}

/* Upcoming jobs use the same internal workspace scrolling as Today's Bookings. */
#page-upcoming .upcoming-table-scroll{flex:none!important;height:auto!important;max-height:none!important;min-height:0!important;overflow-y:visible!important;overflow-x:auto!important;scrollbar-gutter:auto!important}
#page-upcoming #upcoming-pagination{position:static!important}
#page-upcoming .upcoming-page-size{display:inline-flex!important;align-items:center!important;gap:6px!important;margin-left:auto!important}
#page-upcoming .ops-tomorrow{background:#fff!important;color:#41566d!important;border:1px solid var(--clarity-line-strong,#b9c8d4)!important;padding:0 16px!important;font-weight:700!important}
#page-upcoming .ops-tomorrow[aria-pressed="true"]{background:var(--ops-navy)!important;border-color:var(--ops-navy)!important;color:#fff!important}
@media(min-width:721px){
  html:has(#page-upcoming.page-section.active),body:has(#page-upcoming.page-section.active){width:100%;height:100%;min-height:100%;overflow:hidden!important}
  body:has(#page-upcoming.page-section.active){height:100vh;height:100dvh}
  body:has(#page-upcoming.page-section.active) .main{height:calc(100vh - var(--header-h) - 60px)!important;height:calc(100dvh - var(--header-h) - 60px)!important;min-height:0!important;max-height:calc(100vh - var(--header-h) - 60px)!important;max-height:calc(100dvh - var(--header-h) - 60px)!important;display:flex;flex-direction:column}
  body:has(#page-upcoming.page-section.active) .main>.topbar{flex:0 0 auto}
  body:has(#page-upcoming.page-section.active) .main>.page-content{flex:1 1 auto;min-height:0;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable}
  #page-upcoming.page-section.active{display:block!important;height:auto!important;min-height:0!important}
}

/* Important layer overrides legacy per-page and inline font sizes consistently. */
@layer cabbyTypography {
  html { font-size:14px!important; }
  body, body :is(div,p,span,small,strong,b,label,input,select,textarea,button,a,li,td,th,dt,dd,h3,h4,h5,h6) { font-size:14px!important;line-height:1.6!important; }
  body :is(h1,.topbar-page-title,.abt-title) { font-size:26px!important;line-height:1.4!important; }
  body :is(h2,.section-head-title,.card-title,.modal-title,.apm-title),body .abt-card-head strong,body .ops-overview-heading strong { font-size:20px!important;line-height:1.5!important; }
  body :is(button,.nav-item,.ssls-header-action,.ssls-account-name),body :is(button,.nav-item,.ssls-header-action) :is(span,strong,b) { font-size:12px!important; }
  body .data-table :is(td,td div,td span,td strong,td b,td a,td button) { font-size:12px!important; }
  body :is(small,.topbar-breadcrumb,.section-head-sub,.sidebar-section,.ssls-account-label,.today-eyebrow,.ops-metric-label,.nav-badge,.status-badge,.type-pill,.ops-subline,.cust-phone,.note-clamp,.abt-hint),body .data-table :is(th,th span,th small,td small,.ops-subline,.cust-phone,.note-clamp,.status-badge,.type-pill),body .advance-driver-assignment span { font-size:11px!important; }
  body .ops-overview-heading small { font-size:11px!important; }
  body .ops-metric-value,body .today-metric strong { font-size:30px!important;line-height:1.3!important; }
  body :is(h1,h2,.topbar-page-title,.section-head-title,.card-title,.modal-title,.apm-title,.abt-title) :is(span,strong,b) {font-size:inherit!important;line-height:inherit!important;}
  body :is(input,select,textarea,button) {font-family:inherit!important;}
  @media(max-width:900px){
    body .data-table :is(td,td div,td span,td strong,td b,td a),body .data-table td :is(.ops-subline,.cust-phone,.note-clamp),body .advance-driver-assignment span {font-size:14px!important;}
    body .ops-metric-value,body .today-metric strong {font-size:26px!important;}
  }
}
body{overflow-wrap:break-word}
body :is(input,select,textarea){box-sizing:border-box;max-width:100%}
body :is(button,.form-input,.form-select){min-height:44px}
body :is(.section-head,.abt-card-head,.topbar-left){height:auto!important;flex-wrap:wrap}
body .topbar{height:auto!important;gap:16px;flex-wrap:wrap}
body .topbar-left{min-width:0}
body .section-head-sub{white-space:normal!important}
body .section-num{width:32px!important;height:32px!important;flex:none}
body .sidebar{overflow-y:auto!important;overflow-x:hidden!important}
body .sidebar .nav-item{height:auto!important;min-height:48px!important;white-space:normal!important}
body .nav-badge{min-width:28px!important;width:auto!important;flex-shrink:0!important;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;height:auto!important;padding:2px 6px!important}

/* Unified left navigation
   The former global header actions now live with the primary navigation. */
body.sidebar-shell-ready{
  --app-sidebar-width:272px;
  padding:16px 16px 30px!important;
}
body.sidebar-shell-ready .ssls-global-header{display:none!important}
body.sidebar-shell-ready .sidebar{
  display:flex!important;
  flex-direction:column!important;
  top:16px!important;
  bottom:16px!important;
  left:16px!important;
  width:var(--app-sidebar-width)!important;
  min-width:var(--app-sidebar-width)!important;
  padding:14px 12px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border:1px solid #dbe5eb!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 18px 46px rgba(0,33,75,.1)!important;
  transform:translateX(calc(-100% - 32px))!important;
}
body.sidebar-shell-ready .sidebar.mobile-open{transform:translateX(0)!important}
body.sidebar-shell-ready .sidebar-logo{
  display:flex!important;
  flex:0 0 auto;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px;
  min-height:68px;
  margin:0 4px 8px;
  padding:8px 8px 12px;
  border-bottom:1px solid #e4ebef;
}
body.sidebar-shell-ready .sidebar-logo .logo-mark{
  display:flex;
  align-items:center;
  min-width:96px;
}
body.sidebar-shell-ready .sidebar-logo img{
  display:block!important;
  width:104px!important;
  height:44px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.sidebar-brand-copy{min-width:0;line-height:1.25}
.sidebar-brand-copy strong,.sidebar-brand-copy small{display:block}
.sidebar-brand-copy strong{font-size:10px;color:var(--ops-navy);white-space:nowrap}
.sidebar-brand-copy small{margin-top:3px;font-size:7px;color:#7b899c;white-space:nowrap}
body.sidebar-shell-ready .sidebar-user{
  display:flex!important;
  order:0!important;
  flex:0 0 auto;
  align-items:center;
  gap:10px;
  margin:0 4px 8px!important;
  padding:10px!important;
  border:1px solid #dce7ec!important;
  border-radius:13px!important;
  background:#f7fbfc!important;
}
.sidebar-account-label{margin-bottom:1px;font-size:7px!important;font-weight:700;color:#7b899c;letter-spacing:.04em}
body.sidebar-shell-ready .user-name{font-size:11px!important;color:var(--ops-navy)!important}
body.sidebar-shell-ready .user-role{font-size:8px!important;color:#718299!important}
body.sidebar-shell-ready .sidebar-section{
  display:block!important;
  flex:0 0 auto;
  margin:6px 7px 4px!important;
  padding:12px 6px 4px!important;
  font-size:8px!important;
  font-weight:700;
  letter-spacing:.06em!important;
  color:#7a899c!important;
  border-top:1px solid #e7edf1;
}
body.sidebar-shell-ready .sidebar-section:first-of-type{border-top:0!important;padding-top:5px!important}
body.sidebar-shell-ready .nav-item{
  display:flex!important;
  flex:0 0 auto;
  min-height:42px!important;
  margin:2px 4px!important;
  padding:9px 10px!important;
  border-radius:10px!important;
  font-size:11px!important;
  font-weight:600!important;
}
body.sidebar-shell-ready .nav-item:hover{background:#f2f7f9!important;color:var(--ops-navy)!important}
body.sidebar-shell-ready .nav-item.active{
  background:var(--ops-ice)!important;
  color:var(--ops-teal)!important;
  box-shadow:inset 3px 0 var(--ops-teal)!important;
}
body.sidebar-shell-ready .nav-icon{width:26px!important;font-size:14px!important;color:inherit}
body.sidebar-shell-ready .nav-badge{margin-left:auto!important;font-size:8px!important}
body.sidebar-shell-ready .sidebar-spacer{display:block!important;flex:1 0 12px}
body.sidebar-shell-ready .sidebar-bottom{
  display:block!important;
  position:sticky;
  bottom:-14px;
  margin:8px 4px -14px!important;
  padding:10px 0 14px!important;
  background:linear-gradient(180deg,rgba(255,255,255,0),#fff 22%);
}
body.sidebar-shell-ready .logout-btn{
  width:100%;
  min-height:42px;
  justify-content:flex-start;
  padding:9px 12px!important;
  color:#c53932!important;
  border:1px solid #f0d4d1!important;
  border-radius:10px!important;
  background:#fff7f6!important;
}
body.sidebar-shell-ready .main{
  width:auto!important;
  margin-left:0!important;
  min-height:calc(100vh - 46px)!important;
}
body.sidebar-shell-ready.drawer-is-open .main{margin-left:calc(var(--app-sidebar-width) + 16px)!important}
body.sidebar-shell-ready .drawer-toggle-btn{
  top:28px!important;
  left:18px!important;
  width:34px!important;
  height:34px!important;
  z-index:320!important;
}
body.sidebar-shell-ready.drawer-is-open .drawer-toggle-btn{left:calc(var(--app-sidebar-width) - 2px)!important}
body.sidebar-shell-ready .sidebar-overlay{pointer-events:none!important}
body.sidebar-shell-ready>div[style*="position:fixed"][style*="bottom:0"]{left:calc(var(--app-sidebar-width) + 16px)!important}

@media(max-width:720px){
  body.sidebar-shell-ready{padding:8px 8px 26px!important}
  body.sidebar-shell-ready .sidebar{
    top:0!important;
    bottom:0!important;
    left:0!important;
    width:min(86vw,292px)!important;
    min-width:0!important;
    padding:12px!important;
    border-radius:0 18px 18px 0!important;
    transform:translateX(-105%)!important;
    z-index:310!important;
  }
  body.sidebar-shell-ready .sidebar.mobile-open{transform:translateX(0)!important}
  body.sidebar-shell-ready .main,
  body.sidebar-shell-ready.drawer-is-open .main{margin-left:0!important;min-height:calc(100vh - 34px)!important}
  body.sidebar-shell-ready .drawer-toggle-btn,
  body.sidebar-shell-ready.drawer-is-open .drawer-toggle-btn{top:20px!important;left:18px!important}
  body.sidebar-shell-ready.drawer-is-open .drawer-toggle-btn{left:calc(min(86vw,292px) - 46px)!important}
  body.sidebar-shell-ready .sidebar-overlay{pointer-events:auto!important;background:rgba(0,26,56,.42)!important;backdrop-filter:blur(3px)!important}
  body.sidebar-shell-ready>div[style*="position:fixed"][style*="bottom:0"]{left:0!important}
}
#page-upcoming .ops-overview>div:not(.ops-overview-heading){min-height:120px}
#page-upcoming .ops-metric-label{min-height:26px}
#page-upcoming .upcoming-date-bar{height:auto!important;min-height:68px}
#page-upcoming #upcomingDateFilterText{width:180px!important;min-height:44px}
#page-upcoming .filter-tabs{display:flex!important;flex-wrap:wrap!important;height:auto!important}
#page-upcoming .filter-tab{height:auto!important;min-height:44px!important;padding:8px 14px!important}
#page-upcoming .upcoming-search-wrap{min-height:46px;min-width:250px;flex-basis:280px}
#page-upcoming #upcomingTable{min-width:1180px!important}
#page-upcoming #upcomingTable :is(td,th){overflow-wrap:anywhere}
#page-upcoming .ops-route small{width:32px}
#page-upcoming .ops-route :is(span,strong){min-width:0}
#page-upcoming :is(.table-match-btn,.table-send-driver-btn,.action-dropdown-btn){white-space:normal!important;height:auto!important;min-height:44px!important}
#page-upcoming .status-badge{height:auto!important}
#page-dispatchtest .abt-hero{flex-wrap:wrap}
#page-dispatchtest .abt-card-head>div{min-width:0}
#page-dispatchtest .abt-driver-row{flex-wrap:wrap}
#page-dispatchtest .abt-driver-main{min-width:0;flex:1}
#page-dispatchtest .abt-booking-route{flex-wrap:wrap}
#page-dispatchtest .abt-booking-route :is(span,b){white-space:normal;overflow-wrap:anywhere}
body :is(.modal-box,.apm-box){box-sizing:border-box;max-width:calc(100vw - 24px)!important;max-height:90dvh!important;overflow-y:auto!important}
@media(max-width:1280px){
  #page-create .create-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #page-create .create-grid>.form-col:last-child{grid-column:1/-1}
  #page-upcoming .upcoming-filter-strip{flex-wrap:wrap}
}
@media(max-width:900px){
  body .ssls-account{min-width:0!important}
  body .ssls-global-header{gap:8px!important}
  #page-create .create-grid{grid-template-columns:1fr!important}
  #page-create .create-grid>.form-col:last-child{display:flex!important;grid-column:auto}
  #page-upcoming #upcomingTable{min-width:0!important;display:block!important}
  #page-upcoming #upcomingTable thead{display:none}
  #page-upcoming #upcomingTable tbody{display:grid;gap:16px;padding:12px}
  #page-upcoming #upcomingTable tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--ops-line);border-radius:12px;padding:8px;background:#fff}
  #page-upcoming #upcomingTable tbody td{display:block;padding:10px!important;border-bottom:0!important;min-width:0}
  #page-upcoming #upcomingTable tbody td::before{content:attr(data-label);display:block;color:#64748a;margin-bottom:6px;font-size:14px;line-height:1.6}
  #page-upcoming #upcomingTable tbody td:nth-child(4),#page-upcoming #upcomingTable tbody td:nth-child(7){grid-column:1/-1}
  #page-upcoming .upcoming-action-group{flex-direction:row;flex-wrap:wrap}
  #page-upcoming .upcoming-action-group>button{flex:1;min-width:140px}
  #page-upcoming .upcoming-table-scroll{overflow:visible!important}
  #page-upcoming #upcomingTable[style*="display: none"]{display:none!important}
}
@media(max-width:600px){
  #page-upcoming .ops-overview{grid-template-columns:1fr}
  #page-upcoming .ops-overview>div:not(.ops-overview-heading){min-height:88px;flex-direction:row;align-items:center;gap:16px}
  #page-upcoming .ops-metric-label{min-height:0;flex:1}
  #page-upcoming .upcoming-date-bar{gap:12px;padding:14px}
  #page-upcoming .upcoming-date-bar>button{flex:1;white-space:normal}
  #page-upcoming .upcoming-filter-strip{padding:12px}
  #page-upcoming .filter-tabs{width:100%;gap:4px}
  #page-upcoming .filter-tab{flex:1;white-space:normal!important}
  #page-upcoming .upcoming-search-wrap{min-width:0;flex-basis:100%;width:100%}
  #page-upcoming #upcomingTable tbody{padding:8px}
  #page-upcoming #upcomingTable tbody tr{grid-template-columns:1fr}
  body .field-row{display:flex!important;flex-direction:column!important;gap:16px!important}
  body .field-row>*{width:100%!important;min-width:0!important}
  body .ssls-brand{min-width:0!important}
  body .ssls-brand img{width:96px!important;object-fit:contain}
  body .ssls-header-action{padding:6px!important;min-width:44px}
  body .ssls-account{padding:4px!important}
  body .ssls-global-header{flex-wrap:wrap;height:auto!important;min-height:64px}
  body .modal-actions{flex-wrap:wrap}
  body .modal-actions>button{flex:1;min-width:120px}
}

#page-upcoming #upcomingShowAllBtn[aria-pressed="true"]{background:var(--ops-navy)!important;border-color:var(--ops-navy)!important;color:#fff!important;box-shadow:0 2px 4px #00184015!important}

/* Today table aligned with Upcoming table. */
#page-today .today-table-wrap{border:1px solid var(--ops-line)!important;border-radius:var(--ops-card-radius,14px)!important;overflow-x:auto!important;background:#fff!important}
#page-today .today-data-table{width:100%!important;min-width:1000px!important;table-layout:fixed!important;border-collapse:collapse!important}
#page-today .today-data-table th{padding:14px 12px!important;background:#f7f9fb!important;color:#64748a!important;font-size:9px!important;font-weight:600!important;white-space:normal!important;text-align:left!important}
#page-today .today-data-table td{padding:16px 12px!important;font-size:11px!important;vertical-align:top!important;border-bottom:1px solid #edf1f4!important;white-space:normal!important}
#page-today .today-data-table th:nth-child(1){width:17%!important}#page-today .today-data-table th:nth-child(2){width:12%!important}#page-today .today-data-table th:nth-child(3){width:11%!important}#page-today .today-data-table th:nth-child(4){width:24%!important}#page-today .today-data-table th:nth-child(5){width:13%!important}#page-today .today-data-table th:nth-child(6){width:11%!important}#page-today .today-data-table th:nth-child(7){width:12%!important}
#page-today .today-data-table tbody tr:hover td{background:#f4fbfc!important}
#page-today .today-job-cell,#page-today .today-schedule-cell,#page-today .today-type-cell,#page-today .today-route-cell,#page-today .today-detail-cell,#page-today .today-status-cell,#page-today .today-actions-cell{width:auto!important;min-width:0!important}
#page-today .today-job-cell>*,#page-today .today-schedule-cell>*,#page-today .today-type-cell>*,#page-today .today-detail-cell>*{max-width:100%}
#page-today .today-job-cell>*+*,#page-today .today-schedule-cell>*+*,#page-today .today-type-cell>*+*,#page-today .today-detail-cell>*+*{margin-top:7px}
#page-today .today-job-cell .cust-name{max-width:100%!important;color:var(--ops-navy);font-weight:650}
#page-today .today-detail-cell .note-clamp{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.55;white-space:normal!important}
#page-today .today-status-stack{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
#page-today .today-status-stack>small{color:#718299;font-size:9px;line-height:1.5}
#page-today .today-action-group{display:grid!important;grid-template-columns:repeat(3,minmax(30px,1fr));align-items:stretch!important;gap:6px!important}
#page-today .today-action-group>.btn-send-driver,#page-today .today-action-group>.btn-complete-job,#page-today .today-action-group>.job-status-select{grid-column:1/-1;width:100%;justify-content:center}
#page-today .today-action-group>button{min-width:30px;min-height:34px;border-radius:8px!important}
@media(min-width:721px){#page-today .today-data-table th:nth-child(5),#page-today .today-data-table td:nth-child(5){display:table-cell!important}}
@media(max-width:720px){#page-today .today-data-table{min-width:0!important;display:block!important}#page-today .today-data-table tbody{display:block!important}#page-today .today-data-table thead{display:none!important}#page-today .today-data-table tbody td{display:block!important;width:auto!important;padding:8px 10px!important}#page-today .today-data-table tbody td:nth-child(5){display:block!important}#page-today .today-route-cell,#page-today .today-detail-cell,#page-today .today-status-cell,#page-today .today-actions-cell{grid-column:1/-1}}

/* Status controls: text-only badges and one explicit, keyboard-accessible status selector. */
body .status-badge::before{display:none!important;content:none!important}
#page-today .job-status-select{
  min-width:132px;
  min-height:38px;
  padding:7px 30px 7px 11px;
  border:1px solid #8fcfd4;
  border-radius:8px;
  background:#eefbfc;
  color:#005f68;
  font-family:inherit;
  font-size:11px!important;
  font-weight:700;
  line-height:1.4;
  cursor:pointer;
}
#page-today .job-status-select:hover{background:#e2f7f8;border-color:#56b8c0}
#page-today .job-status-select:focus-visible{outline:3px solid rgba(0,184,196,.22);outline-offset:2px;border-color:#00a7b2}
@media(max-width:720px){#page-today .job-status-select{min-height:42px;font-size:13px!important}}
