/* Mobile-first login, logout and registration screens. */
.ma-auth-hero {
	display: grid;
	align-content: start;
	gap: 16px;
}

.ma-auth-hero h2 {
	max-width: 620px;
}

.ma-auth-hero p {
	margin: 0;
}

.ma-auth-steps {
	margin-top: 4px;
}

.ma-auth-card {
	align-self: start;
	border-top: 4px solid var(--ma-primary);
}

.ma-login-form .ma-form-actions,
.ma-register-form .ma-form-actions {
	margin-top: 4px;
	padding-top: 20px;
	border-top: 1px solid var(--ma-line);
}

.ma-password-control {
	position: relative;
	display: flex;
	align-items: stretch;
}

.ma-password-control input {
	flex: 1;
	min-width: 0;
	padding-right: 80px;
}

.ma-password-toggle {
	position: absolute;
	top: 50%;
	right: 4px;
	transform: translateY(-50%);
	min-width: 64px;
	min-height: 44px;
	padding: 8px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: var(--ma-ink);
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.ma-password-toggle:hover {
	background: var(--ma-soft);
}

@media (min-width: 900px) {
	.ma-auth-hero {
		gap: 24px;
	}

	.ma-auth-card .ma-button {
		min-width: 180px;
	}
}
