/* Wir Reinigen Force Language Switcher — Premium Sticky v3.1.0 */
:root{
	--wrft-active-bg:#1A8FCD;
	--wrft-active-text:#FFFFFF;
	--wrft-inactive-bg:#FFFFFF;
	--wrft-inactive-text:#113255;
	--wrft-border:#1A8FCD;
	--wrft-top-offset:6px;
	--wrft-mobile-top-offset:6px;
	--wrft-edge-offset:18px;
	--wrft-bottom-offset:18px;
	--wrft-z-index:9999;
}

html.wrft-preparing body{
	visibility:hidden!important;
}

.wrft-switcher,
.wrft-switcher *,
.wrft-switcher *::before,
.wrft-switcher *::after{
	box-sizing:border-box;
}

.wrft-switcher[hidden]{
	display:none!important;
}

.wrft-switcher{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:7px!important;
	max-width:calc(100vw - 16px)!important;
	min-height:46px;
	margin:0!important;
	padding:5px 6px!important;
	overflow:visible!important;
	border:1px solid var(--wrft-border)!important;
	border-radius:999px!important;
	outline:0!important;
	background:rgba(255,255,255,.98)!important;
	box-shadow:0 6px 20px rgba(17,50,85,.13)!important;
	font-family:inherit!important;
	font-size:13px!important;
	font-style:normal!important;
	font-weight:400!important;
	line-height:1!important;
	text-align:left!important;
	vertical-align:middle!important;
	isolation:isolate;
	contain:layout style paint;
	-webkit-backdrop-filter:blur(8px);
	backdrop-filter:blur(8px);
}

/* Fixed behaves like a reliable sticky control across all themes and builders. */
.wrft-floating{
	position:fixed!important;
	z-index:var(--wrft-z-index)!important;
	inset:auto!important;
	pointer-events:auto!important;
	transform:translateZ(0);
	-webkit-font-smoothing:antialiased;
	backface-visibility:hidden;
}

.wrft-position-top-right{
	top:max(var(--wrft-top-offset), env(safe-area-inset-top))!important;
	right:max(var(--wrft-edge-offset), env(safe-area-inset-right))!important;
}

.wrft-position-top-left{
	top:max(var(--wrft-top-offset), env(safe-area-inset-top))!important;
	left:max(var(--wrft-edge-offset), env(safe-area-inset-left))!important;
}

.wrft-position-bottom-right{
	right:max(var(--wrft-edge-offset), env(safe-area-inset-right))!important;
	bottom:max(var(--wrft-bottom-offset), env(safe-area-inset-bottom))!important;
}

.wrft-position-bottom-left{
	bottom:max(var(--wrft-bottom-offset), env(safe-area-inset-bottom))!important;
	left:max(var(--wrft-edge-offset), env(safe-area-inset-left))!important;
}

.admin-bar .wrft-position-top-right,
.admin-bar .wrft-position-top-left{
	top:calc(var(--wrft-top-offset) + 32px)!important;
}

.wrft-globe{
	display:grid!important;
	place-items:center!important;
	width:31px!important;
	height:31px!important;
	min-width:31px!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:50%!important;
	outline:0!important;
	color:var(--wrft-border)!important;
	background:transparent!important;
	box-shadow:none!important;
	line-height:1!important;
}

.wrft-globe::before,
.wrft-globe::after{
	content:none!important;
	display:none!important;
}

.wrft-globe svg{
	display:block!important;
	width:17px!important;
	height:17px!important;
	margin:0!important;
	fill:currentColor!important;
}

/* One clean segmented surface. No double border or coloured theme bleed. */
.wrft-buttons{
	display:inline-flex!important;
	align-items:center!important;
	gap:2px!important;
	min-width:0!important;
	max-width:100%!important;
	margin:0!important;
	padding:2px!important;
	overflow:hidden!important;
	border:0!important;
	border-radius:999px!important;
	outline:0!important;
	background:#F1F7FB!important;
	box-shadow:inset 0 0 0 1px rgba(26,143,205,.12)!important;
}

