/* K2Fish RGPD Commerce Bridge — public cookie experience.
 * The component owns its visual contract and is scoped to .k2fish-privacy-manager.
 */

.k2fish-privacy-manager {
	--k2fish-cookie-accent: #00b8dc;
	--k2fish-cookie-accent-hover: #009fbe;
	--k2fish-cookie-ink: #172033;
	--k2fish-cookie-muted: #5f6975;
	--k2fish-cookie-border: #dce2e8;
	--k2fish-cookie-soft: #f5f7f9;
	--k2fish-cookie-surface: #fff;
	position: relative;
	z-index: 999999;
	color: var(--k2fish-cookie-ink);
	font-family: inherit;
}

.k2fish-privacy-manager,
.k2fish-privacy-manager * {
	box-sizing: border-box;
}

.k2fish-privacy-manager[hidden],
.k2fish-privacy-manager [hidden] {
	display: none;
}

/* --------------------------------------------------------------------------
 * First layer
 * ----------------------------------------------------------------------- */

.k2fish-privacy-banner {
	position: fixed;
	right: auto;
	bottom: max(16px, env(safe-area-inset-bottom));
	left: 50%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;
	width: min(980px, calc(100vw - 40px));
	margin: 0;
	padding: 16px 18px;
	transform: translateX(-50%);
	border: 1px solid var(--k2fish-cookie-border);
	border-radius: 10px;
	background: var(--k2fish-cookie-surface);
	box-shadow: 0 16px 42px rgba(15, 23, 42, .17);
	color: var(--k2fish-cookie-ink);
}

.k2fish-privacy-banner__lead {
	display: flex;
	align-items: center;
	gap: 13px;
	min-width: 0;
}

.k2fish-privacy-banner__icon,
.k2fish-privacy-dialog__icon {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #e9f9fd;
	color: #008dac;
}

