/* Driver booking controls reuse the homepage palette and field styles. */
.driver-search { min-height: auto; padding: 16px 0 20px; }
.driver-search .home-search-intro { margin-bottom: 12px; }
.driver-search .home-search-eyebrow { margin-bottom: 8px; }
.driver-search .home-search-intro h1 { margin-bottom: 8px; }
.driver-search .home-search-intro p { margin-bottom: 0; }
.driver-search #mainTabsContent { padding: 16px; }
.driver-search .home-booking-caption { margin-bottom: 10px; padding-bottom: 10px; }
.driver-search .home-search-note { margin-top: 12px; }
.driver-search .sec__img { background-image: url('../image/driver/bg/search-banner.webp'); }
.driver-trip-tabs { display: flex; gap: 4px; padding: 5px; margin-bottom: 16px; width: fit-content; background: #f6f3f7; border-radius: 12px; }
.driver-trip-tabs button { border: 0; padding: 11px 22px; background: transparent; border-radius: 8px; color: #65586b; font-size: 13px; font-weight: 600; }
.driver-trip-tabs button[aria-selected="true"] { color: #fff; background: #883b71; box-shadow: 0 3px 8px #883b7120; }
.driver-search [hidden] { display: none !important; }
.driver-fields { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px 12px; align-items: start; }
.driver-field { position: relative; min-width: 0; }
.driver-field-wide { grid-column: span 2; }
.driver-search .driver-select-native { position: absolute; width: 1px !important; height: 1px !important; opacity: 0; padding: 0; pointer-events: none; }
.driver-select-menu summary::after { content: ''; width: 8px; height: 8px; border-right: 2px solid #883b71; border-bottom: 2px solid #883b71; transform: rotate(45deg); margin: -4px 3px 0 12px; }
.driver-select-menu summary[aria-invalid="true"] { border-color: #cc4965; background: #fffafb; }
@media(min-width:992px) {
 .driver-field:has(input[name="pickup_location"]),
 .driver-field:has(input[name="drop_location"]) { width: 100%; grid-column: span 1; }
}
.driver-search form label { margin-bottom: 5px !important; }
.driver-search .driver-field textarea.form-control { height: auto !important; min-height: 95px; resize: vertical; }
.driver-form-actions { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 14px; padding-top: 14px; border-top: 1px solid #f0e9f0; }
.driver-search .driver-rate-button { padding: 12px 18px; height: 50px; border-radius: 10px; background: #faf2f7; border: 1px solid #dfc8da; color: #883b71; font-size: 14px; font-weight: 600; }
.driver-search .driver-rate-button:hover { background: #f4eaf2; }
.driver-search .driver-field .autocomplete-results { left: 0; right: 0; width: 100%; }
.driver-search .autocomplete-results [aria-selected="true"] { background: #f4eaf2; color: #883b71; }
.driver-autocomplete-status { display: block; padding: 12px; color: #716079; font-size: 13px; line-height: 1.5; }
.driver-success { padding: 14px; margin-bottom: 18px; border-radius: 10px; background: #eaf5ef; color: #3f8061; }
.driver-search .home-search-note a { color: #883b71; font-weight: 600; }
#rateChartModal .modal-content { border: 0; border-radius: 16px; overflow: hidden; }
#rateChartModal .modal-header { background: #faf2f7; color: #48364f; }
#rateChartModal .common__btn { color: #fff; background: #883b71; border-color: #883b71; }
@media(max-width:991px) { .driver-fields { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .driver-search { min-height: auto; padding: 18px 0 24px; background: #fff !important; }
 .driver-search #mainTabsContent { padding: 18px; border-radius: 18px; }
 .driver-trip-tabs { width: 100%; }
 .driver-trip-tabs button { flex: 1; padding: 10px 6px; font-size: 12px; }
 .driver-fields { gap: 14px 10px; }
 .driver-form-actions { display: grid; grid-template-columns: 1fr; }
 .driver-form-actions button { width: 100%; }
}
@media(max-width:360px) { .driver-fields { grid-template-columns: minmax(0,1fr); } .driver-field-wide { grid-column: auto; } }

.driver-service-tabs { margin-bottom: 12px; }
.driver-search .driver-service-tabs .navOnly { margin-bottom: 0; }
.driver-search .driver-service-tabs .navOnly { width: 100%; justify-content: center; }
.driver-search .driver-service-tabs .outer__nav { width: 100%; justify-content: center; }
.driver-search .driver-service-tabs #mainTabs { width: fit-content; max-width: 100%; margin: 0 auto; justify-content: center; }
