/**
 * Orion Construction — Complianz cookie banner reskin.
 * Pixel match to orion-2 HTML reference (#cookieOverlay / #initialPopup / #settingsPanel).
 * Breakpoints: sm=640, md=769, lg=992, xl=1199, 1xl=1380, 2xl=1752.
 */

/* ---------- Backdrop — #cookieOverlay: bg #000000B2 + backdrop-blur-sm (8px) ---------- */
#cmplz-cookiebanner-container:has(.orion-cookiebanner:not(.cmplz-hidden):not(.cmplz-dismissed))::before {
	content: "";
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.698);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	z-index: 999997;
	animation: orion-cookiebanner-fade-in 0.3s ease both;
	pointer-events: none;
}

@keyframes orion-cookiebanner-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* Lock page scroll while banner is open (HTML lockScroll) */
html:has(.orion-cookiebanner:not(.cmplz-hidden):not(.cmplz-dismissed)),
body:has(.orion-cookiebanner:not(.cmplz-hidden):not(.cmplz-dismissed)) {
	overflow: hidden !important;
}

/* ---------- Shell — #initialPopup margins ---------- */
.orion-cookiebanner {
	position: fixed !important;
	z-index: 999999 !important;
	right: 16px !important;
	bottom: 16px !important;
	left: auto !important;
	top: auto !important;
	transform: none !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	font-family: var(--orion-font-body, "Lexend"), sans-serif, system-ui, -apple-system, sans-serif;
	animation: orion-cookiebanner-slide-up 0.4s ease-out both;
	overflow: visible !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	gap: 0 !important;
	grid-template-rows: none !important;
	grid-gap: 0 !important;
	height: auto !important;
	max-height: none !important;
}

.orion-cookiebanner.cmplz-hidden,
.orion-cookiebanner.cmplz-dismissed {
	display: none !important;
	animation: none !important;
}

@media (min-width: 769px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) {
		right: 24px !important;
		bottom: 24px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) {
		right: 28px !important;
		bottom: 28px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) {
		right: 36px !important;
		bottom: 36px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) {
		right: 50px !important;
		bottom: 50px !important;
	}
}

/* Mobile: full available width with 16px side margins (mx-4) */
@media (max-width: 639px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) {
		right: 16px !important;
		left: 16px !important;
		bottom: 16px !important;
		width: auto !important;
		align-items: stretch !important;
	}
}

@keyframes orion-cookiebanner-slide-up {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.orion-cookiebanner .cmplz-header,
.orion-cookiebanner .cmplz-divider {
	display: none !important;
}

/* Close — above card, full width of card, icon right (HTML initial close) */
.orion-cookiebanner:not(.cmplz-categories-visible) .orion-cookiebanner__close,
.orion-cookiebanner:not(.cmplz-categories-visible) .cmplz-close {
	position: static !important;
	align-self: stretch !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 0 0 auto !important;
	cursor: pointer;
	line-height: 0 !important;
	z-index: 2;
	width: 100% !important;
	max-width: 510px;
	height: auto !important;
	display: flex !important;
	justify-content: flex-end !important;
	color: rgba(255, 255, 255, 0.6) !important;
	font-size: inherit !important;
}

@media (min-width: 1199px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) .orion-cookiebanner__close,
	.orion-cookiebanner:not(.cmplz-categories-visible) .cmplz-close {
		max-width: 630px;
	}
}

.orion-cookiebanner:not(.cmplz-categories-visible) .orion-cookiebanner__close:hover,
.orion-cookiebanner:not(.cmplz-categories-visible) .cmplz-close:hover {
	color: #ffffff !important;
}

.orion-cookiebanner__close svg {
	width: 22px !important;
	height: 22px !important;
	display: block;
}

@media (min-width: 1199px) {
	.orion-cookiebanner__close svg {
		width: 24px !important;
		height: 24px !important;
	}
}

/* ---------- Simple card — #initialPopupWrapper ---------- */
.orion-cookiebanner__simple {
	display: block;
	background: #ffffff !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 24px !important;
	width: 100%;
	max-width: 510px;
	box-sizing: border-box;
}

@media (min-width: 1199px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) .orion-cookiebanner__simple {
		max-width: 630px;
		padding: 32px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) .orion-cookiebanner__simple {
		padding: 40px !important;
	}
}

@media (max-width: 639px) {
	.orion-cookiebanner:not(.cmplz-categories-visible) .orion-cookiebanner__simple {
		max-width: none;
	}
}

