.map-container {
    width: 100%;
    height: 500px;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.map-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.map-filters {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.map-filters label,
.map-edit-toggle label {
    cursor: pointer;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Cel dotykowy markerów: pole ikony ma co najmniej 24×24 px (WCAG 2.5.8), a kropka/numer jest w nim wyśrodkowana,
   z tym samym punktem zakotwiczenia na mapie co wcześniej. */
.leaflet-marker-icon.map-marker,
.leaflet-marker-icon.map-route-stop {
    display: flex;
    align-items: center;
    justify-content: center;
}
