/* Cookie consent banner (uses the theme's colours when available). */
.jr-consent {
	--jr-c-bg: var(--wp--preset--color--navy, #152838);
	--jr-c-raised: var(--wp--preset--color--navy-raised, #1c3346);
	--jr-c-text: var(--wp--preset--color--off-white, #faf6f7);
	--jr-c-muted: var(--wp--preset--color--slate, #a5b4c2);
	--jr-c-accent: var(--wp--preset--color--teal, #20b6aa);
	bottom: clamp(.75rem, 2vw, 1.5rem);
	left: 50%;
	max-width: calc(100% - 1.5rem);
	position: fixed;
	transform: translateX(-50%);
	width: 64rem;
	z-index: 100000;
}
.jr-consent[hidden] { display: none; }
.jr-consent__inner {
	align-items: center;
	background: var(--jr-c-bg);
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 12px;
	box-shadow: 0 18px 50px rgba(9, 20, 30, .35);
	color: var(--jr-c-text);
	display: grid;
	font-size: .875rem;
	gap: 1rem 1.5rem;
	grid-template-columns: 1fr auto;
	line-height: 1.55;
	padding: 1.25rem 1.5rem;
}
.jr-consent p { margin: 0; }
.jr-consent__title { font-size: 1rem; font-weight: 600; margin-bottom: .25rem !important; }
.jr-consent__text p:not(.jr-consent__title) { color: var(--jr-c-muted); }
.jr-consent a { color: var(--jr-c-text); text-decoration: underline; text-underline-offset: 2px; }
.jr-consent__prefs { grid-column: 1 / -1; }
.jr-consent__prefs[hidden] { display: none; }
.jr-consent fieldset { border: 0; display: grid; gap: .5rem; margin: 0; padding: 0; }
.jr-consent__opt { align-items: flex-start; background: var(--jr-c-raised); border-radius: 8px; cursor: pointer; display: flex; gap: .75rem; padding: .75rem 1rem; }
.jr-consent__opt span { color: var(--jr-c-muted); }
.jr-consent__opt strong { color: var(--jr-c-text); display: block; font-weight: 600; }
.jr-consent__opt input { accent-color: var(--jr-c-accent); flex: none; height: 1.1rem; margin-top: .15rem; width: 1.1rem; }
.jr-consent__actions { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-end; }
.jr-consent__prefs:not([hidden]) ~ .jr-consent__actions { grid-column: 1 / -1; }
.jr-consent__btn {
	border: 1px solid transparent;
	border-radius: 6px;
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	line-height: 1.2;
	padding: .7rem 1.1rem;
	white-space: nowrap;
}
.jr-consent__btn[hidden] { display: none; }
/* Accept and Reject are equally prominent. */
.jr-consent__btn--primary { background: var(--jr-c-accent); color: var(--jr-c-bg); }
.jr-consent__btn--primary:hover { filter: brightness(1.08); }
.jr-consent__btn--ghost { background: transparent; border-color: rgba(255, 255, 255, .35); color: var(--jr-c-text); }
.jr-consent__btn--ghost:hover { border-color: var(--jr-c-text); }
.jr-consent__btn:focus-visible, .jr-consent a:focus-visible, .jr-consent input:focus-visible { outline: 2px solid var(--jr-c-accent); outline-offset: 2px; }
@media (max-width: 781px) {
	.jr-consent__inner { grid-template-columns: 1fr; padding: 1rem; }
	.jr-consent__actions { justify-content: stretch; }
	.jr-consent__btn { flex: 1 1 auto; }
}
@media print { .jr-consent { display: none !important; } }
