body#kt_body {
	font-family: Inter, Helvetica, sans-serif;
	font-weight: 400;
}

body#kt_body {
	background-color: var(--bs-body-bg);
	color: var(--bs-body-color);
}

body#kt_body a {
	text-decoration: none;
}

body#kt_body ul,
body#kt_body ol {
	margin-bottom: 0;
}

body#kt_body img {
	max-width: none;
}

html,
body,
body#kt_body {
	height: auto !important;
	min-height: 100% !important;
	overflow-y: auto !important;
}
/* 인증 화면에서는 위 규칙보다 우선 적용 */
body#kt_body.auth-bg {
	height: 100vh !important;
	min-height: 100vh !important;
	overflow: hidden !important;
}

#kt_app_root,
#kt_app_page,
#kt_app_wrapper {
	height: auto !important;
	min-height: 100% !important;
	overflow: visible !important;
}

#kt_app_main,
#kt_app_content,
#kt_footer {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	height: auto !important;
	min-height: 1px !important;
	overflow: visible !important;
}

/* 인증(로그인/회원가입) 전용: 브라우저 높이 고정, 폼 영역만 스크롤 */
body.auth-bg {
	height: 100vh !important;
	min-height: 100vh !important;
	overflow: hidden !important;
}
html:has(body.auth-bg) {
	height: 100vh !important;
	min-height: 100vh !important;
	overflow: hidden !important;
}
@media (min-width: 992px) {
	.auth-left-panel {
		height: 100% !important;
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}
	.auth-form-column {
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}
}
/* 오른쪽 폼 컬럼: 이 영역 안에서만 스크롤 (로그인/회원가입/비밀번호찾기 공통) */
.auth-form-column {
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	min-height: 0 !important;
	min-height: 200px !important;   /* 최소 높이 보장으로 로그인 영역 항상 노출 */
}
@media (max-width: 991.98px) {
	.auth-form-column {
		flex: 1 1 0 !important;  /* 모바일: 남은 공간 채우기 */
	}
}
.auth-form-column .auth-form-scroll {
	flex: 1 1 0 !important;
	min-height: 0 !important;
	overflow-y: auto !important;
}
