/* Shared by regular, mobile and sticky Kadence headers. */
.jw-account-link .kt-svg-icon-link { display: inline-flex; align-items: center; justify-content: center; }
.jw-account-link a:focus-visible { outline: 2px solid var(--global-palette2); outline-offset: 2px; }

/* Account menu. */
.jw-header-account { position: relative; }
.jw-header-account__menu { display: none; }
@media (min-width: 1025px) {
	.jw-header-account__menu:not([hidden]) { display: block; }
	.jw-header-account__menu { position: absolute; inset-inline-end: 0; top: 100%; z-index: 30; width: 220px; max-width: calc(100vw - 32px); padding-top: 8px; text-align: start; }
	.jw-header-account__menu ul { list-style: none; display: grid; gap: 2px; margin: 0; padding: 6px; border: 1px solid color-mix(in srgb, var(--global-palette5) 25%, var(--global-palette8)); border-radius: 14px; background: var(--global-palette8); }
	.jw-header-account__menu li { margin: 0; padding: 0; }
	.jw-header-account__menu li:last-child { padding-top: 4px; margin-top: 4px; border-top: 1px solid color-mix(in srgb, var(--global-palette5) 20%, var(--global-palette8)); }
	.jw-header-account .jw-header-account__menu li > a { display: flex; align-items: center; min-height: 44px; padding: .65rem .75rem; border-radius: 8px; color: var(--global-palette3); font: inherit; font-size: .9375rem; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
	.jw-header-account .jw-header-account__menu li > a:hover, .jw-header-account .jw-header-account__menu li > a:focus-visible { color: var(--global-palette2); background: color-mix(in srgb, var(--global-palette2) 7%, var(--global-palette8)); }
}

/* WooCommerce cart count. */
.kt-svg-icon-link.jw-header-cart-link { position: relative; overflow: visible; }
.jw-header-cart-link .jw-header-cart-count { position: absolute; top: -8px; right: -9px; display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding-inline: 4px; border-radius: 999px; background: var(--global-palette2); color: var(--global-palette8); font-size: 11px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; pointer-events: none; box-sizing: border-box; }
.jw-header-cart-link .jw-header-cart-count[hidden] { display: none; }

/* WPML owns the language labels, links and dropdown visibility. */
.jw-header-language { position: relative; min-width: 0; }
.jw-header-language:hover, .jw-header-language:focus-within { z-index: 31; }
.jw-header-language .wpml-ls { width: auto; max-width: 100%; }
.jw-header-language .wpml-ls > ul { margin: 0; padding: 0; }
.jw-header-language .wpml-ls .wpml-ls-item { margin: 0; padding: 0; }
.jw-header-language .wpml-ls a {
	display: flex;
	align-items: center;
	gap: 8px;
	box-sizing: border-box;
	min-height: 44px;
	padding: 10px 12px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: var(--global-palette3);
	font: inherit;
	font-size: .9375rem;
	line-height: 1.4;
	text-decoration: none;
}
.jw-header-language .wpml-ls a:hover,
.jw-header-language .wpml-ls a:focus-visible,
.jw-header-language .wpml-ls .wpml-ls-current-language:hover > a {
	color: var(--global-palette2);
	background: color-mix(in srgb, var(--global-palette2) 7%, var(--global-palette8));
}
.jw-header-language .wpml-ls a:focus-visible,
.jw-header-language .wpml-ls-current-language:focus-visible { outline: 2px solid var(--global-palette2); outline-offset: 2px; }
.jw-header-language .wpml-ls a.wpml-ls-item-toggle { position: relative; padding-inline: 12px; white-space: nowrap; }
.jw-header-language .wpml-ls a.wpml-ls-item-toggle::after {
	content: '';
	position: static;
	inset: auto;
	flex: 0 0 6px;
	width: 6px;
	height: 6px;
	margin-inline-start: 4px;
	border: 0;
	border-inline-end: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: translateY(-2px) rotate(45deg);
}
.jw-header-language .wpml-ls .wpml-ls-flag { display: block; flex: 0 0 20px; width: 20px; height: 20px; max-width: none; margin: 0; object-fit: contain; }
.jw-header-language .wpml-ls .wpml-ls-flag + span { margin-inline: 0; }
.jw-header-language .wpml-ls .wpml-ls-sub-menu {
	box-sizing: border-box;
	top: 100%;
	left: auto;
	right: 0;
	width: max-content;
	min-width: 180px;
	max-width: calc(100vw - 32px);
	margin: 6px 0 0;
	padding: 6px;
	border: 1px solid color-mix(in srgb, var(--global-palette5) 25%, var(--global-palette8));
	border-radius: 14px;
	background: var(--global-palette8);
	box-shadow: 0 12px 32px color-mix(in srgb, var(--global-palette1) 12%, transparent);
	text-align: start;
}
/* Bridge the visual gap so hovering from the trigger into the list stays continuous. */
.jw-header-language .wpml-ls-sub-menu::before { content: ''; position: absolute; top: -7px; left: 0; right: 0; height: 7px; }
.jw-header-language .wpml-ls .wpml-ls-sub-menu a { border: 0; white-space: normal; overflow-wrap: anywhere; }
.jw-header-language .wpml-ls-current-language:focus-within > .wpml-ls-sub-menu { visibility: visible; }

@media (max-width: 767px) {
	.jw-auth-header-mobile > .kt-row-column-wrap { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
	.jw-auth-header-mobile > .kt-row-column-wrap > .wp-block-kadence-column:last-child > .kt-inside-inner-col { flex-wrap: nowrap; gap: 4px; }
	.jw-header-language .wpml-ls a.wpml-ls-item-toggle { justify-content: center; width: 44px; height: 44px; gap: 6px; padding: 0; }
	.jw-header-language .wpml-ls a.wpml-ls-item-toggle::after { margin-inline-start: 0; }
	/* Keep the current language's accessible name without reserving visual space. */
	.jw-header-language .wpml-ls-item-toggle > span { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
}
