.pb-cookie-consent,
.pb-cookie-settings-trigger {
	font-family: var(--drumix-font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);
}

.pb-cookie-consent[hidden],
.pb-cookie-settings-trigger[hidden] {
	display: none !important;
}

.pb-cookie-consent {
	position: fixed;
	z-index: 2147483000;
	left: max(16px, env(safe-area-inset-left));
	right: max(16px, env(safe-area-inset-right));
	bottom: max(16px, env(safe-area-inset-bottom));
	width: min(680px, calc(100% - 32px));
	margin: 0 auto;
	padding: 20px;
	box-sizing: border-box;
	border: 1px solid var(--drumix-color-border, rgba(0, 0, 0, .14));
	border-radius: 18px;
	background: color-mix(in srgb, var(--drumix-color-surface, #fff) 96%, transparent);
	color: var(--drumix-color-text, #1d1d1f);
	box-shadow: 0 18px 55px rgba(0, 0, 0, .20);
	-webkit-backdrop-filter: blur(22px) saturate(160%);
	backdrop-filter: blur(22px) saturate(160%);
}

.pb-cookie-consent-head {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.pb-cookie-consent-copy {
	min-width: 0;
	flex: 1;
}

.pb-cookie-consent h2 {
	margin: 0;
	font-size: 18px;
	font-weight: 750;
	line-height: 1.25;
	letter-spacing: -.01em;
}

.pb-cookie-consent p {
	margin: 8px 0 0;
	color: var(--drumix-color-muted, #626267);
	font-size: 14px;
	line-height: 1.5;
}

.pb-cookie-consent a {
	color: var(--drumix-color-primary, #0071e3);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pb-cookie-consent-status {
	font-size: 12px !important;
	font-weight: 650;
}

.pb-cookie-consent-close {
	width: 40px;
	height: 40px;
	flex: 0 0 auto;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--drumix-color-surface-soft, #f2f2f4);
	color: var(--drumix-color-text, #1d1d1f);
	font: 400 24px/1 inherit;
	cursor: pointer;
}

.pb-cookie-consent-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 18px;
}

.pb-cookie-consent-actions button {
	min-height: 48px;
	padding: 10px 16px;
	border: 1px solid var(--drumix-color-primary, #0071e3);
	border-radius: 12px;
	font: 700 14px/1.2 inherit;
	cursor: pointer;
}

.pb-cookie-consent-necessary {
	background: var(--drumix-color-surface, #fff);
	color: var(--drumix-color-primary, #0071e3);
}

.pb-cookie-consent-analytics {
	background: var(--drumix-color-primary, #0071e3);
	color: var(--drumix-color-on-primary, #fff);
}

.pb-cookie-settings-trigger {
	position: fixed;
	z-index: 2147482000;
	left: max(12px, env(safe-area-inset-left));
	bottom: max(12px, env(safe-area-inset-bottom));
	min-height: 36px;
	padding: 7px 12px;
	border: 1px solid var(--drumix-color-border, rgba(0, 0, 0, .14));
	border-radius: 999px;
	background: color-mix(in srgb, var(--drumix-color-surface, #fff) 92%, transparent);
	color: var(--drumix-color-muted, #626267);
	box-shadow: 0 6px 22px rgba(0, 0, 0, .12);
	-webkit-backdrop-filter: blur(16px);
	backdrop-filter: blur(16px);
	font-size: 12px;
	font-weight: 650;
	cursor: pointer;
}

.pb-cookie-inline-settings {
	min-height: 32px;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	font-weight: var(--drumix-weight-medium, 600);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

.pb-cookie-consent :where(button, a):focus-visible,
.pb-cookie-settings-trigger:focus-visible,
.pb-cookie-inline-settings:focus-visible {
	outline: 3px solid var(--drumix-color-focus, #0071e3) !important;
	outline-offset: 3px !important;
}

:fullscreen .pb-cookie-settings-trigger,
body.practice-compact .pb-cookie-settings-trigger {
	display: none !important;
}

@media (max-width: 560px) {
	.pb-cookie-consent {
		left: max(10px, env(safe-area-inset-left));
		right: max(10px, env(safe-area-inset-right));
		bottom: max(10px, env(safe-area-inset-bottom));
		width: auto;
		padding: 17px;
		border-radius: 16px;
	}

	.pb-cookie-consent-actions {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pb-cookie-consent,
	.pb-cookie-settings-trigger {
		scroll-behavior: auto;
	}
}
