/* Every rule is scoped to the chauffeur portal. */
#driver[data-compact-driver]:not(.hidden){position:fixed!important;inset:0!important;z-index:20;display:flex!important;flex-direction:column!important;width:100%!important;max-width:none!important;height:100vh;height:100dvh;margin:0!important;padding:12px max(12px,calc((100vw - 1100px)/2))!important;box-sizing:border-box;background:#f2f5fa;gap:8px;overflow:hidden!important}
#driver[data-compact-driver] > .driverHero,#driver[data-compact-driver] > .dailyNote,#driver[data-compact-driver] > .driverNav,#driver[data-compact-driver] > .driverVersion{display:none!important}
#driver[data-compact-driver] [hidden]{display:none!important}
#driver[data-compact-driver] .compactHeader{display:flex;align-self:stretch;align-items:center;justify-content:space-between;gap:12px;background:#10345e;color:white;padding:12px 16px;border-radius:16px;flex-shrink:0}
#driver[data-compact-driver] .compactIdentity small{font-size:10px;letter-spacing:1.3px;color:#c7daf3}
#driver[data-compact-driver] .compactIdentity{min-width:0}
#driver[data-compact-driver] .compactPersonalText{font-size:12px;line-height:1.4;margin:4px 0;overflow-wrap:anywhere}
#driver[data-compact-driver] .compactPersonalText #driverPhone,#driver[data-compact-driver] .compactPersonalText #driverEmail{display:block!important;color:#d9eaff!important;text-decoration:none!important;pointer-events:none}
#driver[data-compact-driver] .compactHeaderActions{display:flex;flex-direction:column;align-items:stretch;gap:5px;flex-shrink:0;width:126px}
#driver[data-compact-driver] .compactHeaderActions .driverLangBar{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%!important;margin:0!important;gap:4px}
#driver[data-compact-driver] .compactHeaderActions .driverLangBtn{min-width:0!important;width:100%!important;box-sizing:border-box}
#driver[data-compact-driver] .compactHeaderActions #logoutD{width:100%!important;min-width:0!important;max-width:100%!important;align-self:stretch!important;box-sizing:border-box}
#driver[data-compact-driver] .compactHeaderActions #logoutD{position:static!important;margin:0!important;padding:8px 16px!important;min-height:44px!important;font-size:13px!important;font-weight:700!important;color:#173653!important;background:#fff!important;border:1px solid #cbd8e8!important;border-radius:10px!important}
#driver[data-compact-driver] .compactScreenBar{display:flex;align-self:stretch;align-items:center;gap:10px;flex-shrink:0}
#driver[data-compact-driver] .compactBack{min-width:60px;min-height:44px;padding:8px 12px;background:white;border:1px solid #cbd8e8;border-radius:10px;font-size:15px;font-weight:700;color:#173653;cursor:pointer}
#driver[data-compact-driver] #driverName{margin:3px 0!important;font-size:20px!important;color:white;line-height:1.15!important}
#driver[data-compact-driver] .compactProfileLink{display:block;background:none;border:0;color:#d9eaff;font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px;padding:5px 0;margin:0 0 2px;min-height:28px;cursor:pointer;text-align:left}
#driver[data-compact-driver] .compactProfileLink:focus-visible{outline:2px solid white;outline-offset:2px}
#driver[data-compact-driver] #currentTruckPlate{display:inline-block;font-size:14px!important;color:#fff;line-height:1.3!important}
#driver[data-compact-driver] .compactHeader .emergencyCall{margin:0!important;width:auto!important;min-height:44px!important;padding:7px 10px!important;font-size:12px!important;flex-shrink:0}
#driver[data-compact-driver] .compactHeader .emergencyCall small{display:none}
#driver[data-compact-driver] .compactToolbar{display:flex;align-self:stretch;align-items:center;gap:6px;flex-shrink:0}
#driver[data-compact-driver] .compactToolbar .compactTile{display:flex;flex-direction:row;min-height:44px;padding:8px 12px;gap:6px}
#driver[data-compact-driver] .driverLangBar{display:flex!important;gap:4px;margin:0 0 0 auto!important;padding:0!important;background:none!important;width:auto!important}
#driver[data-compact-driver] .driverLangBar .driverLangLabel,#driver[data-compact-driver] #driverMenuToggle469{display:none!important}
#driver[data-compact-driver] .driverLangBtn{min-width:38px!important;min-height:44px!important;padding:4px!important;color:#173653!important;background:#fff!important;border:1px solid #cbd8e8!important}
#driver[data-compact-driver] .driverLangBtn.active{background:#1768bd!important;color:#fff!important}
#driver[data-compact-driver] .compactScreenTitle{margin:0;font-size:18px;line-height:24px;color:#143457;flex-shrink:0;outline-offset:2px}
#driver[data-compact-driver] > .driverPanel{display:none!important;min-height:0!important;flex:1;overflow:auto!important;overscroll-behavior:contain;scroll-behavior:auto!important;margin:0!important;padding:0 2px 8px!important;width:100%!important}
#driver[data-compact-driver] > .driverPanel.active{display:block!important}
#driver[data-compact-driver] > .compactTileGrid.active{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:minmax(74px,1fr);gap:10px;align-content:start}
#driver[data-compact-driver] #officeEmergencyCall.compactEmergency{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;align-self:stretch!important;width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;box-sizing:border-box;margin:0!important;padding:8px!important;gap:8px!important;background:#fff1f2!important;border:1px solid #f0b4bc!important;color:#a6192e!important;border-radius:14px!important;text-decoration:none!important;font-size:14px!important;line-height:1.2!important;text-align:center!important;box-shadow:0 2px 5px #17345a08!important}
#driver[data-compact-driver] #officeEmergencyCall.compactEmergency>span:first-child{font-size:25px!important}
#driver[data-compact-driver] #officeEmergencyCall.compactEmergency small{display:none!important}
#driver[data-compact-driver] .compactTile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #d8e2ed;border-radius:14px;background:white;color:#193653;font:600 15px/1.2 system-ui,sans-serif;min-width:0;min-height:48px;padding:12px 8px;text-align:center;cursor:pointer;box-shadow:0 2px 5px #17345a08}
#driver[data-compact-driver] .compactTile:hover{background:#eaf2ff;border-color:#8bb6e5}
#driver[data-compact-driver] .compactTile:focus-visible{outline:3px solid #176fd2;outline-offset:-3px}
#driver[data-compact-driver] .compactIcon{font-size:25px;line-height:1}
#driver[data-compact-driver] .compactToolbar .compactIcon{font-size:19px}
#driver[data-compact-driver] .compactBadge{position:absolute;right:7px;top:7px;background:#d42c3f;color:#fff;padding:3px 6px;border-radius:20px;font-size:12px}
#driver[data-compact-driver] .card{margin:0 0 10px!important;padding:14px!important;border-radius:14px!important}
#driver[data-compact-driver] .driverQuickMediaGrid{display:block!important;margin:10px 0!important}
#driver[data-compact-driver] .driverQuickMediaGrid > .upload{width:100%!important;min-height:0!important;padding:14px!important;box-sizing:border-box}
#driver[data-compact-driver] .mediaSourceActions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px}
#driver[data-compact-driver] .mediaSourceActions .btn{min-height:48px!important;white-space:normal}
#driver[data-compact-driver] .driverLeaveBox{display:block!important;margin:0 0 12px!important;padding:14px!important;width:100%!important;box-sizing:border-box}
#driver[data-compact-driver] .driverDieselGrid,#driver[data-compact-driver] .driverTollGrid{gap:8px!important}
#driver[data-compact-driver] .field{margin-bottom:8px!important}
#driver[data-compact-driver] .field input,#driver[data-compact-driver] .field select,#driver[data-compact-driver] .field textarea{font-size:16px;box-sizing:border-box;max-width:100%}
#driver[data-compact-driver] #compactProfile > *{background:#fff;color:#173653!important;border-radius:12px;padding:16px!important;margin:0 0 12px!important}
#driver[data-compact-driver] #compactProfile .driverContactLine469,#driver[data-compact-driver] #compactProfile #driverPhone,#driver[data-compact-driver] #compactProfile #driverEmail{color:#173653!important}
@media(max-width:620px){
  #driver[data-compact-driver]:not(.hidden){padding:8px!important;gap:6px}
  #driver[data-compact-driver] > .compactTileGrid.active{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;grid-auto-rows:minmax(68px,1fr)}
  #driver[data-compact-driver] .compactTile{font-size:13px;padding:8px 4px;gap:6px;border-radius:12px}
  #driver[data-compact-driver] .compactHeader{padding:10px}
  #driver[data-compact-driver] #driverName{font-size:17px!important}
  #driver[data-compact-driver] .compactHeader .emergencyCall{max-width:128px;font-size:11px!important}
  #driver[data-compact-driver] .compactHeader .emergencyCall>span:first-child{display:none}
  #driver[data-compact-driver] .compactToolbar .compactTile{padding:7px 9px}
  #driver[data-compact-driver] .driverDieselGrid,#driver[data-compact-driver] .driverTollGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-height:600px){#driver[data-compact-driver] > .compactTileGrid.active{grid-auto-rows:minmax(60px,1fr)}#driver[data-compact-driver] .compactIdentity small{font-size:9px;letter-spacing:.5px}}

#driver[data-compact-driver] .compactHeaderInfo{flex:1;min-width:0;max-width:380px;display:flex;flex-direction:column;gap:7px}
#driver[data-compact-driver] .compactHeaderInfo .driverWeather{margin:0!important;padding:0!important;color:#fff!important}
#driver[data-compact-driver] .compactHeaderInfo #weatherExtra{color:#d9eaff!important}
#driver[data-compact-driver] .compactHeaderInfo #dailyMessage{margin:0!important;padding:7px 9px!important;background:#ffffff12!important;border:1px solid #ffffff25!important;border-radius:8px;color:#fff!important;font-size:12px!important;line-height:1.4}
@media(max-width:700px){
 #driver[data-compact-driver] .compactHeader{flex-wrap:wrap;gap:8px}
 #driver[data-compact-driver] .compactIdentity{flex:1}
 #driver[data-compact-driver] .compactHeaderInfo{order:3;flex-basis:100%;max-width:none;flex-direction:row;align-items:center;gap:8px}
 #driver[data-compact-driver] .compactHeaderInfo .driverWeather{flex:1;font-size:11px!important;min-width:0}
 #driver[data-compact-driver] .compactHeaderInfo #dailyMessage{flex:1;font-size:11px!important}
}

@media(max-width:700px){
#driver[data-compact-driver] .compactHeaderInfo{display:flex!important;flex-direction:column!important;align-items:stretch!important;flex:0 0 100%!important;width:100%!important;min-width:0!important;gap:10px!important}
#driver[data-compact-driver] .compactHeaderInfo>*{position:static!important;float:none!important;flex:none!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;height:auto!important;overflow-wrap:anywhere}
#driver[data-compact-driver] .compactHeaderInfo .driverWeather{display:flex!important;align-items:center!important;gap:8px!important;transform:none!important}
#driver[data-compact-driver] .compactHeaderInfo #dailyMessage{display:block!important;white-space:normal!important;line-height:1.4!important}
#driver[data-compact-driver] .compactHeaderInfo .portalSoundControl{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
#driver[data-compact-driver] .portalSoundControl .btn{min-width:0!important;max-width:100%!important;white-space:normal!important;padding:8px!important;font-size:12px!important}
#driver[data-compact-driver] .portalSoundControl small{display:block!important;flex-basis:100%!important;white-space:normal!important}
}

/* Equal, compact damage actions on phone and desktop. */
#driver[data-compact-driver] #compactDamageMenu.active{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start;align-items:stretch}
#driver[data-compact-driver] #compactDamageMenu .compactTile{width:100%;min-height:108px;padding:16px 12px;gap:7px;border-radius:12px;white-space:normal}
#driver[data-compact-driver] #compactDamageMenu .compactIcon{font-size:24px;line-height:1}
#driver[data-compact-driver] #compactDamageMenu small{font-size:12px;line-height:1.4;font-weight:400;color:#63768a;max-width:260px}
@media(max-width:600px){#driver[data-compact-driver] #compactDamageMenu.active{gap:8px}#driver[data-compact-driver] #compactDamageMenu .compactTile{padding:12px 8px;font-size:13px;min-height:116px}}

#driver #compactDashboard .compactLeaveAlert{grid-column:1/-1;display:flex;flex-direction:column;gap:7px;width:100%;min-width:0;box-sizing:border-box;padding:14px 16px;border:2px solid #e1b551;border-radius:14px;background:#fff6de;color:#173453;text-align:left;font:inherit;cursor:pointer;line-height:1.4}#driver #compactDashboard .compactLeaveAlert[hidden]{display:none!important}#driver .compactLeaveAlert strong{font-size:17px}#driver .compactLeaveAlert .compactLeaveAction{font-weight:700;color:#155db9}#driver .compactLeaveAlert:focus-visible{outline:3px solid #1766c9;outline-offset:2px}

/* Top row: leave expands into the space of an expired payment notice. */
#driver #compactDashboard .compactTopTiles{grid-column:1/-1;display:flex;gap:10px;min-width:0;align-items:stretch}
#driver #compactDashboard .compactTopTiles>.compactLeaveAlert{flex:2;width:auto;margin:0}
#driver #compactDashboard .compactTopTiles>.driverPaymentAlert{flex:1;width:auto;min-width:0;margin:0}
#driver[data-compact-driver] #compactDashboard .compactTopTiles>#officeEmergencyCall.compactEmergency{flex:1;width:auto!important;height:auto!important;min-width:0!important}
#driver #compactDashboard .compactTopTiles:has(.driverPaymentAlert:not([hidden]))>.compactLeaveAlert{flex:1}
#driver #compactDashboard .compactTopTiles>*{overflow-wrap:anywhere}
@media(max-width:600px){
 #driver #compactDashboard .compactTopTiles{gap:6px}
 #driver #compactDashboard .compactTopTiles>.compactLeaveAlert,#driver #compactDashboard .compactTopTiles>.driverPaymentAlert{padding:10px 8px;font-size:12px;gap:6px}
 #driver #compactDashboard .compactTopTiles strong{font-size:13px}
 #driver[data-compact-driver] #compactDashboard .compactTopTiles>#officeEmergencyCall.compactEmergency{font-size:12px!important;padding:8px 5px!important}
}

#driver[data-compact-driver] > #compactDashboard.active{grid-template-rows:max-content repeat(3,minmax(74px,1fr))}
#driver #compactDashboard .compactTopTiles{min-height:max-content}
@media(max-width:620px){#driver[data-compact-driver] > #compactDashboard.active{grid-template-rows:max-content repeat(5,minmax(68px,1fr))}}

#driver #compactLeave .compactLeaveActions{margin-bottom:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;box-sizing:border-box}
#driver #compactLeave .compactLeaveActions>.compactTile{width:100%;max-width:none;min-height:100px;box-sizing:border-box;margin:0}

#driver .compactBack{display:inline-flex!important;align-items:center;justify-content:center;background:#1262cc!important;color:white!important;border:2px solid #0d50ad!important;min-height:46px!important;min-width:88px;font-size:17px!important;font-weight:750!important;box-shadow:0 2px 5px #153b6226}#driver .compactBack[hidden]{display:none!important}
