/* Cookietrix cookie banner */
.cookietrix-banner {
	--cookietrix-accent: #2563eb;
	position: fixed;
	z-index: 2147483000;
	font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: #1f2329;
	box-sizing: border-box;
}
.cookietrix-banner *, .cookietrix-banner *::before, .cookietrix-banner *::after { box-sizing: border-box; }
.cookietrix-banner--bottom { left: 16px; right: 16px; bottom: calc(16px + var(--cookietrix-lift, 0px)); display: flex; justify-content: center; }
.cookietrix-banner--bottom-left { left: 16px; bottom: calc(16px + var(--cookietrix-lift, 0px)); max-width: 420px; }
.cookietrix-banner--center { inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(15, 23, 42, .45); padding: 16px; }
.cookietrix-banner__box {
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 12px 40px rgba(15, 23, 42, .22);
	padding: 20px 22px;
	width: 100%;
	max-width: 760px;
	max-height: calc(100vh - 32px);
	overflow: auto;
}
.cookietrix-banner__title { font-size: 16px; font-weight: 700; margin: 0 0 6px; }
.cookietrix-banner__text { margin: 0 0 12px; color: #3b4351; }
.cookietrix-banner__text a { color: var(--cookietrix-accent); text-decoration: underline; }
.cookietrix-banner__cats { display: grid; gap: 8px; margin: 0 0 14px; }
.cookietrix-banner__cats[hidden] { display: none; }
.cookietrix-cat { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid #e5e7eb; border-radius: 10px; cursor: pointer; }
.cookietrix-cat input { margin-top: 3px; accent-color: var(--cookietrix-accent); width: 16px; height: 16px; flex: none; }
.cookietrix-cat b { display: block; font-weight: 600; }
.cookietrix-cat__desc { display: block; color: #6b7280; font-size: 13px; }
.cookietrix-banner__actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.cookietrix-btn {
	appearance: none;
	border: 1px solid #d1d5db;
	background: #fff;
	color: #1f2329;
	border-radius: 8px;
	padding: 9px 16px;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	min-width: 150px;
}
.cookietrix-btn:hover { background: #f3f4f6; }
.cookietrix-btn--primary { background: var(--cookietrix-accent); border-color: var(--cookietrix-accent); color: #fff; }
.cookietrix-btn--primary:hover { background: var(--cookietrix-accent); filter: brightness(.92); }
.cookietrix-btn--link { border-color: transparent; color: var(--cookietrix-accent); min-width: 0; }
.cookietrix-btn:focus-visible, .cookietrix-reopen:focus-visible, .cookietrix-embed__btn:focus-visible { outline: 2px solid var(--cookietrix-accent); outline-offset: 2px; }
.cookietrix-reopen {
	position: fixed;
	left: 16px;
	bottom: calc(16px + var(--cookietrix-lift, 0px));
	z-index: 2147482000;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 0;
	background: #fff;
	color: var(--cookietrix-accent, #2563eb);
	box-shadow: 0 4px 14px rgba(15, 23, 42, .2);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}
.cookietrix-reopen[hidden] { display: none; }
.cookietrix-embed {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f3f4f6;
	border: 1px dashed #cbd5e1;
	border-radius: 10px;
	padding: 20px;
	margin: 0 0 1em;
	text-align: center;
	font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: #374151;
}
.cookietrix-embed template { display: none; }
.cookietrix-embed__inner p { margin: 0 0 10px; }
.cookietrix-embed__btn { appearance: none; border: 0; border-radius: 8px; padding: 9px 16px; background: #1f2937; color: #fff; font: inherit; font-weight: 600; cursor: pointer; }
.cookietrix-consent { margin: 0 0 12px; font-size: 14px; }
.cookietrix-consent label { display: inline-flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.cookietrix-consent input { margin-top: 4px; }
@media (max-width: 600px) {
	.cookietrix-banner--bottom, .cookietrix-banner--bottom-left { left: 8px; right: 8px; bottom: calc(8px + var(--cookietrix-lift, 0px)); max-width: none; }
	.cookietrix-btn { flex: 1 1 100%; }
}
