.angie-multi-map-container {
	width: 100%;
	z-index: 1;
}

.angie-multi-map-wrapper {
	width: 100%;
}

.leaflet-pane {
	z-index: 400;
}
.leaflet-top, .leaflet-bottom {
	z-index: 1000;
}

/* Popup Content Styling */
.angie-map-popup-content .popup-title {
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 5px;
	line-height: 1.2;
}

.angie-map-popup-content .popup-desc {
	font-size: 14px;
	line-height: 1.4;
	margin-bottom: 0;
}

.angie-map-popup-content .popup-desc p:last-child {
	margin-bottom: 0;
}

.angie-map-popup-content .popup-desc p {
	margin-top: 0;
	margin-bottom: 0.5em; 
}

/* Standard Popup (Click) Styling */
.leaflet-popup-content {
	margin: 15px;
	color: #333;
}

.leaflet-popup-content img {
	max-width: 100% !important;
	height: auto;
}

.rtl .leaflet-popup-content {
	text-align: right;
	direction: rtl;
}

.leaflet-container a {
	color: #0078A8;
}

/* Static Label Styling (Always Visible Mode) - CSS Centering Strategy */
.angie-custom-div-icon {
	background: transparent;
	border: none;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.angie-custom-marker-wrapper {
	position: absolute;
	left: 0;
	top: 0;
	
	/* 
	   Centering Logic:
	   1. translateX(-50%): Centers the wrapper horizontally on the map coordinate (0,0 of parent).
	   2. translateY(calc(...)): Shifts the wrapper UP by the height of the icon.
	      This ensures the visual bottom of the icon sits exactly at the map coordinate.
	*/
	transform: translate(-50%, calc(-1 * var(--icon-height, 40px)));
	
	display: flex;
	flex-direction: column;
	align-items: center;
	
	/* Width is controlled dynamically by Elementor settings */
}

.angie-marker-icon {
	z-index: 2;
	/* Icon is naturally at the top of the flex container */
	flex-shrink: 0;
}

.angie-static-label {
	/* margin-top is controlled via widget settings inline style */
	background: white;
	padding: 8px 12px;
	border-radius: 4px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.2);
	text-align: center;
	z-index: 1;
	width: 100%; /* Fill the wrapper width */
	box-sizing: border-box;
	pointer-events: auto; /* Allow text selection */
}

.angie-static-label .popup-title {
	font-weight: bold;
	display: block;
	margin-bottom: 2px;
}

/* Fix for font-weight overriding */
.leaflet-container {
    font-family: inherit; 
}