.k2fish-privacy-banner__icon svg,
.k2fish-privacy-dialog__icon svg {
	width: 21px;
	height: 21px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.k2fish-privacy-banner__copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.k2fish-privacy-manager .k2fish-privacy-banner h2,
.k2fish-privacy-manager .k2fish-privacy-dialog h2 {
	margin: 0;
	color: var(--k2fish-cookie-ink);
	font: inherit;
	font-size: 17px;
	font-weight: 750;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
}

.k2fish-privacy-manager .k2fish-privacy-banner p,
.k2fish-privacy-manager .k2fish-privacy-dialog p {
	margin: 0;
	color: var(--k2fish-cookie-muted);
	font-size: 12.5px;
	line-height: 1.4;
}

.k2fish-privacy-links {
	display: flex;
	align-items: center;
	gap: 0;
	flex-wrap: wrap;
	margin-top: 2px;
	font-size: 11px;
	line-height: 1.25;
}

.k2fish-privacy-links a {
	color: #3f4d5b;
	font-weight: 650;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.k2fish-privacy-links a + a::before {
	content: "·";
	display: inline-block;
	margin: 0 7px;
	color: #9aa4ae;
	text-decoration: none;
}

.k2fish-privacy-links a:hover,
.k2fish-privacy-links a:focus-visible {
	color: var(--k2fish-cookie-accent-hover);
}

.k2fish-privacy-actions {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(126px, auto);
	align-items: center;
	justify-content: end;
	gap: 8px;
}

/* --------------------------------------------------------------------------
 * Buttons
 * ----------------------------------------------------------------------- */

.k2fish-privacy-button,
.k2fish-rgpd-external-placeholder .k2fish-rgpd-open-cookie-manager {
	all: unset;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0 14px;
	border: 1px solid transparent;
	border-radius: 5px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	white-space: nowrap;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.k2fish-privacy-button--primary,
.k2fish-rgpd-external-placeholder .k2fish-rgpd-open-cookie-manager {
	border-color: var(--k2fish-cookie-accent);
	background: var(--k2fish-cookie-accent);
	color: #fff;
	box-shadow: 0 5px 14px rgba(0, 184, 220, .2);
}

.k2fish-privacy-button--secondary {
	border-color: #aeb8c2;
	background: #fff;
	color: #273442;
}

.k2fish-privacy-button--soft {
	border-color: #e2e7ec;
	background: #f3f6f8;
	color: #273442;
}

.k2fish-privacy-button:hover,
.k2fish-rgpd-external-placeholder .k2fish-rgpd-open-cookie-manager:hover {
	transform: translateY(-1px);
}

.k2fish-privacy-button--primary:hover,
.k2fish-privacy-button--primary:focus-visible,
.k2fish-rgpd-external-placeholder .k2fish-rgpd-open-cookie-manager:hover,
.k2fish-rgpd-external-placeholder .k2fish-rgpd-open-cookie-manager:focus-visible {
	border-color: var(--k2fish-cookie-accent-hover);
	background: var(--k2fish-cookie-accent-hover);
	color: #fff;
}

.k2fish-privacy-button--secondary:hover,
.k2fish-privacy-button--secondary:focus-visible {
	border-color: #697785;
	background: #f7f9fa;
	color: #111827;
}

.k2fish-privacy-button--soft:hover,
.k2fish-privacy-button--soft:focus-visible {
	border-color: #cdd5dc;
	background: #eaf0f4;
	color: #111827;
}

.k2fish-privacy-button:focus-visible,
.k2fish-rgpd-external-placeholder .k2fish-rgpd-open-cookie-manager:focus-visible {
	outline: 3px solid rgba(0, 184, 220, .3);
	outline-offset: 2px;
}

.k2fish-privacy-button:disabled {
	opacity: .55;
	cursor: wait;
	transform: none;
}

/* --------------------------------------------------------------------------
 * Preference dialog
 * ----------------------------------------------------------------------- */

.k2fish-privacy-modal {
	position: fixed;
	inset: 0;
	z-index: 1000001;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 18px;
	background: rgba(15, 23, 42, .62);
	overflow: auto;
}

.k2fish-privacy-dialog {
	display: flex;
	flex-direction: column;
	width: min(720px, calc(100vw - 36px));
	max-height: min(760px, calc(100dvh - 36px));
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .38);
	border-radius: 12px;
	background: #fff;
	color: var(--k2fish-cookie-ink);
	box-shadow: 0 24px 70px rgba(15, 23, 42, .32);
}

.k2fish-privacy-dialog__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 18px;
	border-bottom: 1px solid var(--k2fish-cookie-border);
	background: #fff;
}

.k2fish-privacy-dialog__lead {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.k2fish-privacy-dialog__icon {
	width: 38px;
	height: 38px;
}

.k2fish-privacy-dialog__copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.k2fish-privacy-close {
	all: unset;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1px solid #d8e0e6;
	border-radius: 50%;
	background: #f7f9fa;
	color: #334155;
	font: 400 22px/1 Arial, sans-serif;
	cursor: pointer;
}

.k2fish-privacy-close:hover,
.k2fish-privacy-close:focus-visible {
	border-color: var(--k2fish-cookie-accent);
	background: #e9f9fd;
	color: #007e99;
}

.k2fish-privacy-close:focus-visible {
	outline: 3px solid rgba(0, 184, 220, .3);
	outline-offset: 2px;
}

.k2fish-privacy-dialog form {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 0;
	margin: 0;
}

.k2fish-privacy-categories {
	display: grid;
	flex: 1 1 auto;
	grid-template-columns: 1fr;
	gap: 0;
	margin: 0;
	padding: 14px 16px;
	overflow: auto;
	background: var(--k2fish-cookie-soft);
}

.k2fish-privacy-category {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 16px;
	padding: 13px 15px;
	border: 1px solid var(--k2fish-cookie-border);
	border-bottom-width: 0;
	background: #fff;
}

.k2fish-privacy-category:first-child {
	border-radius: 9px 9px 0 0;
}

.k2fish-privacy-category:last-child {
	border-bottom-width: 1px;
	border-radius: 0 0 9px 9px;
}

.k2fish-privacy-category:only-child {
	border-bottom-width: 1px;
	border-radius: 9px;
}

.k2fish-privacy-category__copy {
	min-width: 0;
}

.k2fish-privacy-category__heading {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.k2fish-privacy-category strong {
	display: block;
	margin: 0;
	color: var(--k2fish-cookie-ink);
	font-size: 13.5px;
	font-weight: 750;
	line-height: 1.25;
}

.k2fish-privacy-category p {
	margin: 3px 0 0;
	color: var(--k2fish-cookie-muted);
	font-size: 12px;
	line-height: 1.35;
}

.k2fish-privacy-required {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0 9px;
	border-radius: 999px;
	background: #eef3f6;
	color: #4c5966;
	font-size: 10.5px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.k2fish-privacy-provider-details {
	margin-top: 5px;
	color: #64707c;
	font-size: 10.5px;
	line-height: 1.3;
}

.k2fish-privacy-provider-details summary {
	width: fit-content;
	color: #455463;
	font-weight: 650;
	cursor: pointer;
}

.k2fish-privacy-provider-details ul {
	margin: 6px 0 0;
	padding-left: 17px;
}

.k2fish-privacy-switch {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
}

.k2fish-privacy-switch input {
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	width: 42px;
	height: 23px;
	margin: 0;
	border: 1px solid #cbd3db;
	border-radius: 999px;
	background: #e5e9ed;
	cursor: pointer;
	transition: background-color .16s ease, border-color .16s ease;
}

.k2fish-privacy-switch input::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 2px;
	width: 17px;
	height: 17px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 4px rgba(15, 23, 42, .28);
	transition: transform .16s ease;
}

.k2fish-privacy-switch input:checked {
	border-color: var(--k2fish-cookie-accent);
	background: var(--k2fish-cookie-accent);
}

.k2fish-privacy-switch input:checked::before {
	transform: translateX(19px);
}

.k2fish-privacy-switch input:focus-visible {
	outline: 3px solid rgba(0, 184, 220, .28);
	outline-offset: 2px;
}

.k2fish-privacy-switch__label,
.k2fish-cookie-floating-control__label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.k2fish-privacy-modal-footer {
	flex: 0 0 auto;
	padding: 12px 16px 14px;
	border-top: 1px solid var(--k2fish-cookie-border);
	background: #fff;
}

.k2fish-privacy-status {
	min-height: 0;
	margin: 0 0 9px;
	color: #166534;
	font-size: 12px;
	line-height: 1.35;
}

.k2fish-privacy-status:empty {
	display: none;
}

[data-k2fish-privacy-status][data-state="error"] {
	color: #9f1239;
}

[data-k2fish-privacy-status][data-state="success"] {
	color: #166534;
}

.k2fish-privacy-modal-actions {
	display: grid;
	grid-template-columns: auto auto minmax(170px, auto);
	align-items: center;
	justify-content: end;
	gap: 8px;
}

/* --------------------------------------------------------------------------
 * Floating manage control
 * ----------------------------------------------------------------------- */

.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage] {
	all: initial;
	box-sizing: border-box;
	position: fixed;
	right: 22px;
	bottom: calc(max(18px, env(safe-area-inset-bottom)) + 66px);
	z-index: 1000000;
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	min-width: 50px;
	min-height: 50px;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(15, 23, 42, .14);
	border-radius: 999px;
	background: #fff;
	color: #30353b;
	box-shadow: 0 5px 18px rgba(15, 23, 42, .18);
	line-height: 0;
	cursor: pointer;
	pointer-events: auto;
	-webkit-tap-highlight-color: transparent;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage][hidden] {
	display: none;
}

.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage]:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 24px rgba(15, 23, 42, .22);
}

