/* Leaflet.markercluster styles */
.leaflet-cluster-anim .leaflet-marker-icon,
.leaflet-cluster-anim .leaflet-marker-shadow {
	-webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s ease-in;
	-moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s ease-in;
	-o-transition: -o-transform 0.3s ease-out, opacity 0.3s ease-in;
	transition: transform 0.3s ease-out, opacity 0.3s ease-in;
}

.leaflet-cluster-spider-leg {
	-webkit-transition: -webkit-stroke-dashoffset 0.3s ease-out, -webkit-stroke-opacity 0.3s ease-in;
	-moz-transition: -moz-stroke-dashoffset 0.3s ease-out, -moz-stroke-opacity 0.3s ease-in;
	-o-transition: -o-stroke-dashoffset 0.3s ease-out, -o-stroke-opacity 0.3s ease-in;
	transition: stroke-dashoffset 0.3s ease-out, stroke-opacity 0.3s ease-in;
}

.marker-cluster-small {
	background-color: rgba(14, 165, 233, 0.25);
}
.marker-cluster-small div {
	background-color: #0284c7;
	color: #ffffff;
}

.marker-cluster-medium {
	background-color: rgba(245, 158, 11, 0.28);
}
.marker-cluster-medium div {
	background-color: #d97706;
	color: #ffffff;
}

.marker-cluster-large {
	background-color: rgba(239, 68, 68, 0.28);
}
.marker-cluster-large div {
	background-color: #dc2626;
	color: #ffffff;
}

.marker-cluster {
	background-clip: padding-box;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.marker-cluster:hover {
	transform: scale(1.12);
}

.marker-cluster div {
	width: 32px;
	height: 32px;
	text-align: center;
	border-radius: 50%;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
	font-size: 13px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.marker-cluster span {
	line-height: 1;
}
