.domains-indicator {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(9rem, 1fr);
	gap: .75rem;
	align-items: center;
}

.domains-map-figure { min-width: 0; margin: 0; }
.domains-map { display: block; width: 100%; height: auto; }
.domain-AMAZONIA { --domain-color: #007c6c; }
.domain-CAATINGA { --domain-color: #2768bf; }
.domain-CERRADO { --domain-color: #b05a00; }
.domain-MATA_ATLANTICA { --domain-color: #7b4bb2; }
.domain-PAMPA { --domain-color: #c43d4d; }
.domain-PANTANAL { --domain-color: #627700; }

.domain-region {
	fill: var(--domain-color);
	stroke: #ffffff;
	stroke-width: 1;
	stroke-linejoin: round;
	vector-effect: non-scaling-stroke;
}

.domains-map.has-highlight .domain-region { opacity: .28; }
.domains-map.has-highlight .domain-region.is-highlighted {
	opacity: 1;
	stroke: #17324d;
	stroke-width: 2;
}

.domains-map-credit,
.domains-note {
	color: #53627c;
	font-size: .75rem;
	line-height: 1.4;
}
.domains-map-credit { text-align: center; }
.domains-map-credit a { color: #005a50; text-underline-offset: .15em; }
.domains-note { margin: .75rem 0 0; text-align: center; }
.domains-legend { display: grid; gap: .35rem; padding: 0; margin: 0; list-style: none; }
.domains-legend-button {
	display: flex;
	align-items: center;
	gap: .55rem;
	width: 100%;
	padding: .5rem;
	border: 1px solid transparent;
	border-radius: .5rem;
	background: transparent;
	color: #17324d;
	font: inherit;
	text-align: left;
}
.domains-legend-button:hover,
.domains-legend-button.is-active,
.domains-legend-button[aria-pressed="true"] {
	border-color: #98b8ad;
	background: #ffffff;
}
.domains-legend-button:focus-visible,
.domains-map-credit a:focus-visible { outline: 3px solid #005a50; outline-offset: 2px; }
.domain-swatch {
	flex: 0 0 1.65rem;
	height: 1.65rem;
	border-radius: 50%;
	background: var(--domain-color);
}
.domain-details { display: grid; gap: .15rem; min-width: 0; }
.domain-name { font-size: .83rem; line-height: 1.25; }
.domain-count { font-size: .72rem; color: #53627c; }
.domain-count strong { color: #17324d; font-size: .95rem; font-variant-numeric: tabular-nums; }

@media (max-width: 991.98px) {
	.domains-indicator { grid-template-columns: 1fr; }
	.domains-map-figure { width: min(21rem, 100%); justify-self: center; }
	.domains-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

html.reflora-high-contrast .domains-legend-button,
html.reflora-high-contrast .domains-legend-button.is-active,
html.reflora-high-contrast .domains-legend-button:hover { background: #000000; color: #ffffff; }
html.reflora-high-contrast .domain-count,
html.reflora-high-contrast .domain-count strong,
html.reflora-high-contrast .domains-note,
html.reflora-high-contrast .domains-map-credit,
html.reflora-high-contrast .domains-map-credit a { color: #ffffff; }
html.reflora-high-contrast .domains-legend-button[aria-pressed="true"] { border-color: #ffffff; }
html.reflora-high-contrast .domains-legend-button:focus-visible,
html.reflora-high-contrast .domains-map-credit a:focus-visible { outline-color: #ffffff; }
html.reflora-high-contrast .domain-region.is-highlighted { stroke: #ffffff; stroke-width: 3; }
html.reflora-high-contrast .domains-map.has-highlight .domain-region { opacity: .55; }
html.reflora-high-contrast .domains-map.has-highlight .domain-region.is-highlighted { opacity: 1; }