.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage]:focus-visible {
	outline: 3px solid rgba(0, 174, 239, .32);
	outline-offset: 3px;
}

.k2fish-cookie-floating-control__icon {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 22px;
	height: 22px;
	margin: 0;
	overflow: visible;
	transform: translate(calc(-50% + .5px), calc(-50% - .5px));
	transform-origin: center;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	pointer-events: none;
}

.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage]::after {
	content: attr(data-tooltip);
	position: absolute;
	top: 50%;
	right: calc(100% + 11px);
	padding: 8px 10px;
	transform: translate(4px, -50%);
	border-radius: 6px;
	background: rgba(31, 35, 39, .96);
	color: #fff;
	box-shadow: 0 7px 20px rgba(15, 23, 42, .2);
	font: 600 12px/1.1 Arial, sans-serif;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
}

.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage]:hover::after,
.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage]:focus-visible::after {
	transform: translate(0, -50%);
	opacity: 1;
	visibility: visible;
}

/* --------------------------------------------------------------------------
 * External content and states
 * ----------------------------------------------------------------------- */

.k2fish-rgpd-external-placeholder {
	padding: 1.2rem;
	border: 1px dashed rgba(15, 23, 42, .35);
	border-radius: 10px;
	background: #f8fafc;
	text-align: center;
}

