@media(max-width:900px){
 #admin#admin#admin>.officeHeaderSpacer{display:none!important}
 body:has(#admin:not(.hidden)),body:has(#driver:not(.hidden)){overflow:hidden!important;height:100dvh;overscroll-behavior:none}
 body>.wrap:has(>#admin:not(.hidden)){height:100dvh!important;min-height:0!important;overflow:hidden!important;padding:0!important}
 #admin#admin#admin:not(.hidden){position:fixed!important;inset:0!important;height:var(--portal-mobile-height,100dvh)!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:6px!important;gap:5px!important}
 #admin#admin#admin>.top{position:relative!important;top:auto!important;flex:0 0 auto!important;display:flex!important;flex-direction:column!important;padding:8px!important;gap:6px!important;margin:0!important}
 #admin#admin#admin>.top .brand{width:100%;min-width:0!important;gap:8px!important}
 #admin#admin#admin>.top .brand b{font-size:15px!important;line-height:1.15!important}
 #admin#admin#admin>.top .logo{width:36px!important;height:36px!important;min-width:36px!important;font-size:20px!important}
 #admin#admin#admin>.top .version{font-size:10px!important}
 #admin#admin#admin>.top .muted{font-size:12px!important}
 #admin#admin#admin>.top .right{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:5px!important}
 #admin#admin#admin>.top .right>.btn{min-width:0!important;min-height:40px!important;margin:0!important;padding:7px!important;font-size:14px!important}
 #admin#admin#admin>.top .right #officeFixedBack{grid-column:1/-1!important;order:99!important;position:static!important;width:100%!important;background:#1262cc!important;color:white!important;border:1px solid #1262cc!important;justify-content:center!important;min-height:40px!important;visibility:visible!important}
 #admin#admin#admin>.top .right #officeFixedBack[hidden]{display:none!important}
 #admin#admin#admin>.tab.active{flex:1 1 0!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:auto!important;overscroll-behavior:contain!important;padding-bottom:8px!important;scroll-behavior:auto!important}
 #admin#admin#admin>.officeNotificationGroups{position:static!important;display:grid!important;flex:0 0 auto!important;max-height:104px!important;overflow:auto!important;overscroll-behavior:contain;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:3px!important;padding:3px!important;margin:0!important}
 #admin#admin#admin>.officeNotificationGroups .btn{font-size:11px!important;min-height:32px!important;padding:4px!important}
 #admin#admin#admin>.officeScreenBar{flex:0 0 auto!important}
 #driver#driver[data-compact-driver]:not(.hidden){height:var(--portal-mobile-height,100dvh)!important;min-height:0!important;padding:6px!important;gap:5px!important}
 #driver#driver[data-compact-driver] .compactHeader{padding:7px 9px!important;gap:7px!important}
 #driver#driver[data-compact-driver] .compactIdentity small{font-size:8px!important}
 #driver#driver[data-compact-driver] #driverName{font-size:17px!important}
 #driver#driver[data-compact-driver] .compactPersonalText{display:none!important}
 #driver#driver[data-compact-driver]>.driverPanel.active{flex:1 1 0!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:auto!important;overscroll-behavior:contain!important}
 #driver#driver .cmrScanQueue{max-height:30dvh;overflow:auto;overscroll-behavior:contain}
 #driver#driver :is(#quick_btn_cmr,#saveDriverDiesel,#saveDriverToll){position:sticky!important;bottom:0!important;z-index:5!important;min-height:44px!important;box-shadow:0 -4px 8px #fff}
 body:has(#admin:not(.hidden)) .portalBackButton{background:#1262cc!important;color:#fff!important;border-color:#1262cc!important;min-height:40px!important}
}

/* One page scroll on phones: fixed headers and nested viewport heights hid content. */
@media(max-width:900px){
 html:has(#admin:not(.hidden)),body:has(#admin:not(.hidden)){height:auto!important;overflow:auto!important;overscroll-behavior:auto!important}
 body>.wrap:has(>#admin:not(.hidden)){height:auto!important;min-height:100dvh!important;overflow:visible!important}
 #admin#admin#admin#admin:not(.hidden){position:relative!important;inset:auto!important;height:auto!important;min-height:100dvh!important;display:block!important;overflow:visible!important;padding:6px!important}
 #admin#admin#admin#admin>.top{position:relative!important;inset:auto!important;height:auto!important;transform:none!important;width:100%!important}
 #admin#admin#admin#admin>.tab.active{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;display:block!important}
 #admin#admin#admin#admin>.officeScreenBar{position:static!important;inset:auto!important;margin:10px 0!important}
 #admin#admin#admin#admin>.officeNotificationGroups{max-height:none!important;height:auto!important;overflow:visible!important;position:static!important}
 #admin#admin#admin#admin #messages :is(.messageComposer,.messageInbox,.messageList,.officeGroupReadonly,.mediaWorkspace,.mediaTable){height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important;flex:none!important}
 #admin#admin#admin#admin #messages .grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
 #admin#admin#admin#admin #officeHome>.officeTileGrid,#admin#admin#admin#admin #dash>.officeHomeLinks{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:minmax(86px,auto)!important;height:auto!important;min-height:0!important;gap:8px!important}
 #admin#admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile{height:auto!important;min-height:86px!important;grid-column:auto!important;grid-row:auto!important;padding:10px!important}
 #admin#admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile b{font-size:14px!important;line-height:1.3!important}
 #admin#admin#admin#admin .officeHeaderSpacer{display:none!important}
}
