.rhm-consent-banner {
	position: fixed;
	right: 18px;
	bottom: 18px;
	left: 18px;
	z-index: 999999;
	max-width: 720px;
	margin: 0 auto;
	padding: 18px;
	color: #172033;
	background: #fff;
	border: 1px solid #d8deea;
	border-radius: 12px;
	box-shadow: 0 14px 40px rgba(15, 23, 42, .22);
	font: 15px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.rhm-consent-banner[hidden],
.rhm-consent-preferences-wrap[hidden] { display: none !important; }

.rhm-consent-banner h2 { margin: 0 0 7px; color: #172033; font-size: 19px; line-height: 1.3; }
.rhm-consent-banner p { margin: 0 0 14px; color: #3d475a; }
.rhm-consent-actions { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; }

.rhm-consent-button {
	min-width: 112px;
	padding: 10px 17px;
	color: #183a9e;
	background: #fff;
	border: 2px solid #3157df;
	border-radius: 6px;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
}

.rhm-consent-button:hover,
.rhm-consent-button:focus { color: #fff; background: #3157df; outline: 2px solid transparent; }
.rhm-consent-policy { padding: 8px 3px; color: #244bc5; font-weight: 600; text-decoration: underline; }

.rhm-consent-preferences-wrap {
	box-sizing: border-box;
	width: 100%;
	padding: 10px 16px 14px;
	text-align: center;
}

.rhm-consent-preferences {
	padding: 3px;
	color: inherit;
	background: transparent;
	border: 0;
	cursor: pointer;
	font: 12px/1.2 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	opacity: .78;
	text-decoration: underline;
}

.rhm-consent-preferences:hover,
.rhm-consent-preferences:focus {
	opacity: 1;
	outline: 1px dotted currentColor;
}

@media (max-width: 600px) {
	.rhm-consent-banner { right: 10px; bottom: 10px; left: 10px; padding: 15px; }
	.rhm-consent-actions { display: grid; grid-template-columns: 1fr 1fr; }
	.rhm-consent-policy { grid-column: 1 / -1; text-align: center; }
}