body.k2fish-privacy-modal-open {
	overflow: hidden;
}

/* --------------------------------------------------------------------------
 * Responsive
 * ----------------------------------------------------------------------- */

@media (max-width: 900px) {
	.k2fish-privacy-banner {
		grid-template-columns: 1fr;
		gap: 12px;
		width: min(680px, calc(100vw - 28px));
	}

	.k2fish-privacy-actions {
		grid-auto-columns: minmax(0, 1fr);
		width: 100%;
	}

	.k2fish-privacy-button {
		width: 100%;
	}
}

@media (max-width: 760px) {
	.k2fish-privacy-banner {
		right: 10px;
		bottom: max(10px, env(safe-area-inset-bottom));
		left: 10px;
		width: auto;
		max-height: calc(100dvh - 20px);
		padding: 14px;
		transform: none;
		overflow: auto;
		border-radius: 10px;
	}

	.k2fish-privacy-banner__lead {
		align-items: flex-start;
		gap: 11px;
	}

	.k2fish-privacy-banner__icon {
		width: 36px;
		height: 36px;
	}

	.k2fish-privacy-banner__icon svg {
		width: 19px;
		height: 19px;
	}

	.k2fish-privacy-manager .k2fish-privacy-banner h2,
	.k2fish-privacy-manager .k2fish-privacy-dialog h2 {
		font-size: 16px;
	}

	.k2fish-privacy-manager .k2fish-privacy-banner p,
	.k2fish-privacy-manager .k2fish-privacy-dialog p {
		font-size: 12px;
		line-height: 1.38;
	}

	.k2fish-privacy-links {
		margin-top: 4px;
		font-size: 10.5px;
	}

	.k2fish-privacy-actions {
		grid-auto-flow: row;
		grid-template-columns: 1fr;
		gap: 7px;
		width: 100%;
	}

	.k2fish-privacy-button {
		width: 100%;
		min-height: 42px;
		padding: 0 12px;
		font-size: 12px;
	}

	.k2fish-privacy-modal {
		align-items: flex-end;
		padding: 0;
	}

	.k2fish-privacy-dialog {
		width: 100%;
		max-height: 90dvh;
		border-radius: 14px 14px 0 0;
	}

	.k2fish-privacy-dialog__header {
		position: sticky;
		top: 0;
		z-index: 2;
		padding: 13px 12px;
	}

	.k2fish-privacy-dialog__lead {
		gap: 10px;
	}

	.k2fish-privacy-dialog__icon {
		width: 34px;
		height: 34px;
	}

	.k2fish-privacy-dialog__icon svg {
		width: 18px;
		height: 18px;
	}

	.k2fish-privacy-close {
		width: 34px;
		height: 34px;
	}

	.k2fish-privacy-categories {
		padding: 10px;
	}

	.k2fish-privacy-category {
		gap: 12px;
		padding: 12px;
	}

	.k2fish-privacy-category strong {
		font-size: 13px;
	}

	.k2fish-privacy-category p {
		font-size: 11.5px;
	}

	.k2fish-privacy-modal-footer {
		position: sticky;
		bottom: 0;
		z-index: 2;
		padding: 10px 10px max(11px, env(safe-area-inset-bottom));
	}

	.k2fish-privacy-modal-actions {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-template-areas:
			"reject accept"
			"save save";
		gap: 7px;
	}

	.k2fish-privacy-modal-actions [data-k2fish-privacy-reject] {
		grid-area: reject;
	}

	.k2fish-privacy-modal-actions [data-k2fish-privacy-accept] {
		grid-area: accept;
	}

	.k2fish-privacy-modal-actions [data-k2fish-privacy-save] {
		grid-area: save;
	}

	.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage] {
		right: 8px;
		bottom: calc(max(14px, env(safe-area-inset-bottom)) + 60px);
		width: 46px;
		height: 46px;
		min-width: 46px;
		min-height: 46px;
	}

	.k2fish-cookie-floating-control__icon {
		width: 20px;
		height: 20px;
	}

	.k2fish-privacy-manager > .k2fish-cookie-floating-control[data-k2fish-privacy-manage]::after {
		display: none;
	}
}

