.orbitkit-map-widget {
	position: relative;
	width: 100%;
}

.orbitkit-map-canvas {
	width: 100%;
	border-radius: 8px;
	overflow: hidden;
	z-index: 1;
}

/* Leaflet: inner popup uses Elementor styles on .orbitkit-marker-popup */
.orbitkit-map-widget .leaflet-popup.orbitkit-leaflet-popup .leaflet-popup-content-wrapper {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0;
}

.orbitkit-map-widget .leaflet-popup.orbitkit-leaflet-popup .leaflet-popup-content {
	margin: 0;
	min-width: 140px;
	line-height: 1.5;
}

.orbitkit-marker-popup {
	display: block;
	box-sizing: border-box;
}

.orbitkit-marker-popup__title {
	display: block;
	font-weight: 600;
}

.orbitkit-marker-popup__description {
	display: block;
	line-height: 1.5;
}

.orbitkit-marker-popup__description:empty {
	display: none;
}

/* Google Maps InfoWindow */
.orbitkit-map-widget .gm-style .orbitkit-marker-popup {
	box-sizing: border-box;
}

/* Custom map markers */
.orbitkit-map-marker-wrap {
	background: transparent !important;
	border: none !important;
}

.orbitkit-map-marker {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.orbitkit-map-marker svg {
	display: block;
	filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.28));
}

/* Region tooltips (Leaflet) — pane + card */
.orbitkit-map-widget .leaflet-tooltip-pane {
	z-index: 700;
	pointer-events: none;
}

.orbitkit-map-widget .leaflet-tooltip.orbitkit-region-tooltip-wrap {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0;
	margin: 0;
	color: inherit;
	white-space: normal;
	opacity: 0;
	transform: translate3d(0, 8px, 0) scale(0.96);
	transform-origin: center bottom;
	transition:
		opacity 0.24s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.24s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}

.orbitkit-map-widget .leaflet-tooltip.orbitkit-region-tooltip-wrap.orbitkit-region-tooltip--show {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
}

/* Leaflet arrow uses border lines; we use a solid fill caret instead */
.orbitkit-map-widget .leaflet-tooltip.orbitkit-region-tooltip-wrap::before {
	display: none;
}

.orbitkit-region-tooltip-shell {
	display: flex;
	flex-direction: column;
	align-items: center;
	--rk-region-tooltip-fill: #fff;
}

.orbitkit-region-tooltip {
	display: block;
	box-sizing: border-box;
	min-width: 120px;
	max-width: 280px;
	padding: 10px 14px;
	background: var(--rk-region-tooltip-fill);
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 10px;
	box-shadow:
		0 2px 4px rgba(15, 23, 42, 0.04),
		0 8px 24px rgba(15, 23, 42, 0.12);
	line-height: 1.45;
}

.orbitkit-region-tooltip__caret {
	display: block;
	flex-shrink: 0;
	width: 14px;
	height: 8px;
	margin-top: -1px;
	background: var(--rk-region-tooltip-fill);
	clip-path: polygon(50% 100%, 0 0, 100% 0);
	filter: drop-shadow(0 1px 0 rgba(15, 23, 42, 0.08));
	pointer-events: none;
}

.orbitkit-map-widget .leaflet-tooltip-bottom.orbitkit-region-tooltip-wrap .orbitkit-region-tooltip-shell {
	flex-direction: column-reverse;
}

.orbitkit-map-widget .leaflet-tooltip-bottom.orbitkit-region-tooltip-wrap .orbitkit-region-tooltip__caret {
	margin-top: 0;
	margin-bottom: -1px;
	clip-path: polygon(50% 0%, 0 100%, 100% 100%);
}

.orbitkit-map-widget .leaflet-tooltip-left.orbitkit-region-tooltip-wrap .orbitkit-region-tooltip-shell,
.orbitkit-map-widget .leaflet-tooltip-right.orbitkit-region-tooltip-wrap .orbitkit-region-tooltip-shell {
	flex-direction: row;
	align-items: center;
}

.orbitkit-map-widget .leaflet-tooltip-left.orbitkit-region-tooltip-wrap .orbitkit-region-tooltip__caret {
	width: 8px;
	height: 14px;
	margin-top: 0;
	margin-right: -1px;
	clip-path: polygon(0 50%, 100% 0, 100% 100%);
}

.orbitkit-map-widget .leaflet-tooltip-right.orbitkit-region-tooltip-wrap .orbitkit-region-tooltip__caret {
	width: 8px;
	height: 14px;
	margin-top: 0;
	margin-left: -1px;
	clip-path: polygon(100% 50%, 0 0, 0 100%);
}

@supports (backdrop-filter: blur(8px)) {
	.orbitkit-region-tooltip-shell {
		--rk-region-tooltip-fill: rgba(255, 255, 255, 0.94);
	}

	.orbitkit-region-tooltip {
		backdrop-filter: blur(10px);
	}
}

.orbitkit-region-tooltip__title {
	display: block;
	font-weight: 600;
	font-size: 0.9375rem;
	line-height: 1.35;
	letter-spacing: -0.01em;
}

.orbitkit-region-tooltip__description {
	display: block;
	margin-top: 0.35em;
	font-size: 0.8125rem;
	line-height: 1.5;
	opacity: 0.88;
}

.orbitkit-region-tooltip__description:empty {
	display: none;
}

.orbitkit-region-tooltip__title:empty + .orbitkit-region-tooltip__description {
	margin-top: 0;
}
