/* Clean white controls shared by administration, visitor, and driver panels. */
body.admin-shell .admin-page :is(button,.btn),
body.visitor-mobile :is(button,.btn,.visitor-nav a),
body.driver-mobile :is(button,.btn,.action,.icon-button,.map-link,.quantity-control,.filter-chip,.location-picker-button){
  background:#fff!important;color:#502274!important;border:1px solid #d8cde4!important;
  box-shadow:0 2px 6px #24153a12!important;font-weight:700;
}
body.admin-shell .admin-page :is(button,.btn):hover,
body.visitor-mobile :is(button,.btn,.visitor-nav a):hover,
body.driver-mobile :is(button,.btn,.action,.icon-button,.map-link,.quantity-control,.filter-chip,.location-picker-button):hover{
  background:#f5f0fb!important;color:#3b185b!important;border-color:#bca9d0!important;
}
body.admin-shell .admin-page :is(button,.btn):disabled,
body.visitor-mobile button:disabled,body.driver-mobile button:disabled{opacity:.58!important;}
body.visitor-mobile .visitor-nav a[aria-current]{background:#fff!important;color:#502274!important;border:2px solid #502274!important;}
body.driver-mobile .filter-chip.active{background:#fff!important;color:#502274!important;border-color:#502274!important;box-shadow:inset 0 0 0 1px #502274!important;}
/* Keep the driver's saved-coordinate marker red, as requested for that panel. */
body.driver-mobile .store-toggle[data-coordinates-saved="true"]{background:#b42332!important;color:#fff!important;border-color:#831d2c!important;}
body.driver-mobile .store-toggle[data-coordinates-saved="true"] .store-mark{background:#ffffff20!important;color:#fff!important;border-color:#ffffff60!important;}
body.driver-mobile .store-toggle[data-coordinates-saved="true"] .store-chevron{border-color:#fff!important;}

/* High-specificity overrides keep the white button surface across each panel's color theme. */
body.admin-shell .admin-page button:not(.btn):not(.calendar-toggle):not(.no-white),
body.admin-shell .admin-page .btn:not(a.btn):not(.no-white),
body.visitor-mobile.visitor-mobile button:not(.no-white),
body.visitor-mobile.visitor-mobile .visitor-nav a:not(.no-white),
body.driver-mobile.driver-mobile button:not(.no-white),
body.driver-mobile.driver-mobile .btn:not(.no-white),
body.driver-mobile.driver-mobile .action:not(.no-white),
body.driver-mobile.driver-mobile .icon-button:not(.no-white),
body.driver-mobile.driver-mobile .map-link:not(.no-white),
body.driver-mobile.driver-mobile .quantity-control:not(.no-white),
body.driver-mobile.driver-mobile .filter-chip:not(.no-white),
body.driver-mobile.driver-mobile .location-picker-button:not(.no-white){
 background:#fff!important;background-image:none!important;color:#502274!important;border-color:#d8cde4!important;
}

body.driver-mobile.driver-mobile .store-toggle[data-coordinates-saved="true"]{background:#b42332!important;background-image:none!important;color:#fff!important;border-color:#831d2c!important;}
body.driver-mobile.driver-mobile .store-toggle[data-coordinates-saved="true"] .store-mark{background:#ffffff20!important;color:#fff!important;border-color:#ffffff60!important;}
body.driver-mobile.driver-mobile .store-toggle[data-coordinates-saved="true"] .store-chevron{border-color:#fff!important;}

/* Sidebar dropdowns open as white cards with dark, readable links. */
body.admin-shell .sidebar .submenu{background:#fff!important;border:1px solid #eadfed!important;border-radius:10px!important;margin:6px 2px 10px!important;padding:7px!important;box-shadow:0 4px 12px #24153a22!important;}
body.admin-shell .sidebar .submenu li{color:#502274!important;background:transparent!important;border-radius:7px;font-weight:600;}
body.admin-shell .sidebar .submenu li:not(:has(>a)){padding:7px 10px!important;margin:2px 0;}
body.admin-shell .sidebar .submenu li:hover{color:#3b185b!important;background:#f5f0fb!important;}
body.admin-shell .sidebar .submenu li>a{display:block;color:#502274!important;}
body.admin-shell .sidebar .submenu li>a.white-menu-button{margin:3px 0;padding:7px 9px;box-shadow:none!important;}
