body:has(section.for-login) {
	background:
		radial-gradient(circle at 15% 10%, rgba(18, 125, 219, .09), transparent 32%),
		radial-gradient(circle at 85% 85%, rgba(10, 158, 116, .08), transparent 34%),
		var(--bg-color);
}

section.for-login .login-content.page-card,
section.for-forgot .login-content.page-card {
	max-width: 470px;
	padding: 26px 30px 30px;
	border: 1px solid var(--border-color);
	border-radius: 20px;
	background: var(--card-bg);
	box-shadow: 0 18px 55px rgba(15, 23, 42, .1);
}

section.for-login .page-card-head,
section.for-forgot .page-card-head {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 26px;
	text-align: center;
}

section.for-login .page-card-head .app-logo,
section.for-forgot .page-card-head .app-logo {
	width: 100%;
	height: 100%;
	max-width: 264px;
	max-height: 88px;
	margin: 0;
	object-fit: contain;
}

.sdw-login-logo-plaque {
	display: flex;
	align-items: center;
	justify-content: center;
	width: min(288px, 100%);
	height: 108px;
	padding: 10px 12px;
	margin: 0 auto 15px;
	border: 0;
	border-radius: 0;
	background: transparent;
}

section.for-login .page-card-head h4.sdw-login-workspace-name {
	margin: 0 0 22px;
	max-width: 100%;
	font-size: 38px;
	line-height: 1.15;
	font-weight: 750;
	overflow-wrap: anywhere;
}

section.for-login .page-card-head-text,
section.for-forgot .page-card-head-text {
	width: 100%;
}

section.for-login .page-card-head h4,
section.for-forgot .page-card-head h4 {
	margin: 0 0 7px;
	font-size: 28px;
	font-weight: 750;
	letter-spacing: -.02em;
}

section.for-login .page-card-subtitle,
section.for-forgot .page-card-subtitle {
	max-width: 340px;
	margin: 0 auto;
	color: var(--text-muted);
	font-size: 14px;
	line-height: 1.45;
}

section.for-login .page-card-subtitle.sdw-login-tagline {
	display: flex;
	max-width: 380px;
	flex-direction: column;
	align-items: center;
	gap: 7px;
	color: #28323d;
	font-family: "Arial Narrow", "Roboto Condensed", "Segoe UI", sans-serif;
	line-height: 1.15;
	text-transform: uppercase;
}

.sdw-login-tagline-primary {
	font-size: 13px;
	font-weight: 750;
	letter-spacing: .16em;
}

.sdw-login-tagline-secondary {
	color: #6f7883;
	font-size: 10.5px;
	font-weight: 650;
	letter-spacing: .13em;
	text-transform: none;
}

.sdw-login-tagline-divider {
	position: relative;
	width: 82px;
	height: 1px;
	background: linear-gradient(90deg, transparent, #8f9aa5 25%, #168bd0 50%, #8f9aa5 75%, transparent);
}

.sdw-login-tagline-divider::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 5px;
	height: 5px;
	border: 1px solid #168bd0;
	background: var(--card-bg);
	content: "";
	transform: translate(-50%, -50%) rotate(45deg);
}

section.for-login .form-label {
	font-weight: 600;
}

section.for-login .field-icon {
	color: var(--text-muted);
}

section.for-login .page-card-actions .sdw-login-submit {
	height: 44px;
	margin-top: 8px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 650;
}

section.for-login .btn-ldap-login,
section.for-login .btn-login-with-email-link,
section.for-email-login,
section.for-login-with-email-link {
	display: none !important;
}

.sdw-trusted-browser-option {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 14px 0 2px;
	padding: 11px 12px;
	border: 1px solid rgba(22, 139, 208, .22);
	border-radius: 10px;
	background: rgba(22, 139, 208, .06);
	cursor: pointer;
	text-align: left;
}

.sdw-trusted-browser-option input {
	width: 17px;
	height: 17px;
	margin: 2px 0 0;
	accent-color: #168bd0;
}

.sdw-trusted-browser-option span,
.sdw-trusted-browser-option strong,
.sdw-trusted-browser-option small {
	display: block;
}