@media (max-width: 420px) {
	.k2fish-privacy-banner {
		padding: 12px;
	}

	.k2fish-privacy-banner__icon {
		display: none;
	}

	.k2fish-privacy-category {
		align-items: start;
	}

	.k2fish-privacy-required {
		font-size: 10px;
	}

	.k2fish-privacy-switch {
		margin-top: 1px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.k2fish-privacy-manager * {
		scroll-behavior: auto;
		transition: none;
	}
}

/* --------------------------------------------------------------------------
 * RC9 — botões iguais ao mockup K2Fish
 * Override deliberadamente específico para impedir que os estilos globais
 * de botões do tema alterem as três variantes do gestor de cookies.
 * ----------------------------------------------------------------------- */

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button.k2fish-privacy-button,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button.k2fish-privacy-button {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 126px;
	min-height: 42px;
	margin: 0;
	padding: 0 16px;
	border-width: 1px;
	border-style: solid;
	border-radius: 5px;
	background-image: none;
	font-family: inherit;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	text-shadow: none;
	text-transform: none;
	white-space: nowrap;
	filter: none;
	opacity: 1;
	box-shadow: none;
	transform: none;
}

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-reject],
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-reject] {
	border-color: #aeb8c2;
	background-color: #fff;
	color: #273442;
}

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-customize],
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-accept] {
	border-color: #dce2e8;
	background-color: #f2f4f6;
	color: #273442;
}

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-accept],
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-save] {
	border-color: #00b8dc;
	background-color: #00b8dc;
	color: #fff;
	box-shadow: 0 5px 14px rgba(0, 184, 220, .20);
}

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-reject]:hover,
.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-reject]:focus-visible,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-reject]:hover,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-reject]:focus-visible {
	border-color: #718090;
	background-color: #f8fafb;
	color: #182230;
	transform: none;
}

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-customize]:hover,
.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-customize]:focus-visible,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-accept]:hover,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-accept]:focus-visible {
	border-color: #c7d0d8;
	background-color: #e9edf1;
	color: #182230;
	transform: none;
}

.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-accept]:hover,
.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button[data-k2fish-privacy-accept]:focus-visible,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-save]:hover,
.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button[data-k2fish-privacy-save]:focus-visible {
	border-color: #009fbe;
	background-color: #009fbe;
	color: #fff;
	transform: none;
}

