diff --git a/src/app/dashboard/plant/map/map-view.tsx b/src/app/dashboard/plant/map/map-view.tsx index e00318a..0cf617d 100644 --- a/src/app/dashboard/plant/map/map-view.tsx +++ b/src/app/dashboard/plant/map/map-view.tsx @@ -122,8 +122,18 @@ export function MapView({ vehicles, sites }: { vehicles: MapVehicle[]; sites: Ma // for the Topbar (~4rem) plus ~5rem of vertical breathing room // (margin + the bottom-of-page gap). On phones the margin tightens // so the map still gets most of the screen. + // + // `isolate` (= `isolation: isolate`) traps Leaflet's internal + // z-index ladder (tile=200, overlay=400, marker=600, popup=700, + // controls=1000) inside the wrapper. Without it those values leak + // up to the dashboard layout and bury the Topbar's "All Sites" + // dropdown (z-50) when it opens over the map area. With it, the + // dropdown stays above because it competes with the wrapper as a + // single atomic unit. Nothing inside the wrapper needs to change — + // the legend / layer switcher are already at `z-[400]`, which is + // well above the tile pane but well below the marker controls. return ( -
+
{vehicles.length === 0 && (