/**
 * Cookie-Hinweis.
 *
 * Liegt unten am Rand und verdeckt die Seite nicht: Es gibt nichts zu
 * erzwingen, nur etwas zu entscheiden. Auf dem Telefon füllt die Fläche die
 * Breite, auf dem Desktop steht sie als Karte links unten.
 */

.apc {
	position: fixed;
	inset-block-end: 0;
	inset-inline: 0;
	z-index: 1200;
	padding: 14px;
	pointer-events: none;
}

.apc__box {
	pointer-events: auto;
	display: grid;
	gap: 14px;
	max-width: 560px;
	margin-inline: auto;
	padding: 18px 20px;
	background: #fff;
	border: 1px solid var(--ap-line);
	border-radius: var(--ap-r);
	box-shadow: var(--ap-shadow-lg);
	opacity: 0;
	transform: translateY(14px);
	transition: opacity .22s ease, transform .22s ease;
}

.apc.is-open .apc__box {
	opacity: 1;
	transform: none;
}

.apc__title {
	margin: 0 0 6px;
	font-weight: 700;
	font-size: 16.5px;
	color: var(--ap-ink);
}

.apc__body {
	margin: 0;
	font-size: 14.5px;
	line-height: 1.55;
	color: var(--ap-muted);
}

.apc__note {
	margin: 8px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--ap-muted);
}

.apc__note a {
	color: var(--ap-blue);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Beide Knöpfe gleich groß: Die Entscheidung soll in keine Richtung gedrängt
   werden. */
.apc__actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.apc__btn {
	width: 100%;
	height: 46px;
	min-width: 0;
	justify-content: center;
	font-size: 15px;
}

@media (max-width: 420px) {
	.apc__actions { grid-template-columns: 1fr; }
}

@media (min-width: 900px) {
	.apc {
		inset-inline-end: auto;
		padding: 22px;
	}
	.apc__box { margin-inline: 0; }
}

/* Widerruf in der Fußzeile – sieht aus wie die übrigen Rechtslinks. */
.site-footer__consent {
	appearance: none;
	background: none;
	border: 0;
	padding: 0;
	font-family: inherit;
	font-size: 15.5px;
	line-height: inherit;
	color: rgba(255, 255, 255, .84);
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.site-footer__consent:hover,
.site-footer__consent:focus-visible { color: #fff; }