.wrft-button{
	all:unset;
	-webkit-appearance:none!important;
	appearance:none!important;
	box-sizing:border-box!important;
	position:relative!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:6px!important;
	min-width:48px!important;
	max-width:100px!important;
	min-height:34px!important;
	margin:0!important;
	padding:7px 12px!important;
	overflow:hidden!important;
	border:0!important;
	border-radius:999px!important;
	outline:0!important;
	color:var(--wrft-inactive-text)!important;
	background:var(--wrft-inactive-bg)!important;
	box-shadow:none!important;
	font-family:inherit!important;
	font-size:13px!important;
	font-style:normal!important;
	font-weight:700!important;
	line-height:1!important;
	text-align:center!important;
	text-decoration:none!important;
	text-transform:none!important;
	letter-spacing:0!important;
	white-space:nowrap!important;
	cursor:pointer!important;
	-webkit-tap-highlight-color:transparent!important;
	transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}

/* Prevent theme button decorations, red lines, gradients and pseudo-elements. */
.wrft-button::before,
.wrft-button::after{
	content:none!important;
	display:none!important;
	border:0!important;
	background:none!important;
	box-shadow:none!important;
}

.wrft-button:hover{
	color:var(--wrft-inactive-text)!important;
	background:var(--wrft-inactive-bg)!important;
	box-shadow:0 1px 5px rgba(17,50,85,.10)!important;
	transform:translateY(-1px);
}

.wrft-button:focus,
.wrft-button:focus-visible{
	border:0!important;
	outline:0!important;
	box-shadow:0 0 0 2px rgba(26,143,205,.24)!important;
}

.wrft-button.is-active,
.wrft-button.is-active:hover,
.wrft-button.is-active:focus,
.wrft-button[aria-pressed="true"]{
	z-index:1!important;
	color:var(--wrft-active-text)!important;
	background:var(--wrft-active-bg)!important;
	border:0!important;
	outline:0!important;
	box-shadow:0 3px 9px rgba(26,143,205,.24)!important;
	transform:none!important;
}

.wrft-label{
	display:block!important;
	min-width:0!important;
	max-width:72px!important;
	overflow:hidden!important;
	text-overflow:ellipsis!important;
	white-space:nowrap!important;
}

.wrft-flag{
	display:inline-flex!important;
	width:20px!important;
	height:14px!important;
	min-width:20px!important;
	overflow:hidden!important;
	border:0!important;
	border-radius:2px!important;
	box-shadow:0 0 0 1px rgba(0,0,0,.10)!important;
}

.wrft-flag svg{
	display:block!important;
	width:100%!important;
	height:100%!important;
}

@media(max-width:782px){
	.admin-bar .wrft-position-top-right,
	.admin-bar .wrft-position-top-left{
		top:calc(var(--wrft-mobile-top-offset) + 46px)!important;
	}
}

@media(max-width:600px){
	.wrft-position-top-right{
		top:max(var(--wrft-mobile-top-offset), env(safe-area-inset-top))!important;
		right:max(8px, env(safe-area-inset-right))!important;
	}

	.wrft-position-top-left{
		top:max(var(--wrft-mobile-top-offset), env(safe-area-inset-top))!important;
		left:max(8px, env(safe-area-inset-left))!important;
	}

	.wrft-position-bottom-right{
		right:max(8px, env(safe-area-inset-right))!important;
		bottom:max(10px, env(safe-area-inset-bottom))!important;
	}

	.wrft-position-bottom-left{
		bottom:max(10px, env(safe-area-inset-bottom))!important;
		left:max(8px, env(safe-area-inset-left))!important;
	}

	.wrft-switcher{
		gap:4px!important;
		min-height:42px!important;
		padding:4px 5px!important;
	}

	.wrft-globe{
		width:29px!important;
		height:29px!important;
		min-width:29px!important;
	}

	.wrft-button{
		min-width:42px!important;
		min-height:31px!important;
		max-width:82px!important;
		padding:6px 9px!important;
		font-size:12px!important;
	}

	.wrft-label{
		max-width:55px!important;
	}
}

@media(prefers-reduced-motion:reduce){
	.wrft-button{
		transition:none!important;
	}
}

/* Final high-specificity guard against theme button styles. */
.wrft-switcher button.wrft-button,
.wrft-switcher button.wrft-button:hover,
.wrft-switcher button.wrft-button:active,
.wrft-switcher button.wrft-button:focus,
.wrft-switcher button.wrft-button:focus-visible{
	border-top:0!important;
	border-right:0!important;
	border-bottom:0!important;
	border-left:0!important;
	outline:0!important;
	text-shadow:none!important;
	filter:none!important;
}

.wrft-switcher button.wrft-button::before,
.wrft-switcher button.wrft-button::after{
	content:none!important;
	display:none!important;
}
