/* slop for the map visual */

.map-card {
	min-width: 0;
	padding: clamp(0.75rem, 2vw, 1.5rem);
}
.map-canvas {
	isolation: isolate;
	position: relative;
}
.map-country {
	cursor: pointer;
	stroke: var(--color-bright-snow);
	stroke-width: 1.1;
	stroke-linejoin: round;
	transition: opacity 140ms ease, stroke 140ms ease, stroke-width 140ms ease;
}
.map-country:hover,
.map-country.is-active,
.map-country:focus-visible {
	stroke: var(--color-carbon-black);
	stroke-width: 2;
	outline: none;
}
.map-tooltip {
	position: absolute;
	z-index: 2;
	display: flex;
	flex-direction: column;
	width: max-content;
	max-width: min(220px, calc(100% - 2rem));
	padding: 0.7rem 0.85rem;
	border: 1px solid rgb(28 30 31 / 0.14);
	background: rgb(249 249 248 / 0.94);
	box-shadow: 0 12px 32px rgb(28 30 31 / 0.12);
	pointer-events: none;
	backdrop-filter: blur(8px);
}
.map-tooltip[hidden] {
	display: none;
}
.map-tooltip strong {
	font-family: var(--font-heading);
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.1;
}
.map-tooltip span {
	margin-top: 0.2rem;
	font-size: 0.72rem;
	color: var(--color-taupe);
}
.map-legend {
	display: grid;
	grid-template-columns: auto minmax(80px, 180px) auto;
	gap: 0.65rem;
	align-items: center;
	justify-content: center;
	margin-top: 0.5rem;
	font-size: 0.65rem;
	color: var(--color-taupe);
}
.map-legend__scale {
	height: 0.45rem;
	border-radius: 999px;
	background: linear-gradient(90deg, #D2DAEF 0%, #2D4399 100%);
}
.europe-map {
	display: block;
	width: 100%;
	height: auto;
}