.wp-block-mars-language-home-switcher {
	position: relative;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__details {
	position: relative;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary {
	position: relative;
	cursor: pointer;
	list-style: none;
	padding: var(--mars-summary-py, 8px) var(--mars-summary-px, 14px);
	padding-inline-end: calc(var(--mars-summary-px, 14px) + 1.5em);
	border: var(--mars-summary-border-width, 1px) solid var(--mars-summary-border-color, #dddddd);
	border-radius: var(--mars-summary-radius, 6px);
	font-size: var(--mars-summary-font-size, 0.95rem);
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary:hover,
.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary:focus-visible {
	background-color: var(--mars-summary-hover-bg, #f5f5f5);
	border-color: var(--mars-summary-hover-border, #bbbbbb);
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary::marker {
	content: "";
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary::-webkit-details-marker {
	display: none;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary::after {
	content: "";
	position: absolute;
	inset-inline-end: 0.35em;
	top: 50%;
	width: 0.45em;
	height: 0.45em;
	border-inline-end: 0.12em solid currentColor;
	border-block-end: 0.12em solid currentColor;
	transform: translateY(-65%) rotate(45deg);
	transition: transform 0.18s ease;
	pointer-events: none;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__details[open] > .mars-language-home-switcher__summary::after {
	transform: translateY(-35%) rotate(225deg);
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__list {
	position: absolute;
	inset-block-start: calc(100% + var(--mars-menu-offset, 6px));
	inset-inline-end: 0;
	z-index: 100;
	min-width: max(var(--mars-menu-min-width, 160px), max-content);
	margin: 0;
	padding: var(--mars-menu-padding, 6px);
	list-style: none;
	background: var(--mars-menu-bg, #ffffff);
	color: inherit;
	border: var(--mars-menu-border-width, 1px) solid var(--mars-menu-border-color, #e0e0e0);
	border-radius: var(--mars-menu-radius, 8px);
	box-shadow: 0 0.5rem 1.5rem rgb(0 0 0 / 12%);
	opacity: 0;
	transform: translateY(-0.35rem);
	animation: mars-language-home-switcher-open var(--mars-animation-duration, 0.18s) ease forwards;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__item {
	margin: 0;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__link,
.wp-block-mars-language-home-switcher .mars-language-home-switcher__current {
	display: flex;
	align-items: center;
	gap: var(--mars-item-gap, 8px);
	padding: var(--mars-item-py, 8px) var(--mars-item-px, 10px);
	border-radius: var(--mars-item-radius, 6px);
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__link:hover,
.wp-block-mars-language-home-switcher .mars-language-home-switcher__link:focus-visible {
	background-color: var(--mars-item-hover-bg, #f0f0f0);
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__current {
	font-weight: 600;
	background-color: var(--mars-current-bg, #f7f7f7);
}

.wp-block-mars-language-home-switcher .mars-language-home-switcher__link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

@keyframes mars-language-home-switcher-open {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-mars-language-home-switcher .mars-language-home-switcher__summary::after,
	.wp-block-mars-language-home-switcher .mars-language-home-switcher__list {
		transition: none;
		animation: none;
	}

	.wp-block-mars-language-home-switcher .mars-language-home-switcher__list {
		opacity: 1;
		transform: none;
	}
}

.mars-language-icon {
    display: inline-block;
    width: var(--mars-icon-width, 20px);
    height: 1em;
    object-fit: cover;
    vertical-align: middle;
    margin-inline-end: 0.4em;
}