.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__simple {
	display: none !important;
}

/* Icon: w 42 / sm 50 / lg 55 / 2xl 70; mb 16 / xl 20 / 2xl 24 */
.orion-cookiebanner__icon {
	margin: 0 0 16px !important;
	flex-shrink: 0;
	line-height: 0;
}

@media (min-width: 1199px) {
	.orion-cookiebanner__icon {
		margin-bottom: 20px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__icon {
		margin-bottom: 24px !important;
	}
}

.orion-cookiebanner__icon svg {
	width: 42px !important;
	height: auto !important;
	display: block;
	color: var(--orion-primary, var(--orion-primary));
	fill: currentColor;
}

@media (min-width: 640px) {
	.orion-cookiebanner__icon svg {
		width: 50px !important;
	}
}

@media (min-width: 992px) {
	.orion-cookiebanner__icon svg {
		width: 55px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__icon svg {
		width: 70px !important;
	}
}

/* Title — h4: 20 / md 24 / xl 24 / 2xl 30; mb 8 / xl 12 */
.orion-cookiebanner__title {
	font-family: var(--orion-font-heading, "El Messiri"), sans-serif, system-ui, -apple-system, sans-serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	line-height: 28px !important;
	color: #000000 !important;
	justify-self: start !important;
	grid-column: auto !important;
	margin: 0 0 8px !important;
	text-align: left !important;
}

@media (min-width: 769px) {
	.orion-cookiebanner__title {
		font-size: 24px !important;
		line-height: 36px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__title {
		font-size: 24px !important;
		line-height: 32px !important;
		margin-bottom: 12px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner__title {
		line-height: 36px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__title {
		font-size: 30px !important;
		line-height: 42px !important;
	}
}

/* Message — p: 14/23; lg 15/25; xl lh26; 1xl lh28; 2xl 18/32; mb 20 / md 22 / xl 28 */
.orion-cookiebanner__message {
	font-family: var(--orion-font-body, "Lexend"), sans-serif !important;
	font-size: 14px !important;
	line-height: 23px !important;
	font-weight: 300 !important;
	color: #464343 !important;
	margin: 0 0 20px !important;
	width: auto !important;
	max-width: none !important;
	text-align: left !important;
}

@media (min-width: 769px) {
	.orion-cookiebanner__message {
		margin-bottom: 22px !important;
	}
}

@media (min-width: 992px) {
	.orion-cookiebanner__message {
		font-size: 15px !important;
		line-height: 25px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__message {
		line-height: 26px !important;
		margin-bottom: 28px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner__message {
		line-height: 28px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__message {
		font-size: 18px !important;
		line-height: 32px !important;
	}
}

/* Buttons row — always row like HTML (override Complianz column @ ≤768) */
.orion-cookiebanner__buttons-simple {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

@media (min-width: 769px) {
	.orion-cookiebanner__buttons-simple {
		gap: 16px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__buttons-simple {
		gap: 22px !important;
	}
}

/* Shared .btn look from HTML reference */
.orion-cookiebanner .cmplz-btn {
	font-family: var(--orion-font-body, "Lexend"), sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 24px !important;
	letter-spacing: normal !important;
	padding: 5px 16px !important;
	border-radius: 0 !important;
	cursor: pointer;
	transition: all 150ms ease-in-out;
	white-space: nowrap !important;
	width: fit-content !important;
	min-width: 0 !important;
	min-height: 0 !important;
	height: auto !important;
	flex: 0 0 auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	text-decoration: none !important;
	box-sizing: border-box !important;
}

@media (min-width: 640px) {
	.orion-cookiebanner .cmplz-btn {
		padding: 8px 20px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner .cmplz-btn {
		font-size: 15px !important;
		padding: 10px 28px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner .cmplz-btn {
		padding: 10px 34px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner .cmplz-btn {
		font-size: 18px !important;
		padding: 12px 40px !important;
	}
}

.orion-cookiebanner .cmplz-accept {
	background: var(--orion-primary, var(--orion-primary)) !important;
	color: #ffffff !important;
	border: 1px solid var(--orion-primary, var(--orion-primary)) !important;
}

.orion-cookiebanner .cmplz-accept:hover {
	background: #ffffff !important;
	color: var(--orion-primary, var(--orion-primary)) !important;
}

.orion-cookiebanner .cmplz-view-preferences,
.orion-cookiebanner .cmplz-save-preferences {
	background: #ffffff !important;
	color: var(--orion-primary, var(--orion-primary)) !important;
	border: 1px solid var(--orion-primary, var(--orion-primary)) !important;
}

.orion-cookiebanner .cmplz-view-preferences:hover,
.orion-cookiebanner .cmplz-save-preferences:hover {
	background: var(--orion-primary, var(--orion-primary)) !important;
	color: #ffffff !important;
}

.orion-cookiebanner .cmplz-deny {
	background: var(--orion-primary, var(--orion-primary)) !important;
	color: #ffffff !important;
	border: 1px solid var(--orion-primary, var(--orion-primary)) !important;
}

.orion-cookiebanner .cmplz-deny:hover {
	background: #ffffff !important;
	color: var(--orion-primary, var(--orion-primary)) !important;
}

/* ==========================================================================
   Preference center — #settingsPanel full-height right drawer
   max-w 515 / 1xl 580 / 2xl 612
   ========================================================================== */

.orion-cookiebanner__prefs {
	display: none;
	width: 100%;
	height: 100%;
}

.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__prefs {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: calc(100% - 48px);
	background: #ffffff;
}

.orion-cookiebanner.cmplz-categories-visible {
	position: fixed !important;
	inset: 0 0 0 auto !important;
	width: 100% !important;
	max-width: 515px !important;
	height: 100% !important;
	max-height: 100vh !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: #ffffff !important;
	box-shadow: none !important;
	animation: orion-cookiebanner-slide-up 0.4s ease-out both;
	align-items: stretch !important;
	right: 0 !important;
	bottom: 0 !important;
	left: auto !important;
}

@media (min-width: 640px) {
	.orion-cookiebanner.cmplz-categories-visible {
		background: transparent !important;
	}

	.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__prefs {
		background: transparent;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner.cmplz-categories-visible {
		max-width: 580px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner.cmplz-categories-visible {
		max-width: 612px !important;
	}
}

/* Settings close — HTML .closeCookie */
.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__close,
.orion-cookiebanner.cmplz-categories-visible .cmplz-close {
	position: static !important;
	align-self: flex-end !important;
	flex-shrink: 0;
	width: fit-content !important;
	max-width: none !important;
	padding: 16px 16px 0 !important;
	margin: 0 0 12px auto !important;
	color: rgba(0, 0, 0, 0.6) !important;
	height: auto !important;
}

@media (min-width: 640px) {
	.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__close,
	.orion-cookiebanner.cmplz-categories-visible .cmplz-close {
		color: rgba(255, 255, 255, 0.6) !important;
		margin-bottom: 12px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__close,
	.orion-cookiebanner.cmplz-categories-visible .cmplz-close {
		margin-bottom: 16px !important;
	}
}

.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__close:hover,
.orion-cookiebanner.cmplz-categories-visible .cmplz-close:hover {
	color: #ffffff !important;
}

@media (max-width: 639px) {
	.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__close:hover,
	.orion-cookiebanner.cmplz-categories-visible .cmplz-close:hover {
		color: #000000 !important;
	}
}

.orion-cookiebanner.cmplz-categories-visible .orion-cookiebanner__prefs-inner {
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	height: 100%;
	max-height: 100vh;
	overflow: hidden;
}

.orion-cookiebanner__prefs-scroll {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	padding: 16px 16px 24px !important;
	box-sizing: border-box;
}

@media (min-width: 640px) {
	.orion-cookiebanner__prefs-scroll {
		padding: 24px 24px 24px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__prefs-scroll {
		padding: 32px 32px 24px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__prefs-scroll {
		padding: 40px 40px 24px !important;
	}
}

.orion-cookiebanner__prefs-header .cmplz-title,
.orion-cookiebanner__prefs-title {
	font-family: var(--orion-font-heading, "El Messiri"), sans-serif !important;
	font-size: 20px !important;
	font-weight: 500 !important;
	line-height: 28px !important;
	color: #000000 !important;
	margin: 0 0 12px !important;
	justify-self: start !important;
	grid-column: auto !important;
}

@media (min-width: 769px) {
	.orion-cookiebanner__prefs-header .cmplz-title,
	.orion-cookiebanner__prefs-title {
		font-size: 24px !important;
		line-height: 36px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__prefs-header .cmplz-title,
	.orion-cookiebanner__prefs-title {
		font-size: 24px !important;
		line-height: 32px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__prefs-header .cmplz-title,
	.orion-cookiebanner__prefs-title {
		font-size: 30px !important;
		line-height: 42px !important;
	}
}

.orion-cookiebanner__prefs-intro {
	font-family: var(--orion-font-body, "Lexend"), sans-serif !important;
	font-size: 14px !important;
	line-height: 23px !important;
	font-weight: 300 !important;
	color: #464343 !important;
	margin: 0 0 20px !important;
}

@media (min-width: 992px) {
	.orion-cookiebanner__prefs-intro {
		font-size: 15px !important;
		line-height: 25px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__prefs-intro {
		line-height: 26px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner__prefs-intro {
		line-height: 28px !important;
	}
}

.orion-cookiebanner__prefs-accept-all {
	width: fit-content !important;
	max-width: none !important;
	text-align: center !important;
	justify-content: center !important;
	margin: 0 0 20px !important;
	display: inline-flex !important;
}

@media (min-width: 640px) {
	.orion-cookiebanner__prefs-accept-all {
		margin-bottom: 32px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner__prefs-accept-all {
		margin-bottom: 44px !important;
	}
}

.orion-cookiebanner__prefs-manage-heading {
	font-family: var(--orion-font-heading, "El Messiri"), sans-serif !important;
	font-size: 19px !important;
	font-weight: 500 !important;
	line-height: 26px !important;
	color: #000000 !important;
	margin: 0 0 12px !important;
}

@media (min-width: 640px) {
	.orion-cookiebanner__prefs-manage-heading {
		font-size: 22px !important;
		line-height: 30px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner__prefs-manage-heading {
		margin-bottom: 20px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__prefs-manage-heading {
		font-size: 25px !important;
		line-height: 35px !important;
	}
}

.orion-cookiebanner__categories {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	margin: 0 !important;
}

.orion-cookiebanner .cmplz-category {
	background: transparent !important;
	border: 1px solid #d1d5db !important;
	border-radius: 0 !important;
	padding: 10px 13px !important;
	margin: 0 !important;
}

@media (min-width: 640px) {
	.orion-cookiebanner .cmplz-category {
		padding: 10px 16px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner .cmplz-category {
		padding: 13px 16px !important;
	}
}

@media (min-width: 1380px) {
	.orion-cookiebanner .cmplz-category {
		padding: 13px 22px !important;
	}
}

.orion-cookiebanner .cmplz-category.orion-cookie-cat-open,
.orion-cookiebanner .cmplz-category:has(.cmplz-category-toggle[aria-expanded="true"]) {
	border-color: #000000 !important;
}

.orion-cookiebanner .cmplz-category-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	padding: 0 !important;
	grid-template-columns: none !important;
	background: transparent !important;
}

.orion-cookiebanner .cmplz-category-title {
	flex: 1;
	font-family: var(--orion-font-body, "Lexend"), sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	color: #000000 !important;
	margin: 0 !important;
}

.orion-cookiebanner .cmplz-always-active {
	display: none !important;
}

/* Hide checkbox from header — shown inside description like HTML */
.orion-cookiebanner .cmplz-category-header > .cmplz-banner-checkbox {
	display: none !important;
}

.orion-cookiebanner .cmplz-category-toggle {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer;
	color: #4b5563 !important;
	line-height: 0;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	display: flex !important;
	align-items: center;
	justify-content: center;
}

.orion-cookiebanner .cmplz-category-toggle .cmplz-icon,
.orion-cookiebanner .cmplz-category-toggle svg {
	width: 20px !important;
	height: 20px !important;
	transition: transform 150ms ease-in-out !important;
	transform: rotate(0deg) !important;
}

.orion-cookiebanner .cmplz-category-toggle[aria-expanded="true"] .cmplz-icon,
.orion-cookiebanner .cmplz-category-toggle[aria-expanded="true"] .cmplz-icon.cmplz-open,
.orion-cookiebanner .cmplz-category-toggle[aria-expanded="true"] svg {
	transform: rotate(180deg) !important;
}

.orion-cookiebanner .cmplz-description {
	display: flex !important;
	flex-direction: column !important;
	margin: 8px 0 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 22px !important;
	font-weight: 300 !important;
	color: #464343 !important;
	max-width: none !important;
	width: auto !important;
}

.orion-cookiebanner .cmplz-description[hidden] {
	display: none !important;
}

@media (min-width: 1380px) {
	.orion-cookiebanner .cmplz-description {
		line-height: 24px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner .cmplz-description {
		font-size: 14px !important;
		line-height: 26px !important;
	}
}

/* Toggle inside description (HTML: ml-auto mt-2) */
.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox,
.orion-cookiebanner .orion-cookiebanner__cat-toggle {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	width: 44px !important;
	height: 24px !important;
	margin: 8px 0 0 auto !important;
	align-self: flex-end !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox input.cmplz-consent-checkbox,
.orion-cookiebanner .orion-cookiebanner__cat-toggle input.cmplz-consent-checkbox {
	position: absolute !important;
	opacity: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	cursor: pointer;
	z-index: 2;
	left: 0 !important;
	top: 0 !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox .cmplz-label,
.orion-cookiebanner .orion-cookiebanner__cat-toggle .cmplz-label,
.orion-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label {
	position: absolute !important;
	inset: 0 !important;
	padding: 0 !important;
	background: color-mix(in srgb, var(--orion-primary) 66%, transparent) !important;
	border-radius: 999px !important;
	transition: background 150ms ease-in-out !important;
	pointer-events: none !important;
	margin: 0 !important;
	top: 0 !important;
	left: 0 !important;
	height: 24px !important;
	width: 44px !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox .cmplz-label::before,
.orion-cookiebanner .orion-cookiebanner__cat-toggle .cmplz-label::before,
.orion-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label::before {
	content: none !important;
	display: none !important;
	background: none !important;
	width: 0 !important;
	height: 0 !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox .cmplz-label::after,
.orion-cookiebanner .orion-cookiebanner__cat-toggle .cmplz-label::after,
.orion-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label::after {
	content: "" !important;
	position: absolute !important;
	top: 2px !important;
	left: 2px !important;
	width: 20px !important;
	height: 20px !important;
	letter-spacing: normal !important;
	background: #ffffff !important;
	border: 1px solid #d1d5db !important;
	border-radius: 50% !important;
	transition: transform 150ms ease-in-out !important;
	display: block !important;
	box-sizing: border-box !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked ~ .cmplz-label,
.orion-cookiebanner .orion-cookiebanner__cat-toggle input.cmplz-consent-checkbox:checked ~ .cmplz-label,
.orion-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked + .cmplz-label {
	background: var(--orion-primary, var(--orion-primary)) !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked ~ .cmplz-label::after,
.orion-cookiebanner .orion-cookiebanner__cat-toggle input.cmplz-consent-checkbox:checked ~ .cmplz-label::after,
.orion-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox:checked + .cmplz-label::after {
	transform: translateX(20px) !important;
	left: 2px !important;
}

.orion-cookiebanner .cmplz-description .cmplz-banner-checkbox input.cmplz-consent-checkbox:disabled ~ .cmplz-label,
.orion-cookiebanner .orion-cookiebanner__cat-toggle input.cmplz-consent-checkbox:disabled ~ .cmplz-label,
.orion-cookiebanner .cmplz-functional .orion-cookiebanner__cat-toggle .cmplz-label {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Hide Complianz legal/info links — not in HTML reference panel */
.orion-cookiebanner__links {
	display: none !important;
}

/* Sticky footer — Reject All + Confirm My Choices */
.orion-cookiebanner__prefs-footer {
	flex-shrink: 0;
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 16px !important;
	margin: 0 !important;
	border-top: 1px solid #d1d5db !important;
	background: #ffffff !important;
	position: sticky;
	bottom: 0;
	width: 100%;
	box-sizing: border-box;
}

@media (min-width: 640px) {
	.orion-cookiebanner__prefs-footer {
		padding: 24px !important;
		gap: 16px !important;
	}
}

@media (min-width: 769px) {
	.orion-cookiebanner__prefs-footer {
		gap: 16px !important;
	}
}

@media (min-width: 1199px) {
	.orion-cookiebanner__prefs-footer {
		padding: 32px !important;
		gap: 22px !important;
	}
}

@media (min-width: 1752px) {
	.orion-cookiebanner__prefs-footer {
		padding: 40px !important;
	}
}

.orion-cookiebanner__prefs-footer .cmplz-btn {
	flex: 1 1 0 !important;
	width: auto !important;
	max-width: none !important;
	justify-content: center !important;
}

/* Hide Complianz manage-consent tab — HTML has no equivalent chrome */
#cmplz-manage-consent {
	display: none !important;
}
