.dscc-root {
	--dscc-navy: #150052;
	--dscc-blue: #150052;
	--dscc-yellow: #ffcd2a;
	--dscc-text: #1b2230;
	--dscc-muted: #667085;
	--dscc-border: #d7e0ef;
	--dscc-banner-text: #fff;
	--dscc-banner-font-size: 16px;
	--dscc-accept-bg: #ffcd2a;
	--dscc-accept-color: #111;
	--dscc-reject-bg: #fff;
	--dscc-reject-color: #111;
	--dscc-preferences-bg: #fff;
	--dscc-preferences-color: #111;
	--dscc-button-radius: 4px;
	font-family: inherit;
}

.dscc-floating-button,
.dscc-inline-button,
.dscc-button {
	border: 0;
	border-radius: 6px;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	letter-spacing: 0;
}

.dscc-floating-button {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 900001;
	padding: 12px 16px;
	background: var(--dscc-navy);
	color: #fff;
	box-shadow: 0 12px 30px rgba(4, 25, 78, 0.25);
}

.dscc-consent {
	position: fixed;
	z-index: 900001;
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 15px 20px;
	border: 0;
	border-radius: 10px;
	background: var(--dscc-navy);
	color: var(--dscc-banner-text);
	box-shadow: rgba(0, 0, 0, 0.19) 0 10px 20px, rgba(0, 0, 0, 0.23) 0 6px 6px;
	font-size: var(--dscc-banner-font-size);
	line-height: 1.4;
}

.dscc-consent[hidden] {
	display: none;
}

.dscc-consent--long {
	left: 0;
	right: 0;
	max-width: none;
	justify-content: center;
	padding: 10px 24px;
	border-radius: 0;
	box-shadow: none;
	gap: 16px;
}

.dscc-consent--box {
	width: min(440px, calc(100vw - 32px));
	display: grid;
}

.dscc-consent--modal {
	top: 50%;
	left: 50%;
	width: min(560px, calc(100vw - 32px));
	display: grid;
	transform: translate(-50%, -50%);
}

.dscc-consent--top {
	top: 0;
}

.dscc-consent--bottom {
	bottom: 0;
}

.dscc-consent--bottom-left {
	left: 10px;
	bottom: 10px;
}

.dscc-consent--bottom-right {
	right: 10px;
	bottom: 10px;
}

