/* Language toggle block — matches mijn.host header language dropdown. */

.mijnhost-language-toggle {
	position: relative;
	display: inline-block;
	line-height: 0;
}

.mijnhost-language-toggle__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background-color: #eff7fa;
	color: #04a5f0;
	cursor: pointer;
	line-height: 0;
	box-shadow: 0 1px 4px rgba(2, 62, 90, 0.08);
	transition: .3s ease-in-out;
}

.mijnhost-language-toggle__btn:hover,
.mijnhost-language-toggle__btn:focus-visible,
.mijnhost-language-toggle.is-open .mijnhost-language-toggle__btn {
	background-color: #e5f6fd;
	outline: none;
}

.mijnhost-language-toggle__btn .fa-globe {
	font-size: 18px;
	line-height: 1;
}

/* Match public-site / CP / KB language dropdown: menu padding 0, items 15px 20px. */
.mijnhost-language-toggle__menu {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	z-index: 1000;
	min-width: 10rem;
	padding: 0;
	border-radius: 8px;
	background-color: #fff;
	box-shadow: 0 4px 16px rgba(2, 62, 90, 0.2);
	line-height: 1.3;
}

.mijnhost-language-toggle__menu[hidden] {
	display: none !important;
}

.mijnhost-language-toggle__item {
	display: flex;
	align-items: center;
	padding: 15px 20px;
	color: rgba(2, 62, 90, 0.8);
	text-decoration: none;
	font-weight: 700;
	transition: 0.3s ease-in-out;
	font-size: 1rem;
}

.mijnhost-language-toggle__item:first-child {
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
}

.mijnhost-language-toggle__item:last-child {
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
}

.mijnhost-language-toggle__item:hover,
.mijnhost-language-toggle__item:focus-visible,
.mijnhost-language-toggle__item[aria-current="true"],
.mijnhost-language-toggle__item.is-active {
	color: #04a5f0;
	background: rgba(242, 245, 247, 0.7);
	outline: none;
}

.mijnhost-language-toggle__item:focus {
	text-decoration: none;
}

/* flag-icons base + round clip matching the previous circular SVG flags. */
.mijnhost-language-toggle .fi {
	position: relative;
	display: inline-block;
	background-size: cover;
	background-position: 50%;
	background-repeat: no-repeat;
}

.mijnhost-language-toggle .fi:before {
	content: '\00a0';
}

.mijnhost-language-toggle__flag {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	border-radius: 50%;
	background-size: cover;
	line-height: 18px;
	margin-right: 8px;
}

.mijnhost-language-toggle__flag:before {
	content: none;
}

.mijnhost-language-toggle .fi-nl {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/nl.svg);
}

.mijnhost-language-toggle .fi-ie {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/ie.svg);
}

.mijnhost-language-toggle .fi-au {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/au.svg);
}

.mijnhost-language-toggle .fi-us {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/us.svg);
}

.mijnhost-language-toggle .fi-ca {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/ca.svg);
}

.mijnhost-language-toggle .fi-nz {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/nz.svg);
}

.mijnhost-language-toggle .fi-gb {
	background-image: url(https://mijn.host/cp/dist/flags/4x3/gb.svg);
}

.mijnhost-language-toggle__label {
	white-space: nowrap;
}

.mijnhost-language-toggle__empty {
	margin: 0;
	font-size: 0.875rem;
	color: #587a8b;
	line-height: 1.4;
}

/* Keep the open menu visible above neighbouring header items. */
.mijnhost-language-toggle.is-open {
	z-index: 1001;
}
