.driver-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}
body.driver-session .driver-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
body.driver-session .driver-page-title { min-width: 0; flex: 1 1 0; }
body.driver-session .driver-page-title > div { min-width: 0; }
body.native-ios.driver-session .driver-page-header { grid-template-columns: minmax(0, 1fr) auto; }
body.driver-session .driver-page-title h1 { overflow-wrap: anywhere; }
body.driver-session #driverNotificationCenterButton {
  margin: 0;
  width: 48px;
  height: 48px;
  min-width: 44px;
  flex: 0 0 auto;
}
body.driver-session #notificationCenter {
  top: var(--driver-notification-top, calc(76px + env(safe-area-inset-top)));
  right: max(12px, env(safe-area-inset-right));
  width: min(410px, calc(100vw - 24px));
  max-height: min(72dvh, calc(100dvh - var(--driver-notification-top, 76px) - env(safe-area-inset-bottom) - 12px));
  box-sizing: border-box;
}
body.driver-session .notification-center-head { flex-wrap: wrap; gap: 8px; }
body.driver-session .notification-center-actions { margin-left: auto; }
body.driver-session .notification-center-list {
  overscroll-behavior-y: contain;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
}
body.driver-session .notification-item-copy b { font-size: 14px; }
body.driver-session .notification-item-copy small { font-size: 13px; }
body.driver-session .notification-item-copy time { font-size: 11px; }
html[data-theme="light"] body.driver-session .notification-item {
  color: #171611;
  background: #fffdf8;
  border-color: #ded7c9;
}
html[data-theme="light"] body.driver-session .notification-item.unread {
  background: #fff4c5;
  border-color: #b08700;
}
html[data-theme="light"] body.driver-session .notification-item-copy b { color: #171611; }
html[data-theme="light"] body.driver-session :is(.notification-item-copy small, .notification-item-copy time, .notification-center-empty) { color: #514b40; }
html[data-theme="light"] body.driver-session .notification-item-remove { color: #302d26; background: #f1ede3; }
html[data-theme="light"] body.driver-session #notificationCenter {
  background: #fffdf8 !important;
  color: #171611 !important;
  border-color: #d4caba !important;
}
/* Keep late-loaded driver panels readable even with older cached theme rules. */
html[data-theme="light"] body.driver-session #driverInstantBanner {
  background: #fff0ee !important;
  border-color: #bc4940 !important;
  color: #79221c !important;
}
html[data-theme="light"] body.driver-session #driverInstantBanner b { color: #79221c !important; }
html[data-theme="light"] body.driver-session #driverInstantBanner small { color: #693c36 !important; }
html[data-theme="light"] body.driver-session .dispatch-route {
  background: #f7f4ec !important;
  border-color: #d4caba !important;
  color: #302d26 !important;
}
html[data-theme="light"] body.driver-session .dispatch-route :is(b, span, div) {
  color: #302d26 !important;
  text-shadow: none !important;
}
@media(max-width:360px) {
  body.driver-session .driver-page-title::before { display: none; }
  body.native-ios.driver-session .driver-page-title { grid-template-columns: minmax(0, 1fr); }
  body.driver-session .driver-page-title h1 { font-size: 20px; }
  body.driver-session .driver-page-title p { font-size: 11px; }
  .driver-header-actions { gap: 6px; }
}
