html body #eucc-overlay {
	position: fixed !important;
	inset: 0 !important;
	background: rgba(0, 0, 0, 0.55) !important;
	z-index: 999998 !important;
}

html body #eucc-banner {
	position: fixed !important;
	z-index: 999999 !important;
	left: 0 !important;
	right: 0 !important;
	margin: 0 auto !important;
	background: var(--eucc-bg, #1d1d1d) !important;
	color: var(--eucc-text, #ffffff) !important;
	box-sizing: border-box !important;
	max-width: 100% !important;
}

html body #eucc-banner.eucc-position-bottom {
	bottom: 0 !important;
	width: 100% !important;
	border-radius: 12px 12px 0 0 !important;
}

html body #eucc-banner.eucc-position-center {
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 520px !important;
	border-radius: 12px !important;
}

html body #eucc-banner .eucc-inner {
	padding: 24px !important;
}

html body #eucc-banner h2 {
	margin: 0 0 10px !important;
	font-size: 20px !important;
	color: var(--eucc-text, #ffffff) !important;
}

html body #eucc-banner p {
	margin: 0 0 14px !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	color: var(--eucc-text, #ffffff) !important;
}

html body #eucc-banner .eucc-links {
	margin-bottom: 14px !important;
}

html body #eucc-banner .eucc-links a {
	color: var(--eucc-primary, #4da3ff) !important;
	text-decoration: underline !important;
	margin-right: 16px !important;
	font-size: 13px !important;
}

html body #eucc-banner .eucc-categories {
	margin: 10px 0 16px !important;
	max-height: 260px !important;
	overflow-y: auto !important;
}

html body #eucc-banner .eucc-category-row {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
	padding: 10px 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html body #eucc-banner .eucc-category-text strong {
	color: var(--eucc-text, #ffffff) !important;
	display: block !important;
	margin-bottom: 4px !important;
}

html body #eucc-banner .eucc-category-text p {
	margin: 0 !important;
	font-size: 12px !important;
	opacity: 0.85 !important;
}

/* Toggle-Switch */
html body #eucc-banner .eucc-switch {
	position: relative !important;
	display: inline-block !important;
	width: 42px !important;
	height: 24px !important;
	flex-shrink: 0 !important;
}

html body #eucc-banner .eucc-switch input {
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
}

html body #eucc-banner .eucc-slider {
	position: absolute !important;
	cursor: pointer !important;
	inset: 0 !important;
	background-color: #666 !important;
	border-radius: 24px !important;
	transition: 0.2s !important;
}

html body #eucc-banner .eucc-slider::before {
	content: "" !important;
	position: absolute !important;
	height: 18px !important;
	width: 18px !important;
	left: 3px !important;
	bottom: 3px !important;
	background-color: #fff !important;
	border-radius: 50% !important;
	transition: 0.2s !important;
}

html body #eucc-banner input:checked + .eucc-slider {
	background-color: var(--eucc-primary, #2271b1) !important;
}

html body #eucc-banner input:checked + .eucc-slider::before {
	transform: translateX(18px) !important;
}

html body #eucc-banner input:disabled + .eucc-slider {
	background-color: var(--eucc-primary, #2271b1) !important;
	opacity: 0.6 !important;
	cursor: not-allowed !important;
}

/* Buttons */
html body #eucc-banner .eucc-buttons {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	justify-content: flex-end !important;
}

html body #eucc-banner .eucc-btn {
	appearance: none !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 10px 18px !important;
	font-size: 14px !important;
	cursor: pointer !important;
	font-weight: 600 !important;
}

html body #eucc-banner .eucc-btn-primary {
	background: var(--eucc-primary, #2271b1) !important;
	color: #ffffff !important;
}

html body #eucc-banner .eucc-btn-ghost {
	background: transparent !important;
	color: var(--eucc-text, #ffffff) !important;
	border: 1px solid rgba(255, 255, 255, 0.4) !important;
}

/* Wiedereröffnen-Button */
html body .eucc-reopen-btn {
	position: fixed !important;
	bottom: 16px !important;
	left: 16px !important;
	z-index: 999997 !important;
	width: 46px !important;
	height: 46px !important;
	border-radius: 50% !important;
	background: var(--eucc-primary, #2271b1) !important;
	color: #fff !important;
	border: none !important;
	font-size: 20px !important;
	cursor: pointer !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

/* Platzhalter für blockierte externe Medien (YouTube/Vimeo) */
html body .eucc-embed-placeholder {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #111 !important;
	color: #fff !important;
	min-height: 200px !important;
	width: 100% !important;
	text-align: center !important;
	padding: 20px !important;
	box-sizing: border-box !important;
}

html body .eucc-embed-placeholder button {
	background: var(--eucc-primary, #2271b1) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 10px 16px !important;
	cursor: pointer !important;
	font-size: 14px !important;
}

@media (max-width: 600px) {
	html body #eucc-banner.eucc-position-center {
		width: 92% !important;
	}
	html body #eucc-banner .eucc-buttons {
		justify-content: stretch !important;
		flex-direction: column !important;
	}
	html body #eucc-banner .eucc-btn {
		width: 100% !important;
	}
}
