/* Analytics consent banner. Theme tokens when present, fallbacks otherwise.
   Selected by id so the host's [role="region"]{position:relative} cannot override it (R-34). */
#vizorsol-consent-banner {
	position: fixed;
	left: max(16px, env(safe-area-inset-left, 0px));
	bottom: calc(16px + env(safe-area-inset-bottom, 0px));
	z-index: 80;
	box-sizing: border-box;
	max-width: 25rem;
	padding: 1rem 1.1rem;
	border: 1px solid var(--wp--preset--color--border, #d6dce5);
	border-radius: 2px;
	background: var(--wp--preset--color--white, #fff);
	color: var(--wp--preset--color--contrast, #121722);
	box-shadow: 0 18px 44px -22px rgb(0 0 0 / 0.45);
	font-family: var(--wp--preset--font-family--body, system-ui, sans-serif);
	font-size: 0.9375rem;
	line-height: 1.5;
}

#vizorsol-consent-banner .vzc-text {
	margin: 0 0 0.75rem;
}

#vizorsol-consent-banner a {
	color: var(--wp--preset--color--accent, #a8521a);
}

#vizorsol-consent-banner .vzc-actions {
	display: flex;
	gap: 0.5rem;
}

/* Accept and Decline look the same: neither choice is nudged. */
#vizorsol-consent-banner .vzc-button {
	min-height: 44px;
	padding: 0.6rem 1.3rem;
	border: 0;
	border-radius: 2px;
	background: var(--wp--preset--color--navy, #13233f);
	color: #fff;
	font: inherit;
	font-weight: 500;
	cursor: pointer;
}

#vizorsol-consent-banner .vzc-button:focus-visible,
.vzc-settings:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent, #a8521a);
	outline-offset: 2px;
}

.vzc-settings {
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}

/* Phones: full width, above the assistant button so both stay usable. */
@media (max-width: 640px) {
	#vizorsol-consent-banner {
		right: max(16px, env(safe-area-inset-right, 0px));
		bottom: calc(76px + env(safe-area-inset-bottom, 0px));
		max-width: none;
	}
}
