/*
 * Anmelde-Überlagerung für die Website (Klasse dup-login-open am Verweis).
 *
 * Eigene kleine Datei statt portal.css: Sie lädt auf JEDER Seite der Website,
 * portal.css nur auf der Portalseite. Die tragenden Regeln stehen ohne
 * body-Vorsatz - die Überlagerung hängt direkt am body.
 */

.dup-login-overlay {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 4vmin;
	background: rgba( 18, 19, 22, 0.62 );
}

.dup-login-overlay[hidden] {
	display: none;
}

/*
 * Die Karte selbst bleibt durchsichtig und darf überstehen lassen: Der
 * Schliessknopf sitzt auf ihrer Ecke, also ausserhalb. Weisser Grund und
 * runde Ecken liegen deshalb auf dem eingebetteten Rahmen darunter.
 *
 * Die Höhe setzt das Skript passend zum Inhalt; der Wert hier ist nur die
 * Vorgabe, bis gemessen ist bzw. wenn kein JavaScript misst.
 */
.dup-login-overlay__card {
	position: relative;
	width: min( 480px, 100% );
	height: min( 640px, 92vh );
	max-height: 92vh;
	transition: height 180ms ease;
}

@media ( prefers-reduced-motion: reduce ) {
	.dup-login-overlay__card {
		transition: none;
	}
}

.dup-login-overlay__close {
	position: absolute;
	top: -11px;
	right: -11px;
	z-index: 1;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 1px solid #e7e7ea;
	border-radius: 999px;
	background: #fff;
	color: #33353d;
	/* Exakt mittig: Raster statt Zeilenhoehe - das Malzeichen sitzt sonst
	 * je nach Schrift sichtbar zu hoch. */
	display: grid;
	place-items: center;
	font-size: 17px;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba( 0, 0, 0, 0.14 );
}

.dup-login-overlay__close:hover,
.dup-login-overlay__close:focus-visible {
	background: #f2f2f4;
}

.dup-login-overlay__close:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

.dup-login-overlay__frame {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 24px 80px rgba( 0, 0, 0, 0.35 );
}

/* Hinter der Überlagerung nicht scrollen. */
body.dup-login-overlay-open {
	overflow: hidden;
}

@media ( max-width: 540px ) {
	.dup-login-overlay {
		padding: 0;
	}

	.dup-login-overlay__card {
		width: 100%;
		height: 100%;
		max-height: none;
	}

	/* Auf kleinen Schirmen füllt die Karte alles - der Knopf wandert von der
	 * Ecke nach innen, sonst läge er ausserhalb des Bildes. */
	.dup-login-overlay__close {
		top: 10px;
		right: 10px;
		width: 32px;
		height: 32px;
		border: 0;
		background: rgba( 18, 19, 22, 0.06 );
		box-shadow: none;
	}

	.dup-login-overlay__close:focus-visible {
		outline: 2px solid #121316;
	}

	.dup-login-overlay__frame {
		border-radius: 0;
	}
}
