/**
 * HVG presentation layer for the Complianz consent dialog.
 *
 * Complianz owns markup, behavior and consent state. These scoped rules only
 * align its public UI with the site's typography, dark surfaces and yellow
 * interaction accent, so plugin updates remain safe.
 */

#cmplz-cookiebanner-container .cmplz-cookiebanner {
	--cmplz_banner_background_color: #1f1f1f;
	--cmplz_banner_border_color: #ffe600;
	--cmplz_banner_border_radius: 0;
	--cmplz_banner_border_width: 0 0 0 4px;
	--cmplz_banner_width: 540px;
	--cmplz_button_accept_background_color: #ffe600;
	--cmplz_button_accept_border_color: #ffe600;
	--cmplz_button_accept_text_color: #1f1f1f;
	--cmplz_button_deny_background_color: transparent;
	--cmplz_button_deny_border_color: #ffffff;
	--cmplz_button_deny_text_color: #ffffff;
	--cmplz_button_settings_background_color: #333333;
	--cmplz_button_settings_border_color: #646464;
	--cmplz_button_settings_text_color: #ffffff;
	--cmplz_button_border_radius: 0;
	--cmplz_button_font_size: 14px;
	--cmplz_hyperlink_color: #ffe600;
	--cmplz_link_font_size: 12px;
	--cmplz_slider_active_color: #ffe600;
	--cmplz_slider_bullet_color: #1f1f1f;
	--cmplz_slider_inactive_color: #646464;
	--cmplz_text_color: #f0f0f0;
	--cmplz_text_font_size: 14px;
	--cmplz_text_line_height: 1.6;
	--cmplz_title_font_size: 24px;

	max-width: calc(100vw - 32px);
	padding: 28px 30px 26px;
	border-top: 4px solid #ffe600;
	box-shadow: 0 18px 60px rgb(0 0 0 / 45%);
	font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header {
	align-items: flex-start;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 16px;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
	font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-description {
	color: #d8d8d8;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close {
	color: #ffffff;
	opacity: 0.72;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close:focus-visible {
	color: #ffe600;
	opacity: 1;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category {
	border-color: #4d4d4d;
	background: #2a2a2a;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-header {
	padding: 12px 14px;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-title {
	color: #ffffff;
	font-weight: 600;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-toggle,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-always-active {
	color: #d8d8d8;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
	min-height: 46px;
	padding: 12px 18px;
	border-width: 2px;
	font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 600;
	line-height: 1.2;
	white-space: normal;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-accept,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-save-preferences {
	grid-column: 1 / -1;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-accept:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-accept:focus-visible {
	border-color: #ffffff;
	background: #ffffff;
	color: #1f1f1f;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-deny:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-deny:focus-visible,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-view-preferences:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-view-preferences:focus-visible,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-save-preferences:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-save-preferences:focus-visible {
	border-color: #ffe600;
	background: #333333;
	color: #ffe600;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner a,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link {
	text-underline-offset: 3px;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner a:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner a:focus-visible {
	color: #ffffff;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner :focus-visible,
#cmplz-manage-consent .cmplz-manage-consent:focus-visible {
	outline: 3px solid #ffe600;
	outline-offset: 3px;
}

html body #cmplz-manage-consent .cmplz-manage-consent {
	border: 0;
	border-top: 3px solid #ffe600;
	border-radius: 0;
	background: #1f1f1f;
	box-shadow: 0 8px 28px rgb(0 0 0 / 30%);
	color: #ffffff;
	font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 12px;
	font-weight: 600;
}

html body #cmplz-manage-consent .cmplz-manage-consent:hover,
html body #cmplz-manage-consent .cmplz-manage-consent:focus,
html body #cmplz-manage-consent .cmplz-manage-consent:focus-visible {
	background: #1f1f1f;
	color: #ffe600;
}

/* Complianz admin/debug chip next to Manage consent. */
#cmplz-manage-consent .cmplz-btn:not(.cmplz-manage-consent),
#cmplz-manage-consent [class*="test"] {
	display: none !important;
}

@media (max-width: 600px) {
	#cmplz-cookiebanner-container .cmplz-cookiebanner {
		width: calc(100vw - 20px);
		max-width: none;
		padding: 22px 20px 20px;
		border-left: 0;
	}

	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
		display: block;
		font-size: 21px;
	}

	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
		grid-column: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	#cmplz-cookiebanner-container .cmplz-cookiebanner *,
	#cmplz-manage-consent .cmplz-manage-consent {
		transition: none !important;
	}
}
