.msc-unified-login-layout {
	width: 100%;
	margin: 0 auto;
}

.msc-unified-login-layout__column {
	width: min(100%, 680px);
	max-width: 680px;
	margin: 0 auto;
	float: none;
}

.msc-unified-login {
	--msc-unified-login-bg: var(--theme-palette-color-8, var(--wp--preset--color--base, #f6f7f8));
	--msc-unified-login-panel-bg: var(--theme-palette-color-8, var(--wp--preset--color--base-2, #ffffff));
	--msc-unified-login-border: var(--theme-palette-color-6, var(--wp--preset--color--contrast-4, #c7ccd1));
	--msc-unified-login-text: var(--theme-palette-color-3, var(--wp--preset--color--contrast, #1d2327));
	--msc-unified-login-muted: var(--theme-palette-color-5, var(--wp--preset--color--contrast-3, #5f6a72));
	margin: 0;
	padding: 0;
	color: var(--msc-unified-login-text);
}

/*
 * Genau eine Karte für beide Schritte. Sie wächst nach unten, sobald der
 * zweite Schritt erscheint — Adresse und Passwort gehören zu einem Vorgang
 * und sollen nicht in zwei getrennten Kästen stehen. Bis 0.82.2 trug jeder
 * Schritt seine eigene Karte, mit dem Panel als drittem Rahmen darin.
 */
.msc-unified-login__card {
	margin: 0;
	padding: 22px;
	background: var(--msc-unified-login-bg);
	border: 1px solid var(--msc-unified-login-border);
	border-radius: 12px;
}

/* Innen keine eigenen Rahmen mehr — die Karte umschliesst beides. */
.msc-unified-login__identify-form,
.msc-unified-login__panel {
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
	border-radius: 0;
}

.msc-unified-login__identify-error {
	margin: 12px 0 0;
	color: #8a2424;
	font-size: 0.95rem;
}

.msc-unified-login__alt-actions {
	margin: 16px 0 0;
}

.msc-unified-login__divider {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	color: var(--msc-unified-login-muted);
	font-size: 0.92rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.msc-unified-login__divider::before,
.msc-unified-login__divider::after {
	content: "";
	height: 1px;
	flex: 1;
	background: var(--msc-unified-login-border);
}

.msc-unified-login__social {
	margin: 14px 0 0;
}

/*
 * Der zweite Schritt sitzt in derselben Karte. Statt eines eigenen Rahmens
 * trennt ihn eine Haarlinie über die volle Kartenbreite vom Adressfeld —
 * genug, um zwei Schritte zu unterscheiden, ohne einen zweiten Kasten
 * aufzumachen. Die Negativ-Ränder holen die Linie über den Innenabstand der
 * Karte hinaus bis an deren Kanten.
 */
.msc-unified-login__step-two {
	margin: 18px -22px 0;
	padding: 18px 22px 0;
	border-top: 1px solid var(--msc-unified-login-border);
}

/* Leer und ausgeblendet: keine Linie, kein Abstand ins Nichts. */
.msc-unified-login__step-two[hidden] {
	display: none;
}

.msc-unified-login__step-heading {
	margin: 0 0 14px;
	font-size: 1.14rem;
	line-height: 1.35;
}

.msc-unified-login__step-text,
.msc-unified-login__step-email {
	margin: 0 0 10px;
	color: var(--msc-unified-login-text);
}

.msc-unified-login__step-email {
	font-weight: 600;
}

.msc-unified-login__helper-links {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	margin: 10px 0 0;
	font-size: 0.95rem;
}

/* Passwortfeld mit Sichtbarkeits-Schalter («Auge»).
 *
 * Der Knopf sitzt IM Feld; damit die Eingabe nicht darunterlaeuft, bekommt
 * das Feld rechts Platz. Das `!important` ist eng begrenzt und noetig, weil
 * Themes Formularfelder gern pauschal ueberschreiben - dieselbe Erfahrung
 * wie bei der «Angemeldet bleiben»-Zeile weiter unten.
 *
 * Sichtbar wird der Knopf erst, wenn das Skript ihn freigeschaltet hat
 * (Klasse --bereit) - ohne JavaScript soll da kein toter Knopf stehen. */
.msc-unified-login__pw {
	position: relative;
	display: block;
	width: 100%;
}

.msc-unified-login__pw .input-text {
	width: 100%;
	padding-right: 2.75rem !important;
}

.msc-unified-login__pw-toggle {
	position: absolute;
	top: 50%;
	right: 0.25rem;
	transform: translateY(-50%);
	display: none;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: none;
	color: inherit;
	opacity: 0.6;
	cursor: pointer;
	line-height: 0;
}

.msc-unified-login__pw--bereit .msc-unified-login__pw-toggle {
	display: inline-flex;
}

.msc-unified-login__pw-toggle:hover,
.msc-unified-login__pw-toggle:focus-visible {
	opacity: 1;
}

/* Das Plugin wehrt sich selbst: Die globale Fokus-Regel des Themes legt
 * sonst ein eckiges Rechteck um den runden Knopf (Projekt-Reibungspunkt). */
.msc-unified-login__pw-toggle:focus-visible {
	outline: 2px solid currentColor !important;
	outline-offset: 2px !important;
	border-radius: 999px !important;
}

/* Gezeigt wird immer das Symbol der NAECHSTEN Handlung. */
.msc-unified-login__pw-icon--hide,
.msc-unified-login__pw-toggle[aria-pressed="true"] .msc-unified-login__pw-icon--show {
	display: none;
}

.msc-unified-login__pw-toggle[aria-pressed="true"] .msc-unified-login__pw-icon--hide {
	display: block;
}

/* «Angemeldet bleiben»: Checkbox und Text als EINE Zeile - verteidigt gegen
 * Theme-Regeln, die Formularfelder pauschal auf 100 % Breite ziehen (real
 * passiert 2026-08-18 mit der Login-Regel des Modern-Natura-Themes; die
 * Reibungspunkt-Regel des Projekts: das Plugin wehrt sich selbst, eng
 * begrenzt auf die eigenen Elemente). */
.msc-unified-login .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.msc-unified-login .woocommerce-form-login__rememberme input[type="checkbox"] {
	width: auto !important;
	flex: 0 0 auto;
	margin: 0;
}

.msc-unified-login__helper-links a {
	text-decoration: underline;
}

@media (max-width: 640px) {
	.msc-unified-login__card {
		padding: 16px;
	}

	.msc-unified-login__step-two {
		margin-inline: -16px;
		padding-inline: 16px;
	}

	.msc-unified-login__helper-links {
		flex-direction: column;
		gap: 8px;
	}
}