.sdw-trusted-browser-option strong {
	color: var(--text-color);
	font-size: 13px;
}

.sdw-trusted-browser-option small {
	margin-top: 3px;
	color: var(--text-muted);
	font-size: 11px;
	line-height: 1.35;
}

.sdw-trusted-browser-option.is-disabled {
	border-color: var(--border-color);
	background: var(--subtle-fg);
	cursor: not-allowed;
}

.sdw-forgot-note {
	margin: 8px 0 22px;
	padding: 18px 20px;
	border: 1px solid rgba(18, 125, 219, .2);
	border-radius: 12px;
	background: rgba(18, 125, 219, .07);
	text-align: center;
}

.sdw-forgot-note strong {
	display: block;
	margin-bottom: 7px;
}

.sdw-forgot-note p {
	margin: 0;
	color: var(--text-muted);
	line-height: 1.5;
}

.sdw-login-2fa-heading {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	text-align: left;
}

.sdw-login-2fa-heading>div,
.sdw-login-2fa-heading strong,
.sdw-login-2fa-heading small {
	display: block;
}

.sdw-login-2fa-heading strong {
	color: var(--text-color);
	font-size: 20px;
	line-height: 1.2;
}

.sdw-login-2fa-heading small {
	margin-top: 3px;
	color: #b54708;
	font-size: 12px;
}

.sdw-login-2fa-mark {
	display: grid;
	width: 48px;
	height: 48px;
	flex: 0 0 48px;
	place-items: center;
	border: 1px solid rgba(18, 125, 219, .18);
	border-radius: 14px;
	background: rgba(18, 125, 219, .08);
	box-shadow: 0 8px 20px rgba(22, 139, 208, .14);
}

.sdw-login-2fa-mark svg {
	display: block;
	width: 34px;
	height: 34px;
}

.sdw-login-2fa-enrollment {
	text-align: left;
}

.sdw-login-2fa-enrollment>p {
	margin: 0 0 12px;
	color: var(--text-muted);
	font-size: 13px;
	line-height: 1.45;
}

.sdw-login-2fa-qr {
	display: grid;
	width: 188px;
	height: 188px;
	margin: 0 auto 13px;
	place-items: center;
	border: 1px solid rgba(22, 139, 208, .22);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
}

.sdw-login-2fa-qr img {
	width: 168px;
	height: 168px;
}

.sdw-login-2fa-enrollment ol {
	margin: 0 0 14px;
	padding: 10px 12px 10px 31px;
	border-radius: 10px;
	color: var(--text-muted);
	background: rgba(22, 139, 208, .06);
	font-size: 12px;
	line-height: 1.55;
}

.form-verify #login_token {
	height: 44px;
	text-align: center;
	letter-spacing: .18em;
	font-size: 18px;
}

.form-verify #verify_token {
	height: 44px;
	border-radius: 10px;
}

.sdw-login-2fa-decline {
	display: block;
	margin: 8px auto 0;
	color: var(--text-muted);
}

@media (max-width: 575px) {
	section.for-login .login-content.page-card,
	section.for-forgot .login-content.page-card {
		min-height: 0;
		margin: 14px auto;
		padding: 20px 18px 24px;
		border-radius: 16px;
	}

	section.for-login .page-card-head .app-logo,
	section.for-forgot .page-card-head .app-logo {
		max-height: 72px;
	}
	.sdw-login-logo-plaque {height: 92px; width: min(264px, 100%);}
	section.for-login .page-card-head h4.sdw-login-workspace-name {font-size: 32px; margin-bottom: 19px;}

	.sdw-login-tagline-primary {
		font-size: 12px;
		letter-spacing: .12em;
	}

	.sdw-login-tagline-secondary {
		font-size: 10px;
		letter-spacing: .1em;
	}

	.sdw-login-2fa-qr {
		width: 168px;
		height: 168px;
	}

	.sdw-login-2fa-qr img {
		width: 150px;
		height: 150px;
	}
}

.sdw-login-tagline-primary { text-transform: none; letter-spacing: .02em; overflow-wrap: anywhere; }
.sdw-login-tagline-secondary { text-transform: none; letter-spacing: .025em; overflow-wrap: anywhere; }