@media (min-width: 901px) {
	.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions {
		grid-template-columns: 132px 126px 126px;
		grid-auto-flow: initial;
		grid-auto-columns: initial;
	}
}

@media (max-width: 900px) {
	.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button.k2fish-privacy-button,
	.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button.k2fish-privacy-button {
		width: 100%;
		min-width: 0;
	}
}

@media (max-width: 760px) {
	.k2fish-privacy-manager .k2fish-privacy-banner .k2fish-privacy-actions > button.k2fish-privacy-button,
	.k2fish-privacy-manager .k2fish-privacy-dialog .k2fish-privacy-modal-actions > button.k2fish-privacy-button {
		min-height: 42px;
		padding: 0 14px;
		font-size: 12px;
	}
}

/* ==========================================================================
 * RC10 — OVERRIDE FINAL DOS BOTÕES DO GESTOR DE COOKIES
 * Escopo exclusivo do componente. Os !important são deliberados para vencer
 * as regras globais do tema que estavam a tornar todos os botões ciano.
 * ======================================================================= */

html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: 5px !important;
	background-image: none !important;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-shadow: none !important;
	text-transform: none !important;
	white-space: nowrap !important;
	filter: none !important;
	opacity: 1 !important;
	transform: none !important;
}

html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button::before,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button::after {
	content: none !important;
	display: none !important;
}

/* Rejeitar opcionais — branco com contorno */
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--secondary,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button[data-k2fish-privacy-reject] {
	border-color: #aeb8c2 !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	color: #273442 !important;
	-webkit-text-fill-color: #273442 !important;
	box-shadow: none !important;
}

/* Personalizar / Aceitar todos secundário do formulário — cinza claro */
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--soft {
	border-color: #dce2e8 !important;
	background: #f2f4f6 !important;
	background-color: #f2f4f6 !important;
	color: #273442 !important;
	-webkit-text-fill-color: #273442 !important;
	box-shadow: none !important;
}

/* Aceitar todos principal / Guardar preferências — ciano */
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--primary {
	border-color: #00b8dc !important;
	background: #00b8dc !important;
	background-color: #00b8dc !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	box-shadow: 0 5px 14px rgba(0, 184, 220, .20) !important;
}

/* Estados hover/focus */
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--secondary:hover,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--secondary:focus-visible,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button[data-k2fish-privacy-reject]:hover,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button[data-k2fish-privacy-reject]:focus-visible {
	border-color: #718090 !important;
	background: #f8fafb !important;
	background-color: #f8fafb !important;
	color: #182230 !important;
	-webkit-text-fill-color: #182230 !important;
}

html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--soft:hover,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--soft:focus-visible {
	border-color: #c7d0d8 !important;
	background: #e9edf1 !important;
	background-color: #e9edf1 !important;
	color: #182230 !important;
	-webkit-text-fill-color: #182230 !important;
}

html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--primary:hover,
html body [data-k2fish-privacy-manager].k2fish-privacy-manager
button.k2fish-privacy-button--primary:focus-visible {
	border-color: #009fbe !important;
	background: #009fbe !important;
	background-color: #009fbe !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

@media (min-width: 901px) {
	html body [data-k2fish-privacy-manager].k2fish-privacy-manager
	.k2fish-privacy-banner .k2fish-privacy-actions {
		grid-template-columns: 132px 126px 126px !important;
		grid-auto-flow: initial !important;
		grid-auto-columns: initial !important;
	}

	html body [data-k2fish-privacy-manager].k2fish-privacy-manager
	.k2fish-privacy-banner .k2fish-privacy-actions
	button.k2fish-privacy-button {
		width: 100% !important;
		min-width: 0 !important;
	}
}

@media (max-width: 900px) {
	html body [data-k2fish-privacy-manager].k2fish-privacy-manager
	button.k2fish-privacy-button {
		width: 100% !important;
		min-width: 0 !important;
	}
}

