/* One mobile viewport and one scrollable content area. Tile minimums never clip. */
@media screen and (max-width:900px){
 .wrap:has(>#admin.officeCompact.officeOnHome:not(.hidden)),
 .wrap:has(>#admin.officeCompact:not(.hidden)>#dash.active){
  width:100%!important;max-width:none!important;padding:0!important;margin:0!important;
 }
 #admin#admin#admin.officeCompact:not(.hidden):is(.officeOnHome,:has(>#dash.active)){
  display:flex!important;flex-direction:column!important;box-sizing:border-box!important;
  height:var(--mobile-office-height,100dvh)!important;max-height:none!important;min-height:0!important;width:100%!important;
  margin:0!important;padding:6px 6px max(6px,env(safe-area-inset-bottom))!important;gap:6px!important;
  overflow:auto!important;
 }
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top,
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.officeNotificationGroups{
  flex:0 0 auto!important;position:relative!important;inset:auto!important;
  width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;
 }
 /* Home/Menu keep the header in normal flow: no fixed-header reservation. */
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.officeHeaderSpacer{
  display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;
 }
 #admin#admin#admin.officeCompact #officeHome.active,
 #admin#admin#admin.officeCompact #dash.active{
  display:flex!important;flex-direction:column!important;flex:1 1 0!important;
  min-height:120px!important;height:auto!important;max-height:none!important;
  min-width:0!important;margin:0!important;padding:0!important;gap:6px!important;
  overflow:auto!important;overscroll-behavior:contain;scroll-padding:6px;
 }
 #admin#admin#admin #officeHome>.homeDriverSummary{flex:0 0 auto!important;margin:0!important;padding:6px!important}
 #admin#admin#admin #officeHome>.officeTileGrid,
 #admin#admin#admin #dash>.officeHomeLinks:not(:empty){
  display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-template-rows:repeat(var(--mobile-tile-rows,4),minmax(0,1fr))!important;grid-auto-rows:minmax(44px,1fr)!important;
  flex:1 1 0!important;align-content:stretch!important;gap:6px!important;
  height:auto!important;min-height:calc(var(--mobile-tile-rows,4)*44px + (var(--mobile-tile-rows,4) - 1)*6px)!important;max-height:none!important;
  margin:0!important;overflow:visible!important;
 }
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile{
  grid-column:span var(--mobile-tile-span,2)!important;grid-row:auto!important;min-height:0!important;height:100%!important;
  width:auto!important;min-width:0!important;max-width:none!important;padding:7px 4px!important;
  gap:4px!important;box-sizing:border-box!important;overflow-wrap:anywhere;white-space:normal!important;
 }
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile>b{font-size:clamp(10px,2.8vw,12px)!important;line-height:1.2!important}
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile>.officeTileIcon{display:block!important;font-size:20px!important;line-height:1!important}
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile>small{display:none!important}
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>.officeTile>:not(b):not(.officeTileIcon){display:none!important}
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks).mobileTilesTight>.officeTile{padding:4px!important;gap:2px!important}
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks).mobileTilesTight>.officeTile>.officeTileIcon{display:none!important}
 #admin#admin#admin :is(#officeHome>.officeTileGrid,#dash>.officeHomeLinks)>:is([hidden],.personalLayoutHidden){display:none!important}
 #admin#admin#admin #dash>.officeHomeLinks:not(:has(>.officeTile:not([hidden]):not(.personalLayoutHidden))){display:none!important}
}
@media screen and (max-width:359px){
 #admin#admin#admin #officeHome>.officeTileGrid,#admin#admin#admin #dash>.officeHomeLinks:not(:empty){grid-template-columns:repeat(6,minmax(0,1fr))!important}
}
@media screen and (max-width:900px) and (max-height:600px){
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top{padding:4px!important;min-height:0!important}
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top .logo{width:36px!important;height:36px!important;min-width:36px!important;font-size:18px!important}
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top .brand b{font-size:12px!important;line-height:1.15!important}
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top .muted{font-size:11px!important}
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top .version{font-size:9px!important}
 #admin#admin#admin.officeCompact:is(.officeOnHome,:has(>#dash.active))>.top .right>.btn{min-height:32px!important;padding:4px 8px!important;font-size:11px!important}
 #admin#admin#admin #officeHome .homeDriverSummary .driverHubStatCard span{min-height:28px!important}
}

