/* Pirouline Consent Gate — override the variables in your theme to match branding. */
:root {
	--pcg-bg: #ffffff;
	--pcg-fg: #2b2118;
	--pcg-muted: #f6f1ea;
	--pcg-border: #e2d8cc;
	--pcg-accent: #7a1f2b;
	--pcg-accent-fg: #ffffff;
	--pcg-radius: 6px;
}

/* Placeholder shown instead of blocked embeds (e.g. the Where to Buy locator) */
.pcg-embed { width: 100%; }
.pcg-placeholder {
	box-sizing: border-box;
	max-width: 720px;
	margin: 24px auto;
	padding: 32px 24px;
	text-align: center;
	background: var(--pcg-muted);
	color: var(--pcg-fg);
	border: 1px solid var(--pcg-border);
	border-radius: var(--pcg-radius);
}
.pcg-placeholder__text { margin: 0 0 16px; line-height: 1.5; }
.pcg-placeholder__actions { margin: 0; display: flex; flex-wrap: wrap; gap: 12px 16px; justify-content: center; align-items: center; }
.pcg-placeholder__link { color: var(--pcg-fg); text-decoration: underline; }

/* Buttons */
.pcg-btn {
	font: inherit;
	cursor: pointer;
	padding: 10px 18px;
	border-radius: var(--pcg-radius);
	border: 1px solid var(--pcg-fg);
	background: transparent;
	color: var(--pcg-fg);
	line-height: 1.2;
}
.pcg-btn--primary { background: var(--pcg-accent); border-color: var(--pcg-accent); color: var(--pcg-accent-fg); }
.pcg-btn:focus-visible { outline: 3px solid var(--pcg-accent); outline-offset: 2px; }
.pcg-btn[hidden] { display: none; }

/* Built-in banner (only used when Complianz is not active) */
.pcg-banner {
	position: fixed;
	left: 16px;
	right: 16px;
	bottom: 16px;
	z-index: 2147483000;
	background: var(--pcg-bg);
	color: var(--pcg-fg);
	border: 1px solid var(--pcg-border);
	border-radius: var(--pcg-radius);
	box-shadow: 0 8px 30px rgba(0, 0, 0, .18);
}
.pcg-banner[hidden] { display: none; }
.pcg-banner__inner { max-width: 1100px; margin: 0 auto; padding: 16px 20px; display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; }
.pcg-banner__text { flex: 1 1 380px; margin: 0; font-size: 15px; line-height: 1.5; }
.pcg-banner__text a { color: inherit; text-decoration: underline; }
.pcg-banner__prefs { flex: 1 1 100%; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.pcg-banner__prefs[hidden] { display: none; }
.pcg-banner__prefs label { display: inline-flex; gap: 6px; align-items: center; font-size: 14px; }
.pcg-banner__actions { display: flex; flex-wrap: wrap; gap: 8px; }
@media (max-width: 600px) {
	.pcg-banner { left: 8px; right: 8px; bottom: 8px; }
	.pcg-banner__actions { width: 100%; }
	.pcg-banner__actions .pcg-btn { flex: 1 1 auto; }
}
