.sytec-privacy-consent {
	position: fixed;
	inset: 0;
	z-index: var(--sytec-privacy-banner-z-index, 999999);
	display: grid;
	place-items: end center;
	padding: 1rem;
	background: var(--sytec-privacy-overlay-bg, rgba(15, 23, 42, .48));
	font-family: var(--sytec-privacy-font-family, inherit);
}

.sytec-privacy-consent--center { place-items: center; }
.sytec-privacy-consent--top-center { place-items: start center; }
.sytec-privacy-consent--top-left { place-items: start; }
.sytec-privacy-consent--top-right { place-items: start end; }
.sytec-privacy-consent--bottom-left { place-items: end start; }
.sytec-privacy-consent--bottom-right { place-items: end; }

.sytec-privacy-consent[hidden],
.sytec-privacy-consent [hidden],
.sytec-privacy-reopen[hidden] { display: none !important; }

.sytec-privacy-banner,
.sytec-privacy-preferences {
	width: min(var(--sytec-privacy-banner-width, 760px), 100%);
	max-width: var(--sytec-privacy-banner-max-width, 760px);
	max-height: calc(100vh - 2rem);
	overflow: auto;
	padding: var(--sytec-privacy-banner-padding, 1.25rem);
	color: var(--sytec-privacy-text-color, #172033);
	background: var(--sytec-privacy-surface-bg, #fff);
	border: 1px solid var(--sytec-privacy-border-color, #dbe2ea);
	border-radius: var(--sytec-privacy-radius, 16px);
	box-shadow: var(--sytec-privacy-shadow, 0 24px 64px rgba(15, 23, 42, .2));
}

.sytec-privacy-consent .sytec-privacy-banner h2,
.sytec-privacy-consent .sytec-privacy-preferences h2 { margin: 0 0 .5rem; color: var(--sytec-privacy-text-color, #172033); font-size: 1.25rem; }
.sytec-privacy-consent .sytec-privacy-banner > p,
.sytec-privacy-consent .sytec-privacy-preferences > p { color: var(--sytec-privacy-muted-color, #526273); }
.sytec-privacy-consent[data-sytec-privacy-root] section.sytec-privacy-banner > p,
.sytec-privacy-consent[data-sytec-privacy-root] section.sytec-privacy-preferences > p { color: var(--sytec-privacy-muted-color, #526273); }
.sytec-privacy-banner a,
.sytec-privacy-preferences a { color: var(--sytec-privacy-link-color, #236c4f); }
.sytec-privacy-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: var(--sytec-privacy-banner-gap, .625rem); margin-top: 1rem; }
.sytec-privacy-actions button,
.sytec-privacy-reopen { min-height:var(--sytec-privacy-button-height,auto);padding: .65rem .9rem; color: var(--sytec-privacy-secondary-color,#17364c); background: var(--sytec-privacy-secondary-bg,#fff); border: 1px solid var(--sytec-privacy-secondary-border,#315b78); border-radius: min(var(--sytec-privacy-radius,16px),8px); font: inherit; cursor: pointer; }
.sytec-privacy-actions .sytec-privacy-button--primary{color:var(--sytec-privacy-primary-color,#fff);background:var(--sytec-privacy-primary-bg,#17364c);border-color:var(--sytec-privacy-primary-border,#17364c)}
.sytec-privacy-actions .sytec-privacy-button--primary:hover{color:var(--sytec-privacy-primary-hover-color,#fff);background:var(--sytec-privacy-primary-hover-bg,#0f2738);border-color:var(--sytec-privacy-primary-hover-border,#0f2738)}
.sytec-privacy-actions .sytec-privacy-button--secondary{color:var(--sytec-privacy-secondary-color,#17364c);background:var(--sytec-privacy-secondary-bg,#fff);border-color:var(--sytec-privacy-secondary-border,#315b78)}
.sytec-privacy-actions .sytec-privacy-button--secondary:hover{color:var(--sytec-privacy-secondary-hover-color,#17364c);background:var(--sytec-privacy-secondary-hover-bg,#eef4f8);border-color:var(--sytec-privacy-secondary-hover-border,#17364c)}
.sytec-privacy-actions .sytec-privacy-button--tertiary{color:var(--sytec-privacy-text-color,#172033);background:transparent;border-color:transparent}
.sytec-privacy-actions button:focus-visible,.sytec-privacy-reopen:focus-visible,.sytec-privacy-placeholder button:focus-visible{outline:3px solid var(--sytec-privacy-focus-color,#5aa7d8);outline-offset:2px}.sytec-privacy-actions button:disabled{opacity:.6;cursor:not-allowed}
.sytec-privacy-category{padding:.8rem 0;border-top:1px solid var(--sytec-privacy-border-color,#dbe2ea)}.sytec-privacy-preferences label { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.sytec-privacy-preferences label span,
.sytec-privacy-preferences label small { display: block; }
.sytec-privacy-preferences label small { margin-top: .2rem; color: var(--sytec-privacy-muted-color,#526273); }
.sytec-privacy-category details{margin:.65rem 0 0;padding:.5rem .75rem;background:#f4f7fa;border-radius:8px}.sytec-privacy-category summary{cursor:pointer;font-weight:600}.sytec-privacy-category ul{margin:.5rem 0 0 1.25rem}.sytec-privacy-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}
.sytec-privacy-feedback { min-height: 1.4em; color: #a23425; }
.sytec-privacy-reopen { position: fixed; left: 1rem; bottom: 1rem; z-index: calc(var(--sytec-privacy-banner-z-index,999999) - 1); box-shadow: 0 8px 24px rgba(15, 23, 42, .15); }
.sytec-privacy-placeholder,.sytec-privacy-account{box-sizing:border-box;padding:1.25rem;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc;color:#172033}.sytec-privacy-placeholder button{padding:.65rem .9rem;border:1px solid #315b78;border-radius:8px;background:#fff;color:#17364c;font:inherit;cursor:pointer}.sytec-privacy-account{max-width:900px}.sytec-privacy-account dl{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;gap:.4rem 1rem}.sytec-privacy-account dt{font-weight:700}.sytec-privacy-account dd{margin:0}.sytec-privacy-account ol{padding-left:1.4rem}

@media (max-width: 600px) {
	.sytec-privacy-consent { padding: 0; place-items: end stretch; }
	.sytec-privacy-banner,
	.sytec-privacy-preferences { max-height: 90vh; border-radius: var(--sytec-privacy-radius,16px) var(--sytec-privacy-radius,16px) 0 0; }
	.sytec-privacy-actions { display: grid; }
	.sytec-privacy-actions button { width: 100%; }
	.sytec-privacy-account dl{grid-template-columns:1fr}.sytec-privacy-account dd{margin-bottom:.5rem}
}
