/* Lightweight final marker proportions and annotation stacking. */

.custom-cluster {
    color: #ffffff !important;
    border: 2px solid #141914 !important;
}

.listing-marker-shell--business {
    width: 52px !important;
    height: 58px !important;
}

/* Native teardrop: one rotated rounded shape. */
.listing-map-marker--business {
    --marker-fill: #178b36;
    top: -3px !important;
    width: 39px !important;
    height: 39px !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 50% 50% 50% 0 !important;
    background: var(--marker-fill) !important;
    opacity: 1 !important;
    transform: translateX(-50%) rotate(-45deg) !important;
    transform-origin: 50% 50% !important;
    box-shadow: 0 3px 8px rgba(16, 24, 18, 0.22) !important;
}

.listing-map-marker--business::after {
    content: none !important;
    display: none !important;
}

.listing-map-marker--business .listing-map-marker__icon {
    width: 17px !important;
    height: 17px !important;
    opacity: 1 !important;
    filter: brightness(0) invert(1) !important;
    transform: rotate(45deg) translateY(-0.5px) !important;
    transform-origin: 50% 50% !important;
}

.listing-map-marker--business.listing-map-marker--active,
.listing-map-marker--business.listing-map-marker--related {
    --marker-fill: #e97b1b;
    background: var(--marker-fill) !important;
    border-color: #ffffff !important;
}

#browse-listings-map .listing-location-connection,
#browse-listings-map .tradel-marker-connection-overlay,
#browse-listings-map svg.tradel-marker-connection-overlay,
#browse-listings-map .leaflet-overlay-pane,
#browse-listings-map .leaflet-overlay-pane svg,
#browse-listings-map .leaflet-overlay-pane path,
#browse-listings-map .leaflet-overlay-pane polyline {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.leaflet-marker-icon.listing-marker-icon--has-label {
    z-index: 100000 !important;
    overflow: visible !important;
}

.listing-marker-shell {
    overflow: visible !important;
}

.listing-marker-annotation--label {
    position: absolute !important;
    left: 50% !important;
    z-index: 1000 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 26px !important;
    max-width: 76px !important;
    min-height: 16px !important;
    padding: 3px 6px 2px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    font-size: 8px !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    letter-spacing: 0.02em !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    background: #fff !important;
    opacity: 1 !important;
    transform: translateX(-50%) !important;
}

.listing-marker-shell--private > .listing-marker-annotation--label {
    top: 4px !important;
}

.listing-marker-shell--business > .listing-marker-annotation--label {
    top: -1px !important;
}

.listing-map-marker {
    z-index: 2 !important;
}

.listing-map-marker__icon {
    z-index: 3 !important;
}

@media (max-width: 700px) {
    .listing-marker-shell--business {
        width: 52px !important;
        height: 58px !important;
    }

    .listing-map-marker--business {
        top: -2px !important;
        width: 38px !important;
        height: 38px !important;
    }

    .listing-map-marker--business .listing-map-marker__icon {
        width: 16px !important;
        height: 16px !important;
    }

    .listing-marker-shell--private > .listing-marker-annotation--label {
        top: 4px !important;
    }

    .listing-marker-shell--business > .listing-marker-annotation--label {
        top: 0 !important;
    }
}
