.sytd-discuz-sso-card {
	--sytd-sso-primary: #e6a23c;
	--sytd-sso-secondary: #f3b35b;
	--sytd-sso-ink: #25233a;
	--sytd-sso-muted: #77738c;
	box-sizing: border-box;
	width: 100%;
	max-width: 420px;
	margin: 18px auto 8px;
	padding: 26px 22px 20px;
	border: 1px solid rgba(230, 162, 60, 0.18);
	border-radius: 18px;
	background: linear-gradient(160deg, #ffffff 0%, #f8f6ff 100%);
	box-shadow: 0 16px 40px rgba(121, 78, 18, 0.13);
	color: var(--sytd-sso-ink);
	text-align: center;
}

body.sytd-discuz-sso-login-page {
	min-width: 0;
	min-height: 100vh;
	margin: 0 !important;
	background:
		radial-gradient(circle at 15% 20%, rgba(243, 179, 91, 0.2), transparent 34%),
		radial-gradient(circle at 86% 78%, rgba(230, 162, 60, 0.14), transparent 30%),
		linear-gradient(145deg, #f9f7f3 0%, #f5f2ed 100%);
	color: var(--sytd-sso-ink, #25233a);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif;
}

body.sytd-discuz-sso-login-page.night {
	background:
		radial-gradient(circle at 15% 20%, rgba(243, 179, 91, 0.12), transparent 34%),
		radial-gradient(circle at 86% 78%, rgba(230, 162, 60, 0.08), transparent 30%),
		#232323;
}

.sytd-discuz-sso-login-shell {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	padding: 32px 16px;
}

.sytd-discuz-sso-login-panel {
	width: 100%;
	max-width: 420px;
	text-align: center;
}

.sytd-discuz-sso-site-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	margin-bottom: 18px;
	color: #39364c !important;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none !important;
}

.sytd-discuz-sso-site-link:hover,
.sytd-discuz-sso-site-link:focus {
	color: #b8751e !important;
}

body.night .sytd-discuz-sso-site-link {
	color: #f3f1ff !important;
}

body.night .sytd-discuz-sso-site-link:hover,
body.night .sytd-discuz-sso-site-link:focus {
	color: #f3b35b !important;
}

.sytd-discuz-sso-login-panel > .sytd-discuz-sso-card {
	margin: 0 auto;
}

.sytd-discuz-sso-card *,
.sytd-discuz-sso-card *::before,
.sytd-discuz-sso-card *::after {
	box-sizing: border-box;
}

.sytd-discuz-sso-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	margin-bottom: 14px;
	border-radius: 17px;
	background: linear-gradient(135deg, var(--sytd-sso-primary), var(--sytd-sso-secondary));
	box-shadow: 0 10px 24px rgba(230, 162, 60, 0.28);
	color: #fff;
	font: 700 28px/1 Arial, sans-serif;
}

.sytd-discuz-sso-copy h2 {
	margin: 0 0 8px !important;
	padding: 0 !important;
	color: var(--sytd-sso-ink) !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
}

.sytd-discuz-sso-copy p,
.sytd-discuz-sso-note {
	margin: 0 !important;
	color: var(--sytd-sso-muted) !important;
	font-size: 13px !important;
	line-height: 1.7 !important;
}

.sytd-discuz-sso-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 46px;
	margin: 20px 0 12px;
	padding: 11px 16px;
	border: 0;
	border-radius: 10px;
	background: linear-gradient(135deg, var(--sytd-sso-primary), var(--sytd-sso-secondary));
	box-shadow: 0 10px 22px rgba(230, 162, 60, 0.26);
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

.sytd-discuz-sso-button:hover,
.sytd-discuz-sso-button:focus {
	box-shadow: 0 13px 28px rgba(230, 162, 60, 0.34);
	color: #fff !important;
	opacity: 0.96;
	transform: translateY(-1px);
}

.sytd-discuz-sso-button:focus-visible {
	outline: 3px solid rgba(230, 162, 60, 0.3);
	outline-offset: 3px;
}

.sytd-discuz-sso-shield {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border: 1px solid rgba(255, 255, 255, 0.7);
	border-radius: 50%;
	font-size: 12px;
	font-weight: 700;
}

.loginbox .loginPart #loginform > .input-item,
.loginbox .loginPart #loginform > .sign-tips2,
.loginbox .loginPart #loginform > .input-submit,
.loginbox .loginPart #loginform > .safe,
.loginbox .loginPart #loginform > .social-login {
	display: none !important;
}

.loginbox .part form.loginform > :not(.sytd-discuz-sso-card),
.loginbox .expend-container {
	display: none !important;
}

.loginbox .part form.loginform > .sytd-discuz-sso-card {
	display: block;
}

body.night .sytd-discuz-sso-card {
	--sytd-sso-ink: #f3f1ff;
	--sytd-sso-muted: #aaa4c2;
	border-color: rgba(243, 179, 91, 0.28);
	background: linear-gradient(160deg, #302d40 0%, #272434 100%);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.25);
}

body.login-action-login #loginform,
body.login-action-login #nav {
	display: none !important;
}

body.login #login {
	width: 420px;
	max-width: calc(100% - 32px);
}

body.login .sytd-discuz-sso-wp-login {
	max-width: 360px;
	margin-top: 18px;
}

@media (max-width: 480px) {
	.sytd-discuz-sso-login-shell {
		align-items: flex-start;
		padding-top: 9vh;
	}

	.sytd-discuz-sso-card {
		padding: 22px 18px 18px;
		border-radius: 14px;
	}

	.sytd-discuz-sso-copy h2 {
		font-size: 18px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.sytd-discuz-sso-button {
		transition: none;
	}
}
