/* ====== 페이지 배경 ====== */
.login-page {
	min-height: 100vh;
	background: linear-gradient(180deg, #f7f9ff 0%, #ffffff 60%, #f7f9ff 100%);
	position: relative;
	overflow-x: hidden;
}

/* 배경 블러 장식 */
.bg-blur-blob {
	position: absolute;
	width: 420px;
	height: 420px;
	filter: blur(50px);
	opacity: 0.25;
	border-radius: 999px;
	z-index: 0;
}

.blob-1 {
	top: -160px;
	left: -120px;
	background: radial-gradient(circle at 30% 30%, #8fb6ff, transparent 60%);
}

.blob-2 {
	bottom: -200px;
	right: -140px;
	background: radial-gradient(circle at 30% 30%, #a6ffd6, transparent 60%);
}

/* 내용이 배경 위로 */
.login-page main {
	position: relative;
	z-index: 1;
}

/* ====== 상단 home 링크 ====== */
.top-actions {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 6px;
}

.top-link {
	font-weight: 400;
	text-decoration: none;
	color: #0d6efd;
}

.top-link:hover {
	text-decoration: underline;
}

/* ====== 회원가입 링크 ====== */
.signup-link {
	font-weight: 400;
	color: #0d6efd;
	text-decoration: none;
}

.signup-link:hover {
	text-decoration: underline;
}

/* ====== 카드 ====== */
.login-card {
	border-radius: 18px;
}

.login-card .card-body {
	border-radius: 18px;
}

.form-control,
.input-group-text,
.btn {
	border-radius: 12px;
}

.input-group-text {
	background: #f8f9fa;
}

/* 버튼 높이 */
.btn-lg {
	padding-top: 0.85rem;
	padding-bottom: 0.85rem;
}


/* ====== 반응형 ====== */
@media (max-width: 575.98px) {
	.login-card {
		border-radius: 16px;
	}

	.bg-blur-blob {
		width: 340px;
		height: 340px;
	}
}