/* EXVIN-WEB/STAFF: scoped presentation only. Flag artwork never encodes country eligibility or language policy. */
:root {
	--exvin-ui-green: #03806B;
	--exvin-ui-green-text: var(--exvin-ui-green);
	--exvin-ui-text: #153C35;
	--exvin-ui-muted: #57736E;
	--exvin-ui-surface: #FFFFFF;
	--exvin-ui-panel: #F5F9F7;
	--exvin-ui-border: #DCE8E3;
}

/* Only the approved light identity is declared here. Host dark-mode overrides remain a separate acceptance gate. */
.exvin-ui-flag {
	--exvin-ui-flag-height: 16px;
	display: inline-flex;
	position: relative;
	align-items: center;
	justify-content: center;
	flex: none;
	inline-size: calc(var(--exvin-ui-flag-height) * 4 / 3);
	block-size: var(--exvin-ui-flag-height);
	vertical-align: middle;
	line-height: 1;
	color: var(--exvin-ui-green-text);
	isolation: isolate;
}
.exvin-ui-flag--inline { --exvin-ui-flag-height: 16px; }
.exvin-ui-flag--field { --exvin-ui-flag-height: 20px; }
.exvin-ui-flag--compact-picker { --exvin-ui-flag-height: 24px; }
.exvin-ui-flag--picker { --exvin-ui-flag-height: 32px; }
.exvin-ui-flag .exvin-ui-flag__image {
	display: block;
	inline-size: 100%;
	block-size: 100%;
	max-inline-size: none;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 2px;
	object-fit: contain;
	outline: var(--exvin-ui-hairline, 1px) solid var(--exvin-ui-border);
	outline-offset: calc(-1 * var(--exvin-ui-hairline, 1px));
	box-shadow: none;
	filter: none;
	transform: none;
}
.exvin-ui-flag .exvin-ui-flag__fallback {
	display: none;
	inline-size: var(--exvin-ui-flag-height);
	block-size: var(--exvin-ui-flag-height);
	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.exvin-ui-flag.is-fallback .exvin-ui-flag__image,
.exvin-ui-flag [hidden] { display: none !important; }
.exvin-ui-flag.is-fallback .exvin-ui-flag__fallback { display: block; }
.exvin-ui-country-label {
	display: flex;
	align-items: center;
	gap: 8px;
	min-inline-size: 0;
}
.exvin-ui-country-label > .exvin-ui-flag { flex: none; }
.exvin-ui-country-label > span:not(.exvin-ui-flag) {
	min-inline-size: 0;
	overflow-wrap: anywhere;
}