.dscc-consent--center {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.dscc-consent__body {
	min-width: 0;
}

.dscc-consent__body h2 {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
	padding: 0;
	color: #fff;
	font-size: 16px;
	line-height: 1.25;
}

.dscc-consent__body p {
	margin: 0;
	color: var(--dscc-banner-text);
	line-height: 1.4;
	font-size: var(--dscc-banner-font-size);
}

.dscc-consent__policy {
	display: inline-block;
	margin-top: 8px;
	color: var(--dscc-blue);
	font-weight: 700;
}

.dscc-consent__actions {
	display: flex;
	flex: 0 0 auto;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

.dscc-consent--long .dscc-consent__body {
	width: auto;
	max-width: 900px;
	text-align: center;
}

.dscc-consent--long .dscc-consent__actions {
	align-items: center;
}

.dscc-consent--long .dscc-button {
	min-width: 0;
	height: 45px;
	min-height: 45px;
	padding: 10px;
	font-size: 15px;
	line-height: 1.2;
	border-radius: var(--dscc-button-radius);
}

.dscc-consent--long.dscc-button-size-small .dscc-button {
	height: 30px;
	min-height: 30px;
	padding: 5px 10px;
	font-size: 14px;
}

.dscc-consent--long.dscc-button-size-large .dscc-button {
	height: 60px;
	min-height: 60px;
	padding: 10px 20px;
	font-size: 18px;
}

.dscc-consent--box .dscc-consent__body h2,
.dscc-consent--modal .dscc-consent__body h2 {
	position: static;
	width: auto;
	height: auto;
	margin: 0 0 8px;
	overflow: visible;
	clip: auto;
	white-space: normal;
	font-size: 20px;
}

.dscc-inline-button {
	padding: 10px 14px;
	background: var(--dscc-navy);
	color: #fff;
}

.dscc-panel[hidden] {
	display: none;
}

.dscc-panel {
	position: fixed;
	inset: 0;
	z-index: 900002;
	display: grid;
	place-items: center;
	padding: 18px;
	background: rgba(8, 12, 22, 0.58);
}

.dscc-panel__dialog {
	position: relative;
	width: min(620px, 100%);
	max-height: min(720px, calc(100vh - 36px));
	overflow: auto;
	padding: 26px;
	border-radius: 8px;
	background: #fff;
	color: var(--dscc-text);
	box-shadow: 0 28px 80px rgba(4, 25, 78, 0.34);
}

.dscc-panel__dialog h2 {
	margin: 0 0 10px;
	color: var(--dscc-navy);
	font-size: 26px;
	line-height: 1.2;
}

.dscc-panel__dialog p {
	margin: 0 0 16px;
	color: var(--dscc-muted);
}

.dscc-panel__close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 34px;
	height: 34px;
	border: 1px solid var(--dscc-border);
	border-radius: 6px;
	background: #f8fbff;
	color: var(--dscc-navy);
	cursor: pointer;
	font-size: 18px;
	line-height: 1;
}

.dscc-panel__categories {
	display: grid;
	gap: 12px;
	margin: 18px 0;
}

.dscc-choice {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 16px;
	border: 1px solid var(--dscc-border);
	border-radius: 8px;
	background: #f8fbff;
}

.dscc-choice strong,
.dscc-choice small {
	display: block;
}

.dscc-choice strong {
	margin-bottom: 4px;
	color: var(--dscc-navy);
}

.dscc-choice small {
	color: var(--dscc-muted);
	line-height: 1.45;
}

.dscc-choice input {
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	accent-color: var(--dscc-blue);
}

.dscc-panel__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
	margin-top: 20px;
}

.dscc-button {
	padding: 11px 14px;
	border-radius: var(--dscc-button-radius);
	line-height: 1.2;
	font-size: 15px;
}

.dscc-button--primary {
	background: var(--dscc-accept-bg);
	color: var(--dscc-accept-color);
}

.dscc-button--secondary {
	background: var(--dscc-preferences-bg);
	color: var(--dscc-preferences-color);
}

.dscc-button--ghost {
	background: var(--dscc-reject-bg);
	color: var(--dscc-reject-color);
}

.dscc-button-type-outlined .dscc-button {
	background: transparent;
	border: 1px solid currentColor;
}

.dscc-button-type-outlined .dscc-button--primary {
	color: var(--dscc-accept-bg);
}

.dscc-button-type-outlined .dscc-button--secondary {
	color: var(--dscc-preferences-bg);
}

.dscc-button-type-outlined .dscc-button--ghost {
	color: var(--dscc-reject-bg);
}

.dscc-panel__status {
	min-height: 20px;
	margin: 14px 0 0 !important;
	color: var(--dscc-blue) !important;
	font-weight: 700;
}

@media (max-width: 560px) {
	.dscc-consent {
		left: 0;
		right: 0;
		display: grid;
		width: auto;
	}

	.dscc-consent--top {
		top: 0;
	}

	.dscc-consent--bottom,
	.dscc-consent--bottom-left,
	.dscc-consent--bottom-right {
		bottom: 0;
	}

	.dscc-consent--modal,
	.dscc-consent--center {
		left: 0;
		right: 0;
		width: auto;
		transform: translateY(-50%);
	}

	.dscc-consent__actions {
		display: grid;
		justify-content: stretch;
	}

	.dscc-floating-button {
		right: 12px;
		bottom: 12px;
	}

	.dscc-panel__dialog {
		padding: 22px 18px;
	}

	.dscc-choice,
	.dscc-panel__actions {
		display: grid;
	}

	.dscc-panel__actions {
		justify-content: stretch;
	}
}
