/* One shared night palette; no business/status rules are recalculated here. */
:root{color-scheme:light;--fleet-control:var(--fleet-surface);--fleet-primary-ink:#fff;--fleet-warning:#934b00;--fleet-danger:#b4142b;--fleet-ready-bg:#e6efdf;--fleet-ready-edge:#bed0b5}
:root[data-theme=dark]{color-scheme:dark;--fleet-bg:#171c19;--fleet-surface:#252d28;--fleet-text:#e9eee7;--fleet-ink:#e9eee7;--fleet-muted:#acb7ac;--fleet-edge:#4b574e;--fleet-green:#9ed6b3;--fleet-soft:#243b2e;--fleet-shadow:#00000035;--fleet-control:#303932;--fleet-primary-ink:#17261d;--fleet-warning:#ffd08a;--fleet-danger:#ffaaa4;--fleet-ready-bg:#243b2e;--fleet-ready-edge:#78ad8a;--status-good-ink:#9ed6b3;--status-good-bg:#243b2e;--status-warning-ink:#ffd08a;--status-warning-bg:#41351e;--status-warning-edge:#ffc065;--status-overdue-ink:#ffaaa4;--status-overdue-bg:#3d2526;--status-overdue-edge:#f77c87;--status-unknown-ink:#acb7ac;--status-unknown-bg:#303932}
.fleetdesk-navigation{display:flex;align-items:center;gap:8px}
button.fleetdesk-theme-toggle{width:44px;min-width:44px;height:44px;padding:0;font-size:24px;color:#eaf1e6;background:transparent;border:1px solid #6f8274;border-radius:11px;box-shadow:0 3px 0 #101d16}
[data-theme=dark] body{background:var(--fleet-bg);color:var(--fleet-text)}
[data-theme=dark] button:not(.status-good):not(.status-warning):not(.status-overdue):not(.status-unknown):not(.status-neutral),[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{color:var(--fleet-text);background:var(--fleet-control);border-color:var(--fleet-edge)}
[data-theme=dark] button.fleetdesk-menu{background:var(--fleet-control);color:var(--fleet-text)}
[data-theme=dark] .fleetdesk-header{background:#1d3026}
[data-theme=dark] .card,[data-theme=dark] .vehicle-details,[data-theme=dark] .config-panel,[data-theme=dark] .cleaning-card,[data-theme=dark] .empty,[data-theme=dark] .phone{background:var(--fleet-surface);color:var(--fleet-text);border-color:var(--fleet-edge)}
[data-theme=dark] .vehicle-details.vehicle-status-border{border-color:var(--vehicle-status-color,var(--fleet-edge))}
[data-theme=dark] .service-editor,[data-theme=dark] .vehicle-map-dialog,[data-theme=dark] .reservation-event-dialog{background:var(--fleet-surface);color:var(--fleet-text);border-color:var(--fleet-edge)}
[data-theme=dark] .editor-actions button,[data-theme=dark] .service-editor input,[data-theme=dark] .expiration-pickers select{background:var(--fleet-control);color:var(--fleet-text);border-color:var(--fleet-edge)}
[data-theme=dark] .editor-actions button[type=submit],[data-theme=dark] button.fleet-primary-button,[data-theme=dark] .cleaning-action{color:var(--fleet-primary-ink);background:var(--fleet-green);border-color:var(--fleet-green)}
[data-theme=dark] .hnl-ready,[data-theme=dark] .fuel-ready,[data-theme=dark] .gauntlet-ready,[data-theme=dark] .cleaning-hnl{color:var(--fleet-green);border-color:var(--fleet-green);background:transparent}

[data-theme=dark] .gauntlet-details,[data-theme=dark] .cleaning-good,[data-theme=dark] a{color:var(--fleet-green)}
[data-theme=dark] .kind.return{background:#2c3344;color:#b8c9fa}
[data-theme=dark] .card.statuses-current:not(.return-alert){background:var(--fleet-ready-bg);border-color:var(--fleet-ready-edge)}
[data-theme=dark] .card.return-alert,[data-theme=dark] #day-strip button.return-alert{background:var(--status-overdue-bg);border-color:var(--status-overdue-edge);color:var(--fleet-text)}
[data-theme=dark] #day-strip button.return-alert.active{background:var(--status-overdue-bg);color:var(--fleet-danger);border-color:var(--status-overdue-edge)}
[data-theme=dark] .return-alert-label,[data-theme=dark] .card.return-alert .kind.return,[data-theme=dark] .save-message{color:var(--fleet-danger)}
[data-theme=dark] .extras,[data-theme=dark] .issue,[data-theme=dark] .cleaning-pending,[data-theme=dark] .cleaning-needs_cleaning,[data-theme=dark] .cleaning-attention{color:var(--fleet-warning)}
[data-theme=dark] .extras{background:var(--status-warning-bg)}
[data-theme=dark] .service-editor .editor-actions button.cleaning-choice-clean{color:var(--status-good-ink);background:var(--status-good-bg)!important;border-color:var(--status-good-ink)!important}
[data-theme=dark] .service-editor .editor-actions button.cleaning-choice-dirty{color:var(--status-overdue-ink);background:var(--status-overdue-bg)!important;border-color:var(--status-overdue-edge)!important}
[data-theme=dark] .guest,[data-theme=dark] .details,[data-theme=dark] .location,[data-theme=dark] .swipe-hint,[data-theme=dark] .vehicle-body,[data-theme=dark] .plate{color:var(--fleet-muted)}
[data-theme=dark] .fleet-data-button{background:var(--fleet-control);color:var(--fleet-text);border-color:var(--fleet-edge)}
[data-theme=dark] .details a.guest-action,[data-theme=dark] .directions{background:var(--fleet-control);color:var(--fleet-text);border-color:var(--fleet-edge)}
[data-theme=dark] dialog::backdrop{background:#090e0bcc}
/* Map imagery stays unchanged; only Leaflet controls and popup surfaces are themed. */
[data-theme=dark] .leaflet-bar a,[data-theme=dark] .leaflet-popup-content-wrapper,[data-theme=dark] .leaflet-popup-tip,[data-theme=dark] .leaflet-control-layers,[data-theme=dark] .leaflet-control-attribution{background:var(--fleet-surface);color:var(--fleet-text)}
@media(max-width:380px){.fleetdesk-header{padding-left:12px;padding-right:12px;gap:8px}.fleetdesk-brand{gap:7px}.fleetdesk-brand strong{font-size:20px}.fleetdesk-brand small{font-size:8px;letter-spacing:1.6px}.fleetdesk-mark{font-size:18px;padding:5px 7px}.fleetdesk-navigation{gap:5px}}
/* Readiness and service controls retain their semantic outline colors. */
[data-theme=dark] button.pickup-check{background:var(--fleet-control)!important;border-color:var(--vehicle-status-color,var(--fleet-edge))!important}



/* Successful gauntlet badge: preserve the shared success outline over generic button styles. */
.inline-location button.gauntlet-status{display:inline-flex;align-items:center;justify-content:center;position:relative;color:var(--vehicle-status-color,var(--status-unknown-ink,#68756b));border:1.5px solid currentColor;border-radius:5px;background:transparent;padding:1px 5px;min-width:29px;height:24px;line-height:1.3;box-shadow:none}
@media(pointer:coarse){.gauntlet-status:after{content:"";position:absolute;inset:-10px -5px}}

button.fleet-danger-button{font:inherit;font-size:13px;font-weight:650;min-height:44px;padding:9px 13px;border:2px solid var(--status-overdue-edge,var(--fleet-danger))!important;border-radius:10px;color:var(--status-overdue-ink,var(--fleet-danger))!important;background:var(--status-overdue-bg,#ffe0e6)!important;box-shadow:0 2px 0 var(--fleet-edge),inset 0 1px 0 #ffffff15;cursor:pointer}.reservation-content>.fleet-danger-button{margin-top:10px}.fleet-editor .editor-actions button{margin:0}.fleet-editor .editor-actions .fleet-danger-button{font-weight:650}.fleet-danger-button:hover{filter:brightness(.96)}.fleet-danger-button:active{transform:translateY(2px);box-shadow:none}.fleet-danger-button:focus-visible{outline:2px solid var(--fleet-danger);outline-offset:3px}

.inline-location button.cleaning-edit.fuel-ready{color:var(--status-good-ink,var(--fleet-green));background:var(--status-good-bg,#e3f2e8)!important;border-color:currentColor!important}.inline-location button.cleaning-edit.cleaning-needs_cleaning{color:var(--status-warning-ink,var(--fleet-warning));background:var(--status-warning-bg,#fff0ca)!important;border-color:currentColor!important}.inline-location button.cleaning-edit.cleaning-unknown{color:var(--fleet-muted);background:var(--fleet-control)!important;border-color:currentColor!important}
