/* Cookie Pressel Builder - Public CSS (Overlay Mode) */

/* ── Banner flutuante sobre qualquer página ──────────────────── */
.cpb-banner {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 999999;
	background: var(--cpb-bg, #fff);
	color: var(--cpb-text, #333);
	border: 1px solid var(--cpb-border, #dee2e6);
	border-radius: var(--cpb-radius, 8px);
	transition: all .3s;
}

.cpb-banner--bottom {
	bottom: 0;
	border-radius: 0;
	border-bottom: none;
}

.cpb-banner--top {
	top: 0;
	border-radius: 0;
	border-top: none;
}

.cpb-banner--center {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	right: auto;
	width: 90%;
	max-width: 560px;
}

/* Size */
.cpb-banner--small  { padding: 10px 16px; }
.cpb-banner--medium { padding: 18px 24px; }
.cpb-banner--large  { padding: 28px 32px; }

/* Shadow */
.cpb-banner--shadow { box-shadow: 0 -4px 24px rgba(0,0,0,.15); }
.cpb-banner--top.cpb-banner--shadow    { box-shadow: 0 4px 24px rgba(0,0,0,.15); }
.cpb-banner--center.cpb-banner--shadow { box-shadow: 0 8px 32px rgba(0,0,0,.2); }

/* Content */
.cpb-banner__content   { margin-bottom: 12px; }
.cpb-banner__main      { margin: 0 0 5px; font-size: 15px; font-weight: 600; line-height: 1.4; }
.cpb-banner__secondary { margin: 0; font-size: 13px; opacity: .8; line-height: 1.5; }
.cpb-banner__actions   { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }

/* Buttons */
.cpb-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 20px;
	border: none;
	border-radius: var(--cpb-radius, 6px);
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: filter .15s, transform .1s;
	color: #fff;
	min-width: 100px;
}
.cpb-btn:hover  { filter: brightness(1.1); }
.cpb-btn:active { transform: scale(.97); }
.cpb-btn--accept { background: var(--cpb-btn-accept, #28a745); }
.cpb-btn--reject { background: var(--cpb-btn-reject, #6c757d); }

/* Blur/overlay de fundo (aparece atrás do banner, sobre o conteúdo da página) */
.cpb-blur-overlay {
	position: fixed;
	inset: 0;
	z-index: 999998;
	background: rgba(0,0,0,.45);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	transition: opacity .4s ease;
	pointer-events: none;
}
.cpb-blur-overlay--hidden { opacity: 0; }

/* Footer menu (links de privacidade dentro do banner) */
.cpb-banner__footer {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	margin-top: 10px;
	padding-top: 8px;
	border-top: 1px solid rgba(0,0,0,.08);
}
.cpb-banner__footer a {
	color: inherit;
	font-size: 11px;
	opacity: .65;
	text-decoration: none;
	transition: opacity .15s;
}
.cpb-banner__footer a:hover { opacity: 1; text-decoration: underline; }

/* Ocultar após aceitar/rejeitar */
.cpb-banner--dismissed {
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s;
}

/* Mobile */
@media (max-width: 600px) {
	.cpb-banner--small  { padding: 10px 12px; }
	.cpb-banner--medium { padding: 14px 16px; }
	.cpb-banner--large  { padding: 20px 18px; }
	.cpb-banner__main      { font-size: 14px; }
	.cpb-banner__secondary { font-size: 12px; }
	.cpb-banner__actions   { flex-direction: column; align-items: stretch; }
	.cpb-btn { width: 100%; padding: 12px; }
	.cpb-banner--center { width: 94%; max-width: 100%; }
}

/* ── Legado: se o shortcode ainda estiver envolto em .cpb-pressel ── */
.cpb-pressel {
	position: static;
	min-height: auto;
	display: block;
	width: auto;
	overflow: visible;
}
