body.login {
	background:
		radial-gradient(circle at top left, rgba(245, 158, 11, 0.2), transparent 24%),
		linear-gradient(180deg, #fffdf7 0%, var(--tp-login-bg) 100%);
	font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
	min-height: 100vh;
	display: grid;
	place-items: center;
	padding: 24px;
	position: relative;
	overflow: hidden;
}

body.login::before {
	content: "";
	position: absolute;
	top: 24px;
	left: 50%;
	transform: translateX(-50%);
	width: min(68vw, 260px);
	height: min(68vw, 260px);
	background-image: var(--tp-login-visual);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: 0.95;
	pointer-events: none;
}

.login h1 a {
	background: none;
	width: auto;
	height: auto;
	text-indent: 0;
	font-size: 1.75rem;
	font-weight: 800;
	letter-spacing: -0.03em;
	color: #111827;
	text-align: left;
}

.login #login {
	width: min(100%, 420px);
	margin: 0;
	padding-top: 180px;
	position: relative;
	z-index: 1;
}

.login #loginform,
.login #lostpasswordform,
.login #registerform {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(255, 255, 255, 0.9);
	border-radius: 28px;
	box-shadow: 0 28px 80px rgba(17, 24, 39, 0.14);
	padding: 28px;
}

.login form .input,
.login input[type="text"],
.login input[type="password"] {
	border-radius: 16px;
	border: 1px solid #d1d5db;
	padding: 14px 16px;
	box-shadow: none;
}

.wp-core-ui .button-primary {
	background: var(--tp-login-primary);
	border-color: var(--tp-login-primary);
	border-radius: 999px;
	padding: 0 18px;
	min-height: 44px;
	font-weight: 700;
}

.login #backtoblog,
.login .language-switcher {
	display: none;
}

.login #nav {
	text-align: center;
}

.login #nav a[href*="action=register"] {
	display: none;
}

.login #nav a {
	color: #374151;
}

@media (max-width: 480px) {
	body.login::before {
		top: 20px;
		width: 180px;
		height: 180px;
	}

	.login #login {
		padding-top: 140px;
	}
}
