/*
 REALJEJU CSS 구조 / Ver 4.985
	파일은 단일 CSS를 유지하고, 실제 병합 블록 순서대로 큰 화면 단위만 주석으로 구분한다.
	0. 폰트 / 전역 변수 / 공통 토큰
	1. 부동산 홈 / 지도 / 필터바
	2. 왼쪽 목록 / 상세 패널 / 사진 확대
	3. 매물 등록 / 수정
	4. 중개사 홈 / 중개사 관련 화면
	5. 관리자 페이지 / 운영자 권한
	6. 결제 / 이용권
	7. 내정보 / 중개사무소 신청
	8. 인증
	9. 이전 기본 / 전역 보정
*/

/* PATCH 4.603: map every shipped static face to one canonical cross-platform weight. */
@font-face {
	font-family: "SUITLocal";
	src: url("../fonts/SUIT-Regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "SUITLocal";
	src: url("../fonts/SUIT-Medium.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "SUITLocal";
	src: url("../fonts/SUIT-SemiBold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "SUITLocal";
	src: url("../fonts/SUIT-Bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "SUITLocal";
	src: url("../fonts/SUIT-ExtraBold.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "SUITLocal";
	src: url("../fonts/SUIT-Heavy.woff2") format("woff2");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "PaperlogyLocal";
	src: url("../fonts/Paperlogy-7Bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "PaperlogyLocal";
	src: url("../fonts/Paperlogy-8ExtraBold.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}


/* REALJEJU consolidated stylesheet / Ver 2.903 */
/* Legacy split CSS is merged here so realjeju_2.903.html loads one CSS file. */
/* Responsive Refactor 3.240
 * Breakpoint order (desktop -> mobile): 1440, 980, 900, 720, 480
 * Rule:
 * 1) New responsive styles must use only the breakpoints above.
 * 2) Do not add inline one-line @media blocks.
 * 3) Keep component base style + responsive override close together.
 */


/* =====================================================
   1. 부동산 홈 / 지도 / 필터바
   ===================================================== */
/* ===== MERGED FROM map_2.712.css ===== */
/* ===== INLINE FROM map.css ===== */
/* REALJEJU map.css - stable split from realjeju_2.361(3).html / Ver 2.396 */

.map-side-tools{
	filter: drop-shadow(4px 7px 12px rgba(15, 23, 42, 0.22));
	transition: none;
}

.map-wrap.is-roadview-open #map{
	transform: none;
	filter: none;
}

.map-center-region-label{
	display: none !important;
}

.roadview-overlay{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	width: min(66vw, calc(100% - 360px));
	min-width: min(520px, 100%);
	max-width: 100%;
	z-index: 260;
	overflow: hidden;
	pointer-events: none;
	opacity: 0;
	transform: translateX(-24px) scale(1.02);
	transition: opacity 0.28s ease, transform 0.32s ease;
	background: #000;
}

.roadview-overlay.detail-panel-roadview{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	width: var(--rj-detail-panel-width);
	max-width: 100vw;
	z-index: 10080;
	transform: translateX(24px) scale(1.02);
}

.roadview-overlay.detail-left-roadview{
	position: fixed;
	top: 0;
	right: var(--rj-detail-panel-width, 420px);
	bottom: 0;
	left: 0;
	width: auto;
	min-width: 0;
	max-width: none;
	z-index: 10015;
	transform: translateX(-16px) scale(1.01);
	box-shadow: 20px 0 34px rgba(15, 23, 42, 0.32);
}

.roadview-overlay.detail-left-roadview::after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 18px;
	z-index: 5;
	pointer-events: none;
	background: linear-gradient(to left, rgba(15, 23, 42, 0.26), rgba(15, 23, 42, 0));
}

.roadview-overlay:fullscreen{
	position: fixed;
	inset: 0;
	width: 100vw;
	height: 100vh;
	min-width: 0;
	max-width: none;
	z-index: 2147483647;
}

.roadview-overlay:-webkit-full-screen{
	position: fixed;
	inset: 0;
	width: 100vw;
	height: 100vh;
	min-width: 0;
	max-width: none;
	z-index: 2147483647;
}

.roadview-overlay.open{
	pointer-events: auto;
	opacity: 1;
	transform: translateX(0) scale(1);
}

.roadview-overlay.detail-left-roadview.open{
	transform: translateX(0) scale(1);
}

body.education-facility-detail-open .roadview-overlay,
body.education-facility-detail-open .roadview-overlay.open,
body.education-facility-detail-open .roadview-overlay.detail-left-roadview,
body.education-facility-detail-open .roadview-overlay.detail-panel-roadview,
body.education-facility-detail-open .roadview-overlay:fullscreen,
body.education-facility-detail-open .roadview-overlay:-webkit-full-screen{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.roadview-detail-left-open.detail-page-panel-open::before{
	background: transparent;
}

.roadview-inner{
	width: 100%;
	height: 100%;
}

.roadview-close-btn{
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 130;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: rgba(17,24,39,0.72);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	backdrop-filter: blur(6px);
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity 0.2s ease 0.08s, transform 0.24s ease 0.08s, background 0.18s ease;
}

.roadview-close-btn:hover{
	background: rgba(17,24,39,0.84);
}

.roadview-close-btn i{
	font-size: 17px;
	line-height: 1;
}

.roadview-fullscreen-btn{
	position: absolute;
	top: 16px;
	right: 64px;
	z-index: 130;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,0.92);
	color: #111827;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	backdrop-filter: blur(6px);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: -0.1px;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity 0.2s ease 0.08s, transform 0.24s ease 0.08s, background 0.18s ease;
}

.roadview-fullscreen-btn:hover{
	background: rgba(255,255,255,0.98);
}

.roadview-fullscreen-btn i{
	font-size: 17px;
	line-height: 1;
}

.roadview-overlay.open .roadview-close-btn,
.roadview-overlay.open .roadview-fullscreen-btn{
	opacity: 1;
	transform: translateY(0);
}

.roadview-direction-overlay{
	position: relative;
	width: 122px;
	height: 122px;
	pointer-events: none;
	transform: translateZ(0);
}

.roadview-direction-composite{
	display: block;
	position: absolute;
	inset: 0;
	width: 122px;
	height: 122px;
	overflow: visible;
}

.roadview-direction-range-fill{
	fill: rgba(96, 165, 250, 0.28);
	stroke: rgba(37, 99, 235, 0.24);
	stroke-width: 1;
}

.roadview-direction-rotor{
	transform-box: view-box;
	transform-origin: 61px 66.1px;
	transform: rotate(calc(var(--roadview-pan, 0deg) + 180deg));
}

.roadview-direction-cone{
	fill: rgba(52, 211, 153, 0.88);
	stroke: rgba(52, 211, 153, 0.88);
	stroke-width: 1;
	stroke-linejoin: round;
}

.roadview-direction-pin-shape{
	fill: #ffffff;
	stroke: #9ca3af;
	stroke-width: 2.3;
	stroke-linejoin: round;
	filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.18));
}

.roadview-direction-arrow{
	display: none;
}

.roadview-direction-pin{
	top: 15px;
	z-index: 4;
}

.roadview-direction-pin-mark{
	display: none;
}

.roadview-pick-overlay{
	position: relative;
	width: 42px;
	height: 54px;
	pointer-events: none;
	transform: translateZ(0);
}

.roadview-direction-overlay.roadview-pick-overlay{
	width: 122px;
	height: 122px;
}

.roadview-pick-pin{
	position: absolute;
	left: 50%;
	top: 0;
	width: 42px;
	height: 54px;
	transform: translateX(-50%);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='42' height='54' viewBox='0 0 42 54'%3E%3Cpath d='M21 2C10.5 2 2 10.5 2 21c0 7.1 4.3 14.1 10.9 21.8 3 3.5 6 6.4 8.1 8.3 2.1-1.9 5.1-4.8 8.1-8.3C35.7 35.1 40 28.1 40 21 40 10.5 31.5 2 21 2Z' fill='%23ffffff' stroke='%239ca3af' stroke-width='2.3' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	box-sizing: border-box;
	filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.18));
	z-index: 1;
}

.roadview-pick-pin.roadview-direction-pin{
	transform: translateX(-50%);
	transform-origin: 50% 100%;
	filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.18));
}

.roadview-pick-pin-line{
	position: absolute;
	left: 50%;
	top: 20px;
	width: 21px;
	height: 4px;
	transform: translate(-50%, -50%);
	border-radius: 1px;
	background: #0067d9;
	border: 0;
	box-sizing: border-box;
	z-index: 3;
}

.roadview-direction-pin .roadview-pick-pin-line{
	display: none;
}

.map-filter-bar{
	position: absolute;
	top: 18px;
	left: 16px;
	z-index: 30;
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: calc(100% - 24px);
	padding: 12px;
	border-radius: 0;
	background: rgba(255,255,255,0.94);
	border: 1px solid rgba(0,0,0,0.05);
	box-shadow: var(--shadow);
	backdrop-filter: blur(10px);
}

.map-result-count{
	display: none;
	position: absolute;
	top: 120px;
	left: 12px;
	z-index: 30;
	align-items: center;
	gap: 7px;
	min-height: 46px;
	padding: 10px 15px;
	border-radius: 0;
	background: rgba(15,41,66,0.92);
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	box-shadow: var(--shadow);
	backdrop-filter: blur(10px);
	letter-spacing: -0.2px;
}

.map-result-count::before{
	content: "●";
	color: #34d399;
	font-size: 14px;
	letter-spacing: -0.1px;
}

.map-agent-card{
	position: absolute;
	top: 24px;
	right: 20px;
	z-index: 33;
	width: 460px;
	border-radius: 0;
	background: rgba(255,255,255,0.98);
	border: 1px solid rgba(15, 41, 66, 0.08);
	box-shadow: 0 16px 36px rgba(15, 41, 66, 0.16);
	backdrop-filter: blur(10px);
	overflow: hidden;
	display: none;
}

.map-agent-close{
	position: absolute;
	top: 10px;
	right: 10px;
	width: 28px;
	height: 28px;
	border: 0;
	border-radius: 0;
	background: rgba(15, 41, 66, 0.08);
	color: #506070;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 2;
}

.map-agent-close:hover{
	background: rgba(15, 41, 66, 0.08);
	color: #506070;
}

.map-agent-close i{
	font-size: 14px;
	line-height: 1;
}

.map-agent-head{
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 14px 16px 10px;
	border-bottom: 1px solid #eef2f6;
	background: rgba(255,255,255,0.6);
	backdrop-filter: blur(10px);
}

.map-agent-head-title{
	font-size: 18px;
	font-weight: 800;
	color: #2563eb;
	letter-spacing: -0.3px;
}

.map-agent-head-sub{
	font-size: 15px;
	font-weight: 800;
	color: #1f2a36;
	letter-spacing: -0.2px;
}

.map-agent-body{
	display: grid;
	grid-template-columns: 124px 1fr;
	gap: 12px;
	padding: 12px 14px 14px;
}

.map-agent-photo{
	height: 118px;
	border-radius: 0;
	background: #eef3f7 center / cover no-repeat;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.10);
	overflow: hidden;
}

.map-agent-photo img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	background: #f4f7fb;
}

.map-agent-content{
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.map-agent-name-row{
	display: flex;
	align-items: baseline;
	gap: 8px;
	min-width: 0;
	flex-wrap: wrap;
}

.map-agent-name-role{
	font-size: 15px;
	font-weight: 800;
	color: #111827;
	line-height: 1.35;
	letter-spacing: -0.2px;
}

.map-agent-badges{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
	margin-bottom: var(--property-registrant-check-bottom-gap);
}

.map-agent-badge{
	display: inline-flex;
	align-items: center;
	height: 26px;
	padding: 0 10px;
	border-radius: 0;
	background: #ffffff;
	color: #2563eb;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.map-agent-badge.secondary{
	background: #f3eefe;
	color: #7c4dff;
}

.map-agent-name{
	font-size: 24px;
	font-weight: 800;
	color: #111827;
	line-height: 1.08;
	letter-spacing: -0.8px;
	margin: 0;
}

.map-agent-office{
	font-size: 16px;
	font-weight: 700;
	color: #1f6fff;
	letter-spacing: -0.25px;
	line-height: 1.35;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
}

.map-agent-desc{
	display: none;
}

.map-agent-badge.secondary{
	display: none;
}

.map-agent-desc{
	font-size: 13px;
	font-weight: 700;
	color: #7c4dff;
	line-height: 1.4;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
}

.map-agent-meta{
	display: flex;
	flex-direction: column;
	gap: 0px;
	margin-top: 2px;
}

.map-agent-meta-row{
	display: flex;
	align-items: center;
	gap: 0px;
	min-width: 0;
	min-height: 28px;
}

.map-agent-meta-label{
	width: 72px;
	flex: 0 0 72px;
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: 500;
	color: #9aa3af;
	line-height: 1.35;
	white-space: nowrap;
	font-family: var(--font-ui);
}

.map-agent-meta-value{
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	min-height: 24px;
	margin: 0;
	padding: 0;
	font-family: var(--font-ui);
	font-variant-numeric: normal;
	font-size: 14px;
	font-weight: 600;
	color: #4b5563;
	letter-spacing: -0.12px;
	line-height: 1.35;
	min-width: 0;
	white-space: nowrap;
	overflow: visible;
	text-overflow: clip;
	word-break: normal;
}

#mapAgentAddress{
	white-space: normal;
	line-height: 1.45;
	word-break: keep-all;
}

#mapAgentRegNo{
	line-height: 1.35;
}

#mapAgentPhone{
	display: flex;
	align-items: center;
	font-size: 20px;
	font-weight: 700;
	color: #1f2a36;
	letter-spacing: -0.18px;
	line-height: 1.35;
	font-family: var(--font-ui);
	font-variant-numeric: normal;
}

.map-recommend-close{
	position: absolute;
	top: 10px;
	right: 10px;
	width: 28px;
	height: 28px;
	border: 0;
	border-radius: 0;
	background: rgba(15, 41, 66, 0.08);
	color: #506070;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 1;
}

.map-recommend-close:hover{
	background: rgba(15, 41, 66, 0.08);
	color: #506070;
}

.map-recommend-close i{
	font-size: 14px;
	line-height: 1;
}

.map-recommend-card{
	display: none;
	position: absolute;
	right: 20px;
	bottom: 20px;
	z-index: 32;
	width: 320px;
	border-radius: 0;
	background: rgba(255,255,255,0.98);
	border: 1px solid rgba(15, 41, 66, 0.08);
	box-shadow: 0 16px 36px rgba(15, 41, 66, 0.16);
	backdrop-filter: blur(10px);
	overflow: hidden;
	cursor: pointer;
}

.map-recommend-head{
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 14px 16px 10px;
	border-bottom: 1px solid #eef2f6;
}

.map-recommend-title{
	font-size: 18px;
	font-weight: 800;
	color: #2563eb;
	letter-spacing: -0.3px;
}

.map-recommend-sub{
	font-size: 15px;
	font-weight: 800;
	color: #1f2a36;
	letter-spacing: -0.2px;
}

.map-recommend-body{
	display: grid;
	grid-template-columns: 124px 1fr;
	gap: 12px;
	padding: 12px 14px 14px;
}

.map-recommend-thumb{
	height: 118px;
	border-radius: 0;
	background: #eef3f7 center / cover no-repeat;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.10);
}

.map-recommend-content{
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.map-recommend-badges{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
	margin-bottom: 0;
}

.map-recommend-badge{
	display: inline-flex;
	align-items: center;
	height: 22px;
	padding: 0 10px;
	border-radius: 0;
	background: #f3eefe;
	color: #7c4dff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.map-recommend-badge.deal{
	background: #eef5ff;
	color: #2563eb;
}

.map-recommend-price{
	font-family: var(--font-ui);
	font-variant-numeric: tabular-nums;
	font-size: 24px;
	font-weight: 800;
	color: #111827;
	line-height: 1.08;
	letter-spacing: -0.8px;
	margin: 0;
}

.map-recommend-title-text{
	font-size: 15px;
	font-weight: 800;
	color: #111827;
	line-height: 1.35;
	letter-spacing: -0.25px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	word-break: keep-all;
}

.map-recommend-address{
	font-size: 13px;
	font-weight: 600;
	color: #6b7785;
	line-height: 1.45;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.map-recommend-footer,
.map-agent-footer{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 5px;
	padding: 10px 16px 14px;
	border-top: 1px solid #eef2f6;
	background: rgba(255,255,255,0.98);
}

.map-hide-today-label{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 600;
	color: #64748b;
	letter-spacing: -0.1px;
	cursor: pointer;
	user-select: none;
}

.map-hide-today-label input{
	width: 14px;
	height: 14px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
	flex: 0 0 auto;
}

.weekly-specialist-broker-panel{
	--weekly-specialist-panel-width: 236px;
	position: absolute;
	top: var(--weekly-specialist-panel-top, calc(var(--map-side-tools-top, 16px) + var(--map-control-box-size, 42px) + var(--map-tool-stack-gap, 16px)));
	left: var(--weekly-specialist-panel-left, 24px);
	z-index: 35;
	width: min(var(--weekly-specialist-panel-width), calc(100vw - 48px));
	max-height: calc(100vh - 132px);
	display: none;
	flex-direction: column;
	border: 0;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.24), 0 3px 10px rgba(15, 23, 42, 0.08);
	backdrop-filter: blur(10px);
	overflow: hidden;
	color: #111827;
}

.weekly-specialist-broker-panel[aria-hidden="false"]{
	display: flex !important;
}

body.map-panels-collapsed .weekly-specialist-broker-panel,
body.detail-page-panel-open .weekly-specialist-broker-panel,
body.map-detail-panel-active .weekly-specialist-broker-panel,
body.admin-page-open .weekly-specialist-broker-panel,
body.broker-home-page-open .weekly-specialist-broker-panel,
body.property-register-page-open .weekly-specialist-broker-panel,
body.my-suite-page-open .weekly-specialist-broker-panel,
body.notice-page-open .weekly-specialist-broker-panel,
body.auth-page-open .weekly-specialist-broker-panel,
body.payment-page-open .weekly-specialist-broker-panel{
	display: none !important;
}

.weekly-specialist-broker-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 16px 14px 10px;
	background: linear-gradient(180deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0.96));
}

.weekly-specialist-broker-head h2{
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin: 0;
	color: #0f172a;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.weekly-specialist-broker-head h2 i{
	color: #2563eb;
	font-size: 18px;
	line-height: 1;
}

.weekly-specialist-broker-close{
	position: relative;
	width: 30px;
	height: 30px;
	border: 1px solid rgba(15, 23, 42, 0.42);
	border-radius: 999px;
	background: #ffffff;
	color: #374151;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	flex: 0 0 auto;
}

.weekly-specialist-broker-close i{
	display: none;
}

.weekly-specialist-broker-close::before,
.weekly-specialist-broker-close::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 15px;
	height: 1.4px;
	border-radius: 999px;
	background: currentColor;
	transform-origin: center;
}

.weekly-specialist-broker-close::before{
	transform: translate(-50%, -50%) rotate(45deg);
}

.weekly-specialist-broker-close::after{
	transform: translate(-50%, -50%) rotate(-45deg);
}

.weekly-specialist-broker-close:hover,
.weekly-specialist-broker-close:focus-visible{
	border-color: #111827;
	color: #111827;
}

.weekly-specialist-broker-scroll{
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 4px 14px 10px;
}

.weekly-specialist-empty{
	margin: 12px 0 18px;
	padding: 18px 12px;
	border-radius: 12px;
	background: #f8fafc;
	color: #64748b;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
}

.weekly-specialist-broker-section{
	margin: 0 0 18px;
}

.weekly-specialist-broker-section:last-child{
	margin-bottom: 4px;
}

.weekly-specialist-broker-section h3{
	margin: 0 0 9px;
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.2px;
}

.weekly-specialist-broker-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px 6px;
}

.weekly-specialist-broker-card{
	min-width: 0;
	border: 0;
	padding: 0 2px 2px;
	background: transparent;
	color: #111827;
	display: grid;
	justify-items: center;
	gap: 2px;
	text-align: center;
	cursor: pointer;
	font-family: inherit;
}

.weekly-specialist-broker-card:hover .broker-office-map-marker-icon,
.weekly-specialist-broker-card:focus-visible .broker-office-map-marker-icon{
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.16), 0 3px 8px rgba(15, 41, 66, 0.18);
}

.weekly-specialist-broker-marker{
	--broker-office-marker-size: 44px;
	transform: none;
	pointer-events: none;
}

.weekly-specialist-broker-marker .broker-office-map-marker-badge{
	min-width: 56px;
}

.weekly-specialist-broker-marker .broker-office-map-marker-count{
	height: 18px;
	min-width: 44px;
	font-size: 11px;
	font-weight: 700;
	background: rgba(37, 99, 235, 0.94);
}

.weekly-specialist-broker-name{
	width: 100%;
	min-height: 0;
	color: #374151;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: -0.15px;
	word-break: keep-all;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.weekly-specialist-stars{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	min-height: 14px;
	margin-top: -2px;
	color: #facc15;
	text-shadow: 0 1px 0 rgba(146, 64, 14, 0.20);
}

.weekly-specialist-star{
	font-size: 12px;
	line-height: 1;
}

.weekly-specialist-star.big{
	font-size: 15px;
	color: #f59e0b;
}

.weekly-specialist-broker-footer{
	flex: 0 0 auto;
	padding: 14px;
	border-top: 1px solid #e5e7eb;
	background: rgba(255, 255, 255, 0.96);
}

.weekly-specialist-hide-today-label{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.15px;
	cursor: pointer;
	user-select: none;
}

.weekly-specialist-hide-today-label input{
	width: 20px;
	height: 20px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
	flex: 0 0 auto;
}

@media (max-width: 720px)
{
	.weekly-specialist-broker-panel{
		top: 80px;
		left: 12px;
		width: min(430px, calc(100vw - 24px));
		max-height: calc(100vh - 104px);
		border-radius: 16px;
	}

	.weekly-specialist-broker-head{
		padding: 15px 16px 10px;
	}

	.weekly-specialist-broker-scroll{
		padding-left: 16px;
		padding-right: 16px;
	}
}

.map-side-tools{
	position: absolute;
	top: var(--map-side-tools-top);
	right: var(--map-side-tools-right);
	left: auto;
	z-index: 2147483000;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: var(--map-tool-stack-gap);
	pointer-events: auto;
}

.map-tool-group{
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0;
	height: auto;
	border-radius: var(--map-control-radius);
	background: #f3f4f6;
	border: 0;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
	backdrop-filter: none;
	overflow: hidden;
}

.map-primary-tool-group,
.map-unit-tool-group{
	border: 0;
	background: transparent;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.10), 0 8px 16px rgba(15, 23, 42, 0.10);
	overflow: visible;
	gap: var(--map-tool-stack-gap);
}

.map-tool-btn{
	width: var(--map-control-box-size);
	min-width: var(--map-control-box-size);
	height: var(--map-control-box-size);
	min-height: var(--map-control-box-size);
	box-sizing: border-box;
	border: 0;
	border-radius: 0;
	padding: 5px 4px;
	background: #ffffff;
	color: #15171b;
	font-size: var(--map-control-font-size);
	font-weight: 600;
	letter-spacing: -0.2px;
	cursor: pointer;
	white-space: nowrap;
	box-shadow: none;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	text-align: center;
	line-height: 1;
}

.map-primary-tool-group .map-tool-btn,
.map-unit-tool-group .map-tool-btn{
	border-radius: var(--map-control-radius);
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
}

.map-tool-btn + .map-tool-btn{
	margin-left: 0;
	border-top: 1px solid #edf1f5;
	border-left: 0;
}

.map-primary-tool-group .map-tool-btn + .map-tool-btn{
	border-top: 0;
}

.map-tool-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 20px;
	font-size: 17px;
	line-height: 1;
	pointer-events: none;
}

.map-tool-label{
	display: block;
	max-width: 100%;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.12;
	word-break: keep-all;
	pointer-events: none;
}

#mapDistanceToolBtn .map-tool-label{
	font-size: 10px;
	line-height: 1.08;
}

#map.distance-measure-active,
body.distance-measure-active #map{
	cursor: pointer;
}

#map.distance-measure-active *,
body.distance-measure-active #map *{
	cursor: pointer !important;
}

#map.distance-measure-active:active,
#map.distance-measure-active:active *,
body.distance-measure-active #map:active,
body.distance-measure-active #map:active *{
	cursor: grabbing !important;
}

.distance-measure-point{
	position: relative;
	width: 22px;
	height: 22px;
	border: 3px solid #d83b5f;
	border-radius: 50%;
	background: #ffffff;
	box-sizing: border-box;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.18);
	pointer-events: none;
}

.distance-measure-point.radius{
	border-color: #1764ff;
	box-shadow: 0 1px 3px rgba(23, 100, 255, 0.18);
}

.distance-measure-cursor{
	width: 22px;
	height: 22px;
	border-width: 3px;
	background: radial-gradient(circle at center, #d83b5f 0 4px, #ffffff 5px);
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.18);
}

.distance-measure-cursor.radius{
	background: radial-gradient(circle at center, #1764ff 0 4px, #ffffff 5px);
	box-shadow: 0 1px 3px rgba(23, 100, 255, 0.18);
}

.distance-measure-cursor.target{
	width: 22px;
	height: 22px;
	border-width: 3px;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.18);
}

.distance-measure-cursor.target.radius{
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(23, 100, 255, 0.18);
}

.distance-measure-point.start::after{
	content: "";
	position: absolute;
	inset: 4px;
	border-radius: 50%;
	background: #d83b5f;
	z-index: 1;
}

.distance-measure-point.start.radius::after{
	background: #1764ff;
}

.distance-measure-start-label{
	position: absolute;
	left: 50%;
	top: 18px;
	z-index: 2;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 26px;
	padding: 0 8px;
	border-radius: 13px;
	background: #d83b5f;
	color: #ffffff;
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.distance-measure-point.radius .distance-measure-start-label{
	background: #1764ff;
}

.distance-measure-label{
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	min-width: 74px;
	padding: 9px 12px;
	border: 1.5px solid rgba(216,59,95,0.55);
	border-radius: 8px;
	background: rgba(255,255,255,0.96);
	color: #334155;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	box-shadow: 0 6px 18px rgba(15, 23, 42, 0.14);
	white-space: nowrap;
	pointer-events: none;
}

.distance-measure-label.radius{
	border-color: rgba(23, 100, 255, 0.55);
}

.distance-measure-label.preview{
	opacity: 0.62;
	background: rgba(255,255,255,0.84);
}

.distance-measure-label.total-summary{
	gap: 5px;
	padding: 10px 12px;
}

.distance-measure-label strong{
	color: #111827;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.1;
}

.distance-measure-label span{
	color: #475569;
}

.distance-measure-total{
	color: #d83b5f;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.15;
}

.distance-measure-label.radius .distance-measure-total{
	color: #1764ff;
}

.distance-measure-toolbar{
	position: absolute;
	left: 50%;
	bottom: 28px;
	z-index: 2147483102;
	display: flex;
	align-items: center;
	gap: 6px;
	max-width: calc(100vw - 260px);
	padding: 7px;
	border: 0;
	border-radius: 999px;
	background: rgba(255,255,255,0.96);
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.16);
	transform: translateX(-50%);
	white-space: nowrap;
}

.distance-measure-toolbar[hidden]{
	display: none;
}

.distance-measure-toolbar-btn{
	min-width: 64px;
	height: 38px;
	padding: 0 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

.distance-measure-toolbar-btn.icon{
	min-width: 44px;
	width: 44px;
	padding: 0;
	font-size: 22px;
}

.distance-measure-toolbar-btn.icon i{
	display: block;
	line-height: 1;
}

.distance-measure-toolbar-btn:hover{
	background: #f3f4f6;
}

.distance-measure-toolbar-btn.active{
	background: #1764ff;
	color: #ffffff;
}

.distance-measure-toolbar-btn:disabled{
	color: #9ca3af;
	cursor: default;
}

.distance-measure-toolbar-btn:disabled:hover{
	background: transparent;
}

.distance-measure-toolbar-btn.close{
	min-width: 58px;
}

.map-tool-btn.active{
	background: #1764ff;
	color: #ffffff;
	box-shadow: 0 10px 22px rgba(31,111,255,0.24);
}


.map-location-tool-group .map-tool-btn,
.map-map-tool-group .map-tool-btn{
	height: 56px;
	min-height: 40px;
}

.map-location-tool-group .map-tool-btn.active,
.map-map-tool-group .map-tool-btn.active{
	background: #1764ff;
	color: #ffffff;
	box-shadow: 0 10px 22px rgba(31,111,255,0.24);
}

.map-location-tool-group .map-tool-btn.configuring,
.map-map-tool-group .map-tool-btn.configuring{
	background: #ffffff;
	color: #1764ff;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
}




.map-property-toggle-btn{
	padding: 0;
	gap: 0;
	background: #ffffff;
	color: #111827;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
}

.map-property-toggle-btn.active{
	background: #ffffff;
	color: #ffffff;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
}

.map-property-toggle-btn .map-tool-label{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	min-width: 30px;
	min-height: 30px;
	max-width: 30px;
	max-height: 30px;
	box-sizing: border-box;
	border-radius: 9999px;
	background: #e9edf2;
	color: #111827;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	overflow: hidden;
}

.map-property-toggle-btn.active .map-tool-label{
	background: #1764ff;
	color: #ffffff;
}

#areaUnitToolGroup{
	display: flex;
	height: auto;
	border: 0;
	border-radius: var(--map-control-radius);
	background: transparent;
	box-shadow: none !important;
	overflow: visible;
}

body.map-panels-collapsed #areaUnitToolGroup{
	display: none;
}


.map-area-unit-toggle-btn,
.map-area-unit-toggle-btn.active{
	background: #ffffff;
	color: #111827;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
}

.map-unit-cycle-icon{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	color: #111827;
}

.map-unit-cycle-svg{
	position: absolute;
	inset: 1px;
	width: 32px;
	height: 32px;
	overflow: visible;
}

.map-unit-cycle-svg path,
.map-unit-cycle-svg line{
	fill: none;
	stroke: currentColor;
	stroke-width: 1.55;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.map-unit-cycle-svg .map-unit-cycle-head line{
	fill: none;
	stroke: currentColor;
	stroke-width: 1.35;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.map-unit-cycle-label{
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 16px;
	height: 16px;
	color: #111827;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
}

.map-area-unit-toggle-btn .map-tool-icon{
	font-size: 20px;
}

.map-side-tools .map-tool-btn:not(.map-property-toggle-btn):not(.active):hover,
.map-side-tools .map-tool-btn:not(.map-property-toggle-btn):not(.active):focus-visible{
	background: #f3f4f6;
	color: #111827;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.12);
}

.map-type-popover{
	position: absolute;
	top: calc((var(--map-control-box-size) * 2) + var(--map-tool-stack-gap) + var(--map-control-box-size) + var(--map-tool-stack-gap) + (var(--map-control-box-size) * 4) + var(--map-tool-stack-gap) + var(--map-control-box-size) + 4px);
	right: calc(var(--map-control-box-size) + 10px);
	z-index: 2147483100;
	display: none;
	width: 340px;
	max-width: calc(100vw - 64px);
	box-sizing: border-box;
	padding: 14px 14px 12px;
	border: 0;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(15, 41, 66, 0.16);
	font-family: var(--font-ui);
	overflow: hidden;
}

.map-type-popover.open{
	display: block;
}

.map-type-card-row{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 7px;
}

.map-type-option.map-type-card{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 11px;
	height: auto;
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 12px;
	background: transparent;
	color: #202124;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
}

.map-type-thumb{
	display: block;
	width: 100%;
	aspect-ratio: 1.5 / 1;
	box-sizing: border-box;
	border: 0;
	border-radius: 6px;
	background-color: #eef2f6;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}

.map-type-option.active .map-type-thumb{
	border: 2px solid #15171b;
}

.map-type-label{
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	color: #202124;
}

.map-type-thumb.roadmap{
	background: #eef2f6 url("../img/map-type-roadmap-nohyeong.jpg") center center / cover no-repeat;
}

.map-type-thumb.satellite{
	background: #203a35 url("../img/map-type-satellite-nohyeong.jpg") center center / cover no-repeat;
}

.map-type-thumb.terrain{
	background: #e7e9e7 url("../img/map-type-terrain-nohyeong.jpg") center center / cover no-repeat;
}

.map-type-divider{
	height: 1px;
	margin: 14px 0 12px;
	background: #e6ebf1;
}

.map-type-cadastral-toggle{
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 20px;
	box-sizing: border-box;
	border: 0;
	padding: 0;
	background: transparent;
	color: #202124;
	font-family: var(--font-ui);
	cursor: pointer;
}

.map-type-cadastral-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	margin-right: 7px;
	font-size: 16px;
	line-height: 1;
	color: #202124;
}

.map-type-cadastral-label{
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	color: #202124;
}

.map-type-switch{
	position: relative;
	display: inline-flex;
	width: 34px;
	height: 20px;
	margin-left: auto;
	border-radius: 999px;
	background: #c4c8cc;
	transition: none;
}

.map-type-switch::after{
	content: "";
	position: absolute;
	left: 2px;
	top: 2px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0,0,0,0.22);
}



.map-type-cadastral-toggle.active .map-type-switch::after{
	left: 16px;
}

.map-unit-split,
.map-unit-half-btn{
	display: none;
}

.life-safety-legend{
	position: absolute;
	top: var(--map-side-tools-top);
	right: calc(var(--map-side-tools-right) + var(--map-control-box-size) + var(--map-zoom-stack-gap-from-unit));
	z-index: 33;
	display: none;
	width: 162px;
	box-sizing: border-box;
	padding: 10px 11px;
	border: 1px solid #dbe4ee;
	border-radius: var(--map-control-radius);
	background: rgba(255,255,255,0.94);
	box-shadow: 0 6px 14px rgba(15, 41, 66, 0.12);
	color: #223244;
	font-family: var(--font-ui);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.25;
	pointer-events: none;
}

.life-safety-legend.open{
	display: block;
}

.life-safety-legend-title{
	margin-bottom: 3px;
	font-size: 13px;
	font-weight: 700;
	color: #111827;
	white-space: nowrap;
}

.life-safety-legend-scope{
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 600;
	color: #6b7280;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.life-safety-legend-row{
	display: flex;
	align-items: center;
	gap: 7px;
	min-height: 18px;
	color: #374151;
}

.life-safety-legend-swatch{
	width: 14px;
	height: 10px;
	border: 1px solid rgba(31, 41, 55, 0.18);
	box-sizing: border-box;
	flex: 0 0 auto;
}

.life-safety-legend-swatch.level-1{
	background: #fff7cc;
}

.life-safety-legend-swatch.level-2{
	background: #facc15;
}

.life-safety-legend-swatch.level-3{
	background: #f59e0b;
}

.life-safety-legend-swatch.level-4{
	background: #f97316;
}

.life-safety-legend-swatch.level-5{
	background: #dc2626;
}

.life-safety-legend-note{
	margin-top: 7px;
	padding-top: 7px;
	border-top: 1px solid #e5e7eb;
	color: #6b7280;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.35;
}

.map-wrap > .map-filter-bar{
	display: none;
}

.map-empty-state{
	position: absolute;
	inset: 50% auto auto 50%;
	transform: translate(-50%, -50%);
	z-index: 29;
	display: none;
	width: min(420px, calc(100% - 48px));
	padding: 18px 20px;
	border-radius: 0;
	background: rgba(255,255,255,0.96);
	border: 1px solid rgba(15, 41, 66, 0.08);
	box-shadow: 0 16px 36px rgba(15, 41, 66, 0.14);
	backdrop-filter: blur(10px);
	text-align: center;
	pointer-events: none;
}

.map-empty-state.open{
	display: block;
}

.map-empty-state-title{
	font-size: 17px;
	font-weight: 800;
	color: #17212b;
	letter-spacing: -0.25px;
	margin-bottom: 8px;
	line-height: 1.35;
}

.map-empty-state-desc{
	font-size: 14px;
	font-weight: 600;
	color: #6b7785;
	letter-spacing: -0.15px;
	line-height: 1.5;
	white-space: pre-line;
}

/* ===== custom map zoom buttons ===== */ .map-zoom-stack{
	position: absolute;
	right: var(--map-side-tools-right);
	top: auto;
	bottom: 18px;
	transform: none;
	z-index: 2147483000;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--map-zoom-current-gap);
	pointer-events: auto;
}


@media (max-height: 820px)
{
	.map-zoom-stack{
		right: var(--map-side-tools-right);
	}
}

.map-zoom-group{
	display: flex;
	flex-direction: column;
	width: var(--map-control-box-size);
	box-sizing: border-box;
	overflow: hidden;
	border: 1px solid #cfd7e2;
	border-radius: var(--map-control-radius);
	background: #ffffff;
	box-shadow: 0 6px 14px rgba(15, 41, 66, 0.12);
}

.map-zoom-btn,
.map-current-btn{
	width: var(--map-control-box-size);
	height: var(--map-control-box-size);
	min-width: var(--map-control-box-size);
	max-width: var(--map-control-box-size);
	min-height: var(--map-control-box-size);
	max-height: var(--map-control-box-size);
	aspect-ratio: 1 / 1;
	box-sizing: border-box;
	flex: 0 0 var(--map-control-box-size);
	padding: 0;
	line-height: 1;
	border: 0;
	background: #ffffff;
	color: #223244;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	transition: none;
}

.map-zoom-btn{
	width: 100%;
	height: var(--map-control-box-size);
	min-width: 0;
	max-width: none;
	border-radius: 0;
	box-shadow: none;
}

.map-zoom-btn + .map-zoom-btn{
	border-top: 1px solid #dbe2eb;
}

.map-current-btn{
	width: var(--map-control-box-size);
	height: var(--map-control-box-size);
	border: 1px solid #cfd7e2;
	border-radius: var(--map-control-radius);
	background: #ffffff;
	color: #223244;
	box-shadow: 0 6px 14px rgba(15, 41, 66, 0.12);
}

.map-zoom-btn i{
	font-size: 16px;
	line-height: 1;
	pointer-events: none;
}

.map-current-btn i{
	font-size: 16px;
	line-height: 1;
	pointer-events: none;
}

.map-current-btn:hover,
.map-zoom-btn:hover{
	background: #f3f4f6;
	color: #223244;
	box-shadow: 0 6px 14px rgba(15, 41, 66, 0.12);
}

.map-current-btn:hover{
	background: #f3f4f6;
	color: #223244;
}

.map-current-btn:active,
.map-zoom-btn:active{
	transform: none;
	box-shadow: none;
}

/* ===== hide Kakao original zoom control ===== */ .map-wrap .map_zoomcontrol,
.map-wrap .map_controls,
.map-wrap .map_typecontrol{
	display: none;
}

.sidebar,
.map-wrap,
#map{
	height:calc(100dvh - var(--topbar-main-height) - var(--topbar-sub-height));
}

.map-wrap{
	position:relative;
	min-width:0;
	width:100%;
	overflow:hidden;
	background:#dde7ef;
}

#map{
	width:100%;
	transition:transform .32s ease, filter .28s ease;
	transform-origin:center center;
}

.admin-boundary-bottom-pill{
	position:absolute;
	left:50%;
	bottom:39px;
	z-index:120;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-width:144px;
	max-width:min(360px, calc(100% - 48px));
	height:50px;
	padding:0 22px;
	box-sizing:border-box;
	border:1px solid #2563eb;
	border-radius:999px;
	background:#ffffff;
	box-shadow:0 10px 24px rgba(15, 23, 42, 0.16);
	color:#111827;
	font-size:16px;
	font-weight:700;
	line-height:1;
	transform:translateX(-50%);
	cursor:pointer;
	pointer-events:auto;
	white-space:nowrap;
}

.admin-boundary-bottom-pill:focus-visible{
	outline:3px solid rgba(37, 99, 235, 0.24);
	outline-offset:3px;
}

.admin-boundary-bottom-pill[hidden]{
	display:none;
}

body.distance-measure-active .admin-boundary-bottom-pill{
	display:none !important;
}

.admin-boundary-bottom-pill-name{
	overflow:hidden;
	text-overflow:ellipsis;
	min-width:0;
	max-width:180px;
}

.admin-boundary-bottom-pill-count{
	color:#111827;
}

.admin-boundary-bottom-pill-count-label{
	color:#111827;
}

.admin-boundary-bottom-pill-count-number{
	color:#2563eb;
	font-weight:800;
}

/* 원형 뱃지에서 행정구역 네모 뱃지로 바뀌는 첫 렌더 전용 애니메이션.
   이미 네모 단계인 이동ㆍ필터ㆍ재렌더에는 클래스를 붙이지 않아 최종 크기로 바로 표시한다. */
@keyframes property-region-count-label-enter{
	from{ transform:scale(0.97); }
	to{ transform:scale(1); }
}

.property-region-count-label{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:2px;
	min-width:64px;
	padding:7px 8px;
	box-sizing:border-box;
	border:1px solid #525252;
	border-radius:6px;
	background:#ffffff;
	box-shadow:none;
	color:#111111;
	font-size:13px;
	font-weight:600;
	line-height:1.2;
	letter-spacing:0;
	text-align:center;
	white-space:nowrap;
	pointer-events:auto;
	cursor:pointer;
	transform-origin:center center;
}

.property-region-count-label.is-circle-to-square-enter{
	animation:property-region-count-label-enter 140ms ease-out both;
}

.property-region-count-label strong{
	display:block;
	font-size:14px;
	font-weight:700;
}

.property-region-count-label span{
	display:block;
	color:#111111;
	font-size:12px;
	font-weight:600;
}

.property-region-count-label b{
	color:#2563eb;
	font-weight:800;
}

.property-region-count-label .property-region-broker-count{
	color:#111111;
	font-size:12px;
	font-weight:600;
}

.property-region-count-label .property-region-broker-count b{
	color:#2563eb;
	font-weight:800;
}

.property-region-count-label.is-city{
	min-width:64px;
	padding:7px 8px;
	font-size:13px;
}

.property-region-count-label.is-city strong{
	font-size:14px;
}

.property-region-count-label.is-province{
	align-items:flex-start;
	text-align:left;
}

.property-region-count-label.is-province strong,
.property-region-count-label.is-province span{
	width:100%;
	text-align:left;
}

.property-region-count-label.is-district{
	align-items:flex-start;
	border-radius:9px;
	text-align:left;
}

.property-region-count-label.is-selected{
	border-color:#1f2937;
	background:#1f2937;
	color:#ffffff;
}

.property-region-count-label.is-selected strong,
.property-region-count-label.is-selected span,
.property-region-count-label.is-selected b{
	color:#ffffff;
}

.global-topbar .map-filter-bar{
	position:static;
	top:auto;
	left:auto;
	z-index:auto;
	display:flex;
	flex-direction:row;
	align-items:center;
	justify-content:center;
	gap:12px;
	max-width:none;
	width:100%;
	min-width:0;
	padding:0;
	border-radius: 0;
	background:transparent;
	border:0;
	box-shadow:none;
	backdrop-filter:none;
	overflow:visible;
}

.map-side-tools{
	right: var(--map-side-tools-right);
	left: auto;
}

.map-empty-state{
	text-align:left;
}

.map-empty-state-desc{
	display:flex;
	flex-direction:column;
	gap:2px;
	text-align:left;
	white-space:normal;
}

.global-topbar .map-filter-bar{
	width: max-content;
	min-width: max-content;
	max-width: none;
	overflow: visible;
	flex: 0 0 auto;
}

.sub-topbar .map-filter-bar{
	position:static;
	top:auto;
	left:auto;
	z-index:auto;
	display:flex;
	flex-direction:row;
	align-items:center;
	justify-content:center;
	gap:var(--sub-filter-gap);
	width: max-content;
	min-width: max-content;
	max-width: none;
	padding:0;
	border-radius:0;
	background:transparent;
	border:0;
	box-shadow:none;
	backdrop-filter:none;
	overflow: visible;
	flex: 0 0 auto;
	margin: 0 auto;
}


/* ===== MERGED FROM detail_2.712.css ===== */
/* =====================================================
   2. 왼쪽 목록 / 상세 패널 / 사진 확대
   ===================================================== */
/* ===== INLINE FROM detail.css ===== */
/* REALJEJU detail.css - stable split from realjeju_2.361(3).html / Ver 2.396 */

.sidebar-detail-panel::-webkit-scrollbar{
	display: none;
}



.detail-topbar{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 5.8px 12px;
	border-bottom: 1px solid #eef2f6;
	background: rgba(255,255,255,0.98);
	backdrop-filter: blur(8px);
	overflow: visible;
}

.detail-close-btn,
.detail-icon-btn{
	border: 0;
	background: transparent;
	color: #223244;
	cursor: pointer;
	border-radius: 0;
	height: 36px;
	min-width: 36px;
	padding: 0 10px;
	font-weight: 600;
	font-size: 24px;
}

.detail-top-actions{
	position: relative;
	display: flex;
	gap: 4px;
}

.detail-topbar-id{
	flex: 1 1 auto;
	min-width: 0;
	padding: 0 12px;
	font-size: 13px;
	font-weight: 400;
	color: #9ca3af;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: center;
}

.detail-topbar-id-label{
	color: #9ca3af;
	font-weight: 400;
}

.detail-topbar-id-value{
	margin-left: 6px;
	color: #111827;
	font-weight: 600;
}

.detail-share-menu{
	position: absolute;
	top: calc(100% + 14px);
	left: auto;
	right: 14px;
	width: 260px;
	min-width: 0;
	max-width: calc(100% - 28px);
	padding: 16px 14px 18px;
	border-radius: 10px;
	border: 1px solid #e2e8f0;
	background: #ffffff;
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14);
	display: none;
	flex-direction: column;
	gap: 14px;
	z-index: 2147483647;
	pointer-events: auto;
	visibility: visible;
	transition: none;
	transform: none;
}

.detail-share-menu.open{
	display: flex;
}

.detail-top-actions{
	position: static;
	margin-left: auto;
	min-width: max-content;
}

.detail-auth-trigger{
	border: 0;
	background: transparent;
	color: #6b7280;
	cursor: pointer;
	height: 36px;
	padding: 0 4px 0 10px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.15px;
	white-space: nowrap;
}

.detail-auth-trigger:hover{
	color: #374151;
}

.detail-auth-trigger .auth-dot{
	margin: 0 4px;
	color: #9ca3af;
}

.detail-top-actions .detail-icon-btn{
	display: none;
}

.detail-share-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.detail-share-head strong{
	color: #111827;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	width: calc((100% - 18px) / 2);
	text-align: center;
	white-space: nowrap;
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
}

.detail-share-feedback{
	margin-left: 6px;
	color: #2563eb;
	font-size: 16px;
	font-weight: 700;
	vertical-align: baseline;
	display: inline-block;
	min-width: 42px;
	text-align: left;
}

.detail-share-close{
	width: 26px;
	height: 26px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #7b8490;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: none;
	transition: none;
	transform: none;
}

.detail-share-close i{
	font-size: 20px;
	line-height: 1;
}

.detail-share-options{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.detail-share-option{
	width: 100%;
	min-height: 76px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-size: 14px;
	letter-spacing: 0;
	font-weight: 500;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0;
	cursor: pointer;
	user-select: none;
	box-shadow: none;
	transition: none;
	transform: none;
}

.detail-share-option:hover,
.detail-share-option:focus,
.detail-share-option:focus-visible,
.detail-share-option:active{
	background: transparent;
	color: #111827;
	box-shadow: none;
	transform: none;
}

.detail-share-option-icon{
	width: 46px;
	height: 46px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #f2f4f7;
	color: #111827;
}

.detail-share-option.kakao .detail-share-option-icon{
	background: #FEE500;
	color: #111827;
}

.detail-share-option-icon i{
	font-size: 20px;
	line-height: 1;
}

.detail-scroll::-webkit-scrollbar{
	display: none;
}

.detail-hero{
	aspect-ratio: 4 / 3;
	height: auto;
	min-height: 0;
	background: #dbe6ef center / cover no-repeat;
	position: relative;
	overflow: hidden;
}

.detail-hero::after{
	display: none;
}

.detail-hero-slides{
	position: absolute;
	inset: 0;
	z-index: 0;
}

.detail-hero-slide{
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.35s ease;
	filter: contrast(1.05) brightness(1.03) saturate(1.05);
}

.detail-hero-slide.active{
	opacity: 1;
}

.detail-hero.detail-hero-preview-grid{
	aspect-ratio: 32 / 9;
	background: #ffffff;
	background-image: none;
}

.detail-hero.detail-hero-preview-grid .detail-hero-slides{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 2px;
	background: #ffffff;
}

.detail-hero.detail-hero-preview-grid .detail-hero-slide{
	position: relative;
	inset: auto;
	display: none;
	width: 100%;
	height: 100%;
	min-width: 0;
	opacity: 1;
	transition: none;
	background-color: #eef2f6;
}

.detail-hero.detail-hero-preview-grid .detail-hero-slide:nth-child(-n+2){
	display: block;
}

.detail-hero.detail-hero-preview-grid .detail-hero-nav{
	display: none;
}

.detail-hero.detail-hero-preview-grid .detail-hero-dots{
	right: 12px;
	bottom: 12px;
	min-width: 30px;
	height: 28px;
	padding: 0 9px;
}

.detail-hero.detail-hero-preview-grid .detail-hero-watermark{
	width: min(42%, 180px);
}

@media (max-width: 720px){
	.detail-hero.detail-hero-preview-grid{
		aspect-ratio: 16 / 9;
	}

	.detail-hero.detail-hero-preview-grid .detail-hero-slides{
		display: block;
	}

	.detail-hero.detail-hero-preview-grid .detail-hero-slide{
		position: absolute;
		inset: 0;
		display: block;
		opacity: 0;
		transition: opacity 0.35s ease;
	}

	.detail-hero.detail-hero-preview-grid .detail-hero-slide.active{
		opacity: 1;
	}
}

.detail-hero-watermark{
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	display: none;
	align-items: center;
	justify-content: center;
	width: min(78%, 300px);
	transform: translate(-50%, -50%);
	pointer-events: none;
	color: rgba(255, 255, 255, 0.58);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.28;
	text-align: center;
	word-break: keep-all;
	overflow-wrap: anywhere;
	text-shadow: 0 2px 10px rgba(15, 23, 42, 0.42);
	user-select: none;
}

.detail-hero img{
	filter: contrast(1.05) brightness(1.03) saturate(1.05);
}

.detail-hero{
	cursor: zoom-in;
}

.detail-hero-expand,
.detail-hero-nav{
	position: absolute;
	width: 44px;
	height: 56px;
	border-radius: 0;
	background: transparent;
	border: 0;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: none;
	cursor: pointer;
	z-index: 3;
	transition: background 0.15s ease, border-color 0.15s ease;
}

.detail-hero-nav{
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	transform: none;
}

.detail-hero-nav.prev{
	left: 12px;
}

.detail-hero-nav.next{
	right: 12px;
}

.detail-hero-nav i{
	font-size: 24px;
	font-weight: 600;
	color: #ffffff;
	line-height: 1;
	text-shadow: 0 2px 8px rgba(0,0,0,0.55);
}

.detail-hero-nav:hover{
	background: rgba(15,23,42,0.12);
}

.detail-hero-nav:active{
	background: rgba(15,23,42,0.20);
}

.detail-hero-dots{
	position: absolute;
	right: 16px;
	bottom: 16px;
	transform: none;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 52px;
	height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	background: rgba(15,23,42,0.62);
	color: #ffffff;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	z-index: 3;
}

.detail-hero-dot{
	width: 8px;
	height: 8px;
	border: 0;
	border-radius: 0;
	background: rgba(255,255,255,0.42);
	cursor: pointer;
	padding: 0;
	transition: width 0.2s ease, background 0.2s ease;
}

.detail-hero-dot.active{
	width: 20px;
	background: rgba(255,255,255,0.98);
}

.detail-hero-badge{
	display: none;
}

.detail-hero-overlay{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 18px 18px 38px;
	color: #fff;
}

.detail-hero-price-row{
	display: flex;
	align-items: flex-end;
	gap: 8px;
	flex-wrap: wrap;
	margin-bottom: 8px;
}

.detail-hero-deal{
	font-size: 16px;
	font-weight: 800;
	color: #8bd2ff;
	text-shadow: 0 2px 10px rgba(0,0,0,0.25);
	letter-spacing: -0.2px;
	line-height: 1.1;
}

.detail-hero-price{
	font-size: 34px;
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -1px;
	text-shadow: 0 3px 14px rgba(0,0,0,0.32);
}

.detail-hero-address{
	font-size: 14px;
	letter-spacing: -0.1px;
	line-height: 1.45;
	color: rgba(255,255,255,0.94);
	text-shadow: 0 1px 6px rgba(0,0,0,0.2);
}

.detail-hero-features{
	display: none;
}





.detail-summary-type-badge{
	display: inline-flex;
	align-items: center;
	height: 21px;
	padding: 0 8px;
	border-radius: 999px;
	background: #f5f7fa;
	color: #667085;
	font-size: 11.5px;
	letter-spacing: -0.1px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.15px;
	white-space: nowrap;
	max-width: 520px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.detail-summary-price-row{
	display: flex;
	align-items: center;
	gap: 7px;
	flex-wrap: wrap;
	margin-bottom: 8px;
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:6px;
}

.detail-summary-deal-badge{
	display: inline-flex;
	align-items: center;
	height: 21px;
	padding: 0 8px;
	border-radius: 999px;
	background: #eef5ff;
	color: #2563eb;
	font-size: 11.5px;
	letter-spacing: -0.1px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.15px;
	white-space: nowrap;
	margin-top:0;
}



.detail-summary-badges{
	display: flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.detail-summary-badge{
	display: inline-flex;
	align-items: center;
	height: 24px;
	padding: 0 10px;
	border-radius: 0;
	background: #eef5ff;
	color: #2563eb;
	font-size: 14px;
	letter-spacing: -0.1px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.15px;
	white-space: nowrap;
}

.detail-summary-price{
	font-family: var(--font-ui);
	font-variant-numeric: tabular-nums;
	font-size: 34px;
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: -0.55px;
	color: #111827;
	margin-bottom: 8px;
}

.detail-summary-address{
	font-size: 13.5px;
	letter-spacing: -0.1px;
	line-height: 1.5;
	color: #7b8794;
}



.detail-summary-price-row{
	align-items: flex-start;
	justify-content: flex-start;
	text-align: left;
	margin-bottom: 6px;
}

.detail-summary-price{
	text-align: left;
	margin-bottom: 0;
}

.detail-summary-address{
	margin-top: 6px;
	margin-bottom: 4px;
}

.detail-listing-no{
	display: none;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: -0.2px;
	color: #6b7280;
	margin-bottom: 4px;
	line-height: 1.3;
}

.detail-title-row{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 14px;
}

.detail-title-wrap{
	flex: 0 0 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.detail-listing-no{
	display: none;
	s font-size: 12.5px;
	font-weight: 700;
	letter-spacing: -0.2px;
	color: #6b7280;
	margin-bottom: 4px;
	line-height: 1.3;
}

.detail-title{
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: #1d2733;
	letter-spacing: -0.22px;
	line-height: 1.42;
}

.detail-inline-price,
.detail-inline-address,
.detail-type-badge{
	display: none;
}

.detail-meta-grid{
	display: grid;
	grid-template-columns: minmax(120px, 1.15fr) minmax(100px, 0.95fr) minmax(100px, 0.95fr);
	gap: 0;
	overflow: hidden;
	border-radius: 8px;
	border: 1px solid #eef2f6;
	margin-bottom: 14px;
	background: #fff;
}

.detail-meta-item{
	padding: 9px 11px;
	border-right: 1px solid #eef2f6;
	min-width: 0;
}

.detail-meta-item:last-child{
	border-right: 0;
}

.detail-meta-label{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	letter-spacing: -0.1px;
	color: #98a2b3;
	margin-bottom: 4px;
	font-weight: 600;
}

.detail-meta-value{
	display: flex;
	align-items: center;
	min-height: 20px;
	line-height: 1;
	font-size: 14px;
	color: #1f6fff;
	font-weight: 700;
	letter-spacing: -0.15px;
}



#detailAreaLabel{
	font-size: 11.5px;
	font-weight: 600;
	color: #98a2b3;
	letter-spacing: -0.02px;
}

.detail-desc{
	font-family: "Inter", "Pretendard", sans-serif;
	font-size: 13px;
	margin-bottom: 16px;
	color: #1f2a36;
	line-height: 1.58;
	white-space: pre-line;
	background: #ffffff;
	border: 1px solid #eef2f6;
	border-radius: 8px;
	padding: 14px 15px;
}

.detail-section-title{
	display: none;
}

.detail-info-sections{
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 6px;
	margin-bottom: 16px;
}

.detail-info-section{
	background: #ffffff;
	border: 1px solid #eef2f6;
	border-radius: 8px;
	padding: 14px 15px 12px;
	box-shadow: none;
}

.detail-info-section-title{
	font-size: 14px;
	font-weight: 700;
	color: #111827;
	margin-bottom: 10px;
	letter-spacing: -0.15px;
	padding-left: 0;
	margin-left: 0;
	line-height: 1.3;
}

.detail-info-list{
	margin-bottom: 0;
	background: transparent;
	border: 0;
}

.detail-info-row{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 72px;
	padding: 9px 0;
	border-bottom: 1px solid #f1f4f8;
}

.detail-info-row:last-child{
	border-bottom: 0;
	padding-bottom: 2px;
}

.detail-info-label{
	min-width: 100px;
	font-size: 12.5px;
	letter-spacing: -0.1px;
	font-weight: 500;
	color: #98a2b3;
	text-align: left;
	line-height: 1.3;
	letter-spacing: -0.15px;
}

.detail-info-value{
	flex: 1;
	font-size: 12.5px;
	font-weight: 600;
	color: #1f2a36;
	text-align: right;
	line-height: 1.5;
	white-space: normal;
	word-break: break-word;
	overflow-wrap: anywhere;
	letter-spacing: -0.2px;
	min-width: 0;
}

.detail-agent-card{
	border-radius: 8px;
	border: 1px solid #eef2f6;
	background: #ffffff;
	padding: 14px;
	margin-bottom: 16px;
	box-shadow: none;
}

.detail-agent-top{
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.detail-agent-avatar{
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #eef3f7;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #4d5d6d;
	font-weight: 800;
	font-size: 14px;
	letter-spacing: -0.1px;
	overflow: hidden;
	flex-shrink: 0;
	border: 1px solid #e5ebf1;
}

.detail-agent-avatar img{
	border-radius: 50%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.detail-agent-main{
	flex: 0 0 auto;
	min-width: 0;
}

.detail-agent-name-row{
	display: flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
	margin-bottom: 4px;
}

.detail-agent-name{
	font-size: 14px;
	font-weight: 700;
	color: #202124;
	line-height: 1.4;
}

.detail-agent-title{
	font-size: 13px;
	font-weight: 600;
	color: #6b7280;
	line-height: 1.4;
}

.detail-agent-office{
	font-size: 13px;
	letter-spacing: -0.1px;
	font-weight: 700;
	color: #202124;
	line-height: 1.52;
	margin-bottom: 5px;
}

.detail-agent-address{
	font-size: 13px;
	letter-spacing: -0.1px;
	color: #525a66;
	line-height: 1.52;
	margin-bottom: 5px;
}

.detail-agent-regno{
	font-size: 13px;
	letter-spacing: -0.1px;
	color: #525a66;
	line-height: 1.52;
	margin-bottom: 5px;
}

.detail-agent-phone-inline{
	font-size: 13px;
	letter-spacing: -0.1px;
	font-weight: 700;
	color: #202124;
	line-height: 1.52;
	margin-bottom: 5px;
}



.detail-roadview-inline-btn:hover{
	background: #eff6ff;
}

.detail-action-box{
	display: none;
}

.detail-phone{
	display: none;
}

.detail-actions{
	display: none;
}

.detail-action-btn{
	flex: 0 0 auto;
	min-width: 100px;
	min-height: 38px;
	padding: 0 12px;
	border: 0;
	border-radius: 0;
	background: #eef3f7;
	color: #203040;
	font-size: 14px;
	letter-spacing: -0.1px;
	font-weight: 800;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 4px 10px rgba(0,0,0,0.08);
	transition: box-shadow 0.2s ease;
}

.detail-action-btn.primary{
	background: #0f2942;
	color: #fff;
}

.detail-action-btn i{
	margin-right: 6px;
	font-size: 1em;
	line-height: 1;
}

.detail-action-btn:hover{
	box-shadow: 0 6px 14px rgba(0,0,0,0.12);
}

.detail-agent-cta-row{
	display: flex;
	gap: 8px;
	margin-top: 14px;
	justify-content: flex-start;
}

.detail-agent-cta-btn{
	padding: 0 12px;
	min-width: 96px;
	max-width: 140px;
}

.detail-agent-cta-btn{
	flex: 0 0 auto;
	min-width: 0;
	height: 30px;
	border: 0;
	border-radius: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	font-size: 13px;
	letter-spacing: -0.1px;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
	box-shadow: 0 2px 6px rgba(15, 41, 66, 0.06);
}

.detail-agent-cta-btn i{
	margin-right: 0;
	line-height: 1;
	font-size: 14px;
	letter-spacing: -0.1px;
}

.detail-agent-cta-btn.kakao{
	background: #FEE500;
	color: #191919;
}

.detail-agent-cta-btn.kakao:hover{
	background: #FEE500;
	color: #191919;
	box-shadow: 0 2px 6px rgba(15, 41, 66, 0.06);
}

.detail-agent-cta-btn.phone{
	background: #fff;
	color: #111827;
	border: 1px solid #e5e7eb;
}

.detail-agent-cta-btn.phone:hover{
	background: #f8fafc;
}

.detail-action-btn.kakao-btn{
	background: #FEE500;
	color: #111;
	border-radius: 0;
	font-weight: 700;
}

/* 오른쪽 상세 패널 유형 색상 */ 











.detail-image-lightbox{
	position: fixed;
	inset: 0;
	z-index: 2147483647 !important;
	display: none;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.82);
	padding: 0;
}

.detail-image-lightbox.open{
	display: flex;
}

body.detail-image-lightbox-open .map-side-tools,
body.detail-image-lightbox-open .map-zoom-stack,
body.detail-image-lightbox-open .map-type-popover,
body.detail-image-lightbox-open .education-facility-filter-panel{
	display: none !important;
}

body.detail-image-lightbox-open .global-topbar,
body.detail-image-lightbox-open .global-topbar-inner,
body.detail-image-lightbox-open .global-topbar-menu,
body.detail-image-lightbox-open .global-topbar-right,
body.detail-image-lightbox-open .global-topbar-more-menu,
body.detail-image-lightbox-open .realjeju-side-nav{
	pointer-events: none !important;
	z-index: 1000 !important;
}

body.detail-image-lightbox-open #globalTopbarRight,
body.detail-image-lightbox-open .global-topbar-right,
body.detail-image-lightbox-open #globalTopbarMoreMenu{
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.detail-image-lightbox-stage{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	box-sizing: border-box;
	background: transparent;
	padding: 84px 76px 112px;
}

.detail-image-lightbox-info{
	position: absolute;
	top: 20px;
	left: 20px;
	right: 180px;
	z-index: 3;
	color: #fff;
	text-align: left;
	pointer-events: none;
}

.detail-image-lightbox-title{
	max-width: min(720px, calc(50vw - 90px));
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.25;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
}

.detail-image-lightbox-meta{
	margin-top: 4px;
	max-width: min(720px, 60vw);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: rgba(255, 255, 255, 0.72);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
}

#detailImageLightboxImg{
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	border-radius: 0;
	box-shadow: 0 20px 50px rgba(0,0,0,0.35);
	background: #111;
	display: block;
}

.detail-image-lightbox-close,
.detail-image-lightbox-nav{
	width: 46px;
	height: 46px;
	min-width: 46px;
	border-radius: 999px;
	border: 1px solid rgba(255,255,255,0.28);
	background: rgba(15,23,42,0.42);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.22);
	z-index: 2;
	transition: box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.detail-image-lightbox-nav{
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	margin: 0;
}

.detail-image-lightbox-nav.prev{
	left: 16px;
}

.detail-image-lightbox-nav.next{
	right: 16px;
}

.detail-image-lightbox-close{
	position: absolute;
	top: 18px;
	right: 18px;
	width: 44px;
	height: 44px;
}

.detail-image-lightbox-nav:hover,
.detail-image-lightbox-close:hover{
	background: rgba(15,23,42,0.58);
	border-color: rgba(255,255,255,0.42);
	box-shadow: 0 10px 26px rgba(0,0,0,0.26);
}

.detail-image-lightbox-nav:active{
	background: rgba(15,23,42,0.68);
}

.detail-image-lightbox-close:active{
	background: rgba(15,23,42,0.68);
}

.detail-image-lightbox-nav i,
.detail-image-lightbox-close i{
	display: block;
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	line-height: 1;
	text-shadow: 0 2px 8px rgba(0,0,0,0.55);
}

.detail-image-lightbox-close i{
	font-size: 22px;
}

.detail-image-lightbox-count{
	position: absolute;
	top: 24px;
	left: 50%;
	transform: translateX(-50%);
	display: none;
	align-items: center;
	justify-content: center;
	min-width: 52px;
	height: 30px;
	padding: 0 10px;
	border-radius: 999px;
	background: rgba(15,23,42,0.62);
	color: #ffffff;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	font-variant-numeric: tabular-nums;
	z-index: 2;
}

.detail-image-lightbox-thumbnails{
	position: absolute;
	left: 50%;
	bottom: 22px;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 8px;
	max-width: calc(100vw - 140px);
	overflow-x: auto;
	overflow-y: hidden;
	padding: 4px;
	box-sizing: border-box;
	scrollbar-width: none;
	overscroll-behavior-inline: contain;
	z-index: 3;
}

.detail-image-lightbox-thumbnails::-webkit-scrollbar{
	display: none;
}

.detail-image-lightbox-thumbnail{
	position: relative;
	flex: 0 0 72px;
	width: 72px;
	height: 54px;
	padding: 0;
	overflow: hidden;
	border: 2px solid transparent;
	border-radius: 8px;
	background: rgba(17, 24, 39, 0.72);
	box-sizing: border-box;
	cursor: pointer;
	opacity: 0.7;
	transition: opacity 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.detail-image-lightbox-thumbnail:hover{
	opacity: 1;
}

.detail-image-lightbox-thumbnail.active{
	border-color: #fff;
	opacity: 1;
	transform: translateY(-2px);
}

.detail-image-lightbox-thumbnail img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #111827;
}

@media (max-width: 980px)
{
	:root{
		--sidebar-current-width: 100%;
	}

	body{
		overflow: auto;
	}

	.global-topbar-left,
.global-topbar-right{
		justify-self: stretch;
	}

	.sidebar-inner,
.sidebar.expanded .sidebar-inner{
		grid-template-columns: 1fr;
	}

	.map-result-count{
		top: 124px;
	}

	.map-agent-card{
		top: 12px;
		right: 12px;
		left: 12px;
		width: auto;
		max-width: none;
	}

	.map-agent-head{
		gap: 7px;
		padding: 12px 14px 9px;
	}

	.map-agent-head-title{
		font-size: 16px;
	}

	.map-agent-head-sub{
		font-size: 13px;
	}

	.map-agent-body{
		grid-template-columns: 96px 1fr;
		gap: 10px;
		padding: 11px 12px 12px;
	}

	.map-agent-photo{
		height: 96px;
	}

	.map-agent-content{
		gap: 6px;
	}

	.map-agent-name{
		font-size: 20px;
	}

	.map-agent-office{
		font-size: 14px;
	}

	.map-agent-desc{
		font-size: 12px;
	}

	.map-agent-meta-row{
		display:flex;
		align-items:center;
		gap:10px;
		min-height:24px;
	}

	.map-agent-meta-label{
		width:72px;
		flex:0 0 72px;
		font-size:13px;
		font-weight:700;
		color:#9aa3af;
		line-height:1.35;
		margin:0;
		padding:0;
		transform:none;
		font-family:var(--font-ui);
	}

	.map-agent-meta-value{
		flex:1 1 auto;
		font-size:14px;
		font-weight:600;
		color:#4b5563;
		font-family:var(--font-ui);
		font-variant-numeric:normal;
		line-height:1.35;
		margin:0;
		padding:0;
	}

	.detail-image-lightbox-nav,
.detail-image-lightbox-close{
		width: 44px;
		height: 44px;
		min-width: 44px;
		border-radius: 999px;
	}

	.detail-image-lightbox-nav.prev{
		left: 8px;
	}

	.detail-image-lightbox-nav.next{
		right: 8px;
	}

	.detail-image-lightbox-close{
		top: 12px;
		right: 12px;
		width: 44px;
		height: 44px;
	}

	.detail-image-lightbox-count{
		top: 18px;
		left: 50%;
		font-size: 13px;
		height: 28px;
		min-width: 48px;
		padding: 0 9px;
	}

	.detail-image-lightbox-stage{
		padding: 78px 54px 96px;
	}

	.detail-image-lightbox-info{
		top: 14px;
		left: 14px;
		right: 72px;
	}

	.detail-image-lightbox-title{
		max-width: calc(50vw - 38px);
		font-size: 14px;
	}

	.detail-image-lightbox-meta{
		max-width: 62vw;
		font-size: 12px;
	}

	.detail-image-lightbox-thumbnails{
		bottom: 14px;
		max-width: calc(100vw - 28px);
		gap: 6px;
	}

	.detail-image-lightbox-thumbnail{
		flex-basis: 60px;
		width: 60px;
		height: 45px;
		border-radius: 7px;
	}

}

.detail-action-btn.cross-btn{
	display: none;
}

.detail-action-btn.cross-btn:hover{
	display: none;
}

.detail-action-btn.cross-btn{
	background: #03C75A;
	color: #fff;
}

/* right detail summary: type + deal on one line, same feel as left card badges */ 

.detail-summary-type-badge,
.detail-summary-deal-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 24px;
	padding: 0 8px;
	border-radius: 0;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.12px;
	white-space: nowrap;
}

.detail-summary-price-row{
	display: block;
	margin-bottom: 8px;
}

.detail-summary-price{
	display: block;
}

.detail-summary-deal-badge[data-deal="전세"]{
	background:#E6F0FF;
	color:#2563EB;
}

.detail-summary-deal-badge[data-deal="월세"]{
	background:#E6FFF2;
	color:#16A34A;
}

.detail-summary-deal-badge[data-deal="년세"]{
	background:#FFF7E6;
	color:#D97706;
}





.detail-summary-deal-badge[data-deal="전세"]{
	box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.08);
}

.detail-summary-deal-badge[data-deal="월세"]{
	box-shadow: inset 0 0 0 1px rgba(22, 163, 74, 0.08);
}

.detail-summary-deal-badge[data-deal="년세"]{
	box-shadow: inset 0 0 0 1px rgba(217, 119, 6, 0.08);
}



.detail-area-wrap.land-two-line{
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex-wrap: nowrap;
	white-space: nowrap;
	width: auto;
}

.detail-area-wrap.land-two-line .area-display,
.detail-area-wrap.land-two-line #detailAreaValue{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	white-space: nowrap;
}

/* right panel area: always 2 lines, value and unit button inline */ .detail-meta-item:first-child .detail-meta-label{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-bottom: 8px;
	width: 100%;
}

.detail-meta-item:first-child .detail-area-wrap{
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex-wrap: nowrap;
	white-space: nowrap;
	width: auto;
}

.detail-meta-item:first-child #detailAreaValue{
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	line-height: 1;
	margin: 0;
}

.detail-meta-item:first-child #detailAreaToggleBtn{
	display: none;
}

/* stronger premium font tuning */ 
.card-title,
.detail-title,
.brand-title{
	font-weight: 800;
}

/* 왼쪽 패널 - 금액 */
.card-price,
.detail-summary-price,
.detail-hero-price{
	font-weight: 700;
	letter-spacing: -0.9px;
}

/* 왼쪽 패널 - 주소, 면적 */
.card-spec,
.card-address,
.detail-summary-address,
.detail-desc{
	font-weight: 400;
}

/* 왼쪽 패널 - 매뮬 유형 뱃지 */
.card-badge,
.card-deal,
.detail-summary-type-badge,
.detail-summary-deal-badge,
.map-tool-btn,
.map-unit-half-btn{
	font-weight: 600;
}

/* right-panel open performance tuning */
.detail-hero,
.detail-hero-slides,
.detail-content{
	transform: translateZ(0);
}

/* ===== consolidated layout & component rules (single source of truth) ===== */ :root{
	--bg:#f8fafc;
	--line:#edf1f5;
	--text:#111827;
	--brand:#4F46E5;
	--sidebar-list-width:430px;
	--detail-panel-width: var(--rj-detail-panel-width);
	--sidebar-current-width:var(--sidebar-list-width);
	--radius-main: 0px;
	--radius-small: 0px;
	--radius-pill: 0px;
	--shadow:0 10px 28px rgba(15,23,42,0.06);
	--topbar-main-height:65px;
	--topbar-sub-height:55px;
	--global-topbar-height:var(--topbar-main-height);
	--sub-topbar-height:var(--topbar-sub-height);
	--detail-panel-top:0px;
	--detail-panel-height:100%;
}

.sidebar-detail-panel{
	position:absolute;
	top:0;
	left:var(--sidebar-list-width);
	width:var(--detail-panel-width);
	height:100%;
	max-height:100%;
	z-index:200;
	opacity:0;
	pointer-events:none;
	transition:opacity .22s ease;
	background:#fff;
	border-left:1px solid #e6ebf0;
	border-right:1px solid var(--realjeju-panel-line-color, #e5e7eb);
}



.detail-panel-inner{
	height:100%;
	display:flex;
	flex-direction:column;
	min-height:0;
}

.detail-scroll{
	flex:1 1 auto;
	min-height:0;
	overflow-y:auto;
	overflow-x:hidden;
	-webkit-overflow-scrolling:touch;
}

body.shared-detail-mode .sidebar-list-panel{
	display:none;
}

body.shared-detail-mode .sidebar-detail-panel{
	left:0;
	width:var(--sidebar-list-width);
	display:block;
	opacity:1;
	pointer-events:auto;
	visibility:visible;
	/* PATCH 3.849: 최근조회 공유 상세에서도 상세 패널 왼쪽 회색 구분선을 유지한다. */
	border-left: 1px solid #e6ebf0;
}

body.shared-detail-mode .sidebar:not(.expanded) .sidebar-detail-panel{
	opacity:1;
	pointer-events:auto;
}

.detail-features,
#detailFeatures,
.detail-hero-features,
#detailHeroFeatures,
.brand-card{
	display:none;
}



.detail-summary-top{
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap;
	margin-bottom:18px;
}



.detail-summary-deal-badge[data-deal="매매"],
.detail-summary-deal-badge[data-deal="전세"],
.detail-summary-deal-badge[data-deal="월세"],
.detail-summary-deal-badge[data-deal="년세"],
.detail-summary-deal-badge:not([data-deal]){
	background:#eef5ff;
	color:#2563eb;
}

.detail-tags-row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	width:100%;
}

.detail-tags{
	display:flex;
	align-items:center;
	gap:4px;
	flex-wrap:wrap;
	min-width:0;
}

.detail-feature-tag{
	display:inline-flex;
	align-items:center;
	height:28px;
	min-height:28px;
	padding:0 10px;
	border-radius: 0;
	background:rgba(3,199,90,.08);
	border:1px solid rgba(3,199,90,.18);
	color:#03C75A;
	font-size:14px;
	letter-spacing:-0.15px;
	font-weight:700;
	white-space:nowrap;
}

.detail-roadview-inline-btn{
	margin-left:auto;
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:4px;
	height:28px;
	padding:0 10px;
	border-radius: 999px;
	border:1px solid #bfd4ff;
	background:#ffffff;
	color:#2563eb;
	font-size:14px;
	letter-spacing:-0.1px;
	font-weight:700;
	cursor:pointer;
	white-space:nowrap;
}

.detail-roadview-inline-btn i{
	margin-right:0;
	font-size:14px;
	line-height:1;
}

.detail-inline-roadview-btn{
	margin-left:auto;
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:4px;
	height:30px;
	padding:0 12px;
	border-radius: 999px;
	border:1px solid #bfd4ff;
	background:#ffffff;
	color:#2563eb;
	font-size:14px;
	font-weight:800;
	white-space:nowrap;
	cursor:pointer;
}

.detail-inline-roadview-btn i{
	font-size:14px;
	line-height:1;
}

.detail-meta-item{
	padding-top:10px;
	padding-bottom:10px;
}

.detail-meta-label{
	margin-bottom:4px;
}

.detail-meta-value,
#detailAreaValue,
#detailTypeValue,
#detailRegionValue{
	min-height:26px;
	height:26px;
	display:flex;
	align-items:center;
	line-height:1;
}

.detail-area-wrap{
	min-height:26px;
	height:26px;
	display:inline-flex;
	align-items:center;
	justify-content:flex-start;
	gap:6px;
	flex-wrap:nowrap;
	white-space:nowrap;
	min-width:0;
	width:max-content;
	line-height:1;
}

.detail-meta-item:first-child #detailAreaTypeToggleBtn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	vertical-align:middle;
	flex:0 0 auto;
	margin-left:0;
}

.detail-topbar .detail-close-btn i,
.detail-topbar .detail-icon-btn i{
	font-size:22px;
}

.card-price,
.card-date,
.card-spec,
.detail-summary-price,
.detail-hero-price,
.detail-meta-value,
.map-recommend-price,
.map-agent-meta-value,
#mapAgentPhone,
.area-num,
.area-rest,
.sub-version-fixed,
.global-sort-chip,
.map-result-count{
	font-family: var(--font-ui);
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1, "lnum" 1;
}

.maintenance-fixed-under100-row.is-hidden,
.maintenance-fixed-detail-row.is-hidden{
	display: none;
}

.maintenance-detail-type-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 44px;
	align-items: flex-start;
}

/* PATCH 2.229: 관리비 부과기준 라디오를 긴 문구 기준으로 수평 정렬 */
.maintenance-detail-type-grid{
	grid-auto-rows: minmax(40px, auto);
	align-items: stretch;
	row-gap: 10px;
}

.maintenance-detail-type-grid .property-radio-option{
	height: 100%;
	min-height: 40px;
	align-items: center;
	line-height: 1.35;
}

/* PATCH 2.317: 부과기준 왼쪽 라벨과 첫 라디오 항목의 높이 기준을 맞춤 */
.maintenance-detail-type-grid{
	row-gap: 10px;
}

.maintenance-form-row.maintenance-detail-row > .property-form-label{
	display: flex;
	align-items: center;
	min-height: 40px;
	line-height: 1.3;
}

.maintenance-detail-type-grid .property-radio-option input{
	align-self: center;
}

.maintenance-detail-type-grid .property-radio-option span{
	display: inline-block;
	line-height: 1.35;
}

@media (max-width: 720px)
{
	.maintenance-form-row{
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.maintenance-choice-grid,
.maintenance-include-grid,
.maintenance-detail-type-grid{
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.maintenance-fee-field,
.maintenance-etc-fee-field{
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.maintenance-tab{
		font-size: 14px;
	}
}

.card-badge[data-type="다가구주택"],
.detail-summary-type-badge[data-type="다가구주택"],
.map-region-complex-badge[data-type="다가구주택"]{
    background: #fff7ed;
    color: #c2410c;
    box-shadow: inset 0 0 0 1px #fed7aa;
}

/* PATCH 2.551: right detail panel cleaner property-tech hierarchy */
.detail-summary-block{
	padding: 18px 20px 16px;
	margin-bottom: 0;
	border-bottom: 1px solid #eef2f6;
	background: #ffffff;
}

.detail-content{
	padding: 0;
}

.detail-summary-top{
	margin-bottom: 10px;
	gap: 6px;
}

.detail-summary-type-badge,
.detail-summary-deal-badge,
.map-region-complex-badge,
.broker-listing-flag-badge{
	height: 23px;
	border-radius: 999px;
	padding: 0 8px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.1px;
}

.detail-summary-broker-flags,
.card-broker-flag-badges{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
}

.broker-listing-flag-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 23px;
	min-width: 0;
	padding: 0 8px;
	border-radius: 999px;
	border: 1px solid #bfd4ff;
	background: #ffffff;
	color: #2563eb;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.1px;
	white-space: nowrap;
	word-break: keep-all;
	box-sizing: border-box;
}

.detail-summary-price-row{
	margin-bottom: 8px;
}

.detail-summary-price{
	color: #0b1220;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: -0.55px;
	line-height: 1.08;
}

.detail-title{
	color: #202124;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.42;
	letter-spacing: -0.16px;
	margin-bottom: 6px;
}

.detail-summary-address{
	color: #525a66;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
}

.detail-info-sections{
	gap: 0;
	margin-top: 0;
	margin-bottom: 0;
	background: #ffffff;
}

.detail-info-section{
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid #eef2f6;
	padding: 17px 20px 14px;
	background: #ffffff;
}

.detail-info-section-title{
	font-size: 14.5px;
	font-weight: 700;
	color: #202124;
	margin-bottom: 8px;
}

.detail-info-row{
	gap: 20px;
	padding: 9.5px 0;
	border-bottom: 1px solid #f3f5f8;
}

.detail-info-label{
	color: #6b7280;
	font-size: 13px;
	font-weight: 500;
}

.detail-info-value{
	color: #202124;
	font-size: 14px;
	font-weight: 600;
	white-space: pre-line;
}

.detail-desc{
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid #eef2f6;
	margin-bottom: 0;
	padding: 0 20px 18px;
	color: #202124;
	font-size: 14.5px;
	line-height: 1.66;
}

.detail-desc-title{
	padding: 17px 20px 12px;
	color: #202124;
	font-size: 15.5px;
	font-weight: 700;
	line-height: 1.35;
	border-top: 0;
	background: #ffffff;
}

.detail-agent-card{
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid #eef2f6;
	padding: 17px 20px;
}

.detail-meta-grid{
	border: 0;
	border-radius: 0;
	border-bottom: 1px solid #eef2f6;
	margin-bottom: 0;
	background: #ffffff;
}

.detail-meta-item{
	padding: 17px 20px 14px;
	border-right: 1px solid #f3f5f8;
}

/* ===== PATCH: 매물 등록 - 상세 정보 ===== */
.property-detail-card{
	min-height: 0;
}

.property-detail-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 32px;
}

.property-detail-row:last-child{
	margin-bottom: 0;
}

.property-detail-row.property-detail-date-row{
	margin-bottom: 18px;
}

.property-detail-date-check-row{
	margin-top: -6px;
	margin-bottom: 28px;
}

:root{
	--property-sub-check-gap-top: 12px;
	--property-sub-check-gap-bottom: 28px;
}

.property-detail-input,
.property-detail-textarea{
	width: 100%;
	border: 1px solid #d7dee8;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.16px;
	outline: none;
	box-shadow: none;
}

.property-detail-input{
	height: 54px;
	padding: 0 16px;
}

.property-detail-input::placeholder,
.property-detail-textarea::placeholder{
	color: #a8b0bc;
}

.property-detail-textarea{
	min-height: 256px;
	padding: 12px;
	resize: vertical;
	line-height: 1.55;
}

.property-detail-text-count{
	margin-top: 8px;
	text-align: right;
	font-size: 14px;
	font-weight: 500;
	color: #8b95a1;
	letter-spacing: -0.12px;
}

@media (max-width: 720px)
{
	.property-detail-row{
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.property-detail-date-check-row{
		margin-top: 0;
	}
}

/* 상세 정보: 라벨과 오른쪽 항목 세로 중앙 정렬 */
.property-detail-row{
	align-items: center;
}

.property-detail-row .property-form-control,
.property-detail-row .property-info-field{
	align-self: center;
}

.property-watermark-control{
	display: flex;
	align-items: center;
	gap: 18px;
	min-height: 44px;
}

/* 상세 설명 textarea는 큰 박스 기준 중앙 정렬 */
.property-detail-row:has(#propertyDetailDescriptionInput){
	align-items: center;
}

body[data-property-type="land"] #buildingUseRow,
body[data-property-type="land"] .property-detail-date-row,
body[data-property-type="land"] .property-detail-date-check-row{
	display: none;
	visibility: hidden;
	pointer-events: none;
}

.property-address-wrap.has-detail-address .property-register-input{
	padding-right: var(--property-address-main-detail-padding-right);
}

.property-address-main-detail{
	position: absolute;
	top: 50%;
	right: var(--property-address-main-detail-right);
	transform: translateY(-50%);
	max-width: var(--property-address-main-detail-max-width);
	font-size: var(--property-address-main-detail-font-size);
	font-weight: var(--property-address-main-detail-font-weight);
	letter-spacing: -0.14px;
	line-height: 1;
	color: var(--property-address-main-detail-color);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	pointer-events: none;
	display: none;
}

.property-address-wrap.has-detail-address .property-address-main-detail{
	display: inline-flex;
	align-items: center;
}

.property-address-search-input,
.property-address-detail-input{
	width: 100%;
	height: var(--property-address-input-height);
	min-height: var(--property-address-input-height);
	border: var(--property-address-input-border);
	border-radius: var(--property-address-input-radius);
	background: var(--property-address-input-bg);
	color: var(--property-address-input-color);
	font-family: var(--font-ui);
	font-size: var(--property-address-input-font-size);
	font-weight: var(--property-address-input-font-weight);
	letter-spacing: var(--property-address-input-letter-spacing);
	outline: none;
	box-shadow: none;
	box-sizing: border-box;
}

.property-address-detail-input{
	padding: 0
	        var(--property-address-detail-input-padding-x);
}

.property-address-search-input:focus,
.property-address-detail-input:focus{
	border: var(--property-address-input-border-focus);
	background: var(--property-address-input-bg);
	box-shadow: none;
	outline: none;
}

.property-address-search-input::placeholder,
.property-address-detail-input::placeholder{
	color: var(--property-address-input-placeholder-color);
	font-weight: 500;
}

.property-address-result-line,
.property-address-detail-road,
.property-address-detail-jibun{
	font-size: var(--property-address-line-font-size);
	font-weight: var(--property-address-line-font-weight);
	line-height: var(--property-address-line-height);
	letter-spacing: -0.2px;
	color: #111827;
}

.property-address-result-select,
.property-address-detail-confirm{
	height: var(--property-address-primary-button-height);
	min-width: var(--property-address-primary-button-min-width);
	width: auto;
	padding: 0
	        var(--property-address-primary-button-padding-x);
	border-radius: var(--property-address-primary-button-radius);
	border: var(--property-address-primary-button-border);
	background: var(--property-address-primary-button-bg);
	color: var(--property-address-primary-button-color);
	font-size: var(--property-address-primary-button-font-size);
	font-weight: var(--property-address-primary-button-font-weight);
	letter-spacing: var(--property-address-primary-button-letter-spacing);
	box-shadow: none;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.property-address-result-select:hover,
.property-address-detail-confirm:hover{
	background: var(--property-address-primary-button-bg);
	border: var(--property-address-primary-button-border);
	color: var(--property-address-primary-button-color);
}

.property-address-detail-screen,
.property-address-search-screen{
	display: none;
}

.property-address-detail-screen.open,
.property-address-search-screen.open{
	display: block;
}

.property-address-detail-head{
	display: block;
	margin-bottom: var(--property-address-detail-head-margin-bottom);
}

.property-address-detail-address-row{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--property-address-address-row-gap);
	margin: 0
	        0
	        var(--property-address-address-row-margin-bottom);
}

.property-address-detail-label{
	display: inline-flex;
	align-items: center;
	height: var(--property-address-detail-label-height);
	margin: 0;
	padding: 0;
	font-size: var(--property-address-detail-label-font-size);
	font-weight: var(--property-address-detail-label-font-weight);
	line-height: 1;
	letter-spacing: -0.16px;
	color: var(--property-address-title-color);
}

.property-address-detail-selected{
	margin: var(--property-address-selected-margin-top)
	        var(--property-address-selected-margin-right)
	        var(--property-address-selected-margin-bottom)
	        var(--property-address-selected-margin-left);
}

.property-address-detail-road{
	margin: 0
	        0
	        var(--property-address-line-margin-bottom);
}

.property-address-detail-jibun{
	margin: 0;
	display: flex;
	align-items: center;
	gap: var(--property-address-line-gap);
}

.property-address-detail-section-title{
	margin: 0
	        0
	        var(--property-address-detail-section-title-margin-bottom);
	font-size: var(--property-address-detail-label-font-size);
	font-weight: var(--property-address-detail-label-font-weight);
	letter-spacing: -0.45px;
	color: var(--property-address-title-color);
}

.property-address-detail-section-title span{
	font-weight: 500;
	color: #6b7280;
}

.property-address-detail-help{
	margin: 0
	        0
	        var(--property-address-detail-help-margin-bottom);
	font-size: var(--property-address-detail-help-font-size);
	font-weight: 500;
	letter-spacing: -0.2px;
	color: var(--property-address-detail-help-color);
}

.property-address-detail-actions{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: var(--property-address-detail-actions-gap);
	margin-top: var(--property-address-detail-actions-margin-top);
}

.property-address-detail-actions .property-address-detail-edit,
.property-address-detail-actions .property-address-detail-confirm{
	height: var(--property-address-secondary-button-height);
	min-width: var(--property-address-secondary-button-min-width);
	padding: 0
	        var(--property-address-secondary-button-padding-x);
	border-radius: var(--property-address-secondary-button-radius);
	font-size: var(--property-address-secondary-button-font-size);
	font-weight: var(--property-address-secondary-button-font-weight);
	letter-spacing: -0.18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	cursor: pointer;
}

.property-address-detail-actions .property-address-detail-edit{
	border: var(--property-address-secondary-button-border);
	background: var(--property-address-secondary-button-bg);
	color: var(--property-address-secondary-button-color);
}

.property-address-detail-actions .property-address-detail-confirm{
	border: var(--property-address-primary-button-border);
	background: var(--property-address-primary-button-bg);
	color: var(--property-address-primary-button-color);
}

.property-address-detail-actions .property-address-detail-edit:hover{
	background: var(--property-address-secondary-button-bg);
	color: var(--property-address-secondary-button-color);
	border: var(--property-address-secondary-button-border);
}

.property-address-detail-actions .property-address-detail-confirm:hover{
	background: var(--property-address-primary-button-bg);
	color: var(--property-address-primary-button-color);
	border: var(--property-address-primary-button-border);
}

.property-address-detail-address-row .property-address-detail-edit{
	display: none;
}

.property-address-detail-edit i{
	display: none;
}

/* PATCH 2.654: 오른쪽 상세 패널 뱃지를 부동산 홈 카드와 같은 톤으로 통일 */
.detail-summary-type-badge{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.detail-summary-deal-badge[data-deal="매매"],
.detail-summary-deal-badge:not([data-deal]){
	background: #ffffff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}


/* ===== MERGED FROM property-register_2.712.css ===== */
/* =====================================================
   3. 매물 등록 / 수정
   ===================================================== */
/* ===== INLINE FROM property-register.css ===== */
/* REALJEJU property-register.css - stable split from realjeju_2.361(3).html / Ver 2.551 */

.auth-profile-photo-preview,
.auth-myinfo-photo{
	width: 84px;
	height: 84px;
	border-radius: 50%;
	object-fit: cover;
	background: #e5e7eb;
	border: 2px solid #e5e7eb;
	flex: 0 0 auto;
}

.auth-modal.profile-page-mode .auth-myinfo-photo,
.auth-modal.profile-page-mode .auth-profile-photo-preview{
	width: var(--profile-page-photo-size);
	height: var(--profile-page-photo-size);
	border-radius: var(--profile-page-photo-radius);
	object-fit: cover;
	background: #e5e7eb;
	border: 0;
	box-shadow: none;
}

/* 개인정보 설정 페이지 내부 안내문 / 프로필 사진 영역 / 회원유형 네모 강제 */
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-guide,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-field,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-box,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-preview,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-select-btn,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-select-wrap,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-select-wrap *,
.auth-modal.profile-page-mode .auth-profile-setup-screen #authProfileRoleRequestSelect,
.auth-modal.profile-page-mode .auth-profile-setup-screen [class*="role"],
.auth-modal.profile-page-mode .auth-profile-setup-screen [class*="role"] *,
.auth-modal.profile-page-mode .auth-profile-setup-screen [class*="select"],
.auth-modal.profile-page-mode .auth-profile-setup-screen [class*="select"] *{
	border-radius: 0;
	box-shadow: none;
}

/* ===== PATCH: 개인정보 설정 프로필 사진 원형 ===== */
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-preview,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-preview img,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-box img{
    border-radius: 50%;
    object-fit: cover;
}

/* ===== PATCH: 매물 등록 기본 페이지 ===== */
.property-register-page{
	position: absolute;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: none;
	background: #f4f7fb;
	color: #111827;
	overflow-y: auto;
	padding: 13px 0 114px;
}

body.property-register-page-open .property-register-page{
	display: block;
}

body.property-register-page-open .sub-topbar,
body.property-register-page-open .sidebar,
body.property-register-page-open .resizer,
body.property-register-page-open .map-wrap{
	display: none;
}

.property-register-inner{
	width: min(960px, calc(100vw - 48px));
	margin: 0 auto;
}

.property-register-head{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 16px;
	margin-bottom: 13px;
}

.property-register-flag-checks{
	display: inline-flex;
	align-items: center;
	gap: 30px;
	padding: 13px 0;
	flex: 0 0 auto;
}

.property-register-flag-check{
	display: inline-flex;
	align-items: center;
	gap: var(--property-register-option-gap);
	color: #111827;
	font-size: var(--property-register-option-font-size);
	font-weight: var(--property-register-option-font-weight);
	line-height: 1;
	letter-spacing: var(--property-register-option-letter-spacing);
	white-space: nowrap;
	cursor: pointer;
	user-select: none;
}

.property-register-flag-check input{
	width: var(--property-register-info-checkbox-size);
	height: var(--property-register-info-checkbox-size);
	margin: 0;
	accent-color: #2f363d;
	cursor: pointer;
}

.property-register-title{
	margin: 0;
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -0.35px;
	color: #111827;
	line-height: 1.25;
}

.property-register-top-actions{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	padding: 13px 0;
}

.property-register-top-btn{
	height: 42px;
	padding: 0 18px;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.12px;
	cursor: pointer;
	box-shadow: none;
}

.property-register-card{
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	box-shadow: none;
	padding: 34px 40px 40px;
	min-height: 520px;
}

.property-register-section-title{
	margin: 0 0 28px;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.28px;
	color: #111827;
	line-height: 1.3;
}

.property-register-placeholder{
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 380px;
	border: 1px dashed #cbd5e1;
	background: #f8fafc;
	color: #64748b;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.12px;
	text-align: center;
	padding: 24px;
}

.property-register-bottom-bar{
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9995;
	display: none;
	justify-content: center;
	background: rgba(255,255,255,0.96);
	border-top: 1px solid #e5e7eb;
	padding: 18px 0;
	box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.05);
}

body.property-register-page-open .property-register-bottom-bar{
	display: flex;
}

.property-register-bottom-inner{
	width: min(960px, calc(100vw - 48px));
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.property-register-legal-notice{
	margin: 0;
	flex: 1 1 auto;
	color: #9ca3af;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: -0.12px;
	text-align: left;
}

.property-register-bottom-actions{
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
}

.property-register-bottom-btn{
	height: 52px;
	min-width: 132px;
	padding: 0 22px;
	border-radius: 0;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -0.18px;
	cursor: pointer;
	box-shadow: none;
}

.property-register-bottom-btn.draft{
	border: 1px solid #d1d5db;
	background: #ffffff;
	color: #111827;
}

.property-register-bottom-btn.submit{
	border: 1px solid #1B6FA4;
	background: #1B6FA4;
	color: #ffffff;
}

@media (max-width: 720px)
{
	.property-register-page{
		padding-top: 26px;
	}
	.property-register-head{
		align-items: flex-start;
		flex-direction: column;
	}
	.property-register-flag-checks{
		gap: 18px;
		flex-wrap: wrap;
	}
	.property-register-flag-check{
		font-size: var(--property-register-option-font-size);
	}
	.property-register-flag-check input{
		width: var(--property-register-info-checkbox-size);
		height: var(--property-register-info-checkbox-size);
	}
	.property-register-card{
		padding: 26px 22px 32px;
	}
	.property-register-bottom-inner{
		align-items: stretch;
		flex-direction: column;
		justify-content: stretch;
	}
	.property-register-legal-notice{
		font-size: 12px;
		line-height: 1.45;
	}
	.property-register-bottom-actions{
		width: 100%;
	}
	.property-register-bottom-btn{
		flex: 1 1 0;
		min-width: 0;
	}
	.property-direction-pair-field{
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.property-direction-base-label{
		justify-self: start;
	}
}

/* ===== PATCH: 매물 등록 기본 정보 / 가격 입력 폼 ===== */
.property-register-card + .property-register-card{
	margin-top: 28px;
}

.property-form-label{
	font-size: var(--property-register-left-label-font-size);
	font-weight: var(--property-register-left-label-font-weight);
	color: #111827;
	letter-spacing: -0.18px;
	line-height: 1.3;
}

.property-type-listing-no-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr) auto;
	align-items: center;
	column-gap: 24px;
}

.property-type-listing-no-row > .property-form-label{
	grid-column: 1;
}

.property-type-listing-no-row > .property-type-dropdown{
	grid-column: 2;
}

.property-type-listing-no-row > .property-listing-no-inline{
	grid-column: 3;
}

.property-listing-no-inline{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #111827;
	font-size: var(--property-register-left-label-font-size);
	font-weight: var(--property-register-left-label-font-weight);
	letter-spacing: -0.18px;
	line-height: 1.3;
	white-space: nowrap;
}

.property-listing-no-inline-title{
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.property-listing-no-mode-option{
	display: inline-flex;
	align-items: center;
	gap: 5px;
	flex: 0 0 auto;
	color: #111827;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	white-space: nowrap;
}

.property-listing-no-mode-option input{
	width: 14px;
	height: 14px;
	margin: 0;
	accent-color: #2563eb;
}

.property-listing-no-inline-input{
	width: 190px;
	font-size: var(--property-register-control-font-size);
	font-weight: var(--property-register-control-font-weight);
	letter-spacing: var(--property-register-control-letter-spacing);
	padding: 0 var(--property-register-control-padding-x);
}

.property-listing-no-inline-input[readonly]{
	color: #94a3b8;
	background: #f8fafc;
}





.property-register-select{
	appearance: none;
	-webkit-appearance: none;
	color: #a8b0bd;
	cursor: pointer;
}

/* ===== PATCH: 매물 등록 드롭다운 - 상단바 드롭다운형 / 밑줄 없음 ===== */
.property-register-native-select{
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
	overflow: hidden;
}

.property-register-dropdown{
	position: relative;
}

.property-register-dropdown::after{
	display: none;
	content: none;
}

.property-register-dropdown-trigger{
	width: 100%;
	height: var(--property-register-input-height);
	padding: 0 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: var(--property-register-control-font-size);
	font-weight: var(--property-register-control-font-weight);
	letter-spacing: var(--property-register-control-letter-spacing);
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	cursor: pointer;
	box-shadow: none;
	outline: none;
}

.property-register-dropdown-trigger span{
	display: inline-block;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* PATCH 2.288: 용도지역처럼 숫자가 섞인 드롭다운 문구는 숫자 폭을 고정 */
.property-register-dropdown-trigger span,
.property-register-dropdown-option{
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

.property-register-dropdown-trigger i{
	font-size: 12px;
	line-height: 1;
	color: #111827;
	transition: transform 0.18s ease;
}

.property-register-dropdown.open .property-register-dropdown-trigger i{
	transform: rotate(180deg);
}

.property-register-dropdown-menu{
	position: absolute;
	top: calc(100% + 10.6px);
	left: 0;
	right: auto;
	min-width: 240px;
	width: max-content;
	max-width: min(360px, calc(100vw - 48px));
	max-height: 320px;
	overflow-y: auto;
	padding: 8px;
	border-radius: 0;
	border: 1px solid #e2e8f0;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 34px rgba(15, 41, 66, 0.14);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	display: none;
	flex-direction: column;
	gap: 2px;
	z-index: 9999;
}

.property-type-dropdown .property-register-dropdown-menu{
	width: min(724px, calc(100vw - 64px));
	max-width: none;
	max-height: none;
	overflow-y: visible;
	padding: 28px 30px 30px;
	border: 0;
	border-radius: 26px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18);
	gap: 28px;
}

.property-register-dropdown.open .property-register-dropdown-menu{
	display: flex;
}

.property-register-dropdown-option{
	width: 100%;
	min-height: 36px;
	padding: 0 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--subbar-item-color, #334155);
	font-family: var(--subbar-item-font-family, var(--font-ui));
	font-size: var(--subbar-item-font-size, 14px);
	font-weight: var(--subbar-item-font-weight, 700);
	letter-spacing: var(--subbar-item-letter-spacing, -0.1px);
	display: flex;
	align-items: center;
	justify-content: flex-start;
	text-align: left;
	cursor: pointer;
	white-space: nowrap;
}

.property-register-dropdown-option:hover{
	background: #f8fafc;
	color: #334155;
}

.property-register-dropdown-option.active{
	background: #eff6ff;
	color: #2563eb;
	font-weight: 700;
}

.property-type-dropdown .property-register-dropdown-option{
	width: auto;
	min-height: auto;
}

.property-register-type-section{
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.property-register-type-section-title{
	margin: 0;
	color: #111827;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.3px;
	line-height: 1.25;
}

.property-register-type-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px 14px;
}

.property-register-type-tile{
	height: 56px;
	border: 1px solid transparent;
	border-radius: 8px;
	background: #f3f4f6;
	color: #737982;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.2px;
	justify-content: center;
	text-align: center;
	padding: 0 14px;
}

.property-register-type-tile:hover{
	background: #ffffff;
	color: #111827;
	border-color: #111827;
}

.property-register-type-tile.active{
	background: #ffffff;
	color: #111827;
	border-color: #111827;
	box-shadow: none;
}

@media (max-width: 720px)
{
	.property-type-dropdown .property-register-dropdown-menu{
		width: min(420px, calc(100vw - 32px));
		padding: 22px;
	}

	.property-register-type-grid{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.property-register-type-tile{
		font-size: 17px;
	}
}

/* ===== PATCH: 매물 등록 에디트 창 복구 / 드롭다운만 상단바형 유지 ===== */
.property-register-input,
.property-register-select{
	width: 100%;
	height: var(--property-register-input-height);
	border: 1px solid #d8dee8;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	font-size: var(--property-register-control-font-size);
	font-weight: var(--property-register-control-font-weight);
	letter-spacing: var(--property-register-control-letter-spacing);
	padding: 0 var(--property-register-control-padding-x);
	outline: none;
	box-shadow: none;
	box-sizing: border-box;
}

.property-register-input:focus,
.property-register-select:focus{
	border-color: #d8dee8;
	background: #ffffff;
	box-shadow: none;
	outline: none;
}

.property-register-input::placeholder{
	color: #a8b0bd;
	font-size: var(--property-register-placeholder-font-size);
	font-weight: var(--property-register-placeholder-font-weight);
}

.property-register-dropdown-trigger{
	border: 0;
	background: transparent;
	box-shadow: none;
	outline: none;
}

.property-register-dropdown-trigger:focus{
	border: 0;
	background: transparent;
	box-shadow: none;
	outline: none;
}

/* ===== PATCH: 매물 등록 드롭다운 에디트 입력창 안에 배치 ===== */
.property-form-control.property-register-dropdown{
	width: 100%;
	height: var(--property-register-dropdown-menu-height);
	border: 1px solid #d8dee8;
	border-radius: 0;
	background: #ffffff;
	padding: 0 var(--property-register-control-padding-x);
	display: flex;
	align-items: center;
	box-sizing: border-box;
}

.property-form-control.property-register-dropdown .property-register-dropdown-trigger{
	height: 100%;
	width: 100%;
	padding: 0;
}

.property-form-control.property-register-dropdown .property-register-dropdown-menu{
	top: calc(100% + 10.6px);
	left: 0;
}

/* PATCH 2.247: 원룸/투룸 + 숙박시설일 때 건축물용도 입력칸 오른쪽에 생활형숙박시설 안내 표시 */
.property-register-dropdown-trigger .building-use-living-accommodation-badge{
	display: none;
	margin-left: auto;
	padding-left: 12px;
	color: #9ca3af;
	font-size: 15px;
	font-weight: 500;
	white-space: nowrap;
	overflow: visible;
	text-overflow: clip;
}

.property-register-dropdown-trigger .building-use-living-accommodation-badge.is-visible{
	display: inline-flex;
}

/* ===== PATCH: 매물 등록 드롭다운 너비 = 에디트 입력창 너비 ===== */
.property-form-control.property-register-dropdown,
.property-register-dropdown{
	width: 100%;
}

/* 매물 등록 - 매물 종류, 건축물 용도 드롭 다운 너비 조정 */
.property-form-control.property-register-dropdown .property-register-dropdown-menu,
.property-register-dropdown-menu{
	left: -1px;
	right: auto;
	width: calc(100% + 2px);
	min-width: 0;
	max-width: none;
	box-sizing: border-box;
}

.property-register-dropdown-option{
	width: 100%;
}



.property-address-wrap::before{
	content: "\f002";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	left: 18px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 18px;
	color: #475569;
	z-index: 1;
}

.property-address-wrap .property-register-input{
	padding-left: 52px;
}

.property-unit-input .property-register-input{
	padding-right: 56px;
}

/* 매물 등록 - 가격 (거래 유형이 2개 이상이면 모두 선택해 주세요. 글자) */
.property-price-guide{
	margin: -16px 0 28px 164px;
	color: var(--property-register-right-text-color);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -0.12px;
	line-height: 1.5;
}

.property-land-extra-guide{
	position: static;
	display: block;
	margin: 8px 0;
	color: var(--property-register-right-text-color);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -0.12px;
	line-height: 1.5;
}



.property-land-extra-row > .property-form-label{
	padding-top: 0;
	min-height: var(--property-register-field-height);
	display: inline-flex;
	align-items: center;
}

.property-land-extra-row .property-form-control{
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 8px;
	min-height: var(--property-register-field-height);
}

.property-deal-checks{
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	align-items: center;
	justify-content: flex-start;
	column-gap: 0;
	row-gap: 12px;
}

.property-deal-option{
	display: inline-flex;
	align-items: center;
	gap: var(--property-register-option-gap);
	font-size: var(--property-register-option-font-size);
	font-weight: var(--property-register-option-font-weight);
	color: #111827;
	letter-spacing: var(--property-register-option-letter-spacing);
	cursor: pointer;
	user-select: none;
	white-space: nowrap;
}

/* 매물 등록 - 가격 거래 유형 체크 박스 */
.property-deal-option input{
	width: var(--property-register-info-checkbox-size);
	height: var(--property-register-info-checkbox-size);
	margin: 0;
	accent-color: #2f363d;
	cursor: pointer;
	flex: 0 0 auto;
}



.property-price-dynamic:empty{
	display: none;
}

.property-price-field .property-register-input,
.property-money-input-wrap .property-register-input{
	padding-right: 190px;
}

/* ===== PATCH: 매물 등록 - 매물 정보 ===== */
.property-info-card{
	min-height: 0;
}



.property-direction-pair-field{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 32px;
	align-items: center;
}

.property-direction-pair-field > .property-register-dropdown{
	min-width: 0;
}

.property-direction-base-label{
	display: none;
}

.property-direction-pair-field .property-register-dropdown-trigger span{
	color: #a8b0bd;
	font-weight: 500;
}

.property-parking-inline-grid{
	gap: 16px 32px;
}

.property-parking-inline-unit{
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
	min-width: 0;
}

.property-parking-unit-input{
	position: relative;
	display: block;
	width: 100%;
	min-width: 0;
}

.property-parking-unit-input .property-register-input{
	width: 100%;
	padding-left: 18px;
	padding-right: 56px;
}

.property-parking-input-label{
	position: static;
	display: block;
	min-width: 0;
	color: #a8b0bd;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.16px;
	line-height: 1.2;
	white-space: nowrap;
	pointer-events: none;
}

.property-parking-unit-input .property-unit-label{
	position: absolute;
	left: auto;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	white-space: nowrap;
	z-index: 2;
}

.property-inline-label{
	font-size: var(--property-register-option-font-size);
	font-weight: var(--property-register-option-font-weight);
	color: var(--property-register-right-text-color);
	letter-spacing: var(--property-register-option-letter-spacing);
	white-space: nowrap;
}

.property-check-option,
.property-radio-option{
	display: inline-flex;
	align-items: center;
	gap: var(--property-register-option-gap);
	font-size: var(--property-register-option-font-size);
	font-weight: var(--property-register-option-font-weight);
	color: var(--property-register-right-text-color);
	letter-spacing: var(--property-register-option-letter-spacing);
	cursor: pointer;
	user-select: none;
	white-space: nowrap;
}

.property-check-option input{
	width: var(--property-register-info-checkbox-size);
	height: var(--property-register-info-checkbox-size);
	margin: 0;
	accent-color: #2f363d;
	cursor: pointer;
	flex: 0 0 auto;
}

.property-radio-option input{
	width: var(--property-register-info-radio-size);
	height: var(--property-register-info-radio-size);
	margin: 0;
	accent-color: #2f363d;
	cursor: pointer;
	flex: 0 0 auto;
}

/* PATCH 2.290: 토지 정보 드롭다운은 12줄만 보이고 이후는 스크롤 */
.property-land-select-field .property-register-dropdown-menu{
	max-height: 470px;
	overflow-y: auto;
}



.property-info-row.property-heating-row .property-radio-row{
	align-items: center;
	min-height: var(--property-register-info-radio-size);
}

/* ===== PATCH: 매물 유형 변경 시 매물정보 카드 너비 고정 ===== */


/* ===== PATCH: 드롭다운 잘림 방지 + 카드 너비 고정 유지 ===== */
.property-register-card,
.property-info-card{
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow: visible;
}

/* ===== PATCH: 매물 등록 - 시설 정보 정렬 정리 ===== */
.property-facility-card{
	min-height: 0;
}

.property-facility-card .property-check-option{
	width: 100%;
	display: inline-flex;
	align-items: center;
	gap: var(--property-register-option-gap);
	white-space: nowrap;
}

/* ===== PATCH: 매물 등록 - 관리비 ===== */
.property-maintenance-card{
	min-height: 0;
}

.maintenance-none-summary{
	display: flex;
	flex-direction: column;
	gap: 8px;
	color: #111827;
	font-size: var(--property-register-option-font-size);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.18px;
}

.maintenance-fee-field .property-register-input:disabled{
	background: #f3f4f6;
	color: #9ca3af;
	-webkit-text-fill-color: #9ca3af;
	cursor: not-allowed;
}

/* PATCH 2.305: 사진이 있으면 업로드 안내 문구를 숨기고 썸네일만 표시 */
.property-upload-box.has-photo-preview .property-upload-guide{
	display: none;
}

/* PATCH 2.304: 사진 썸네일은 업로드 박스 안에서 바로 표시 */
.property-photo-preview-grid{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
	gap: 12px;
	width: 100%;
	margin-top: 8px;
}

.property-upload-box.has-photo-preview{
	justify-content: flex-start;
}

/* PATCH 2.319: 사진이 있으면 썸네일 상단 여백도 좌/우/하단과 같은 박스 패딩만 사용 */
.property-upload-box.has-photo-preview .property-photo-preview-grid{
	margin-top: 0;
}

.property-photo-preview-grid.is-hidden{
	display: none;
}

.property-photo-preview-item{
	position: relative;
	aspect-ratio: 4 / 3;
	border: 1px solid #d7dee8;
	background: #f8fafc;
	overflow: hidden;
	cursor: grab;
	touch-action: none;
	user-select: none;
}

.property-photo-preview-item.is-dragging{
	opacity: 0.46;
	cursor: grabbing;
}

.property-photo-preview-item.is-drop-target{
	border-color: #4A7EDC;
	box-shadow: 0 0 0 2px rgba(74, 126, 220, 0.18) inset;
}

.property-photo-drag-ghost{
	position: fixed;
	left: 0;
	top: 0;
	z-index: 2147483647;
	border: 1px solid rgba(37, 99, 235, 0.45);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.28);
	opacity: 0.94;
	overflow: hidden;
	pointer-events: none;
	cursor: grabbing;
	will-change: transform;
}

.property-photo-preview-item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.property-photo-preview-name{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 6px 8px;
	background: rgba(17, 24, 39, 0.68);
	color: #ffffff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: -0.1px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.property-facility-card .property-check-option input{
	width: var(--property-register-info-checkbox-size);
	height: var(--property-register-info-checkbox-size);
	margin: 0;
	align-self: center;
	flex: 0 0 auto;
}

.property-register-page textarea{
	box-sizing: border-box;
}

/* ===== PATCH: 매물 등록 드롭다운 높이 단일 변수 적용 ===== */
.property-form-control.property-register-dropdown,
.property-form-control.property-register-dropdown .property-register-dropdown-trigger{
	height: var(--property-register-input-height);
	min-height: var(--property-register-input-height);
	box-sizing: border-box;
}

.admin-notice-field .admin-notice-category-dropdown.property-form-control.property-register-dropdown,
.admin-notice-field .admin-notice-category-dropdown.property-form-control.property-register-dropdown .property-register-dropdown-trigger{
	height: 42px;
	min-height: 42px;
}

/* ===== PATCH: 홈 상태에서는 매물등록 화면/하단바 강제 숨김 ===== */
body:not(.property-register-page-open) #propertyRegisterPage,
body:not(.property-register-page-open) #propertyRegisterBottomBar{
	display: none;
	visibility: hidden;
	pointer-events: none;
}

.auth-modal.profile-page-mode .auth-myinfo-display-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	min-height: var(--property-register-input-height);
	margin: 0 0 14px;
	padding: 0;
	border: 0;
	background: transparent;
}

.auth-modal.profile-page-mode .auth-myinfo-display-label{
	color: #111827;
	font-family: var(--font-ui);
	font-size: var(--property-register-left-label-font-size);
	font-weight: var(--property-register-left-label-font-weight);
	letter-spacing: -0.18px;
	line-height: 1.2;
	text-align: left;
	white-space: nowrap;
}

.auth-modal.profile-page-mode .auth-myinfo-display-value{
	width: 100%;
	min-height: var(--property-register-input-height);
	height: var(--property-register-input-height);
	border: 1px solid #d8dee8;
	border-radius: 0;
	background: #f9fafb;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: -0.16px;
	line-height: 1;
	padding: 0 18px;
	display: flex;
	align-items: center;
	box-shadow: none;
	box-sizing: border-box;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-secondary{
	height: var(--property-register-input-height);
	min-height: var(--property-register-input-height);
	border-radius: 0;
	font-family: var(--font-ui);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -0.16px;
	box-shadow: none;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-preview{
	width: 64px;
	height: 64px;
	border-radius: 50%;
	border: 1px solid #e5e7eb;
	background: #f3f4f6;
	box-shadow: none;
}

/* ===== PATCH: 프로필 이미지 크기 통일 (내 정보 기준 84px) ===== */
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-preview{
    width: 84px;
    height: 84px;
}

/* ===== PATCH 2.152: 매물 주소 모달 전역 변수 기반 통합 CSS ===== */
.property-address-wrap{
	position: relative;
}

.property-address-wrap .property-register-input{
	cursor: pointer;
}

.property-address-hide-row{
	display: none;
	margin: var(--property-address-hide-row-margin-top)
	        0
	        var(--property-address-hide-row-margin-bottom)
	        var(--property-address-hide-row-margin-left);
}

.property-address-hide-row.open{
	display: block;
}

.property-address-hide-label{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: var(--property-address-hide-label-font-size);
	font-weight: var(--property-address-hide-label-font-weight);
	letter-spacing: -0.16px;
	color: #111827;
	cursor: pointer;
}

.property-address-hide-label input{
	width: var(--property-address-hide-checkbox-size);
	height: var(--property-address-hide-checkbox-size);
	margin: 0;
	accent-color: var(--profile-page-primary-button-bg);
	cursor: pointer;
	flex: 0 0 auto;
}

.property-address-hide-help{
	margin: var(--property-address-hide-help-margin-top)
	        0
	        0
	        0;
	font-size: var(--property-address-hide-help-font-size);
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: -0.1px;
	color: var(--property-register-right-text-color);
}

.property-address-location-row{
	display: none;
	margin: var(--property-address-location-row-margin-top)
	        0
	        var(--property-address-location-row-margin-bottom)
	        var(--property-address-location-row-margin-left);
}

.property-address-location-row.open{
	display: block;
}

.property-address-location-mode-group{
	display: flex;
	align-items: center;
	gap: var(--property-address-location-mode-gap);
	margin: 0
	        0
	        var(--property-address-location-mode-margin-bottom);
}

.property-address-location-direct-group{
	display: flex;
	align-items: center;
	gap: var(--property-address-location-direct-gap);
	flex: 1 1 auto;
	min-width: 0;
}

.property-address-location-direct-search-btn{
	flex: 0 0 var(--property-address-location-direct-button-width);
	width: var(--property-address-location-direct-button-width);
	height: var(--property-address-location-direct-button-height);
	min-height: var(--property-address-location-direct-button-height);
	max-height: var(--property-address-location-direct-button-height);
	padding: 0
	        var(--property-address-location-direct-button-padding-x);
	border: var(--profile-page-secondary-button-border);
	border-radius: var(--profile-page-button-radius);
	box-sizing: border-box;
	background: var(--profile-page-secondary-button-bg);
	color: var(--profile-page-secondary-button-color);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: var(--property-address-location-direct-button-font-size);
	font-weight: var(--property-address-location-direct-button-font-weight);
	line-height: 1;
	letter-spacing: -0.1px;
	white-space: nowrap;
	word-break: keep-all;
	cursor: pointer;
}

.property-address-location-direct-search-box{
	display: none;
	flex: 1 1 auto;
	min-width: 0;
	height: var(--property-address-location-direct-button-height);
}

.property-address-location-direct-search-box.open{
	display: flex;
	align-items: center;
}

.property-address-location-direct-search-input{
	width: 100%;
	height: var(--property-address-location-direct-button-height);
	min-height: var(--property-address-location-direct-button-height);
	max-height: var(--property-address-location-direct-button-height);
	padding: 0
	        var(--property-address-location-direct-input-padding-x);
	border: var(--property-address-input-border);
	border-radius: var(--property-address-input-radius);
	box-sizing: border-box;
	background: var(--property-address-input-bg);
	color: var(--property-address-input-color);
	font-size: var(--property-address-location-direct-input-font-size);
	font-weight: 600;
	line-height: 1;
	appearance: none;
	outline: none;
}

.property-register-page .property-address-location-mode-group .property-address-location-direct-search-input{
	height: var(--property-address-location-direct-button-height);
	min-height: var(--property-address-location-direct-button-height);
	max-height: var(--property-address-location-direct-button-height);
	box-sizing: border-box;
}

/* ===== PATCH 2.184: 간편 매물 등록 모달 / 상세설명 길이 / 관리비 원 단위 / 교차로 라벨 파싱 ===== */
.quick-property-modal{
	position: fixed;
	inset: 0;
	z-index: 100600;
	display: none;
	align-items: center;
	justify-content: center;
	padding: var(--property-address-modal-padding);
	background: var(--property-address-modal-bg);
	font-size: var(--property-register-option-font-size);
}

.quick-property-dialog{
	position: relative;
	width: var(--property-address-dialog-width);
	max-width: var(--property-address-dialog-max-width);
	max-height: var(--property-address-dialog-max-height);
	padding: var(--property-address-dialog-padding-top)
	        var(--property-address-dialog-padding-x)
	        var(--property-address-dialog-padding-bottom);
	background: var(--property-address-dialog-bg);
	border-radius: var(--property-address-dialog-radius);
	box-shadow: var(--property-address-dialog-shadow);
	overflow: hidden;
}

.quick-property-title{
	margin: 0;
	color: var(--property-address-title-color);
	font-size: var(--property-address-title-font-size);
	font-weight: var(--property-address-title-font-weight);
	line-height: var(--property-address-title-line-height);
	letter-spacing: var(--property-address-title-letter-spacing);
}

.quick-property-paste-btn,
.quick-property-cancel-btn,
.quick-property-apply-btn{
	height: var(--property-address-secondary-button-height);
	min-width: var(--property-address-secondary-button-min-width);
	padding: 0 var(--property-address-secondary-button-padding-x);
	border-radius: var(--property-address-secondary-button-radius);
	font-family: var(--font-ui);
	font-size: var(--property-address-secondary-button-font-size);
	font-weight: var(--property-address-secondary-button-font-weight);
	letter-spacing: -0.18px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	white-space: nowrap;
}

.quick-property-paste-btn,
.quick-property-cancel-btn{
	background: var(--property-address-secondary-button-bg);
	color: var(--property-address-secondary-button-color);
	border: var(--property-address-secondary-button-border);
}

.quick-property-source-option{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--property-address-input-color);
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	white-space: nowrap;
}

.quick-property-textarea{
	width: 100%;
	height: 188px;
	padding: 18px;
	border: var(--property-address-input-border);
	border-radius: var(--property-address-input-radius);
	background: var(--property-address-input-bg);
	color: var(--property-address-input-color);
	font-family: var(--font-ui);
	font-size: var(--property-address-input-font-size);
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: var(--property-address-input-letter-spacing);
	resize: none;
	outline: none;
	box-sizing: border-box;
	overflow-y: auto;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.quick-property-textarea::placeholder{
	color: var(--property-address-input-placeholder-color);
	font-weight: 400;
}

.quick-property-textarea:empty::before{
	content: attr(data-placeholder);
	color: var(--property-address-input-placeholder-color);
	font-weight: 400;
	pointer-events: none;
}

.quick-property-textarea:focus{
	border: var(--property-address-input-border-focus);
	background: var(--property-address-input-bg);
	box-shadow: none;
	outline: none;
}

.quick-property-apply-btn{
	min-width: var(--property-address-secondary-button-min-width);
	padding: 0 var(--property-address-primary-button-padding-x);
	border-radius: var(--property-address-primary-button-radius);
	font-size: var(--property-address-primary-button-font-size);
	font-weight: var(--property-address-primary-button-font-weight);
	letter-spacing: var(--property-address-primary-button-letter-spacing);
	background: var(--property-address-primary-button-bg);
	color: var(--property-address-primary-button-color);
	border: var(--property-address-primary-button-border);
}

@media (max-width: 720px)
{
	.quick-property-dialog{
		width: calc(100vw - 32px);
		padding: 24px;
		border-radius: var(--property-address-dialog-radius);
	}
	.quick-property-head{
		align-items: flex-start;
		flex-direction: column;
	}
	.quick-property-title{
		font-size: 24px;
	}
	.quick-property-textarea{
		height: 220px;
	}
	.quick-property-foot{
		padding-top: 18px;
	}
	.quick-property-paste-btn,
.quick-property-cancel-btn,
.quick-property-apply-btn{
		height: var(--property-address-secondary-button-height);
		min-width: 0;
		flex: 1 1 0;
	}
}

.property-address-location-direct-search-input::placeholder{
	color: var(--property-address-input-placeholder-color);
}

.property-address-location-map{
	width: 100%;
	height: var(--property-address-location-map-height);
	border: var(--property-address-location-map-border);
	background: var(--property-address-location-map-bg);
	overflow: hidden;
}

.property-address-location-help{
	margin: var(--property-address-location-help-margin-top)
	        0
	        0;
	font-size: var(--property-address-location-help-font-size);
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: -0.1px;
	color: var(--property-address-location-help-color);
}

.property-address-location-row[data-location-mode="hidden"] .property-address-location-help{
	color: #6b7280;
}

.property-address-search-modal{
	position: fixed;
	inset: 0;
	z-index: var(--property-address-modal-z-index);
	display: none;
	align-items: center;
	justify-content: center;
	padding: var(--property-address-modal-padding);
	background: var(--property-address-modal-bg);
	font-size: var(--property-register-option-font-size);
}

.property-address-search-modal.open{
	display: flex;
}

.property-address-search-dialog{
	position: relative;
	width: var(--property-address-dialog-width);
	max-width: var(--property-address-dialog-max-width);
	max-height: var(--property-address-dialog-max-height);
	padding: var(--property-address-dialog-padding-top)
	        var(--property-address-dialog-padding-x)
	        var(--property-address-dialog-padding-bottom);
	border-radius: var(--property-address-dialog-radius);
	background: var(--property-address-dialog-bg);
	box-shadow: var(--property-address-dialog-shadow);
	overflow: hidden;
}

.property-address-search-close{
	position: absolute;
	top: var(--property-address-close-top);
	right: var(--property-address-close-right);
	width: var(--property-address-close-size);
	height: var(--property-address-close-size);
	border: 0;
	border-radius: var(--radius-round);
	background: var(--property-address-close-bg);
	color: var(--property-address-close-color);
	font-size: var(--property-address-close-font-size);
	font-weight: var(--property-address-close-font-weight);
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.property-address-search-title{
	margin: 0
	        0
	        var(--property-address-title-margin-bottom);
	font-size: var(--property-address-title-font-size);
	font-weight: var(--property-address-title-font-weight);
	line-height: var(--property-address-title-line-height);
	letter-spacing: var(--property-address-title-letter-spacing);
	color: var(--property-address-title-color);
}

.property-address-search-form{
	position: relative;
	margin-bottom: var(--property-address-search-form-margin-bottom);
}

.property-address-search-input{
	padding: 0
	        var(--property-address-search-input-padding-right)
	        0
	        var(--property-address-search-input-padding-left);
}

.property-address-search-input::-webkit-search-cancel-button{
	display: none;
	-webkit-appearance: none;
}

.property-address-search-submit{
	position: absolute;
	top: 50%;
	right: var(--property-address-search-icon-right);
	transform: translateY(-50%);
	width: var(--property-address-search-icon-size);
	height: var(--property-address-search-icon-size);
	border: 0;
	background: transparent;
	color: var(--property-address-search-icon-color);
	font-size: var(--property-address-search-icon-font-size);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.property-address-search-guide{
	padding-top: var(--property-address-guide-padding-top);
}

.property-address-search-guide-title{
	margin: 0
	        0
	        var(--property-address-guide-title-margin-bottom);
	font-size: var(--property-address-guide-title-font-size);
	font-weight: var(--property-address-guide-title-font-weight);
	letter-spacing: -0.5px;
	color: var(--property-address-title-color);
}

.property-address-search-guide-row{
	margin: 0
	        0
	        var(--property-address-guide-row-margin-bottom);
}

.property-address-search-guide-main{
	margin: 0
	        0
	        var(--property-address-guide-main-margin-bottom);
	font-size: var(--property-address-guide-main-font-size);
	font-weight: var(--property-address-guide-main-font-weight);
	letter-spacing: -0.35px;
	color: #111827;
}

.property-address-search-guide-example{
	margin: 0;
	font-size: var(--property-address-guide-example-font-size);
	font-weight: 400;
	letter-spacing: -0.25px;
	color: var(--property-address-guide-example-color);
}

.property-address-search-results{
	display: none;
	max-height: var(--property-address-results-max-height);
	overflow-y: auto;
	padding-right: 2px;
}

.property-address-search-results.open{
	display: block;
}

.property-address-search-result{
	position: relative;
	padding: var(--property-address-result-padding-top)
	        var(--property-address-result-padding-right)
	        var(--property-address-result-padding-bottom)
	        0;
	border-bottom: 0;
}

.property-address-search-result + .property-address-search-result{
	margin-top: var(--property-address-result-gap);
}

.property-address-result-zone{
	margin: 0
	        0
	        var(--property-address-zone-margin-bottom);
	font-size: var(--property-address-zone-font-size);
	font-weight: var(--property-address-zone-font-weight);
	letter-spacing: -0.2px;
	color: var(--property-address-title-color);
}

.property-address-result-line{
	display: flex;
	align-items: center;
	gap: var(--property-address-line-gap);
	margin: 0
	        0
	        var(--property-address-line-margin-bottom);
}

.property-address-result-badge{
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: var(--property-address-badge-height);
	padding: 0
	        var(--property-address-badge-padding-x);
	border-radius: var(--property-address-badge-radius);
	background: var(--property-address-badge-bg);
	color: var(--property-address-badge-color);
	font-size: var(--property-address-badge-font-size);
	font-weight: var(--property-address-badge-font-weight);
	letter-spacing: -0.1px;
}

.property-address-result-select{
	position: absolute;
	top: var(--property-address-result-select-top);
	right: var(--property-address-result-select-right);
}

.property-address-search-empty,
.property-address-search-loading{
	padding: 24px 0 12px;
	font-size: 17px;
	font-weight: 400;
	color: #6b7280;
	letter-spacing: -0.2px;
}


/* ===== MERGED FROM broker_2.712.css ===== */
/* =====================================================
   4. 중개사 홈 / 중개사 관련 화면
   ===================================================== */
/* ===== INLINE FROM broker.css ===== */
/* REALJEJU broker.css - stable split from realjeju_2.361(3).html / Ver 2.396 */

.auth-modal.profile-page-mode .auth-profile-setup-screen,
.auth-modal.profile-page-mode .auth-myinfo-screen,
.auth-modal.profile-page-mode .auth-broker-office-screen{
	width: min(680px, calc(100vw - 40px));
	margin: 0 auto;
}

/* ===== PATCH 1.928: my info view + broker office menu/page ===== */
.auth-myinfo-screen,
.auth-broker-office-screen{
	display: flex;
	flex-direction: column;
	width: 100%;
}

.auth-myinfo-edit-btn,
.auth-myinfo-broker-btn{
	width: 100%;
	height: 44px;
	border: 1px solid #e5e7eb;
	border-radius: 4px;
	background: #ffffff;
	color: #111827;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.1px;
	cursor: pointer;
}

.auth-myinfo-broker-btn{
	background: #2563EB;
	border-color: #2563EB;
	color: #ffffff;
}

.broker-office-inline-field{
	display: flex;
	align-items: center;
	gap: 8px;
}

.broker-office-inline-field .auth-modal-input{
	flex: 1 1 auto;
	min-width: 0;
}

.broker-office-inline-btn{
	flex: 0 0 auto;
	height: 58px;
	padding: 0 16px;
	border: 0;
	border-radius: 4px;
	background: #2563EB;
	color: #ffffff;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: -0.1px;
	white-space: nowrap;
	cursor: pointer;
}

.auth-broker-office-screen .auth-modal-form{
	gap: 14px;
}

/* ===== PATCH 1.928: broker office full page application layout ===== */
.auth-modal.profile-page-mode .auth-broker-office-screen{
	width: min(1120px, calc(100vw - 80px));
	margin: 0 auto;
	
	/* 중개사무소 가입 신청 - 오른쪽 끝에 스크롤바 생기는 현상 제거 */
	overflow: hidden;
}

.broker-apply-page{
	display: grid;
	grid-template-columns: minmax(380px, 0.92fr) minmax(470px, 1.08fr);
	gap: 72px;
	align-items: start;
	width: 100%;
	padding: 0 0 28px;
}

.broker-apply-left{
	padding-top: 4px;
}

.broker-apply-title{
	margin: 0 0 46px;
	font-size: 40px;
	font-weight: 800;
	line-height: 1.18;
	letter-spacing: -1.2px;
	color: #111827;
}

.broker-apply-guide-card{
	width: 430px;
	max-width: 100%;
	padding: 22px 24px 20px;
	border-radius: 0;
	border: 1px solid #d6d6d6;
	background: #f3f3f3;
	color: #111827;
}

.broker-apply-guide-card p{
	margin: 0 0 18px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: -0.25px;
	word-break: keep-all;
}

.broker-apply-guide-card p:last-of-type{
	margin-bottom: 8px;
}

.broker-apply-guide-btn{
	height: 40px;
	padding: 0 16px;
	border: 1px solid #d1d5db;
	border-radius: 5px;
	background: #ffffff;
	color: #4b5563;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.2px;
	cursor: pointer;
}

.broker-apply-form{
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding-top: 0;
}

.broker-apply-field{
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.broker-apply-label{
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.4px;
	color: #111827;
}

.broker-apply-label span{
	font-weight: 600;
	color: #6b7280;
}

.broker-apply-input,
.broker-apply-select{
	width: 100%;
	height: 46px;
	border: 2px solid #d8d8d8;
	border-radius: 8px;
	background: #ffffff;
	color: #111827;
	padding: 0 16px;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.15px;
	outline: none;
	box-shadow: none;
}

.broker-apply-input::placeholder{
	color: #6b7280;
	font-weight: 600;
}

.broker-apply-field.broker-apply-address-field{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	align-items: center;
	gap: 24px;
}

.broker-apply-address-label{
	font-size: var(--property-register-left-label-font-size);
	font-weight: var(--property-register-left-label-font-weight);
	letter-spacing: -0.18px;
	line-height: 1.3;
}

.broker-apply-address-wrap{
	width: 100%;
}

.broker-apply-address-wrap .broker-apply-address-input{
	height: var(--property-register-input-height);
	border: 1px solid #d8dee8;
	border-radius: 0;
	padding-left: 52px;
	font-size: var(--property-register-control-font-size);
	font-weight: var(--property-register-control-font-weight);
	letter-spacing: var(--property-register-control-letter-spacing);
}

.broker-apply-address-wrap .broker-apply-address-input[readonly]{
	background: #ffffff;
	color: #111827;
}

.broker-apply-search-btn{
	position: absolute;
	right: 6px;
	bottom: 6px;
	height: 30px;
	padding: 0 12px;
	border: 0;
	border-radius: 4px;
	background: #1B6FA4;
	color: #ffffff;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.1px;
	cursor: pointer;
}

.broker-apply-search-btn + *{
	margin-top: 0;
}

.broker-apply-hidden-fields{
	display: none;
}

.broker-apply-email-row{
	display: grid;
	grid-template-columns: 1fr 22px 1fr;
	gap: 8px;
	align-items: center;
}

.broker-apply-at{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 600;
	color: #111827;
	line-height: 1;
}

.broker-apply-select{
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: linear-gradient(45deg, transparent 50%, #9ca3af 50%), linear-gradient(135deg, #9ca3af 50%, transparent 50%);
	background-position: calc(100% - 16px) 17px, calc(100% - 11px) 17px;
	background-size: 5px 5px, 5px 5px;
	background-repeat: no-repeat;
}

.broker-apply-terms{
	margin-top: 160px;
	display: flex;
	align-items: center;
	gap: 10px;
	height: 46px;
	padding: 0 12px;
	border: 1px solid #e5e7eb;
	border-radius: 5px;
	background: #ffffff;
	color: #111827;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.15px;
	cursor: pointer;
	user-select: none;
}

.broker-apply-terms input{
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.broker-apply-checkmark{
	width: 14px;
	height: 14px;
	border: 1px solid #fb923c;
	border-radius: 3px;
	background: #ffffff;
	flex: 0 0 auto;
}

.broker-apply-terms input:checked + .broker-apply-checkmark{
	background: #fb923c;
	box-shadow: inset 0 0 0 3px #ffffff;
}

.broker-apply-terms i{
	margin-left: auto;
	font-size: 15px;
	color: #111827;
}

.broker-apply-submit{
	width: 100%;
	height: 58px;
	margin-top: 14px;
	border: 0;
	border-radius: 10px;
	background: #1f79ae;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.4px;
	cursor: pointer;
}

@media (max-width: 980px)
{
	

	.broker-apply-page{
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.broker-apply-title{
		margin-bottom: 28px;
		font-size: 34px;
	}

	.broker-apply-terms{
		margin-top: 22px;
	}
}

.auth-modal.profile-page-mode .auth-broker-office-screen{
	width: min(1080px, calc(100vw - 80px));
	margin-left: auto;
	margin-right: auto;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-page{
	grid-template-columns: minmax(320px, 0.85fr) minmax(440px, 1fr);
	gap: 42px;
	align-items: start;
	justify-content: center;
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 0 28px;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-form{
	padding: 30px 32px 34px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 18px;
	box-shadow: 0 18px 50px rgba(15, 23, 42, 0.10);
	gap: 15px;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-field{
	gap: 7px;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-label{
	font-size: 14px;
	font-weight: 800;
	color: #334155;
	letter-spacing: -0.15px;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-input,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-select{
	height: 52px;
	border: 1px solid #dbe3ec;
	border-radius: 12px;
	background: #f8fafc;
	color: #111827;
	padding: 0 16px;
	font-size: 15px;
	font-weight: 700;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-input:focus,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-select:focus{
	border-color: #1B6FA4;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(27, 111, 164, 0.10);
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-submit{
	height: 56px;
	margin-top: 9px;
	border-radius: 10px;
	background: #1B6FA4;
	font-size: 18px;
	font-weight: 800;
	box-shadow: 0 10px 22px rgba(27, 111, 164, 0.22);
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-title{
	margin: 0 0 28px;
	font-size: 36px;
	line-height: 1.18;
	letter-spacing: -1px;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-guide-card{
	border-radius: 18px;
	border: 1px solid #e5e7eb;
	background: #ffffff;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06);
}

@media (max-width: 980px)
{
	.auth-modal.profile-page-mode .auth-modal-dialog{
		padding: 28px 18px 36px;
	}

	.auth-modal.profile-page-mode .auth-profile-setup-screen,
.auth-modal.profile-page-mode .auth-myinfo-screen{
		width: min(500px, calc(100vw - 28px));
		padding: 30px 24px 34px;
	}

	.auth-modal.profile-page-mode .auth-broker-office-screen{
		width: min(680px, calc(100vw - 28px));
	}

	.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-page{
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-form{
		padding: 26px 22px 30px;
	}
}

.auth-modal.profile-page-mode .auth-profile-setup-screen,
.auth-modal.profile-page-mode .auth-myinfo-screen,
.auth-modal.profile-page-mode .broker-apply-form{
	position: relative;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-form{
	padding-top: 54px;
}

.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-guide-card p{
	display: grid;
	grid-template-columns: 12px 1fr;
	column-gap: 6px;
	align-items: start;
	text-align: left;
	padding-left: 0;
	text-indent: 0;
	line-height: 1.62;
	word-break: keep-all;
}

.broker-guide-dot{
	display: block;
	line-height: inherit;
}

.broker-guide-text{
	display: block;
	min-width: 0;
	
	font-size: 15px;
	font-weight: 400;
}

/* 중개사무소 신청 화면은 기존 구조 보호 */
.auth-modal.profile-page-mode .auth-broker-office-screen{
	margin: 0 auto;
}

/* ===== PATCH: 중개사무소 신청 페이지 네모 처리 ===== */
.auth-modal.broker-office-mode .auth-modal-dialog,
.auth-modal.broker-office-mode .auth-modal-input,
.auth-modal.broker-office-mode .auth-modal-submit,
.auth-modal.broker-office-mode button{
    border-radius: 0;
    box-shadow: none;
}

/* ===== PATCH: 중개사무소 신청 / 내 정보 설정 남은 라운드 완전 제거 ===== */

/* 중개사무소 신청 페이지 전체 네모 강제 */
.auth-modal.broker-office-mode *,
.auth-modal.profile-page-mode .auth-broker-office-screen,
.auth-modal.profile-page-mode .auth-broker-office-screen *,
.auth-modal.profile-page-mode .broker-apply-page,
.auth-modal.profile-page-mode .broker-apply-page *,
.auth-modal.profile-page-mode .broker-apply-guide-card,
.auth-modal.profile-page-mode .broker-apply-guide-card *,
.auth-modal.profile-page-mode .broker-office-inline-field,
.auth-modal.profile-page-mode .broker-office-inline-field *,
.auth-modal.profile-page-mode [id^="brokerOffice"],
.auth-modal.profile-page-mode [id^="brokerOffice"] *,
.auth-modal.profile-page-mode [id^="brokerOwner"],
.auth-modal.profile-page-mode [id^="brokerOwner"] *,
.auth-modal.profile-page-mode [id^="brokerLicense"],
.auth-modal.profile-page-mode [id^="brokerLicense"] *{
	border-radius: 0;
	box-shadow: none;
}

/* ===== PATCH: 중개사무소 신청 페이지 라운드 완전 제거 ===== */
.auth-modal.profile-page-mode .auth-broker-office-screen,
.auth-modal.profile-page-mode .auth-broker-office-screen *,
.auth-modal.profile-page-mode .broker-apply-page,
.auth-modal.profile-page-mode .broker-apply-page *,
.auth-modal.profile-page-mode .broker-apply-left,
.auth-modal.profile-page-mode .broker-apply-left *,
.auth-modal.profile-page-mode .broker-apply-guide-card,
.auth-modal.profile-page-mode .broker-apply-guide-card *,
.auth-modal.profile-page-mode .broker-apply-right,
.auth-modal.profile-page-mode .broker-apply-right *,
.auth-modal.profile-page-mode .broker-apply-form-card,
.auth-modal.profile-page-mode .broker-apply-form-card *,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-form,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-form *,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-field,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-field *,
.auth-modal.profile-page-mode .auth-broker-office-screen input,
.auth-modal.profile-page-mode .auth-broker-office-screen textarea,
.auth-modal.profile-page-mode .auth-broker-office-screen select,
.auth-modal.profile-page-mode .auth-broker-office-screen button,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-input,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-office-inline-btn,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-card-close{
	border-radius: 0;
	box-shadow: none;
}

/* 중개사무소 신청 페이지 카드/입력창 배경 박스도 네모 고정 */
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-guide-card,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-right,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-form-card,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-input,
.auth-modal.profile-page-mode .auth-broker-office-screen input{
	border-radius: 0;
}

/* ===== PATCH: 중개사무소 신청 오른쪽 입력칸 네모 최종 고정 ===== */
#authBrokerOfficeScreen input,
#authBrokerOfficeScreen textarea,
#authBrokerOfficeScreen select,
#authBrokerOfficeScreen .auth-modal-input,
#authBrokerOfficeScreen .broker-office-inline-field input,
#authBrokerOfficeScreen .broker-apply-right input,
#authBrokerOfficeScreen .broker-apply-right textarea,
#authBrokerOfficeScreen .broker-apply-right select,
#authBrokerOfficeScreen .broker-apply-right .auth-modal-input,
#authBrokerOfficeScreen .auth-modal-field input,
#authBrokerOfficeScreen .auth-modal-field textarea,
#authBrokerOfficeScreen .auth-modal-field select{
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	box-shadow: none;
	appearance: none;
	-webkit-appearance: none;
}

/* ===== PATCH: 내정보/개인정보/중개사무소 버튼 단일 관리 + 신청 박스 네모 ===== */
:root{
	--profile-common-button-width: 100%;
	--profile-common-button-height: 54px;
	--profile-common-button-margin-top: 24px;
	--profile-common-button-bg: #1B6FA4;
	--profile-common-button-color: #ffffff;
	--profile-common-button-border: 1px solid #1B6FA4;
	--profile-common-button-radius: 0;
	--profile-common-button-shadow: none;
	--profile-common-button-font-family: var(--profile-page-text-font-family, var(--font-ui));
	--profile-common-button-font-size: var(--profile-page-text-font-size, 17px);
	--profile-common-button-font-weight: 600;
	--profile-common-button-letter-spacing: -0.18px;
}

/* 오른쪽 중개사무소 신청 전체 박스 네모 */
.auth-modal.profile-page-mode .auth-broker-office-screen,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-page,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-right,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-form-card,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-dialog{
	border-radius: 0;
	box-shadow: none;
}

/* 내정보 / 내 정보 설정 / 중개사무소 가입신청 버튼 디자인 한 군데에서 통일 */
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"],
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]{
	width: var(--profile-common-button-width);
	height: var(--profile-common-button-height);
	margin-top: var(--profile-common-button-margin-top);
	background: var(--profile-common-button-bg);
	color: var(--profile-common-button-color);
	border: var(--profile-common-button-border);
	border-radius: var(--profile-common-button-radius);
	box-shadow: var(--profile-common-button-shadow);
	font-family: var(--profile-common-button-font-family);
	font-size: var(--profile-common-button-font-size);
	font-weight: var(--profile-common-button-font-weight);
	letter-spacing: var(--profile-common-button-letter-spacing);
	line-height: 1;
}

/* hover/focus/active 때도 임의 그림자/라운드 금지 */
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit:hover,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit:hover,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit:hover,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"]:hover,
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit:hover,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]:hover,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit:focus,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit:focus,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit:focus,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"]:focus,
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit:focus,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]:focus,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit:active,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit:active,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit:active,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"]:active,
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit:active,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]:active{
	background: var(--profile-common-button-bg);
	color: var(--profile-common-button-color);
	border: var(--profile-common-button-border);
	border-radius: var(--profile-common-button-radius);
	box-shadow: var(--profile-common-button-shadow);
}

/* 중개사무소 신청 페이지 입력/카드 네모 재고정 */
#authBrokerOfficeScreen,
#authBrokerOfficeScreen *,
#authBrokerOfficeScreen input,
#authBrokerOfficeScreen textarea,
#authBrokerOfficeScreen select,
#authBrokerOfficeScreen button{
	border-radius: 0;
	box-shadow: none;
}

/* ===== PATCH: 중개사무소 신청 닫기 X 버튼만 기존 원형 효과 복원 ===== */
#authBrokerOfficeScreen .auth-card-close,
#authBrokerOfficeScreen .auth-modal-close{
	border-radius: 50%;
}

body.admin-page-open .admin-page-panel,
body.operator-page-open .operator-page-panel,
body.broker-home-page-open .broker-home-panel{
	display: block;
}

body.broker-home-page-open .broker-home-panel{
	display: block;
}

body.broker-home-page-open{
	min-height: 100%;
	background: #ffffff;
	overflow-x: hidden;
	overflow-y: hidden;
}

body.broker-home-page-open .global-topbar{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 150;
}

body.broker-home-page-open::after{
	content: none;
	display: none;
}

body.admin-page-open .admin-page-panel,
body.operator-page-open .operator-page-panel{
	display: flex;
	flex-direction: column;
}

body.admin-page-open .sub-topbar,
body.admin-page-open .sidebar,
body.admin-page-open .resizer,
body.admin-page-open .map-wrap,
body.operator-page-open .sub-topbar,
body.operator-page-open .sidebar,
body.operator-page-open .resizer,
body.operator-page-open .map-wrap,
body.broker-home-page-open .sub-topbar,
body.broker-home-page-open .sidebar,
body.broker-home-page-open .resizer,
body.broker-home-page-open .map-wrap{
	display: none;
}

/* PATCH 2.316: 중개사 홈에서 본인이 올린 매물을 관리 목록으로 표시 */
.broker-home-panel{
	--broker-home-pagination-logo-gap: 72px;
	position: fixed;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: none;
	min-height: 0;
	background: #ffffff;
	color: #111827;
	overflow-y: scroll;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	margin-top: 0;
	padding: 32px 32px 0;
	box-sizing: border-box;
}

.broker-home-panel > .broker-home-overview,
.broker-home-panel > .broker-home-filterbar,
.broker-home-panel > #brokerListingsList,
.broker-home-panel > #brokerContractsShell,
.broker-home-section-tabs{
	width: min(1280px, 100%);
	margin-left: auto;
	margin-right: auto;
}

.broker-home-section-tabs > .broker-contract-add-btn{
	margin-left: auto;
}

/* PATCH 4.890: 중개사 홈 탭 버튼은 리스트 기준선에 맞춰 왼쪽 정렬한다. */
.broker-home-panel > .broker-home-section-tabs{
	margin-left: 0;
	margin-right: 0;
}

.broker-home-panel .admin-empty{
	padding: 24px;
	border: 1px solid #e5e7eb;
	background: #ffffff;
	box-sizing: border-box;
	text-align: left;
}

.broker-home-list-title{
	margin-top: 48px;
	margin-bottom: 18px;
	color: #111827;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.04em;
}

.broker-home-section-tabs{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	width: min(1280px, 100%);
	max-width: min(1280px, 100%);
	margin: 0 0 14px;
	position: relative;
	z-index: 1;
	padding-left: 0;
}

.broker-home-tab-btn + .broker-home-tab-btn{
	margin-left: 0;
}

.broker-home-tab-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	box-sizing: border-box;
	height: 36px;
	padding: 0 18px !important;
	border: 0.8px solid #dbe4ee !important;
	border-radius: 999px !important;
	background: #ffffff;
	color: var(--subbar-item-color);
	font-family: var(--font-ui) !important;
	font-size: 15px !important;
	font-weight: var(--subbar-menu-font-weight) !important;
	line-height: 1;
	letter-spacing: -0.2px;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.broker-home-tab-btn.active{
	color: #0f172a;
	border-color: #dbe4ee;
	background: #f1f5f9;
	font-weight: var(--subbar-menu-font-weight) !important;
}

.broker-home-tab-btn:hover{
	color: #0f172a;
}

.broker-home-tab-btn:focus-visible{
	outline: 2px solid rgba(37, 99, 235, 0.35);
	outline-offset: 2px;
}

.broker-home-tab-btn:focus{
	outline: none;
}
/* PATCH 2.551: 중개사 홈 하단 사업자 푸터 */
.broker-home-company-info{
	margin: 24px -24px 0;
	padding: 0;
	background: #ffffff;
	color: #6f7782;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0;
}

.broker-home-company-inner{
	--broker-footer-left: 0px;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 0 20px;
	box-sizing: border-box;
}

.broker-home-footer-nav{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 15px;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-left: max(24px, calc((100vw - 1280px) / 2));
	padding-right: max(24px, calc((100vw - 1280px) / 2));
	border-top: 1px solid #e5e7eb;
	border-bottom: 1px solid #e5e7eb;
	min-height: 48px;
	color: #2f343a;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
}

.broker-home-footer-separator{
	color: #d0d5dd;
	font-weight: 400;
}

.broker-home-company-body{
	padding: 14px 0 0;
	padding-left: var(--broker-footer-left);
}

.broker-home-company-brand{
	color: #202124;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6;
}

.broker-home-company-lines{
	display: grid;
	gap: 1px;
	color: #747d89;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.55;
}

.broker-home-company-lines p{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 12px;
	margin: 0;
}

.broker-home-company-lines strong{
	color: #202124;
	font-weight: 600;
}

.broker-home-company-notice{
	margin-top: 6px;
	color: #858c96;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.55;
}

.broker-home-company-link,
.broker-home-company-static-link{
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	font-weight: inherit;
	line-height: inherit;
	cursor: pointer;
}

.broker-home-company-link.is-strong{
	color: #ff4a45;
	font-weight: 800;
}

.broker-home-company-link:hover,
.broker-home-company-static-link:hover{
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.broker-home-company-link.is-strong:hover{
	color: #ff4a45;
}

.biz-comm-lookup-link{
	display: inline-flex;
	align-items: center;
	margin-left: 4px;
	color: #687281;
	font: inherit;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.biz-comm-lookup-link:hover{
	color: #687281;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.broker-home-company-copy{
	margin-top: 8px;
	padding-left: var(--broker-footer-left);
	border-top: 0;
	color: #858c96;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.55;
	text-align: left;
}

.broker-home-mini-footer{
	margin-top: auto;
}

.broker-home-mini-footer .broker-home-company-inner{
	padding: 0 0 48px;
}

.broker-home-mini-copy{
	margin-top: 72px;
	color: #9ca3af;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
}

@media (max-width: 900px)
{
	.broker-home-company-inner{
		padding: 0 20px 22px;
	}

	.broker-home-footer-nav{
		gap: 8px 11px;
		min-height: 42px;
	}

	.broker-home-company-lines{
		font-size: 12px;
	}
}

/* PATCH 2.337: 중개사 홈 상단 안내/사용건수/필터 영역은 전역 변수로 간격 조정 */
:root{
	--broker-home-top-gap: 14px;
	--broker-home-filter-gap: 12px;
	--broker-home-overview-filter-gap: 18px;
	--broker-home-overview-to-filter-gap: 48px;
	--broker-home-overview-right-width: 330px;
}

.broker-home-overview{
	display: grid;
	grid-template-columns: minmax(0, 1fr) var(--broker-home-overview-right-width);
	gap: var(--broker-home-top-gap);
	/* PATCH 2.347: 오른쪽 광고판 높이를 왼쪽 안내+사용건수 영역 높이에 맞춘다 */
	align-items: stretch;
	margin-top: 0;
	margin-bottom: var(--broker-home-overview-filter-gap);
}

.broker-home-main{
	display: grid;
	gap: var(--broker-home-top-gap);
	min-width: 0;
}

.broker-home-law-notice{
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	align-items: center;
	gap: 10px;
	min-height: 66px;
	padding: 15px 20px;
	background: #fff9dd;
	color: #111827;
}

.broker-home-law-icon{
	font-size: 26px;
	color: #ef3b23;
	text-align: center;
}

.broker-home-law-lines{
	display: grid;
	/* PATCH 2.351: 법정 고시 안내 두 줄의 위아래 간격을 왼쪽 여백 기준으로 줄임 */
	gap: 1px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.28;
	letter-spacing: -0.16px;
}

.broker-home-law-lines strong{
	color: #ef3b23;
	font-weight: 600;
}

.broker-home-law-help{
	position: relative;
	display: inline-flex;
	align-items: center;
	color: #2563eb;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: default;
}

.broker-home-law-help::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	width: 46px;
	height: 20px;
	transform: translateX(-50%);
	pointer-events: auto;
}

.broker-home-law-help-panel{
	position: absolute;
	left: 0;
	top: calc(100% + 10.6px);
	/* 최상위 오버레이보다 충분히 높게 배치해 드롭다운/툴팁과 겹침을 방지 */
	z-index: 2147483000;
	display: none;
	width: min(390px, calc(100vw - 80px));
	padding: 18px 18px 16px;
	border: 1px solid #d8dee8;
	background: #ffffff;
	box-shadow: none;
	color: #111827;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.12px;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: break-word;
}

.broker-home-law-help:hover .broker-home-law-help-panel,
.broker-home-law-help:focus .broker-home-law-help-panel,
.broker-home-law-help-panel:hover{
	display: grid;
	gap: 12px;
}

.broker-home-law-help-title{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.28;
}

.broker-home-law-help-subtitle{
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
}

.broker-home-law-help-list{
	padding: 14px 18px;
	background: #fff7c7;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.75;
}

.broker-home-law-help-desc{
	display: block;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
}

.broker-home-usage{
	display: grid;
	/* PATCH 4.896: 기존 세 항목 오른쪽에 계약서 보관 사용건수를 같은 규격으로 추가 */
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 34px;
	/* PATCH 2.348: 매물 사용건수 박스 상하 여백을 같은 값으로 맞추고 외곽선은 연하게 조정 */
	padding: 20px 24px;
	border: 1px solid rgba(74, 126, 220, 0.38);
	background: #ffffff;
}

.broker-home-usage-item{
	display: grid;
	grid-template-rows: 20px 10px 20px;
	align-content: center;
	row-gap: 8px;
}

.broker-home-usage-title{
	position: relative;
	display: flex;
	align-items: center;
	font-size: 14px;
	font-weight: 600;
	color: #111827;
	letter-spacing: -0.14px;
}

.broker-home-usage-title span{
	color: #64748b;
}

.broker-home-usage-help{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-left: 4px;
	border-radius: 50%;
	background: #35c66b;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	/* PATCH 2.352: 도움말 아이콘은 일반 커서를 쓰고 원 안의 물음표는 흰색으로 고정 */
	cursor: default;
}

.broker-home-usage-help::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	width: 46px;
	height: 20px;
	transform: translateX(-50%);
	pointer-events: auto;
}

.broker-home-usage-title .broker-home-usage-help{
	color: #ffffff;
}

.broker-home-usage-help-panel{
	position: absolute;
	left: 0;
	top: calc(100% + 8px);
	/* 최상위 오버레이보다 충분히 높게 배치해 드롭다운/툴팁과 겹침을 방지 */
	z-index: 2147483000;
	display: none;
	box-sizing: border-box;
	width: max-content;
	max-width: calc(100vw - 80px);
	padding: 14px 12px 14px 16px;
	border: 1px solid #d8dee8;
	background: #ffffff;
	box-shadow: none;
	color: #334155;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: -0.1px;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: normal;
	transform: none;
	text-align: left;
}

.broker-home-usage-help:hover + .broker-home-usage-help-panel,
.broker-home-usage-help:focus + .broker-home-usage-help-panel,
.broker-home-usage-help-panel:hover{
	display: block;
}

.broker-home-usage-track{
	height: 10px;
	margin: 0;
	border-radius: 999px;
	background: #e5e7eb;
	overflow: hidden;
}

.broker-home-usage-fill{
	height: 100%;
	width: 0%;
	border-radius: 999px;
	background: #4A7EDC;
}

.broker-home-usage-meta{
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	font-size: 14px;
	font-weight: 400;
	color: #111827;
}

.broker-home-usage-meta strong{
	color: #ef3b23;
	font-size: 14px;
	font-weight: 600;
}

.broker-home-ad{
	position: relative;
	align-self: stretch;
	min-height: 0;
	height: 100%;
	padding: 22px 22px 20px;
	border: 1px solid #e5e7eb;
	background: #ffffff;
	overflow: hidden;
}

.broker-home-ad[data-ad-mode="benefit"]{
	background: #dff5ff;
}

.broker-home-ad-close{
	position: absolute;
	top: 14px;
	right: 14px;
	width: 26px;
	height: 26px;
	border: 0;
	background: transparent;
	color: #64748b;
	font-size: 20px;
	font-weight: 400;
	cursor: pointer;
}



.broker-home-ad-card{
	width: 190px;
	min-height: 74px;
	margin: 0 auto 18px;
	padding: 12px 14px;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
}

.broker-home-ad-card-title{
	font-size: 13px;
	font-weight: 600;
	color: #111827;
}

.broker-home-ad-card-meta{
	margin-top: 8px;
	font-size: 12px;
	font-weight: 400;
	color: #64748b;
}



.broker-home-ad[data-ad-mode="benefit"] .broker-home-ad-cta{
	background: #242d3a;
}

.broker-home-filterbar{
	display: flex;
	align-items: center;
	gap: var(--broker-home-filter-gap);
	width: 100%;
	/* PATCH 2.350: 거래중/거래완료 필터 줄 위아래 여백을 같은 값으로 맞춤 */
	margin-top: var(--broker-home-overview-to-filter-gap);
	margin-bottom: 20px;
	padding: 0;
}

.broker-home-filter-item{
	position: relative;
}

.broker-home-filter-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	box-sizing: border-box;
	height: 38px;
	padding: 0 14px;
	border: 1px solid #dbe4ee;
	border-radius: 100px;
	background: #ffffff;
	color: var(--subbar-item-color);
	font-family: var(--subbar-menu-font-family);
	font-size: var(--subbar-menu-font-size);
	font-weight: var(--subbar-menu-font-weight);
	line-height: 1;
	letter-spacing: var(--subbar-menu-letter-spacing);
	cursor: pointer;
}

.broker-home-filter-btn i{
	line-height: 1;
}

.broker-home-filterbar .broker-home-filter-btn,
body.admin-page-open .admin-listings-filterbar .broker-home-filter-btn,
body.my-suite-page-open .my-suite-favorites-filterbar .broker-home-filter-btn{
	gap: 7px !important;
	height: 36px !important;
	padding: 0 18px !important;
	border: 0.8px solid #dbe4ee !important;
	border-radius: 999px !important;
	font-family: var(--font-ui) !important;
	font-size: 15px !important;
	font-weight: var(--subbar-menu-font-weight) !important;
	letter-spacing: -0.2px !important;
}

.broker-home-filterbar .broker-home-filter-btn i,
body.admin-page-open .admin-listings-filterbar .broker-home-filter-btn i,
body.my-suite-page-open .my-suite-favorites-filterbar .broker-home-filter-btn i{
	font-size: 12px !important;
	width: 12px !important;
	min-width: 12px !important;
	height: 12px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 12px !important;
}

.broker-home-filter-btn.active{
	border-color: #dbe4ee;
	background: #f1f5f9;
	color: #111827;
	font-weight: 600;
}

.broker-home-filter-btn.active span,
.broker-home-filter-btn.active i{
	color: #111827;
}

.broker-home-filter-menu{
	position: absolute;
	top: calc(100% + 10.6px);
	left: 0;
	right: auto;
	z-index: 9999;
	display: none;
	min-width: 240px;
	max-height: min(620px, calc(100vh - 120px));
	overflow-y: auto;
	padding: 8px;
	border: 1px solid #dbe4ee;
	background: rgba(255,255,255,0.98);
	box-shadow: none;
	backdrop-filter: blur(10px);
	flex-direction: column;
	gap: 2px;
}

.broker-home-filter-menu.open{
	display: flex;
}

.broker-home-filter-option{
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	min-height: 36px;
	padding: 0 10px;
	border: 0;
	background: transparent;
	color: #334155;
	font-family: var(--subbar-item-font-family);
	font-size: var(--subbar-item-font-size);
	font-weight: var(--subbar-item-font-weight);
	text-align: left;
	letter-spacing: var(--subbar-item-letter-spacing);
	cursor: pointer;
	user-select: none;
}

.broker-home-filter-option:hover,
.broker-home-filter-option.active{
	background: #f8fafc;
}

.broker-home-filter-option input{
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
	flex: 0 0 auto;
}

.broker-home-filter-option span{
	line-height: 1.2;
}

.broker-home-filter-reset-row{
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #e5e7eb;
}

.broker-home-filter-reset-btn{
	width: 100%;
	min-height: 36px;
	border: 0;
	border-radius: 100px;
	background: #f8fafc;
	color: var(--subbar-item-color);
	font-family: var(--subbar-item-font-family);
	font-size: var(--subbar-item-font-size);
	font-weight: var(--subbar-item-font-weight);
	letter-spacing: var(--subbar-item-letter-spacing);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	cursor: pointer;
}

.broker-home-filter-reset-btn:hover{
	background: #eef2f7;
	color: #4b5563;
}

/* PATCH 3.891: 중개사 홈 필터를 부동산 홈 드롭다운과 같은 섹션/타일 UI로 정리 */
.broker-home-filter-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	min-width: 420px;
}

.broker-home-price-type-grid,
.broker-home-area-filter-grid{
	min-width: 0;
}

.broker-home-land-type-grid,
.broker-home-land-use-zone-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr));
	min-width: 0;
}

.broker-home-filter-tile{
	min-height: 38px;
	justify-content: center;
	padding: 0 10px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #fff;
	color: #73777d;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
	white-space: nowrap;
}

.broker-home-filter-tile:hover,
.broker-home-filter-tile.active{
	border-color: #dbe4f0;
	background: #f8fafc;
	color: #111827;
	font-weight: 700;
}

.broker-home-filter-tile input{
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.broker-home-filter-tile span{
	line-height: 1.2;
}

.broker-home-map-style-menu{
	top: calc(100% + 10.6px);
	left: 0;
	right: auto;
	box-sizing: border-box;
	width: 410px !important;
	min-width: 410px !important;
	max-width: min(410px, calc(100vw - 48px)) !important;
	border: 1px solid #dbe4ee !important;
	max-height: min(620px, calc(100vh - 120px));
	overflow-y: auto;
}

.broker-home-map-style-menu .broker-home-type-buttons{
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 100%;
}

.broker-home-map-style-menu .broker-home-filter-menu-title{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.broker-home-map-style-menu .broker-home-filter-option{
	display: block;
	align-items: initial;
	gap: 0;
	width: auto;
	min-height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	text-align: initial;
	letter-spacing: 0;
}

.broker-home-map-style-menu .broker-home-filter-option:hover,
.broker-home-map-style-menu .broker-home-filter-option.active{
	background: transparent;
}

.broker-home-map-style-menu .broker-home-filter-option input{
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}

.broker-home-map-style-menu .broker-home-filter-reset-row{
	margin-top: 0;
	padding-top: 12px;
	border-top: 1px solid #edf0f4;
}

.broker-home-map-style-menu .broker-home-filter-reset-btn{
	width: 100%;
	min-height: 38px;
	border: 0;
	border-radius: 100px;
	background: #f8fafc;
	font-size: 15px;
	font-weight: 600;
}

.broker-home-map-style-menu .broker-home-filter-reset-btn:hover{
	background: #eef2f7;
	color: #4b5563;
}

.broker-home-price-type-menu .broker-home-price-type-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.broker-home-land-type-menu .broker-home-land-type-grid,
.broker-home-land-type-menu .type-filter-grid{
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.broker-home-land-use-zone-menu .broker-home-land-use-zone-grid,
.broker-home-land-use-zone-menu .type-filter-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.broker-home-land-use-zone-menu .broker-home-filter-check[data-value="자연환경보전지역"] + span{
	white-space: nowrap;
}

.broker-home-land-type-menu .type-filter-section-title,
.broker-home-land-type-menu .type-filter-section:nth-of-type(2) .type-filter-section-title,
.broker-home-land-use-zone-menu .type-filter-section-title,
.broker-home-land-use-zone-menu .type-filter-section:nth-of-type(2) .type-filter-section-title{
	margin: 0;
	color: #3f4652;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.broker-home-area-menu.area-filter-menu{
	border: 1px solid #dbe4ee !important;
}

.broker-home-area-menu .area-filter-summary-row{
	gap: 2px;
}

.broker-home-area-menu .area-filter-scale{
	width: 100%;
}

body.broker-home-page-open .broker-home-law-notice,
body.broker-home-page-open .broker-home-usage,
body.broker-home-page-open .broker-home-ad,
body.broker-home-page-open .broker-home-payment-card,
body.broker-home-page-open .broker-home-filter-menu,
body.broker-home-page-open .broker-home-filter-btn,
body.broker-home-page-open .broker-listing-list,
body.broker-home-page-open .broker-listing-row,
body.broker-home-page-open .broker-listing-thumb,
body.broker-home-page-open .broker-home-company-info{
	box-shadow: none;
}

.broker-home-filter-reset-btn i{
	font-size: 12px;
	line-height: 1;
}

.broker-home-filter-divider{
	width: 1px;
	height: 26px;
	background: #d8dee8;
}

.broker-home-filter-spacer{
	flex: 1 1 auto;
	min-width: 16px;
}

.broker-contracts-shell{
	/* PATCH 4.904: 사용건수 박스 하단부터 계약 필터줄까지 매물관리와 같은 실제 외부 여백을 둔다. */
	margin-top: var(--broker-home-overview-to-filter-gap);
	/* PATCH 4.906: 매물ㆍ계약 목록 끝에서 로고까지는 중개사 홈 공통 푸터가 간격을 전담한다. */
	margin-bottom: 0;
}

.broker-contract-add-btn{
	height: 36px;
	padding: 0 18px;
	border: 0;
	border-radius: 999px;
	background: #2563eb;
	color: #ffffff;
	font-family: var(--subbar-menu-font-family);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.broker-contract-filterbar{
	width: 100%;
	/* 계약 필터는 중첩 래퍼 안에 있으므로 외부 여백을 두 번 더하지 않는다. */
	margin-top: 0;
}

.broker-contracts-table{
	display: grid;
	min-width: 0;
	background: #ffffff;
	border-top: 1px solid #edf1f5;
	overflow-x: auto;
}

.broker-contracts-table-head{
	display: grid;
	grid-template-columns: 100px 100px 90px 90px 100px 120px minmax(220px, 1fr) 86px 124px 130px 124px 130px minmax(160px, 1fr) minmax(220px, 1fr);
	gap: 0;
	column-gap: 0;
	align-items: center;
	text-align: center;
	padding: 12px 0;
	border-bottom: 1px solid #edf1f5;
	color: #94a3b8;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.35;
	letter-spacing: -0.08px;
}

.broker-contracts-table .admin-empty{
	grid-column: 1 / -1;
	margin: 14px 0 0;
	border: 0;
	/* PATCH 4.905: 계약 빈 상태 문구를 계약 표의 왼쪽 시작선에 맞춘다. */
	padding: 24px 0;
	box-sizing: border-box;
}

/* PATCH 2.338: 중개사 홈 목록은 체크박스 없이 행별 관리 메뉴로 처리 */
.broker-listing-shell{
	--broker-list-front-gap: 33px;
	--broker-list-title-area-gap: 14px;
	--broker-list-area-price-gap: 33px;
	--broker-list-price-edit-gap: 14px;
	--broker-list-button-gap: 8px;
	--broker-list-photo-size: 72px;
	--broker-list-photo-col: var(--broker-list-photo-size);
	--broker-list-type-col: 76px;
	--broker-list-status-col: 52px;
	--broker-list-date-col: 56px;
	--broker-list-no-col: 82px;
	--broker-list-area-col: 104px;
	--broker-list-price-col: 148px;
	--broker-list-edit-col: 58px;
	--broker-list-copy-col: 92px;
	--broker-list-menu-col: 34px;
	display: block;
	min-width: 0;
}

/* PATCH 4.902: 계약관리에서도 공통 상단 개요는 유지하고 매물 필터ㆍ목록만 숨긴다. */
#brokerHomePanel[data-active-tab="contracts"] > #brokerHomeFilterbar,
#brokerHomePanel[data-active-tab="contracts"] > #brokerListingsList,
#brokerHomePanel[data-active-tab="listings"] > #brokerContractsShell{
	display: none;
}

.broker-listing-list{
	display: grid;
	gap: 0;
	border-top: 1px solid #edf1f5;
	border-bottom: 0;
	background: #ffffff;
}

.broker-listing-head,
.broker-listing-row{
	display: grid;
	grid-template-columns: var(--broker-list-photo-col) 36px var(--broker-list-type-col) var(--broker-list-front-gap) var(--broker-list-status-col) var(--broker-list-front-gap) var(--broker-list-date-col) var(--broker-list-front-gap) var(--broker-list-no-col) var(--broker-list-front-gap) minmax(var(--broker-list-title-min, 350px), 1fr) var(--broker-list-title-area-gap) var(--broker-list-area-col) var(--broker-list-area-price-gap) var(--broker-list-price-col) var(--broker-list-price-edit-gap) var(--broker-list-edit-col) var(--broker-list-button-gap) var(--broker-list-copy-col) var(--broker-list-button-gap) var(--broker-list-menu-col);
	column-gap: 0;
	box-sizing: border-box;
	background: #ffffff;
	min-width: 0;
}

.broker-listing-head > div:nth-child(1),
.broker-listing-row > div:nth-child(1){
	grid-column: 1;
}

.broker-listing-head > div:nth-child(2),
.broker-listing-row > div:nth-child(2){
	grid-column: 3;
}

.broker-listing-head > div:nth-child(3),
.broker-listing-row > div:nth-child(3){
	grid-column: 5;
}

.broker-listing-head > div:nth-child(4),
.broker-listing-row > div:nth-child(4){
	grid-column: 7;
}

.broker-listing-head > div:nth-child(5),
.broker-listing-row > div:nth-child(5){
	grid-column: 9;
}

.broker-listing-head > div:nth-child(6),
.broker-listing-row > div:nth-child(6){
	grid-column: 11;
}

.broker-listing-head > div:nth-child(7),
.broker-listing-row > div:nth-child(7){
	grid-column: 13;
}

.broker-listing-head > div:nth-child(8),
.broker-listing-row > div:nth-child(8){
	grid-column: 15;
}

.broker-listing-head > div:nth-child(9),
.broker-listing-row > div:nth-child(9){
	grid-column: 17;
}

.broker-listing-head > div:nth-child(10),
.broker-listing-row > div:nth-child(10){
	grid-column: 19;
}

.broker-listing-head > div:nth-child(11),
.broker-listing-row > div:nth-child(11){
	grid-column: 21;
}

.broker-listing-head{
	align-items: center;
	text-align: center;
	padding: 12px 0;
	border-bottom: 1px solid #edf1f5;
	color: #94a3b8;
	/* PATCH 2.346: 중개사 홈 목록 헤더 색상은 유지하고 크기만 14px로 조정 */
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -0.08px;
}

.broker-listing-row{
	align-items: center;
	min-height: 97px;
	padding: 12px 0;
	border-bottom: 1px solid #edf1f5;
	transition: background-color 0.12s ease;
}

.broker-listing-pagination{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 14px 0 6px;
	border-top: 1px solid #edf1f5;
	background: #ffffff;
}

.broker-listing-page-btn{
	min-width: 32px;
	height: 32px;
	padding: 0 8px;
	border: 1px solid #dbe4ee;
	border-radius: 6px;
	background: #ffffff;
	color: #374151;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.broker-listing-page-btn.nav{
	min-width: 40px;
}

.broker-listing-page-btn.active{
	border-color: #cdd8e5;
	background: #f1f5f9;
	color: #111827;
	font-weight: 600;
}

.broker-listing-page-btn:disabled{
	opacity: 0.45;
	cursor: default;
}

.broker-listing-page-ellipsis{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 32px;
	color: #94a3b8;
	font-size: 12px;
	font-weight: 600;
}

body.broker-home-page-open #brokerListingsList{
	--broker-list-front-gap: clamp(18px, 2.55vw, 33px);
	--broker-list-title-area-gap: 12px;
	--broker-list-area-price-gap: clamp(18px, 2.55vw, 33px);
	--broker-list-price-edit-gap: 12px;
	--broker-list-photo-size: clamp(60px, 5.6vw, 72px);
	--broker-list-photo-col: var(--broker-list-photo-size);
	--broker-list-no-col: 132px;
	--broker-list-title-min: 0px;
	min-width: 0;
	height: auto;
	max-height: none;
	overflow-y: visible;
	overflow-x: hidden;
}

body.broker-home-page-open #brokerListingsList.broker-listing-list{
	height: auto;
	max-height: none;
	overflow-y: visible;
}

body.broker-home-page-open #brokerListingsList .broker-listing-list,
body.broker-home-page-open #brokerListingsList .broker-listing-head,
body.broker-home-page-open #brokerListingsList .broker-listing-row{
	width: 100%;
	min-width: 0;
}

.broker-listing-row:hover,
.admin-listings-list .admin-listing-row.is-selected,
.my-suite-favorites-list .my-suite-favorite-row.is-selected,
body.broker-home-page-open #brokerListingsList .broker-listing-row.is-selected{
	background: #f5f6f8;
}

.broker-listing-row:has(.broker-listing-edit-btn:hover),
.broker-listing-row:has(.broker-listing-edit-btn:focus-visible),
.broker-listing-row:has(.broker-listing-edit-btn:active){
	background: #ffffff;
}

.broker-listing-cell{
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	text-align: center;
}

.broker-listing-photo-cell{
	justify-content: flex-start;
	align-items: center;
	width: var(--broker-list-photo-size);
	height: var(--broker-list-photo-size);
	min-width: var(--broker-list-photo-size);
}

.broker-listing-row > .broker-listing-cell:nth-child(3),
.broker-listing-row > .broker-listing-cell:nth-child(4),
.broker-listing-row > .broker-listing-cell:nth-child(5){
	justify-content: flex-start;
	text-align: left;
}

.broker-listing-row > .broker-listing-cell:nth-child(2){
	justify-content: center;
	text-align: center;
}

.broker-listing-head > div:nth-child(2),
.broker-listing-head > div:nth-child(3),
.broker-listing-head > div:nth-child(4),
.broker-listing-head > div:nth-child(5),
.broker-listing-head > div:nth-child(6){
	text-align: left;
}

.broker-listing-head > div:nth-child(9),
.broker-listing-head > div:nth-child(10),
.broker-listing-head > div:nth-child(11){
	text-align: center;
}

.broker-listing-head > div:nth-child(7){
	text-align: right;
}

.broker-listing-head > div:nth-child(8){
	box-sizing: border-box;
	padding-left: 10px;
	text-align: left;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.broker-listing-row:last-child{
	border-bottom: 0;
}

.broker-listing-thumb{
	inline-size: var(--broker-list-photo-size);
	block-size: var(--broker-list-photo-size);
	width: var(--broker-list-photo-size);
	height: var(--broker-list-photo-size);
	flex: 0 0 var(--broker-list-photo-size);
	aspect-ratio: 1 / 1;
	margin: 0;
	box-sizing: border-box;
	border: 0;
	border-radius: 8px;
	background: #f8fafc;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #94a3b8;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: -0.1px;
}

.broker-listing-thumb img{
	inline-size: 100%;
	block-size: 100%;
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	display: block;
}

.broker-listing-type{
	/* PATCH 2.326: 중개사 홈 목록 텍스트를 요청대로 전부 400 웨이트로 통일 */
	font-size: 14px;
	font-weight: 400;
	color: #334155;
	line-height: 1.45;
	letter-spacing: -0.18px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: keep-all;
	text-align: center;
}

.broker-listing-address{
	margin-top: 5px;
	/* PATCH 2.327: 제목 아래 주소는 제목보다 작되 읽기 쉽게 14px로 조정 */
	font-size: 14px;
	font-weight: 400;
	color: #64748b;
	line-height: 1.45;
	letter-spacing: -0.1px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.broker-listing-office{
	margin-top: 2px;
	font-size: 14px;
	font-weight: 400;
	color: #94a3b8;
	line-height: 1.35;
	letter-spacing: -0.08px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.broker-listing-title-cell{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-self: center;
	min-width: 0;
	height: 58px;
	box-sizing: border-box;
}

.admin-listings-list .admin-listing-row .broker-listing-title-cell{
	height: 72px;
}

.broker-listing-title{
	font-size: 14px;
	font-weight: 600;
	color: #111827;
	letter-spacing: -0.22px;
	line-height: 1.42;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.broker-home-page-open #brokerListingsList.broker-listing-list,
body.broker-home-page-open #brokerListingsList .broker-listing-row,
body.broker-home-page-open #brokerListingsList .broker-listing-title-cell{
	overflow: visible;
}

body.broker-home-page-open #brokerListingsList .broker-listing-title-cell{
	position: relative;
	height: auto;
	min-height: 58px;
}

body.broker-home-page-open #brokerListingsList .broker-listing-private-memo{
	position: relative;
	display: inline-flex;
	width: fit-content;
	line-height: 1.2;
}

body.broker-home-page-open #brokerListingsList .broker-listing-subnote-row{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	width: fit-content;
	max-width: 100%;
	margin-top: 3px;
	line-height: 1.2;
	white-space: nowrap;
}

body.broker-home-page-open #brokerListingsList .broker-home-listing-flag-text{
	display: inline-flex;
	align-items: center;
	color: #2563eb;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.1px;
	white-space: nowrap;
}

body.broker-home-page-open #brokerListingsList .broker-listing-memo-trigger{
	appearance: none;
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0;
	font: inherit;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	color: #2563eb;
	cursor: pointer;
}

body.broker-home-page-open #brokerListingsList .broker-listing-memo-trigger:hover,
body.broker-home-page-open #brokerListingsList .broker-listing-memo-trigger:focus-visible{
	color: #1d4ed8;
	text-decoration: underline;
	text-underline-offset: 2px;
	outline: none;
}

body.broker-home-page-open #brokerListingsList .broker-listing-memo-tooltip{
	position: absolute;
	left: 0;
	top: calc(100% + 14px);
	z-index: 80;
	width: max-content;
	min-width: 180px;
	max-width: 320px;
	padding: 14px 16px;
	border-radius: 8px;
	border: 1px solid #d7e0ec;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
	color: #111827;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.1px;
	text-align: left;
	white-space: normal;
	word-break: break-word;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-2px);
	transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
	pointer-events: none;
}

body.broker-home-page-open #brokerListingsList .broker-listing-private-memo:hover .broker-listing-memo-tooltip,
body.broker-home-page-open #brokerListingsList .broker-listing-memo-trigger:focus-visible + .broker-listing-memo-tooltip{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.broker-listing-meta{
	font-size: 14px;
	font-weight: 400;
	color: #334155;
	line-height: 1.45;
	letter-spacing: -0.1px;
}

.broker-listing-status{
	display: inline;
	min-width: 0;
	height: auto;
	border: 0;
	background: transparent;
	color: #334155;
	font-size: 14px;
	font-weight: 400;
}

.broker-listing-status.published{
	color: #334155;
	background: transparent;
}

.broker-listing-no{
	justify-content: center;
	font-size: 14px;
	font-weight: 400;
	color: #334155;
	letter-spacing: -0.1px;
	overflow: visible;
	text-overflow: clip;
	white-space: nowrap;
}

body.broker-home-page-open #brokerListingsList .broker-listing-view-value{
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	font-variant-numeric: tabular-nums;
}

.broker-listing-area{
	justify-content: flex-end;
	padding-left: 0;
	text-align: right;
	box-sizing: border-box;
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -0.1px;
	line-height: 1.45;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.broker-listing-area-toggle{
	display: inline-flex;
	align-items: center;
	gap: 5px;
	height: 20px;
	line-height: 1;
	border: 0;
	background: transparent;
	color: inherit;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: inherit;
	padding: 0;
	cursor: pointer;
}

.broker-listing-area-toggle-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 14px;
	height: 14px;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	vertical-align: middle;
}

/* 중개사 홈 가격 금액 */
.broker-listing-price{
	display: flex;
	align-items: center;
	gap: 6px;
	justify-content: flex-start;
	padding-left: 10px;
	box-sizing: border-box;
	text-align: left;
	white-space: nowrap;
}

.broker-listing-price-deal{
	display: inline-flex;
	align-items: center;
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -0.1px;
	line-height: 1.45;
}

.broker-listing-price-amount{
	display: inline-flex;
	align-items: center;
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -0.1px;
	line-height: 1.45;
}

.broker-listing-edit-btn,
.broker-listing-blog-copy-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 34px;
	padding: 0 8px;
	min-width: 52px;
	border: 0;
	/* PATCH 2.354: 수정/블로그복사 버튼을 매물유형 필터처럼 둥근 pill 형태로 맞춤 */
	border-radius: 999px;
	background: #f3f4f6;
	color: #111827;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.12px;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
}

.broker-listing-blog-copy-btn{
	width: 88px;
	min-width: 88px;
	font-weight: 400;
}

.broker-listing-edit-btn:hover{
	background: #f3f4f6;
}

.broker-listing-blog-copy-btn:hover{
	background: #e5e7eb;
}

.broker-listing-menu-cell{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.broker-listing-menu-btn{
	width: 42px;
	height: 42px;
	border: 0;
	background: transparent;
	color: #475569;
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.broker-listing-menu-btn:hover{
	background: #f1f5f9;
}

.broker-listing-more-menu{
	position: absolute;
	top: 38px;
	right: 0;
	z-index: 20;
	display: none;
	min-width: 154px;
	padding: 8px;
	border: 1px solid #e5e7eb;
	background: #ffffff;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14);
}

.broker-listing-more-menu.open{
	display: grid;
	gap: 2px;
}

/* PATCH 3.148: 중개사 홈 행 관리 메뉴는 리스트 높이를 바꾸지 않는 최상위 플로팅 메뉴로 표시 */
body.broker-home-page-open .broker-listing-more-menu[data-broker-listing-menu-panel]{
	position: fixed;
	top: var(--rj-broker-listing-menu-top, 0);
	right: auto;
	left: var(--rj-broker-listing-menu-left, 0);
	z-index: 10080;
}

.broker-listing-menu-item{
	width: 100%;
	height: 34px;
	border: 0;
	background: transparent;
	color: #111827;
	/* PATCH 2.341: 내정보 드롭다운과 관리 드롭다운 글자 크기를 15px로 통일 */
	font-size: 15px;
	font-weight: 400;
	text-align: left;
	letter-spacing: -0.08px;
	cursor: pointer;
}

.broker-listing-menu-item:hover{
	background: #f8fafc;
}

.broker-listing-menu-item.danger{
	color: #ef3b23;
}

@media (max-width: 900px)
{
	.admin-application-card{
		grid-template-columns: 1fr;
		align-items: stretch;
	}
	.admin-application-actions{
		justify-content: flex-start;
	}
	.broker-listing-row{
		grid-template-columns: var(--broker-list-photo-size) minmax(0, 1fr) 44px;
	}
	.broker-listing-head{
		display: none;
	}
		.broker-listing-price{
			grid-column: 2;
			text-align: left;
		}
		.broker-listing-area{
			grid-column: 2;
		}
		.broker-home-overview{
		grid-template-columns: 1fr;
	}
}

/* ===== PATCH: 중개사무소 신청 상태별 드롭다운 문구 ===== */
#brokerOfficeMenuItem.is-pending{
	color: #1B6FA4;
	cursor: default;
	opacity: 1;
}

#brokerOfficeMenuItem.is-active{
	color: #111827;
}

.broker-office-menu-profile{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	max-width: 100%;
}

.broker-office-menu-profile-img{
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	object-fit: cover;
	background: #e5e7eb;
}

.broker-office-menu-profile-name{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-action-row > button,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row > button,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"],
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]{
	width: 100%;
	min-width: 0;
	height: var(--profile-page-button-height);
	min-height: var(--profile-page-button-height);
	margin: 0;
	padding: 0 16px;
	border-radius: var(--profile-page-button-radius);
	box-shadow: var(--profile-page-button-shadow);
	font-size: var(--profile-page-button-font-size);
	font-weight: var(--profile-page-button-font-weight);
	letter-spacing: var(--profile-page-button-letter-spacing);
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	cursor: pointer;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"],
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"],
.auth-modal.profile-page-mode #authBrokerOfficeInfoScreen #brokerOfficeInfoEditBtn{
	background: var(--profile-page-primary-button-bg);
	color: var(--profile-page-primary-button-color);
	border: var(--profile-page-primary-button-border);
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-action-row > button:hover,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row > button:hover,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit:hover,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"]:hover,
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit:hover,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]:hover,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-action-row > button:focus,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row > button:focus,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit:focus,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"]:focus,
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit:focus,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]:focus,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-action-row > button:active,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row > button:active,
.auth-modal.profile-page-mode .auth-broker-office-screen .auth-modal-submit:active,
.auth-modal.profile-page-mode .auth-broker-office-screen button[type="submit"]:active,
.auth-modal.profile-page-mode .broker-apply-page .auth-modal-submit:active,
.auth-modal.profile-page-mode .broker-apply-page button[type="submit"]:active{
	border-radius: var(--profile-page-button-radius);
	box-shadow: var(--profile-page-button-shadow);
}

/* ===== PATCH: 매물 등록 - 중개사무소 설정 ===== */
.property-agency-card{
	min-height: 0;
}

/* ===== PATCH: 매물 등록 input 높이 단일 관리 ===== */
.property-register-page input[type="text"],
.property-register-page input[type="tel"],
.property-register-page input[type="number"],
.property-register-page input[type="email"],
.property-register-page input[type="url"],
.property-register-page input[type="date"],
.property-register-page select,
.property-register-input,
.property-register-select,
.property-detail-input,
.property-registrant-input,
.broker-apply-input{
	height: var(--property-register-input-height);
	min-height: var(--property-register-input-height);
	box-sizing: border-box;
}

/* ===== PATCH: 매물 정보 층 정보 / 중개사무소 메모 정렬 ===== */


/* PATCH 2.216: 중개사무소 메모 라벨은 글자수 카운터를 빼고 textarea 높이만 기준으로 중앙 정렬 */


/* ===== PATCH: 중개사무소 가입신청 버튼 신청중 비활성화 ===== */
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn.is-disabled,
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:disabled{
	background: #e5e7eb;
	color: #9ca3af;
	border: 1px solid #e5e7eb;
	cursor: not-allowed;
	box-shadow: none;
	pointer-events: none;
}

/* ===== PATCH: 주요 실행 버튼 4종 파랑 통일 ===== */
/* 내 정보 [수정] */
.auth-modal.profile-page-mode #myInfoEditProfileBtn,
/* 내 정보 설정 [저장] */
.auth-modal.profile-page-mode #authProfileSaveBtn,
/* 중개사무소 가입신청 */
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled),
/* 매물 등록하기 */
#propertySubmitBtn,
/* 알바 공고 등록하기 */
#partTimeRegisterSubmitBtn{
	background: #4A7EDC;
	color: #ffffff;
	border: 1px solid #4A7EDC;
	box-shadow: none;
}

/* ===== PATCH 2.134: 개인정보 수정 전화번호 초기값 + 저장 버튼 파랑 최종 고정 ===== */
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled):not(.is-pending),
.auth-modal.profile-page-mode .auth-myinfo-screen #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled):not(.is-pending),
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-submit,
#authBrokerOfficeScreen .broker-apply-submit{
	background: #4A7EDC;
	color: #ffffff;
	border: 1px solid #4A7EDC;
	box-shadow: none;
}

.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled):not(.is-pending):hover,
.auth-modal.profile-page-mode .auth-myinfo-screen #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled):not(.is-pending):hover,
.auth-modal.profile-page-mode .auth-broker-office-screen .broker-apply-submit:hover,
#authBrokerOfficeScreen .broker-apply-submit:hover{
	background: #3F6FCC;
	border-color: #3F6FCC;
	color: #ffffff;
}


/* ===== MERGED FROM admin_2.712.css ===== */
/* =====================================================
   5. 관리자 페이지 / 운영자 권한
   ===================================================== */
/* ===== INLINE FROM admin.css ===== */
/* REALJEJU admin.css - stable split from realjeju_2.361(3).html / Ver 2.396 */

:root{
	--sidebar-list-width: 360px;
	--detail-panel-width: var(--rj-detail-panel-width);
	--sidebar-current-width: 0px;
	--brand: #2563eb;
	--bg: #f4f7fb;
	--line: #e7edf3;
	--text: #17212b;
	--shadow: 0 12px 30px rgba(15, 41, 66, 0.12);
	--font-ui: "SUITLocal", "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
	--font-display: "PaperlogyLocal", var(--font-ui);
	--topbar-row-height: 56px;
	--global-topbar-height: var(--topbar-row-height);
	--sub-topbar-height: var(--topbar-row-height);
	--map-control-font-size: 17px;
	--map-control-box-size: 42px;
	--map-control-radius: 10px;
	--map-tool-button-gap: 0px;
	--map-tool-stack-gap: 16px;
	--map-side-tools-top: 16px;
	--map-side-tools-right: 18px;
	--map-type-tool-height: calc((var(--map-control-box-size) * 2) + var(--map-tool-stack-gap) + var(--map-control-box-size) + var(--map-tool-stack-gap) + (var(--map-control-box-size) * 4) + var(--map-tool-stack-gap) + (var(--map-control-box-size) * 3));
	--map-unit-top-offset: 0px;
	--map-unit-tool-height: 42px;
	--map-zoom-stack-gap-from-unit: 20px;
    --map-zoom-current-gap: 14px;
	--map-tool-unit-gap-width: 18px;
	--type-font-size: 17px;
	--deal-font-size: 15px;
	--auth-font-size: 17px;
	--radius-main: 0px;
	--radius-small: 0px;
	--radius-pill: 0px;
	--radius-round: 9999px;
	--account-dropdown-padding-x: 20px;
	--account-dropdown-padding-y: 16px;
	--account-dropdown-line-color: #e5e7eb;
	/* ===== PATCH: 내 정보 / 내 정보 설정 / 중개사 가입 신청 버튼 전역 변수 ===== */
	--profile-page-button-height: 50px;
	--profile-page-button-radius: 0px;
	--profile-page-button-font-size: 17px;
	--profile-page-button-font-weight: 700;
	--profile-page-button-letter-spacing: -0.18px;
	--profile-page-button-shadow: none;
	--profile-page-primary-button-bg: #4A7EDC;
	--profile-page-primary-button-color: #ffffff;
	--profile-page-primary-button-border: 1px solid #4A7EDC;
	--profile-page-secondary-button-bg: #ffffff;
	--profile-page-secondary-button-color: #4A7EDC;
	--profile-page-secondary-button-border: 1px solid #4A7EDC;

	/* ===== PATCH: 관리자 페이지 전용 전역 변수 ===== */
	--admin-page-padding-top: 28px;
	--admin-page-padding-x: 32px;
	--admin-page-padding-bottom: 44px;

	--admin-title-font-size: 24px;
	--admin-title-font-weight: 600;
	--admin-title-letter-spacing: -0.35px;
	--admin-title-line-height: 1.25;
	--admin-title-color: #111827;

	--admin-desc-font-size: 14px;
	--admin-desc-font-weight: 400;
	--admin-desc-letter-spacing: -0.12px;
	--admin-desc-line-height: 1.4;
	--admin-desc-color: #64748b;

	--admin-office-font-size: 14px;
	--admin-office-font-weight: 800;
	--admin-office-letter-spacing: -0.22px;
	--admin-office-color: #111827;

	--admin-meta-font-size: 14px;
	--admin-meta-font-weight: 400;
	--admin-meta-letter-spacing: -0.1px;
	--admin-meta-line-height: 1.45;
	--admin-meta-color: #475569;

	--admin-status-font-size: 13px;
	--admin-status-font-weight: 600;
	--admin-status-letter-spacing: -0.1px;

	--admin-button-height: 34px;
	--admin-button-font-size: 13px;
	--admin-button-font-weight: 500;
	--admin-button-letter-spacing: -0.1px;
	--admin-button-radius: 0px;

	--admin-refresh-button-height: 38px;
	--admin-refresh-button-font-size: 14px;
	--admin-refresh-button-font-weight: 500;

	/* ===== PATCH: 매물 등록 가격 박스 높이 조절 변수 ===== */
	--property-price-card-min-height: 0px;
	--property-register-input-height: 50px;
	--property-register-dropdown-menu-height : 50px;
	--property-register-control-font-size: 15px;
	--property-register-control-font-weight: 500;
	--property-register-control-letter-spacing: 0px;
	--property-register-control-padding-x: 14px;
	--property-register-placeholder-font-size: 14px;
	--property-register-placeholder-font-weight: 400;

	/* ===== PATCH: 매물 등록 체크박스/라디오/라벨 전역 설정 ===== */
	--property-register-left-label-font-size: 16px;
	--property-register-left-label-font-weight: 700;
	--property-register-right-text-color: #5f6875;
	--property-register-option-font-size: 16px;
	--property-register-option-font-weight: 400;
	--property-register-option-letter-spacing: -0.16px;
	--property-register-option-gap: 10px;		/* 체크 버튼하고 글자 간격 */
	--property-register-deal-option-gap: 69px;	/* 매매 전세 월세 년세 단기 글자 간격 */
	--property-register-radio-column-width: 120px;
	--property-register-checkbox-size: 22px;
	--property-register-radio-size: 22px;
	--property-register-info-checkbox-size: 18px;
	--property-register-info-radio-size: 18px;

	/* ===== PATCH 2.152: 매물 주소 모달 전역 설정 ===== */
	--property-address-modal-z-index: 100500;
	--property-address-modal-bg: rgba(17, 24, 39, 0.42);
	--property-address-modal-padding: 24px;

	--property-address-dialog-width: 640px;
	--property-address-dialog-max-width: calc(100vw - 48px);
	--property-address-dialog-max-height: calc(100vh - 48px);
	--property-address-dialog-padding-top: 28px;
	--property-address-dialog-padding-x: 34px;
	--property-address-dialog-padding-bottom: 28px;
	--property-address-dialog-radius: 14px;
	--property-address-dialog-bg: #ffffff;
	--property-address-dialog-shadow: 0 24px 70px rgba(15, 23, 42, 0.24);

	--property-address-close-top: 20px;
	--property-address-close-right: 32px;
	--property-address-close-size: 34px;
	--property-address-close-bg: #f3f4f6;
	--property-address-close-color: #4b5563;
	--property-address-close-font-size: 28px;
	--property-address-close-font-weight: 400;

	--property-address-title-margin-bottom: 22px;
	--property-address-title-font-size: 26px;
	--property-address-title-font-weight: 800;
	--property-address-title-line-height: 1.15;
	--property-address-title-letter-spacing: -1px;
	--property-address-title-color: #050816;

	--property-address-input-height: 58px;
	--property-address-input-border: 1px solid #d8dee8;
	--property-address-input-border-focus: 1px solid #d8dee8;
	--property-address-input-radius: 0px;
	--property-address-input-bg: #ffffff;
	--property-address-input-color: #111827;
	--property-address-input-placeholder-color: #a8b0bd;
	--property-address-input-font-size: 16px;
	--property-address-input-font-weight: 600;
	--property-address-input-letter-spacing: -0.16px;
	--property-address-search-input-padding-left: 18px;
	--property-address-search-input-padding-right: 58px;
	--property-address-detail-input-padding-x: 18px;

	--property-address-search-form-margin-bottom: 20px;
	--property-address-search-icon-right: 18px;
	--property-address-search-icon-size: 34px;
	--property-address-search-icon-color: #475569;
	--property-address-search-icon-font-size: 22px;

	--property-address-guide-padding-top: 2px;
	--property-address-guide-title-margin-bottom: 16px;
	--property-address-guide-title-font-size: 18px;
	--property-address-guide-title-font-weight: 800;
	--property-address-guide-row-margin-bottom: 16px;
	--property-address-guide-main-margin-bottom: 5px;
	--property-address-guide-main-font-size: 16px;
	--property-address-guide-main-font-weight: 500;
	--property-address-guide-example-font-size: 14px;
	--property-address-guide-example-color: #8b93a1;

	--property-address-results-max-height: min(470px, calc(100vh - 260px));
	--property-address-result-padding-top: 10px;
	--property-address-result-padding-right: var(--realjeju-management-page-gap, 28px);
	--property-address-result-padding-bottom: 22px;
	--property-address-result-gap: 12px;
	--property-address-zone-margin-bottom: 12px;
	--property-address-zone-font-size: 17px;
	--property-address-zone-font-weight: 800;
	--property-address-line-margin-bottom: 8px;
	--property-address-line-gap: 10px;
	--property-address-line-font-size: 15px;
	--property-address-line-font-weight: 500;
	--property-address-line-height: 1.45;

	--property-address-badge-height: 24px;
	--property-address-badge-padding-x: 8px;
	--property-address-badge-radius: 6px;
	--property-address-badge-bg: #f1f3f6;
	--property-address-badge-color: #6b7280;
	--property-address-badge-font-size: 13px;
	--property-address-badge-font-weight: 700;

	--property-address-primary-button-height: 52px;
	--property-address-primary-button-min-width: 52px;
	--property-address-primary-button-padding-x: 22px;
	--property-address-primary-button-bg: var(--profile-page-primary-button-bg);
	--property-address-primary-button-color: var(--profile-page-primary-button-color);
	--property-address-primary-button-border: var(--profile-page-primary-button-border);
	--property-address-primary-button-radius: 0px;
	--property-address-primary-button-font-size: 16px;
	--property-address-primary-button-font-weight: 700;
	--property-address-primary-button-letter-spacing: -0.18px;
	--property-address-result-select-top: 6px;
	--property-address-result-select-right: 0px;

	--property-address-secondary-button-height: 52px;
	--property-address-secondary-button-min-width: 132px;
	--property-address-secondary-button-padding-x: 22px;
	--property-address-secondary-button-bg: var(--profile-page-secondary-button-bg);
	--property-address-secondary-button-color: var(--profile-page-secondary-button-color);
	--property-address-secondary-button-border: var(--profile-page-secondary-button-border);
	--property-address-secondary-button-radius: 0px;
	--property-address-secondary-button-font-size: 16px;
	--property-address-secondary-button-font-weight: 700;

	--property-address-detail-head-margin-bottom: 26px;
	--property-address-address-row-gap: 20px;
	--property-address-address-row-margin-bottom: 8px;
	--property-address-selected-margin-top: 0px;
	--property-address-selected-margin-right: 0px;
	--property-address-selected-margin-bottom: 34px;
	--property-address-selected-margin-left: 24px;
	--property-address-detail-label-height: 28px;
	--property-address-detail-label-font-size: var(--property-register-left-label-font-size);
	--property-address-detail-label-font-weight: var(--property-register-left-label-font-weight);
	--property-address-detail-section-title-margin-bottom: 6px;
	--property-address-detail-help-margin-bottom: 14px;
	--property-address-detail-help-font-size: 14px;
	--property-address-detail-help-color: #9ca3af;
	--property-address-detail-actions-gap: 10px;
	--property-address-detail-actions-margin-top: 8px;

	--property-address-main-detail-right: 18px;
	--property-address-main-detail-max-width: 190px;
	--property-address-main-detail-font-size: 14px;
	--property-address-main-detail-font-weight: 600;
	--property-address-main-detail-color: #9ca3af;
	--property-address-main-detail-padding-right: 220px;

	/* ===== PATCH 2.171: 위치 직접검색 / 지도 크기 전역 변수 ===== */
	--location-search-btn-height: 40px;
	--location-search-input-height: 40px;
	--property-map-height: 300px;

	--property-address-location-row-margin-top: 12px;
	--property-address-location-row-margin-bottom: 28px;
	--property-address-location-row-margin-left: calc(140px + 24px);
	--property-address-location-mode-gap: 18px;
	--property-address-location-mode-margin-bottom: 10px;
	--property-address-location-map-height: var(--property-map-height);
	--property-address-location-map-border: 1px solid #d8dee8;
	--property-address-location-map-bg: #f8fafc;
	--property-address-location-help-margin-top: 8px;
	--property-address-location-help-font-size: 14px;
	--property-address-location-help-color: #2563eb;
	--property-address-location-rectangle-stroke: #2563EB;
	--property-address-location-rectangle-fill: rgba(37, 99, 235, 0.26);
	--property-address-location-direct-button-width: 132px;
	--property-address-location-direct-button-height: var(--location-search-btn-height);
	--property-address-location-direct-button-padding-x: 14px;
	--property-address-location-direct-button-font-size: 14px;
	--property-address-location-direct-button-font-weight: 700;
	--property-address-location-direct-input-height: var(--location-search-input-height);
	--property-address-location-direct-input-padding-x: 14px;
	--property-address-location-direct-input-font-size: 14px;
	--property-address-location-direct-gap: 10px;

	--property-address-hide-row-margin-top: 12px;
	--property-address-hide-row-margin-bottom: 28px;
	--property-address-hide-row-margin-left: calc(140px + 24px);
	--property-address-hide-checkbox-size: var(--property-register-info-checkbox-size);
	--property-address-hide-label-font-size: 16px;
	--property-address-hide-label-font-weight: 500;
	--property-address-hide-help-margin-top: 8px;
	--property-address-hide-help-font-size: 14px;
	--property-address-hide-help-color: #8b93a1;
}

/* ===== PATCH: 관리자 페이지 - 중개사 신청 관리 ===== */
.admin-page-panel{
	position: absolute;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 9990;
	display: none;
	background: #ffffff;
	color: #111827;
	overflow-y: scroll;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	padding: 32px 32px 0;
}

.admin-page-head{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	width: 1180px;
	max-width: calc(100vw - 64px);
	margin: 0 auto 52px;
	text-align: center;
}

.admin-page-title{
	font-size: 34px;
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1.2;
	margin: 0;
	color: #111827;
}



.admin-refresh-btn{
	height: 38px;
	padding: 0 16px;
	border: 1px solid #1B6FA4;
	border-radius: 0;
	background: #1B6FA4;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	box-shadow: none;
}

.admin-page-head > .admin-refresh-btn{
	display: none;
}

.admin-application-list{
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.admin-page-tabs{
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	width: 1180px;
	max-width: calc(100vw - 64px);
	min-width: 0;
	margin: 0 auto 48px;
	border: 1px solid #e5e7eb;
	border-right: 0;
	background: #ffffff;
	box-sizing: border-box;
}

.admin-page-tab{
	width: 100%;
	min-width: 0;
	height: 56px;
	border: 0;
	border-right: 1px solid #e5e7eb;
	background: #ffffff;
	color: #111827;
	font: inherit;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.02em;
	cursor: pointer;
	box-shadow: none;
}

.admin-page-tab.active{
	background: #2563eb;
	color: #ffffff;
	font-weight: 600;
}

.admin-page-tab:focus,
.admin-page-tab:focus-visible{
	outline: none !important;
	box-shadow: none !important;
	transform: none !important;
}

.admin-page-tab-panel{
	display: none;
}

.admin-page-tab-panel.active{
	display: block;
	width: 1180px;
	max-width: calc(100vw - 64px);
	margin: 0 auto 35px;
}

.admin-application-card{
	display: grid;
	grid-template-columns: minmax(220px, 0.95fr) minmax(400px, 1.55fr) minmax(130px, 0.55fr) minmax(236px, auto);
	gap: 14px;
	align-items: center;
	padding: 16px;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
}

.admin-application-office{
	font-size: 14px;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.22px;
	line-height: 1.45;
	margin-bottom: 2px;
}

.admin-application-meta{
	font-size: 14px;
	font-weight: 600;
	color: #475569;
	line-height: 1.45;
	letter-spacing: -0.1px;
}

.admin-status-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 92px;
	height: 24px;
	padding: 0 8px;
	border-radius: 0;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: -0.1px;
	background: #f1f5f9;
	color: #475569;
}

.admin-status-badge.pending{
	background: #fff7ed;
	color: #ea580c;
}

.admin-status-badge.active{
	background: #eff6ff;
	color: #2563eb;
}

.admin-status-badge.rejected{
	background: #fef2f2;
	color: #dc2626;
}

.admin-application-actions{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	flex-wrap: wrap;
}

.admin-status-btn{
	height: 34px;
	padding: 0 12px;
	border: 1px solid #d1d5db;
	border-radius: 999px;
	background: #fff;
	color: #111827;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	box-shadow: none;
}

.admin-status-btn.approve{
	border-color: #2563eb;
	color: #2563eb;
}

.admin-status-btn.pending{
	border-color: #ea580c;
	color: #ea580c;
}

.admin-status-btn.reject{
	border-color: #dc2626;
	color: #dc2626;
}

.admin-status-btn.delete{
	border-color: #6b7280;
	color: #374151;
}

.admin-empty{
	padding: 28px 0;
	border: 0;
	border-top: 1px solid #e5e7eb;
	border-bottom: 1px solid #e5e7eb;
	background: #fff;
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	color: #64748b;
}

/* PATCH 2.982: 운영용 공지사항 관리자 */
.admin-notice-manager{
	margin-bottom: 18px;
	padding: 0;
	border: 0;
	background: #ffffff;
}

.admin-notice-head{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 16px;
}

.admin-notice-title{
	margin: 0;
	font-size: 18px;
	line-height: 1.3;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.18px;
}

.admin-notice-desc{
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.45;
	color: #64748b;
}

.admin-notice-new-btn{
	height: 38px;
	padding: 0 14px;
	border: 1px solid #d1d5db;
	background: #ffffff;
	color: #111827;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

.admin-notice-form{
	display: grid;
	gap: 12px;
	margin-bottom: 16px;
}

.admin-notice-form-grid{
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 12px;
}

.admin-notice-field{
	display: grid;
	gap: 7px;
	font-size: 13px;
	font-weight: 800;
	color: #334155;
}

.admin-notice-field input,
.admin-notice-field select,
.admin-notice-field textarea{
	width: 100%;
	min-width: 0;
	border: 1px solid #d1d5db;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	box-sizing: border-box;
}

.admin-notice-field input,
.admin-notice-field select{
	height: 42px;
	padding: 0 12px;
}

.admin-notice-field textarea{
	min-height: 110px;
	padding: 12px;
	line-height: 1.55;
	resize: vertical;
}

.admin-notice-category-dropdown.property-form-control.property-register-dropdown{
	height: 42px;
	padding: 0 12px;
	border-color: #d1d5db;
}

.admin-notice-category-dropdown .property-register-dropdown-trigger{
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

.admin-notice-category-dropdown .property-register-dropdown-trigger i{
	margin-left: auto;
	color: #64748b;
}

.admin-notice-category-dropdown .property-register-dropdown-menu{
	min-width: 100%;
	max-width: 240px;
}

.admin-notice-options{
	display: flex;
	align-items: center;
	gap: 18px;
	font-size: 13px;
	font-weight: 700;
	color: #475569;
}

.admin-notice-options label{
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.admin-notice-options input{
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: #2563eb;
}

.admin-notice-actions{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	padding-top: 0;
	margin-bottom: 0;
}

.admin-notice-actions .my-suite-inquiry-primary,
.admin-notice-actions .my-suite-inquiry-secondary{
	min-width: 74px;
}

.admin-notice-status{
	flex: 1 1 auto;
	margin: 0;
	font-size: 13px;
	color: #64748b;
}

.admin-notice-list-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin: 42px 0 8px;
}

.admin-notice-list-title{
	margin: 0;
	font-size: 18px;
	line-height: 1.3;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.18px;
}

.admin-notice-list-count{
	font-size: 13px;
	line-height: 1.3;
	font-weight: 700;
	color: #64748b;
}

.admin-notice-list{
	display: grid;
	gap: 5px;
}

.admin-notice-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 10px 12px;
	border: 1px solid #e5e7eb;
	background: #f8fafc;
}

.admin-notice-row-title{
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 4px;
	font-size: 15px;
	font-weight: 800;
	color: #111827;
}

.admin-notice-row-meta{
	display: flex;
	flex-wrap: wrap;
	gap: 6px 12px;
	font-size: 12px;
	font-weight: 600;
	color: #64748b;
}

.admin-notice-row-actions{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
}

.admin-notice-chip{
	display: inline-flex;
	align-items: center;
	height: 22px;
	padding: 0 8px;
	border: 1px solid #dbe3ee;
	background: #ffffff;
	color: #334155;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
}

.admin-notice-chip.visible{
	border-color: #bfdbfe;
	background: #eff6ff;
	color: #2563eb;
}

.admin-notice-chip.hidden{
	border-color: #fecaca;
	background: #fef2f2;
	color: #dc2626;
}

.admin-notice-chip.pinned{
	border-color: #fed7aa;
	background: #fff7ed;
	color: #ea580c;
}



.admin-inquiries-filterbar{
	margin: 0 0 18px;
}

.admin-inquiries-filterbar [data-admin-inquiry-view="deleted"]{
	margin-left: auto;
}

.admin-inquiry-list{
	display: grid;
	gap: 10px;
}

.admin-inquiry-table{
	display: grid;
	gap: 10px;
}



.admin-inquiry-row{
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) 88px;
	align-items: center;
	gap: 14px;
	padding: 16px 18px;
	border-bottom: 1px solid #edf2f7;
}



.admin-inquiry-title{
	color: #111827;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
}

.admin-inquiry-author{
	margin-top: 5px;
	color: #64748b;
	font-size: 13px;
	font-weight: 600;
}

.admin-inquiry-detail{
	display: grid;
	gap: 14px;
	padding: 18px;
	background: #f8fafc;
}

.admin-inquiry-table.my-suite-inquiry-list{
	gap: 0;
}



.admin-inquiry-main{
	display: grid;
	min-width: 0;
	gap: 5px;
}

.admin-inquiry-main .admin-inquiry-title,
.admin-inquiry-main .admin-inquiry-author{
	display: block;
	margin-top: 0;
}

input:focus,
textarea:focus,
select:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.admin-notice-field input:focus,
.admin-notice-field select:focus,
.admin-notice-field textarea:focus{
	outline: none !important;
	box-shadow: none !important;
	transform: none !important;
}



.global-topbar-right #detailAuthTrigger.version-only{
	min-width: 78px;
	cursor: default;
	pointer-events: none;
}

.global-topbar-right #detailAuthTrigger.version-only .topbar-version-text{
	display: block;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	opacity: 1;
	white-space: nowrap;
}

.global-topbar-page-title{
	position: absolute;
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--realjeju-page-gap, 40px));
	top: 0;
	display: none;
	align-items: center;
	height: var(--topbar-main-height);
	color: #111827;
	font-family: var(--font-ui);
	font-size: 20px;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1;
	white-space: nowrap;
	z-index: 3;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title,
body.realjeju-side-nav-enabled.broker-home-page-open:not(.admin-page-open) .global-topbar-page-title,
body.realjeju-side-nav-enabled.presale-page-open .global-topbar-page-title,
body.realjeju-side-nav-enabled.notice-page-open .global-topbar-page-title{
	display: flex;
}

.global-topbar-page-title span{
	display: none;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title-admin,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title-operator,
body.realjeju-side-nav-enabled.broker-home-page-open:not(.admin-page-open) .global-topbar-page-title-broker,
body.realjeju-side-nav-enabled.presale-page-open .global-topbar-page-title-presale,
body.realjeju-side-nav-enabled.notice-page-open .global-topbar-page-title-notice{
	display: inline;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title-my-suite,
body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title-operator,
body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title-broker,
body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title-presale,
body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title-notice,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title-admin,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title-my-suite,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title-broker,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title-presale,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title-notice,
body.realjeju-side-nav-enabled.my-suite-page-open .global-topbar-page-title-admin,
body.realjeju-side-nav-enabled.my-suite-page-open .global-topbar-page-title-notice,
body.realjeju-side-nav-enabled.broker-home-page-open .global-topbar-page-title-admin,
body.realjeju-side-nav-enabled.broker-home-page-open .global-topbar-page-title-my-suite,
body.realjeju-side-nav-enabled.broker-home-page-open .global-topbar-page-title-presale,
body.realjeju-side-nav-enabled.broker-home-page-open .global-topbar-page-title-notice{
	display: none;
}

/* PATCH 3.324: 부동산 홈 지도 영역 왼쪽 사이드 메뉴 */
body.realjeju-side-nav-enabled{
	--realjeju-side-nav-width: 160px;
	--realjeju-topbar-page-title-left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-page-gap, 40px));
	--realjeju-panel-line-color: #e5e7eb;
}

.realjeju-side-nav{
	position: fixed;
	top: var(--global-topbar-height);
	left: 0;
	bottom: 0;
	z-index: 145;
	display: flex;
	flex-direction: column;
	width: var(--realjeju-side-nav-width);
	box-sizing: border-box;
	padding: 18px 12px;
	border-right: 1px solid var(--realjeju-panel-line-color);
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	box-shadow: none;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: none;
}

body.realjeju-side-nav-enabled.map-panels-collapsed .realjeju-side-nav{
	z-index: 260;
}

.realjeju-side-nav::-webkit-scrollbar{
	width: 0;
	height: 0;
}

.realjeju-side-nav > *{
	flex-shrink: 0;
}

body:not(.realjeju-side-nav-enabled) .realjeju-side-nav{
	display: none;
}

body.realjeju-side-nav-enabled .app{
	padding-left: var(--realjeju-side-nav-width);
	box-sizing: border-box;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar{
	left: var(--realjeju-side-nav-width);
	border-left: 0;
	border-right-color: var(--realjeju-panel-line-color);
	box-shadow: none;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .map-wrap{
	width: calc(100vw - var(--realjeju-side-nav-width));
}

.realjeju-side-nav-menu{
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0;
	padding: 0;
}

/* PATCH 4.132: non-real-estate category homes use the local-business side menu rule. */
body.global-category-nonrealestate-mode .realjeju-side-nav [data-side-nav-action="favorites"],
body.global-category-nonrealestate-mode .realjeju-side-nav [data-side-nav-action="presale"],
body.global-category-nonrealestate-mode .realjeju-side-nav [data-side-nav-action="broker-home"]{
	display: none !important;
}

body.global-category-nonrealestate-mode .realjeju-side-nav .realjeju-side-register-btn,
body.global-category-nonrealestate-mode .realjeju-side-nav .realjeju-side-register-btn[hidden]{
	display: flex !important;
}

body.global-category-nonrealestate-mode[data-global-category="local-business"] .realjeju-side-nav .realjeju-side-register-btn,
body.global-category-nonrealestate-mode[data-global-category="local-business"] .realjeju-side-nav .realjeju-side-register-btn[hidden],
body.global-category-nonrealestate-mode[data-global-category="car"] .realjeju-side-nav .realjeju-side-register-btn,
body.global-category-nonrealestate-mode[data-global-category="car"] .realjeju-side-nav .realjeju-side-register-btn[hidden]{
	display: none !important;
}

/* PATCH 4.602: hide real-estate tools without moving the remaining map controls. */
body.global-category-nonrealestate-mode .map-primary-tool-group,
body.global-category-nonrealestate-mode .map-unit-tool-group,
body.global-category-nonrealestate-mode .map-location-tool-group{
	display: flex !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* PATCH 4.279: non-admin service categories are intentionally empty map-only views. */
body.global-category-empty-map-mode .realjeju-side-nav .realjeju-side-register-btn,
body.global-category-empty-map-mode .realjeju-side-nav .realjeju-side-register-btn[hidden]{
	display: none !important;
}

.realjeju-side-nav-item{
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 0 10px;
	box-sizing: border-box;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: #8b939e;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.2px;
	line-height: 1;
	text-align: left;
	cursor: pointer;
	box-shadow: none;
}

.realjeju-side-nav-item i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	font-size: 17px;
	line-height: 1;
	text-align: center;
}

.realjeju-side-nav-item span{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.realjeju-side-nav-item:hover,
.realjeju-side-nav-item.is-open{
	background: #f5f7fa;
	color: #111827;
	font-weight: 700;
}

.realjeju-side-nav-item.active{
	--realjeju-active-control-weight: 800;
	background: transparent;
	color: #111827;
	font-weight: 800;
}

.realjeju-side-nav-item.active > i{
	color: #111827;
}

.realjeju-side-nav-item.active > span{
	color: #111827;
}

.realjeju-side-nav-arrow{
	flex: 0 0 auto;
	width: auto;
	height: auto;
	margin-left: auto;
	color: #6b7280;
	font-size: 12px;
}

.realjeju-side-nav-line{
	height: 1px;
	margin: 16px 0;
	background: #f1f5f9;
}

.realjeju-side-nav-bottom-line{
	margin-top: auto;
}

.realjeju-side-nav.account-menu-expanded .realjeju-side-nav-bottom-line{
	margin-top: auto;
}

.realjeju-side-nav-bottom{
	flex: 0 0 auto;
}

.realjeju-side-admin-version{
	flex: 0 0 auto;
	margin: 16px 0 0;
	padding: 16px 14px;
	border-top: 1px solid #f1f5f9;
	color: #98a2b3;
	font-family: var(--font-ui);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0;
	white-space: nowrap;
}

.realjeju-side-nav.admin-version-visible{
	padding-bottom: 0;
}

.realjeju-side-admin-version[hidden]{
	display: none;
}

.realjeju-side-nav-flyout-wrap{
	position: relative;
}

.realjeju-side-account-wrap{
	position: relative;
}

.realjeju-side-nav-flyout{
	position: static;
	display: none;
	width: 100%;
	margin: 2px -14px 4px;
	padding: 2px 0;
	box-sizing: border-box;
	border: 0;
	border-radius: 0;
	background: #f3f4f6;
	box-shadow: none;
}

.realjeju-side-nav-flyout.open{
	display: block;
}

.realjeju-side-nav-flyout-item{
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 36px;
	padding: 0 10px;
	border: 0;
	border-radius: 5px;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: -0.15px;
	text-align: left;
	cursor: pointer;
	box-shadow: none;
}

.realjeju-side-nav-flyout-item:hover{
	background: #f3f4f6;
}

.realjeju-side-nav-flyout-item.muted{
	color: #6b7280;
}

.realjeju-side-nav-flyout-check{
	display: flex;
	align-items: center;
	gap: 6px;
	width: 100%;
	min-height: 28px;
	padding: 0 18px;
	box-sizing: border-box;
	border-radius: 5px;
	background: transparent;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.15px;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
}

.realjeju-side-nav-flyout-check:hover{
	background: #eef2f7;
	color: #111827;
}

.realjeju-side-nav-flyout-check input{
	flex: 0 0 auto;
	width: 14px;
	height: 14px;
	margin: 0;
	accent-color: var(--brand-blue);
}

.realjeju-side-recent{
	min-height: 96px;
}

.realjeju-side-recent-title{
	margin: 0 10px 10px;
	color: #6b7280;
	font-size: 12.5px;
	font-weight: 800;
	letter-spacing: 0;
}

.realjeju-side-recent-empty{
	margin: 0 10px;
	color: #9ca3af;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.45;
	white-space: nowrap;
}

.realjeju-side-recent-list{
	display: flex;
	flex-direction: column;
	gap: 6px;
	/* PATCH 3.849: 최근 조회 제목과 동일한 시작 라인으로 맞춰 목록 시작 위치를 내밉니다. */
	margin: 0 10px;
	padding: 0;
}

.realjeju-side-recent-item{
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 8px 0;
	border: 0;
	background: transparent;
	border-radius: 0;
	cursor: pointer;
	text-align: left;
	text-decoration: none;
	font-family: var(--font-ui);
}

.realjeju-side-recent-item:not(:last-child){
	/* PATCH 3.844: 선을 더 얇고 연하게, 전체 너비에 가깝게 보이도록 조정 */
	border-bottom: 0.5px solid #f0f4f8;
}

.realjeju-side-recent-item:hover{
	/* PATCH 3.849: 최근조회 항목 hover 시 구분선이 사라지지 않도록 하단선 색을 유지한다. */
	background: transparent;
	border-bottom-color: #f0f4f8;
}

.realjeju-side-recent-item-title{
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.35;
	color: #111827;
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

	.realjeju-side-recent-item-sub{
		font-size: 11px;
		font-weight: 600;
		line-height: 1.35;
	color: #111827;
	white-space: nowrap;
	overflow: hidden;
		text-overflow: ellipsis;
		text-decoration: none;
	}

	.realjeju-side-recent-ad{
		position: relative;
		box-sizing: border-box;
		width: 100%;
		min-height: 0;
		aspect-ratio: 1 / 1;
		margin: 6px 0 0;
		border: 1px solid #d7e2ef;
		border-radius: 8px;
		background: #f5f6f8;
		box-shadow: none;
		overflow: hidden;
	}

	.realjeju-side-recent-ad-half{
		aspect-ratio: auto;
		min-height: 59px;
		margin-top: 8px;
	}

	.realjeju-side-recent-ad-badge{
		position: absolute;
		top: 10px;
		right: 10px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 28px;
		border-radius: 50%;
		background: #ffffff;
		color: #9ca3af;
		font-size: 10px;
		font-weight: 800;
		line-height: 1;
		letter-spacing: 0;
		box-shadow: 0 1px 4px rgba(15, 23, 42, 0.14);
	}

	.realjeju-side-recent-ad-half .realjeju-side-recent-ad-badge{
		top: 10px;
		right: 10px;
		width: 28px;
		height: 28px;
		font-size: 10px;
	}

.realjeju-side-local-business-top-ad{
	display: none;
	width: auto;
	margin: 0 10px 14px;
}

body[data-global-category="local-business"] .realjeju-side-local-business-top-ad{
	display: block;
}

.realjeju-side-account{
	display: flex;
	align-items: center;
	gap: 9px;
	width: 100%;
	min-height: 44px;
	margin: 0;
	padding: 0 4px 0 10px;
	border: 0;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	cursor: pointer;
	box-shadow: none;
}

.realjeju-side-account.has-profile-image{
	padding-left: 4px;
}

.realjeju-side-account-badge,
.realjeju-side-account-image{
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	box-sizing: border-box;
	background: #e5e7eb;
}

.realjeju-side-account-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	white-space: nowrap;
}

.realjeju-side-account-badge i{
	display: block;
	line-height: 1;
}

.realjeju-side-account-image{
	display: block;
	object-fit: cover;
}

.realjeju-side-account-badge[hidden],
.realjeju-side-account-image[hidden]{
	display: none;
}

.realjeju-side-account-name{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.2px;
	line-height: 1;
}

.realjeju-side-account-arrow{
	flex: 0 0 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	margin-left: auto;
	color: #111827;
	font-size: 13px;
	line-height: 1;
	transform-origin: 50% 50%;
	transition: none;
	will-change: transform;
}

.realjeju-side-account.account-open .realjeju-side-account-arrow,
.realjeju-side-nav-item.is-open .realjeju-side-nav-arrow{
	transform: rotate(180deg);
}

.realjeju-side-account-menu{
	display: none;
	margin: 2px -14px 4px;
	padding: 2px 0;
	background: #f3f4f6;
	border: 0;
	box-shadow: none;
}

.realjeju-side-account-menu.open{
	display: block;
}

.realjeju-side-account-menu-item{
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 28px;
	padding: 0 22px;
	border: 0;
	background: transparent;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.1px;
	text-align: left;
	cursor: pointer;
	box-shadow: none;
}

.realjeju-side-account-menu-item:hover{
	background: #eef2f7;
	color: #111827;
}

.realjeju-side-account-menu-item.active,
.realjeju-side-account-menu-item[aria-current="page"]{
	color: #111827;
	font-weight: 700;
}

.realjeju-side-account-menu-line{
	height: 1px;
	margin: 3px 0;
	background: #e5e7eb;
}

.realjeju-side-register-btn{
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 12px;
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 0 10px;
	border: 0;
	border-radius: 6px;
	background: #f3f4f6;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14.5px;
	font-weight: 600;
	letter-spacing: -0.2px;
	line-height: 1;
	text-align: left;
	cursor: pointer;
	box-shadow: none;
}

.realjeju-side-register-btn:hover,
.realjeju-side-register-btn.active,
.realjeju-side-register-btn.is-open{
	font-weight: 700;
}

.realjeju-side-register-btn i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	font-size: 17px;
	line-height: 1;
	text-align: center;
}

.admin-notice-field input:focus,
.admin-notice-field select:focus,
.admin-notice-field textarea:focus{
	border-color: #d1d5db !important;
}

@media (max-width: 900px)
{
	.admin-page-panel{
		padding: 58px 14px 44px;
	}

	.admin-page-head,
.admin-page-tabs,
.admin-page-tab-panel.active{
		max-width: calc(100vw - 28px);
	}

	.admin-page-head{
		margin-bottom: 38px;
	}

	.admin-page-title{
		font-size: 30px;
	}

	.admin-page-tabs{
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-bottom: 48px;
	}

	.admin-page-tab{
		height: 46px;
		font-size: 13px;
	}

	.admin-notice-form-grid,
.admin-inquiry-row{
		grid-template-columns: 1fr;
	}
}

/* ===== PATCH: 관리자 페이지 글자/버튼 전역 변수 적용 ===== */
.admin-page-panel{
	padding: 32px 32px 0;
}

.admin-page-title{
	font-size: 34px;
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1.2;
	color: #111827;
}

.admin-page-desc{
	display: none;
}

.admin-application-office{
	font-size: var(--admin-office-font-size);
	font-weight: var(--admin-office-font-weight);
	letter-spacing: var(--admin-office-letter-spacing);
	color: var(--admin-office-color);
}

.admin-application-meta,
.admin-empty{
	font-size: var(--admin-meta-font-size);
	font-weight: var(--admin-meta-font-weight);
	letter-spacing: var(--admin-meta-letter-spacing);
	line-height: var(--admin-meta-line-height);
	color: var(--admin-meta-color);
}

.admin-application-contact{
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: 2px;
	max-width: 100%;
	margin-left: -18px;
}

.admin-application-contact-row{
	display: flex;
	align-items: flex-start;
	max-width: 100%;
}

.admin-application-contact-label{
	display: inline;
	color: var(--admin-meta-color);
	font-weight: var(--admin-meta-font-weight);
	white-space: nowrap;
	margin-right: 4px;
}

.admin-application-contact-value{
	min-width: 0;
	color: var(--admin-meta-color);
	overflow-wrap: anywhere;
	word-break: break-word;
}

.admin-application-status-block{
	margin-left: 8px;
}

.admin-applications-content{
	width: 100%;
}

.admin-applications-filterbar{
	margin: 0 0 18px;
}

.admin-applications-filterbar [data-admin-application-view="deleted"]{
	margin-left: auto;
}

.admin-listings-content{
	width: 100%;
}

.admin-listings-filterbar{
	margin: 0 0 18px;
}

.admin-listings-filterbar [data-admin-listing-view="deleted"]{
	margin-left: auto;
}

.admin-listings-shell{
	margin: 0;
	--broker-list-front-gap: 33px;
	--broker-list-no-col: 82px;
	--broker-list-area-price-gap: 20px;
	--broker-list-price-edit-gap: 12px;
	--broker-list-button-gap: 0px;
	--broker-list-edit-col: 0px;
	--broker-list-copy-col: 0px;
	--broker-list-menu-col: 34px;
}

.admin-listings-list .admin-listing-head,
.admin-listings-list .admin-listing-row{
	grid-template-columns: var(--broker-list-photo-col) 36px var(--broker-list-type-col) var(--broker-list-front-gap) var(--broker-list-status-col) var(--broker-list-front-gap) var(--broker-list-date-col) var(--broker-list-front-gap) var(--broker-list-no-col) var(--broker-list-front-gap) minmax(300px, 1fr) var(--broker-list-title-area-gap) var(--broker-list-area-col) var(--broker-list-area-price-gap) var(--broker-list-price-col) var(--broker-list-price-edit-gap) var(--broker-list-menu-col);
	column-gap: 0;
	min-width: 0;
}

.admin-listings-list .admin-listing-row{
	cursor: default;
}

.admin-listings-list .admin-listing-head > div:nth-child(1),
.admin-listings-list .admin-listing-row > div:nth-child(1){
	grid-column: 1;
}

.admin-listings-list .admin-listing-head > div:nth-child(2),
.admin-listings-list .admin-listing-row > div:nth-child(2){
	grid-column: 3;
}

.admin-listings-list .admin-listing-head > div:nth-child(3),
.admin-listings-list .admin-listing-row > div:nth-child(3){
	grid-column: 5;
}

.admin-listings-list .admin-listing-head > div:nth-child(4),
.admin-listings-list .admin-listing-row > div:nth-child(4){
	grid-column: 7;
}

.admin-listings-list .admin-listing-head > div:nth-child(5),
.admin-listings-list .admin-listing-row > div:nth-child(5){
	grid-column: 9;
}

.admin-listings-list .admin-listing-head > div:nth-child(6),
.admin-listings-list .admin-listing-row > div:nth-child(6){
	grid-column: 11;
}

.admin-listings-list .admin-listing-head > div:nth-child(7),
.admin-listings-list .admin-listing-row > div:nth-child(7){
	grid-column: 13;
}

.admin-listings-list .admin-listing-head > div:nth-child(8),
.admin-listings-list .admin-listing-row > div:nth-child(8){
	grid-column: 15;
}

.admin-listings-list .admin-listing-head > div:nth-child(9),
.admin-listings-list .admin-listing-row > div:nth-child(9){
	grid-column: 17;
	justify-content: center;
	text-align: center;
}

.admin-listings-list .admin-listing-head > div:nth-child(11),
.admin-listings-list .admin-listing-row > .broker-listing-menu-cell{
	grid-column: 17;
	justify-content: center;
	text-align: center;
}

.admin-listings-list .admin-listing-head > div:nth-child(2),
.admin-listings-list .admin-listing-row > .broker-listing-type,
.admin-listings-list .admin-listing-head > div:nth-child(3),
.admin-listings-list .admin-listing-row > .broker-listing-cell:nth-child(3),
.admin-listings-list .admin-listing-head > div:nth-child(4),
.admin-listings-list .admin-listing-row > .broker-listing-meta,
.admin-listings-list .admin-listing-head > div:nth-child(5),
.admin-listings-list .admin-listing-row > .broker-listing-no{
	justify-content: center;
	text-align: center;
	overflow: visible;
	text-overflow: clip;
	white-space: nowrap;
}

.admin-listings-list .admin-listing-row > .admin-listing-date-cell,
body.broker-home-page-open #brokerListingsList .broker-listing-row > .broker-listing-date-cell{
	line-height: 1.15;
}

.admin-listing-date-stack{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	white-space: nowrap;
}

.admin-listing-date-day{
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.15;
}

.admin-listing-date-time{
	color: #94a3b8;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.15;
	letter-spacing: 0;
}

.admin-listings-list .broker-listing-status.reported{
	background: #fef2f2;
	color: #dc2626;
}

.admin-users-content{
	width: 100%;
}

.admin-users-filterbar{
	margin: 0 0 18px;
}

.admin-users-filterbar [data-admin-user-view="deleted"]{
	margin-left: auto;
}

.admin-users-shell{
	margin: 0;
	--broker-list-photo-size: 60px;
	--broker-list-photo-col: var(--broker-list-photo-size);
	--broker-list-front-gap: 33px;
	--broker-list-menu-col: 34px;
	width: 100%;
}

.admin-users-list .admin-user-head,
.admin-users-list .admin-user-row{
	grid-template-columns: var(--broker-list-photo-col) 36px 78px var(--broker-list-front-gap) 78px var(--broker-list-front-gap) 80px var(--broker-list-front-gap) minmax(150px, 1fr) var(--broker-list-front-gap) 118px var(--broker-list-front-gap) 72px var(--broker-list-front-gap) 68px var(--broker-list-front-gap) 62px var(--broker-list-front-gap) var(--broker-list-menu-col);
	column-gap: 0;
	min-width: 0;
	width: 100%;
}

.admin-users-list .admin-user-head > div:nth-child(1),
.admin-users-list .admin-user-row > div:nth-child(1){
	grid-column: 1;
}

.admin-users-list .admin-user-head > div:nth-child(2),
.admin-users-list .admin-user-row > div:nth-child(2){
	grid-column: 3;
}

.admin-users-list .admin-user-head > div:nth-child(3),
.admin-users-list .admin-user-row > div:nth-child(3){
	grid-column: 5;
}

.admin-users-list .admin-user-head > div:nth-child(4),
.admin-users-list .admin-user-row > div:nth-child(4){
	grid-column: 7;
}

.admin-users-list .admin-user-head > div:nth-child(5),
.admin-users-list .admin-user-row > div:nth-child(5){
	grid-column: 9;
}

.admin-users-list .admin-user-head > div:nth-child(6),
.admin-users-list .admin-user-row > div:nth-child(6){
	grid-column: 11;
}

.admin-users-list .admin-user-head > div:nth-child(7),
.admin-users-list .admin-user-row > div:nth-child(7){
	grid-column: 13;
}

.admin-users-list .admin-user-head > div:nth-child(8),
.admin-users-list .admin-user-row > div:nth-child(8){
	grid-column: 15;
}

.admin-users-list .admin-user-head > div:nth-child(9),
.admin-users-list .admin-user-row > div:nth-child(9){
	grid-column: 17;
}

.admin-users-list .admin-user-head > div:nth-child(10),
.admin-users-list .admin-user-row > div:nth-child(10){
	grid-column: 19;
	justify-content: center;
	text-align: center;
	min-width: var(--broker-list-menu-col);
	white-space: nowrap;
}

.admin-users-list .admin-user-head > div,
.admin-users-list .admin-user-cell{
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	text-align: center;
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: -0.1px;
	line-height: 1.45;
	white-space: nowrap;
}

.admin-users-list .admin-user-head > div:nth-child(4),
.admin-users-list .admin-user-head > div:nth-child(5),
.admin-users-list .admin-user-head > div:nth-child(6),
.admin-users-list .admin-user-row > div:nth-child(4),
.admin-users-list .admin-user-row > div:nth-child(5),
.admin-users-list .admin-user-row > div:nth-child(6){
	justify-content: flex-start;
	text-align: left;
}

/* PATCH 3.228: 회원관리 이름/연락처 가운데 정렬 */
.admin-users-list .admin-user-head > div:nth-child(4),
.admin-users-list .admin-user-row > div:nth-child(4),
.admin-users-list .admin-user-head > div:nth-child(6),
.admin-users-list .admin-user-row > div:nth-child(6){
	justify-content: center;
	text-align: center;
}

.admin-users-list .admin-user-row{
	min-height: 76px;
}

.admin-user-name,
.admin-user-email,
.admin-user-phone,
.admin-user-pass{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.admin-user-name{
	color: #111827;
	font-weight: 600;
}

.admin-users-list .admin-user-role{
	flex-direction: column;
	gap: 2px;
	white-space: normal;
	line-height: 1.35;
}

.admin-users-list .admin-user-role span{
	display: block;
	white-space: nowrap;
}

.admin-user-thumb .broker-listing-thumb{
	border-radius: 999px;
}

.admin-user-profile-state.incomplete{
	color: #d97706;
}

.admin-user-profile-state.admin{
	color: #2563eb;
}

.admin-user-profile-state.deleted{
	color: #6b7280;
}

label[for="brokerOfficeKakaoInput"],
label[for="brokerOfficeEditPageKakaoInput"],
label[for="mySuiteBrokerKakaoInput"],
label[for="mySuiteBrokerApplyKakaoInput"]{
	white-space: nowrap;
}

/* PATCH 3.107: 관리자 1:1 문의를 마이페이지 문의내역 리스트 시안 폭/행 규격에 맞춘다 */
.admin-inquiries-content{
	width: 100%;
	max-width: 1324px;
	margin: 0 auto;
}

.admin-inquiries-head{
	margin: 0 0 36px;
}

.admin-inquiries-head .my-suite-content-title{
	margin: 0 0 18px;
}

.admin-inquiries-filterbar{
	display: none;
}

.admin-inquiry-list{
	width: 100%;
}

.admin-inquiry-table.my-suite-inquiry-list{
	width: 100%;
	border: 1px solid #e5e7eb;
	background: #ffffff;
}

.admin-inquiry-item{
	border: 0;
	background: #ffffff;
}

.admin-inquiry-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 146px 70px;
	align-items: center;
	gap: 16px;
	width: 100%;
	padding: 0 28px 0 32px;
	border: 0;
	background: #ffffff;
	box-sizing: border-box;
}

.admin-inquiry-main-button{
	display: grid;
	grid-template-columns: 160px minmax(0, 1fr);
	align-items: center;
	gap: 20px;
	min-width: 0;
	min-height: 102px;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.admin-inquiry-main-button:focus,
.admin-inquiry-main-button:focus-visible{
	outline: none;
	box-shadow: none;
}

.admin-inquiry-date{
	color: #64748b;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0;
}

.admin-inquiry-title{
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0;
}

.admin-inquiry-row .my-suite-inquiry-state{
	width: 146px;
	height: 48px;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
}

.admin-inquiry-row .my-suite-inquiry-delete{
	width: 70px;
	height: 48px;
	box-sizing: border-box;
	border: 1px solid #fecaca;
	background: #ffffff;
	color: #ef4444;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
}

.admin-inquiry-delete{
	justify-self: end;
}

.admin-inquiry-detail{
	padding: 0 28px 28px 32px;
	background: #ffffff;
}

@media (max-width: 720px)
{
	.admin-inquiry-row{
		grid-template-columns: 1fr;
		align-items: stretch;
		gap: 8px;
		padding: 14px 18px;
	}

	.admin-inquiry-main-button{
		grid-template-columns: 1fr;
		min-height: 0;
		gap: 8px;
	}

	.admin-inquiry-row .my-suite-inquiry-state,
.admin-inquiry-row .my-suite-inquiry-delete{
		width: auto;
		min-width: 70px;
		height: 38px;
	}

	.admin-inquiry-delete{
		justify-self: start;
	}
}

.admin-status-badge{
	font-size: var(--admin-status-font-size);
	font-weight: var(--admin-status-font-weight);
	letter-spacing: var(--admin-status-letter-spacing);
	border-radius: var(--admin-button-radius);
}

.admin-status-btn{
	height: var(--admin-button-height);
	border-radius: var(--admin-button-radius);
	font-size: var(--admin-button-font-size);
	font-weight: var(--admin-button-font-weight);
	letter-spacing: var(--admin-button-letter-spacing);
	box-shadow: none;
}

.admin-refresh-btn{
	height: var(--admin-refresh-button-height);
	border-radius: var(--admin-button-radius);
	font-size: var(--admin-refresh-button-font-size);
	font-weight: var(--admin-refresh-button-font-weight);
	box-shadow: none;
}



/* ===== PATCH 2.370: 중개사 홈 이용권 결제 박스 디자인 개선 ===== */
.broker-home-payment-guide{
	background: #ffffff;
	border: 1px solid #e5e7eb;
	box-shadow: 0 12px 30px rgba(15,23,42,0.08);
	padding: 18px;
}

.broker-home-payment-kicker{
	display: inline-flex;
	align-items: center;
	height: 22px;
	padding: 0 9px;
	margin-bottom: 10px;
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	color: #2563eb;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: -0.12px;
}

.broker-home-ad-title{
	margin: 0;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.34;
	letter-spacing: -0.35px;
	color: #111827;
}

.broker-home-payment-card{
	margin-top: 14px;
	padding: 14px;
	background: #f8fafc;
	border: 1px solid #e5e7eb;
}

.broker-home-payment-plan{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.broker-home-payment-plan span{
	font-size: 11px;
	font-weight: 700;
	color: #94a3b8;
	letter-spacing: -0.12px;
}

.broker-home-payment-plan strong{
	font-size: 16px;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.6px;
	line-height: 1;
}

.broker-home-payment-meta{
	margin-top: 8px;
	font-size: 12px;
	font-weight: 600;
	color: #475569;
	letter-spacing: -0.15px;
	line-height: 1.5;
}

.broker-home-ad-cta{
	width: 100%;
	height: 42px;
	margin-top: 14px;
	border: 0;
	background: #2563eb;
	color: #ffffff;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: -0.3px;
	cursor: pointer;
}

/* ===== PATCH 2.371: 로그인/회원가입 모달을 내 정보 카드 톤으로 단순화 ===== */
.auth-modal:not(.profile-page-mode){
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: var(--profile-page-bg, #f8fafc);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

.auth-modal:not(.profile-page-mode) .auth-modal-dialog{
	width: var(--profile-page-card-width, clamp(320px, 90vw, 600px));
	height: auto;
	min-height: 0;
	max-height: calc(100vh - 48px);
	padding: 34px 36px 38px;
	background: #ffffff;
	color: #111827;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	overflow-y: auto;
}

.auth-modal:not(.profile-page-mode) .auth-login-screen,
.auth-modal:not(.profile-page-mode) .auth-signup-terms-screen,
.auth-modal:not(.profile-page-mode) .auth-signup-form-screen,
.auth-modal:not(.profile-page-mode) .auth-forgot-password-screen,
.auth-modal:not(.profile-page-mode) .auth-reset-password-screen{
	width: 100%;
	gap: 0;
	color: #111827;
}

.auth-modal:not(.profile-page-mode) .auth-modal-title{
	margin: 0 0 22px;
	color: #111827;
	font-family: var(--profile-page-title-font-family, var(--font-ui));
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -0.35px;
	line-height: 1.25;
	white-space: normal;
}

.auth-modal:not(.profile-page-mode) .auth-modal-divider{
	display: none;
}

.auth-modal:not(.profile-page-mode) .auth-modal-close,
.auth-modal:not(.profile-page-mode) .auth-modal-back{
	top: 18px;
	right: 18px;
	width: 36px;
	height: 36px;
	color: #111827;
	font-size: 30px;
	font-weight: 400;
	background: transparent;
}

.auth-modal:not(.profile-page-mode) .auth-modal-back{
	left: 22px;
	right: auto;
}

.auth-modal:not(.profile-page-mode) .auth-modal-form{
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
}

.auth-modal:not(.profile-page-mode) .auth-modal-field{
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr);
	gap: 20px;
	align-items: center;
	min-height: var(--profile-page-input-height, 54px);
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.auth-modal:not(.profile-page-mode) .auth-modal-field-label{
	margin: 0;
	color: #334155;
	font-family: var(--profile-page-text-font-family, var(--font-ui));
	font-size: var(--profile-page-text-font-size, 17px);
	font-weight: 600;
	letter-spacing: -0.18px;
	line-height: 1.2;
	white-space: nowrap;
}

.auth-modal:not(.profile-page-mode) .auth-modal-input{
	width: 100%;
	height: var(--profile-page-input-height, 54px);
	min-height: var(--profile-page-input-height, 54px);
	padding: 0 16px;
	border: 1px solid #d1d5db;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font-family: var(--profile-page-text-font-family, var(--font-ui));
	font-size: var(--profile-page-text-font-size, 17px);
	font-weight: 600;
	letter-spacing: -0.18px;
	box-shadow: none;
	box-sizing: border-box;
}

.auth-modal:not(.profile-page-mode) .auth-modal-input::placeholder{
	color: #9ca3af;
	font-weight: 500;
}

.auth-modal:not(.profile-page-mode) .auth-modal-input:focus{
	border-color: #4A7EDC;
	background: #ffffff;
	outline: none;
	box-shadow: none;
}

.auth-modal:not(.profile-page-mode) .auth-modal-submit,
.auth-modal:not(.profile-page-mode) .auth-terms-next{
	width: 100%;
	height: var(--profile-page-button-height, 50px);
	min-height: var(--profile-page-button-height, 50px);
	margin: 22px 0 0;
	border: 1px solid #4A7EDC;
	border-radius: 0;
	background: #4A7EDC;
	color: #ffffff;
	font-family: var(--profile-page-text-font-family, var(--font-ui));
	font-size: var(--profile-page-button-font-size, 17px);
	font-weight: var(--profile-page-button-font-weight, 800);
	letter-spacing: -0.18px;
	box-shadow: none;
	cursor: pointer;
}

.auth-modal:not(.profile-page-mode) .auth-terms-next:not(.enabled){
	background: #e5e7eb;
	border-color: #e5e7eb;
	color: #9ca3af;
	cursor: not-allowed;
}

.auth-modal:not(.profile-page-mode) .auth-modal-submit:hover,
.auth-modal:not(.profile-page-mode) .auth-terms-next.enabled:hover{
	background: #3F6FCC;
	border-color: #3F6FCC;
	color: #ffffff;
}

.auth-modal:not(.profile-page-mode) .auth-modal-links,
.auth-modal:not(.profile-page-mode) .auth-modal-footer,
.auth-modal:not(.profile-page-mode) .auth-signup-footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 22px 0 0;
	padding: 0;
	color: #64748b;
	font-family: var(--profile-page-text-font-family, var(--font-ui));
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.12px;
	line-height: 1.35;
}

.auth-modal:not(.profile-page-mode) .auth-modal-links{
	justify-content: flex-end;
	margin-top: 16px;
}

.auth-modal:not(.profile-page-mode) .auth-modal-links button,
.auth-modal:not(.profile-page-mode) .auth-modal-signup,
.auth-modal:not(.profile-page-mode) .auth-login-switch{
	color: #4A7EDC;
	font: inherit;
	font-weight: 700;
	letter-spacing: -0.12px;
	text-decoration: none;
}

.auth-modal:not(.profile-page-mode) .auth-terms-all-btn{
	min-height: 54px;
	margin: 0 0 18px;
	border: 1px solid #d1d5db;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	gap: 12px;
	font-family: var(--profile-page-text-font-family, var(--font-ui));
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -0.16px;
	box-shadow: none;
}

.auth-modal:not(.profile-page-mode) .auth-terms-all-btn .auth-check-icon{
	color: #4A7EDC;
	font-size: 22px;
	font-weight: 700;
}

.auth-modal:not(.profile-page-mode) .auth-terms-list{
	gap: 0;
	margin: 0;
	border-top: 1px solid #e5e7eb;
}

.auth-modal:not(.profile-page-mode) .auth-terms-item{
	min-height: 50px;
	gap: 12px;
	padding: 0;
	border-bottom: 1px solid #e5e7eb;
	color: #111827;
	font-family: var(--profile-page-text-font-family, var(--font-ui));
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.12px;
}

.auth-modal:not(.profile-page-mode) .auth-terms-checkbox{
	width: 22px;
	height: 22px;
	border: 1px solid #d1d5db;
	border-radius: 0;
	color: transparent;
	font-size: 16px;
	background: #ffffff;
}

.auth-modal:not(.profile-page-mode) .auth-terms-item input:checked + .auth-terms-checkbox{
	border-color: #4A7EDC;
	background: #4A7EDC;
	color: #ffffff;
}

.auth-modal:not(.profile-page-mode) .auth-terms-highlight{
	color: #111827;
	font-size: inherit;
	font-weight: 700;
}

.auth-modal:not(.profile-page-mode) .auth-terms-arrow{
	color: #94a3b8;
	font-size: 24px;
	font-weight: 400;
}

@media (max-width: 720px)
{
	.auth-modal:not(.profile-page-mode){
		padding: 16px;
	}

	.auth-modal:not(.profile-page-mode) .auth-modal-dialog{
		width: 100%;
		max-height: calc(100vh - 32px);
		padding: 30px 24px 32px;
	}

	.auth-modal:not(.profile-page-mode) .auth-modal-field{
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.auth-modal:not(.profile-page-mode) .auth-modal-footer,
.auth-modal:not(.profile-page-mode) .auth-signup-footer{
		align-items: flex-start;
		flex-direction: column;
	}
}

/* ===== PATCH 2.396: 내 정보/내 정보 설정/중개사무소 정보/중개사무소 신청 상단 높이 통일 ===== */
.auth-modal.profile-page-mode .auth-modal-dialog{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
	padding-top: var(--sub-topbar-height);
}

.auth-modal.profile-page-mode #authMyInfoScreen,
.auth-modal.profile-page-mode #authProfileSetupScreen,
.auth-modal.profile-page-mode #authBrokerOfficeInfoScreen,
.auth-modal.profile-page-mode #authBrokerOfficeScreen{
	position: fixed;
	top: calc(var(--global-topbar-height) + var(--sub-topbar-height));
	left: 50%;
	right: auto;
	transform: translateX(-50%);
	margin: 0;
	align-self: auto;
	z-index: 121;
}

.auth-modal.profile-page-mode #authBrokerOfficeScreen .broker-apply-page,
.auth-modal.profile-page-mode #authBrokerOfficeScreen .broker-apply-left,
.auth-modal.profile-page-mode #authBrokerOfficeScreen .broker-apply-title{
	margin-top: 0;
	padding-top: 0;
}


/* =====================================================
   6. 결제 / 이용권
   ===================================================== */
/* ===== MERGED FROM payment_2.712.css ===== */
/* PATCH 2.362: 이용권 결제 페이지 */



.payment-page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin:0 0 24px;}
.payment-page-title{margin:0;font-size:30px;line-height:1.25;font-weight:700;letter-spacing:-0.04em;}
.payment-page-desc{margin:8px 0 0;font-size:15px;color:#64748b;}

.payment-current-label{display:block;margin-bottom:6px;font-size:12px;color:#64748b;font-weight:600;}
.payment-current-plan-card strong{display:block;font-size:20px;font-weight:700;}
.payment-current-plan-card em{display:block;margin-top:4px;font-size:13px;color:#2563eb;font-style:normal;font-weight:600;}

.payment-current-date-box span{display:block;margin-bottom:5px;font-size:12px;color:#64748b;font-weight:700;}
.payment-current-date-box strong{display:block;font-size:14px;font-weight:800;color:#0f172a;letter-spacing:-.02em;}
.payment-tabs{display:inline-flex;padding:5px;border-radius:14px;background:#e8eef7;margin-bottom:20px;}
.payment-tab{border:0;background:transparent;border-radius:11px;padding:10px 18px;font-size:14px;font-weight:700;color:#64748b;cursor:pointer;}

.payment-tab-panel{display:none;}
.payment-tab-panel.active{display:block;}
.payment-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px;}
.payment-plan-card{position:relative;padding:26px;border-radius:24px;background:#fff;border:1px solid #dbe5f0;box-shadow:0 14px 34px rgba(15,23,42,.07);}
.payment-plan-card.featured{border:1px solid #2563eb;box-shadow:none;}
.payment-plan-badge{position:absolute;right:20px;top:18px;padding:5px 10px;border-radius:999px;background:#2563eb;color:#fff;font-size:12px;font-weight:700;}
.payment-plan-topline{font-size:12px;font-weight:800;color:#2563eb;text-transform:uppercase;letter-spacing:.08em;}
.payment-plan-card h2{margin:8px 0 14px;font-size:22px;font-weight:800;letter-spacing:-.04em;}
.payment-plan-price{font-size:28px;font-weight:800;letter-spacing:-.04em;}

.payment-plan-card ul{list-style:none;margin:22px 0;padding:0;display:grid;gap:10px;color:#475569;font-size:14px;}
.payment-plan-card li:before{content:'✓';margin-right:8px;color:#2563eb;font-weight:800;}
.payment-plan-btn{width:100%;height:46px;border:0;border-radius:14px;background:#2563eb;color:#fff;font-size:15px;font-weight:800;cursor:pointer;}
.payment-plan-btn.is-secondary{background:#e8eef7;color:#64748b;cursor:default;}

.payment-extra-box h2,
.payment-history-card h2,
.payment-help-card h2{margin:0 0 14px;font-size:18px;font-weight:800;letter-spacing:-.03em;}
.payment-extra-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.payment-extra-item{display:flex;justify-content:space-between;align-items:center;border:1px solid #dbe5f0;background:#f8fafc;border-radius:16px;padding:15px 16px;font-size:14px;font-weight:700;cursor:pointer;}

.payment-ready-note{margin:14px 0 0;font-size:13px;color:#64748b;}
.payment-history-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.payment-history-refresh,
.payment-help-btn{border:1px solid #cbd5e1;background:#fff;border-radius:12px;padding:9px 14px;font-size:13px;font-weight:700;cursor:pointer;}
.payment-history-table{width:100%;border-collapse:collapse;font-size:14px;}
.payment-history-table th{padding:14px 12px;border-bottom:1px solid #e2e8f0;text-align:left;color:#64748b;font-weight:800;background:#f8fafc;}

.payment-empty-row td{text-align:center;color:#94a3b8;}

.payment-help-card p{margin:0 0 14px;color:#64748b;font-size:14px;}




@media (max-width: 900px)
{
	

	

	

	

	

	
}

/* PATCH 2.396: 이용권 결제 페이지 전체 크기 90% 수준으로 축소 */




























.payment-history-head{margin-bottom:7px;}
.payment-history-refresh,
.payment-help-btn{border-radius:11px;padding:8px 13px;font-size:12px;}



.payment-help-card{margin-top:14px;}
.payment-help-card p{margin-bottom:13px;font-size:13px;}



@media (max-width: 900px)
{
	.payment-current-plan-card{
		margin-top: 14px;
	}

	
}

/* PATCH 2.396: 이용권 결제 페이지 그림자 제거 및 추천 플랜 외곽선 완화 */
.payment-page-panel .payment-current-plan-card,
.payment-page-panel .payment-tab.active,
.payment-page-panel .payment-plan-card,
.payment-page-panel .payment-plan-card.featured,
.payment-page-panel .payment-extra-box,
.payment-page-panel .payment-history-card,
.payment-page-panel .payment-help-card{
	box-shadow: none;
}

.payment-page-panel .payment-plan-card.featured{
	border-width: 1px;
	border-color: #2563eb;
}





/* PATCH 2.396: 이용권 결제 페이지 라운드 비율 중간값 조정 */
.payment-page-panel .payment-current-plan-card,
.payment-page-panel .payment-plan-card,
.payment-page-panel .payment-extra-box,
.payment-page-panel .payment-history-card,
.payment-page-panel .payment-help-card{
	border-radius: 10px;
}

.payment-page-panel .payment-tabs,
.payment-page-panel .payment-tab,
.payment-page-panel .payment-plan-btn,
.payment-page-panel .payment-extra-item,
.payment-page-panel .payment-history-refresh,
.payment-page-panel .payment-help-btn,
.payment-page-panel .payment-plan-badge{
	border-radius: 10px;
}

/* PATCH 2.396: 이용권 결제 하단 회사 정보 구분선 여백 통일 */


/* PATCH 2.551: 이용권 결제 페이지 심플/정돈형 디자인 */






.payment-page-head{
	align-items: center;
	gap: 28px;
	margin: 0 0 26px;
}

.payment-page-title{
	font-size: 25px;
	font-weight: 700;
	line-height: 1.25;
}

.payment-page-desc{
	margin-top: 7px;
	color: #6b7280;
	font-size: 14px;
	line-height: 1.45;
}

.payment-current-plan-card{
	min-width: 260px;
	padding: 18px 20px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: none;
}

.payment-current-label{
	margin-bottom: 7px;
	color: #6b7280;
	font-size: 12px;
	font-weight: 600;
}

.payment-current-plan-card strong{
	color: #111827;
	font-size: 18px;
	font-weight: 700;
}

.payment-current-plan-card em{
	margin-top: 5px;
	color: #2563eb;
	font-size: 13px;
	font-weight: 600;
}

.payment-current-date-box{
	margin-top: 15px;
	padding-top: 14px;
	border-top: 1px solid #eef2f7;
}

.payment-current-date-box span{
	color: #6b7280;
	font-size: 12px;
	font-weight: 600;
}

.payment-current-date-box strong{
	color: #374151;
	font-size: 13px;
	font-weight: 600;
}

.payment-tabs{
	margin-bottom: 18px;
	padding: 0;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	background: #ffffff;
	overflow: hidden;
}

.payment-tab{
	height: 50px;
	min-width: 132px;
	padding: 0 22px;
	border-radius: 0;
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
}

.payment-tab.active{
	background: #2563eb;
	color: #ffffff;
	box-shadow: none;
}

.payment-plan-grid{
	gap: 12px;
	margin-bottom: 18px;
}

.payment-plan-card{
	display: flex;
	min-height: 288px;
	padding: 24px;
	flex-direction: column;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: none;
}

.payment-plan-card.featured{
	border: 1px solid #2563eb;
	background: #ffffff;
}

.payment-plan-badge{
	top: 18px;
	right: 18px;
	padding: 4px 8px;
	border-radius: 6px;
	background: #eff6ff;
	color: #2563eb;
	font-size: 12px;
	font-weight: 700;
}

.payment-plan-topline{
	color: #2563eb;
	font-size: 12px;
	font-weight: 700;
	text-transform: none;
}

.payment-plan-card h2{
	margin: 8px 0 16px;
	color: #111827;
	font-size: 20px;
	font-weight: 700;
}

.payment-plan-price{
	color: #111827;
	font-size: 27px;
	font-weight: 700;
}

.payment-plan-price span{
	color: #6b7280;
	font-size: 13px;
	font-weight: 600;
}

.payment-plan-card ul{
	margin: 22px 0 24px;
	gap: 9px;
	color: #4b5563;
	font-size: 13px;
	line-height: 1.45;
}

.payment-plan-card li::before{
	color: #2563eb;
}

.payment-plan-btn{
	height: 42px;
	margin-top: auto;
	border-radius: 8px;
	background: #2563eb;
	font-size: 14px;
	font-weight: 700;
	box-shadow: none;
}

.payment-extra-box,
.payment-history-card,
.payment-help-card{
	padding: 22px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: none;
}

.payment-extra-box h2,
.payment-history-card h2,
.payment-help-card h2{
	margin-bottom: 14px;
	color: #111827;
	font-size: 16px;
	font-weight: 700;
}

.payment-extra-list{
	gap: 10px;
}

.payment-extra-item{
	padding: 14px 15px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #fafafa;
	color: #374151;
	font-size: 13px;
	font-weight: 600;
}

.payment-extra-item strong{
	color: #2563eb;
	font-weight: 700;
}

.payment-ready-note{
	margin-top: 12px;
	color: #9ca3af;
	font-size: 12px;
}

.payment-history-refresh,
.payment-help-btn{
	border: 1px solid #d1d5db;
	border-radius: 8px;
	background: #ffffff;
	color: #374151;
	font-size: 13px;
	font-weight: 600;
}

.payment-history-table{
	font-size: 13px;
}

.payment-history-table th{
	padding: 13px 12px;
	border-bottom: 1px solid #e5e7eb;
	background: #f9fafb;
	color: #6b7280;
	font-weight: 700;
}

.payment-history-table td{
	padding: 16px 12px;
	border-bottom: 1px solid #f0f2f5;
	color: #4b5563;
}















@media (max-width: 900px)
{
	

	.payment-page-head{
		align-items: stretch;
		display: flex;
		flex-direction: column;
		gap: 16px;
	}

	.payment-current-plan-card{
		min-width: 0;
	}

	.payment-plan-grid,
.payment-extra-list{
		grid-template-columns: 1fr;
	}

	.payment-plan-card{
		min-height: 0;
	}
}

/* PATCH 2.551: 이용권 탭을 내정보 화면 버튼 높이에 맞추되 폭은 조금 축소 */
.payment-page-panel .payment-tabs{
	margin-bottom: 18px;
	padding: 0;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #ffffff;
	overflow: hidden;
}

.payment-page-panel .payment-tab{
	height: 50px;
	min-width: 118px;
	padding: 0 16px;
	border-radius: 0;
	border-right: 1px solid #e5e7eb;
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
}

.payment-page-panel .payment-tab:last-child{
	border-right: 0;
}

.payment-page-panel .payment-tab.active{
	background: #2563eb;
	color: #ffffff;
	box-shadow: none;
}

/* PATCH 2.551: 이용권 선택 버튼은 양쪽 끝을 완전 pill 형태로 표시 */
.payment-page-panel .payment-plan-card .payment-plan-btn,
.payment-page-panel .payment-plan-card .payment-plan-btn.is-secondary{
	border-radius: 999px;
}

/* PATCH 2.551: 선택 가능 버튼은 흰색, 현재 플랜 버튼은 회색 비활성으로 표시 */
.payment-page-panel .payment-plan-card .payment-plan-btn{
	background: #ffffff;
	border: 1px solid #d1d5db;
	color: #111827;
	box-shadow: none;
}

.payment-page-panel .payment-plan-card .payment-plan-btn:not(.is-secondary):hover{
	border-color: #2563eb;
	color: #2563eb;
}

.payment-page-panel .payment-plan-card .payment-plan-btn.is-secondary,
.payment-page-panel .payment-plan-card .payment-plan-btn.is-current,
.payment-page-panel .payment-plan-card .payment-plan-btn:disabled{
	background: #d1d5db;
	border-color: #d1d5db;
	color: #ffffff;
	cursor: default;
	pointer-events: none;
}

/* PATCH 4.897: 세 요금제의 혜택 영역을 4줄로 통일해 선택 버튼의 세로 기준선을 맞춘다. */
.payment-page-panel .payment-plan-card ul,
.my-suite-payment-content .payment-plan-card ul{
	grid-template-rows: repeat(4, minmax(19px, auto));
}

/* PATCH 2.551: 현재 결제한 이용권 카드에만 파란 테두리 표시 */
.payment-page-panel .payment-plan-card.featured{
	border: 1px solid #dbe5f0;
	box-shadow: none;
}



/* PATCH 2.551: 이용권 결제 카드/현재 이용권 카드 그림자 효과 제거 */
.payment-page-panel .payment-current-plan-card,
.payment-page-panel .payment-plan-card,
.payment-page-panel .payment-plan-card.featured,
.payment-page-panel .payment-plan-card:has(.payment-plan-btn.is-current),
.payment-page-panel .payment-extra-box,
.payment-page-panel .payment-history-card,
.payment-page-panel .payment-help-card,
.payment-page-panel .payment-tab,
.payment-page-panel .payment-tab.active{
	box-shadow: none;
}
/* PATCH 2.551: 현재 결제 카드 파란선은 1px만 사용하고 그림자/외곽선 제거 */





/* =====================================================
   7. 내정보 / 중개사무소 신청
   ===================================================== */
/* ===== MERGED FROM myinfo_2.712.css ===== */
/* REALJEJU myinfo overrides / Ver 2.551 */









































































@media (max-width: 720px)
{
	

	

	

	

	
}

/* REALJEJU profile suite broker pages / Ver 2.551 */






























@media (max-width: 720px)
{
	

	

	

	

	
}


/* =====================================================
   8. 인증
   ===================================================== */
/* ===== MERGED FROM auth_2.712.css ===== */
/* REALJEJU auth overrides / Ver 2.551 */

body.auth-page-open #authSignupTermsScreen .auth-terms-list{
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	margin: 0 0 24px;
	padding: 0;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-item{
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr) 20px;
	align-items: center;
	column-gap: 10px;
	width: 100%;
	min-height: 46px;
	margin: 0;
	padding: 0;
	border: 0;
	border-bottom: 1px solid #eef2f7;
	color: #374151;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	box-sizing: border-box;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-item:last-child{
	border-bottom: 0;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-check-zone{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 46px;
	margin: 0;
	padding: 0;
	grid-column: 1;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-checkbox{
	width: 20px;
	height: 20px;
	margin: 0;
	border: 1px solid #d1d5db;
	border-radius: 4px;
	background: #ffffff;
	color: transparent;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	box-shadow: none;
	box-sizing: border-box;
}



body.auth-page-open #authSignupTermsScreen .auth-terms-open-zone{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 20px;
	align-items: center;
	gap: 10px;
	width: 100%;
	height: 46px;
	min-height: 46px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: left;
	box-sizing: border-box;
}

body.auth-page-open #authSignupTermsScreen label.auth-terms-item > .auth-terms-text{
	grid-column: 2;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-text{
	display: block;
	min-width: 0;
	margin: 0;
	padding: 0;
	line-height: 1.35;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-highlight{
	color: #111827;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-arrow{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 20px;
	height: 46px;
	margin: 0;
	color: #9ca3af;
	font-size: 22px;
	font-weight: 600;
	line-height: 1;
}


/* =====================================================
   9. 이전 기본 / 전역 보정
   ===================================================== */
/* ===== MERGED FROM previous base stylesheet ===== */
/* ===== INLINE FROM base.css ===== */
/* REALJEJU base.css - stable split from realjeju_2.361(3).html / Ver 2.396 */

*{
	box-sizing: border-box;
	font-family: var(--font-ui);
}



html,
body{
	margin: 0;
	padding: 0;
	height: 100%;
	background: var(--bg);
	color: var(--text);
	font-synthesis: none;
	text-rendering: auto;
}

body{
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.sidebar-inner{
	display: grid;
	grid-template-columns: var(--sidebar-list-width) 0px;
	height: 100%;
	transition: grid-template-columns 0.28s ease;
}

.sidebar.expanded .sidebar-inner{
	grid-template-columns: var(--sidebar-list-width) 0px;
}

.sidebar-list-panel{
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	background: #ffffff;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.sidebar-list-panel::-webkit-scrollbar{
	display: none;
}





.auth-modal-dialog{
	position: relative;
	width: 500px;
	max-width: 92vw;
	min-height: auto;
	padding: 56px 52px 42px;
	color: #fff;
	background: rgba(15, 23, 42, 0.72);
	border: 1px solid rgba(255,255,255,0.06);
	box-shadow: 0 24px 70px rgba(0,0,0,0.34);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	display: flex;
	flex-direction: column;
}



























@media (max-width: 480px)
{
	.auth-modal{
		padding: 18px;
	}

	.auth-modal-dialog{
		width: 100%;
		padding: 44px 24px 34px;
	}

	.auth-modal-title{
		margin-top: 28px;
		font-size: 22px;
	}

}

.area-num{
	font-weight: 800;
}

.area-rest{
	font-weight: 600;
	color: #5c6b7a;
	margin-left: 1px;
}

#detailAreaValue{
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	min-width: 0;
	flex: 0 0 auto;
	width: auto;
	margin: 0;
}

.sub-topbar-left strong{
	font-size: var(--subbar-menu-font-size);
	color: #1f6fff;
	letter-spacing: var(--subbar-menu-letter-spacing);
	font-weight: var(--subbar-menu-font-weight);
}

.sub-topbar-left span{
	font-size: var(--subbar-menu-font-size);
	font-weight: var(--subbar-menu-font-weight);
	color: #000;
}

#sortLabel{
	cursor: pointer;
	user-select: none;
	transition: color 0.18s ease, font-weight 0.18s ease;
}

#sortLabel.sort-latest{
	color: #6b7280;
	font-weight: 600;
}

#sortLabel.sort-price-desc{
	color: #dc2626;
	font-weight: 600;
}

#sortLabel.sort-price-asc{
	color: #2563eb;
	font-weight: 600;
}

.sub-topbar .deal-buttons .deal-all-btn.active{
	background: #1764ff;
	border-color: #1a5fe0;
	color: #fff;
	box-shadow: 0 8px 18px rgba(31,111,255,0.22);
}

.sub-topbar .deal-buttons::-webkit-scrollbar{
	display: none;
}

.pet-rental-filter{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: 12px;
	padding: 0;
	height: auto;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #475569;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.1px;
	white-space: nowrap;
	cursor: default;
	user-select: none;
}

.pet-rental-filter input{
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
	flex: 0 0 auto;
}

.pet-rental-filter span{
	line-height: 1;
}

.pet-rental-filter.active{
	color: #2563eb;
}

.extra-filter-dropdown{
	position: relative;
	flex: 0 0 auto;
	margin-left: 12px;
	z-index: 80;
}

.extra-filter-trigger{
	height: 38px;
	padding: 0 14px;
	border-radius: 999px;
	border: 0.8px solid #dbe4ee;
	background: #fff;
	color: var(--subbar-menu-color);
	font-size: var(--subbar-menu-font-size);
	font-weight: var(--subbar-menu-font-weight);
	letter-spacing: var(--subbar-menu-letter-spacing);
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	box-shadow: none;
	white-space: nowrap;
	transition: 0.2s ease;
}

.extra-filter-trigger i{
	font-size: 12px;
	line-height: 1;
	transition: transform 0.18s ease;
}

.extra-filter-dropdown.open .extra-filter-trigger{
	color: #2563eb;
	border-color: #bfdbfe;
	background: #f8fbff;
	box-shadow: none;
}

.extra-filter-dropdown.open .extra-filter-trigger i{
	transform: rotate(180deg);
}

.extra-filter-dropdown.has-active .extra-filter-trigger{
	color: #2563eb;
	border-color: #bfdbfe;
	background: #eff6ff;
	box-shadow: none;
}

.extra-filter-menu{
	position: absolute;
	top: calc(100% + 10.6px);
	left: 0;
	right: auto;
	min-width: 240px;
	padding: 8px;
	border-radius: 0;
	border: 1px solid #e2e8f0;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 34px rgba(15, 41, 66, 0.14);
	backdrop-filter: blur(10px);
	display: none;
	flex-direction: column;
	gap: 2px;
	z-index: 9999;
}

.extra-filter-dropdown.open .extra-filter-menu{
	display: flex;
}

.extra-filter-option{
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 36px;
	padding: 0 10px;
	border-radius: 0;
	color: var(--subbar-item-color);
	font-size: var(--subbar-item-font-size);
	font-weight: var(--subbar-item-font-weight);
	letter-spacing: var(--subbar-item-letter-spacing);
	cursor: pointer;
	user-select: none;
}

.extra-filter-option:hover{
	background: #f8fafc;
}

.extra-filter-option input{
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
	flex: 0 0 auto;
}

.extra-filter-option span{
	line-height: 1.2;
}

/* 생활형숙박시설 옵션이 전체 메뉴에서 줄바꿈되지 않도록 강제합니다. */
.all-filter-menu input[data-all-filter-type="생활형숙박시설"] + span,
.all-filter-menu input[data-value="생활형숙박시설"] + span{
	white-space: nowrap;
}

.extra-filter-option input:checked + span{
	font-weight: 700;
}

.extra-filter-reset-row{
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid #e5e7eb;
}

.extra-filter-reset-btn{
	width: 100%;
	min-height: 36px;
	border: 0;
	border-radius: 100px;
	background: #f8fafc;
	color: var(--subbar-item-color);
	font-family: var(--subbar-item-font-family);
	font-size: var(--subbar-item-font-size);
	font-weight: var(--subbar-item-font-weight);
	letter-spacing: var(--subbar-item-letter-spacing);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	cursor: pointer;
	transition: background 0.18s ease, color 0.18s ease;
}

.extra-filter-reset-btn:hover{
	background: #eef2f7;
	color: #111827;
}

.extra-filter-reset-btn i{
	font-size: 13px;
	line-height: 1;
}

/* 거래유형 드롭다운: 기타 조건 버튼과 동일한 묶음 UI */
.deal-filter-dropdown{
	margin-left: 0;
}

.deal-method-filter-menu{
	min-width: 190px;
}

.location-analysis-menu{
	min-width: 190px;
}

.location-analysis-option span{
	white-space: nowrap;
}

.sub-topbar .deal-method-filter-option{
	font-family: var(--subbar-item-font-family);
	font-size: var(--subbar-item-font-size);
	font-weight: var(--subbar-item-font-weight);
	letter-spacing: var(--subbar-item-letter-spacing);
	color: var(--subbar-item-color);
}

.global-back-btn{
	width: 38px;
	height: 38px;
	min-width: 38px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #1f2a36;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.global-back-btn:hover{
	background: #f5f7fa;
}

/* 왼쪽 상단 로고 왼쪽 여백 */
.global-brand{
	color: #2563eb;
	letter-spacing: -0.45px;
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	gap: 0px;
	line-height: 1;
	font-size: 16px;
	font-weight: 800;
	color: #2563eb;
	min-width: 164px;
	width: 164px;
	max-width: 164px;
	flex: 0 0 164px;
	overflow: visible;
}

.global-nav-label{
	flex: 0 0 auto;
	font-size: 13px;
	font-weight: 800;
	color: #7b8794;
	letter-spacing: -0.12px;
	white-space: nowrap;
}

.global-topbar .deal-buttons::-webkit-scrollbar,
.global-topbar .type-buttons::-webkit-scrollbar{
	display: none;
}

.global-topbar-right{
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	gap: 10px;
	justify-self: end;
	z-index: 5;
}

.global-auth-trigger{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 38px;
	border: 0;
	background: transparent;
	color: #111827;
	padding: 0;
	font-size: var(--auth-font-size);
	font-weight: 600;
	letter-spacing: -0.18px;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
}



.global-auth-trigger .auth-dot{
	margin: 0 4px;
	color: #6b7280;
}

.global-auth-trigger .auth-arrow{
	font-size: 12px;
	margin-left: 6px;
	line-height: 1;
	transition: transform 0.18s ease;
	flex: 0 0 auto;
}

.global-account-dropdown.open ~ .auth-arrow,
.approval-year-filter-menu{
	min-width: 190px;
}

.global-sort-chip{
	display: inline-flex;
	align-items: center;
	height: 38px;
	padding: 0 19px;
	border-radius: 0;
	background: #f7f9fc;
	border: 1px solid #e6ebf0;
	color: #1f2a36;
	font-size: 14px;
	font-weight: 800;
	white-space: nowrap;
}

.brand-card{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	height: 58px;
	padding: 0 16px;
	background: #fff;
	border-bottom: 1px solid #e6ebf0;
}

.brand-left{
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.brand-title{
	font-size: 17px;
	font-weight: 800;
	color: #1f2a36;
	white-space: nowrap;
}

.panel{
	margin: 12px 12px 10px;
	padding: 14px;
	border-radius: 0;
	background: #fff;
	border: 1px solid #e8eef5;
	box-shadow: 0 8px 22px rgba(15, 41, 66, 0.05);
}

.search-box{
	position: relative;
}

.search-box input{
	width: 100%;
	height: 60px;
	padding: 0 74px 0 22px;
	border: 2px solid rgba(3, 199, 90, 0.9);
	border-radius: 0;
	outline: none;
	font-size: 16px;
	font-weight: 600;
	background: #fff;
	color: #17212b;
	box-shadow: none;
	margin-bottom: 10px;
}

.search-box input::placeholder{
	color: #7b8794;
	font-weight: 600;
}

.search-box::after{
	content: " 002";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	top: 0;
	right: 0;
	width: 62px;
	height: 60px;
	border-radius: 0;
	background: rgba(3, 199, 90, 0.9);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	pointer-events: none;
}



.feature-buttons{
	display: flex;
	flex-wrap: nowrap;
	gap: 5px;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	white-space: nowrap;
}

.feature-buttons::-webkit-scrollbar{
	display: none;
}

.feature-buttons button,
.reset-list-btn{
	border: 1px solid #dfe5eb;
	border-radius: 0;
	padding: 7px 9px;
	font-size: 14px;
	letter-spacing: -0.1px;
	font-weight: 700;
	cursor: pointer;
	transition: 0.2s ease;
	background: #fff;
	color: #304050;
}

.feature-buttons button{
	flex: 0 0 auto;
	white-space: nowrap;
	line-height: 1;
}

.feature-buttons button.active,
.feature-buttons button.all-active{
	background: rgba(3, 199, 90, 0.9);
	color: #fff;
	border-color: rgba(3, 199, 90, 0.9);
	box-shadow: none;
	font-weight: 700;
}

.reset-list-btn{
	width: 100%;
	margin-top: 0;
	margin-bottom: 10px;
	border-radius: 0;
	background: #f1f4f8;
}

.reset-list-btn:hover{
	background: #e7edf3;
}

.list-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin: 0 12px;
	padding: 10px 4px 12px;
	background: transparent;
	border-bottom: 0;
}

.list-head strong{
	font-size: 14px;
	color: #1f6fff;
	letter-spacing: -0.2px;
	font-weight: 800;
}

.list-head span{
	font-size: 14px;
	letter-spacing: -0.1px;
	color: #1f2a36;
	font-weight: 700;
}

.brand-card,
.panel.search-box,
.search-box,
.feature-buttons,
.list-head{
	display: none;
}

.property-list{
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0;
	background: #ffffff;
}

.left-list-loading{
	display: none;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	color: #6b7280;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
}

.property-list.is-loading-more .left-list-loading{
	display: flex;
}





.card-inner-row{
	display: flex;
	gap: 12px;
	padding: 0;
}



.thumb img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.thumb::after{
	display: none;
}

.card:last-child{
	//border-bottom: none;
}

.card-body{
	flex: 1 1 auto;
	min-width: 0;
	padding: 0;
	min-height: 124px;
	display: flex;
	flex-direction: column;
}

.card-top-line{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 8px;
	margin-bottom: 6px;
}

.card-badge-row{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-wrap: wrap;
	min-width: 0;
}

.card-badge{
	display: inline-flex;
	align-items: center;
	height: 20px;
	padding: 0 8px;
	border-radius: 999px;
	background: #f5f7fa;
	color: #667085;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	box-shadow: inset 0 0 0 1px rgba(124, 77, 255, 0.06);
	white-space: nowrap;
}

.card-badge.deal[data-type="매매"]{
	background: #ffffff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-badge.deal[data-type="전세"]{
	background: #e8f7ef;
	color: #16a34a;
	box-shadow: inset 0 0 0 1px rgba(22, 163, 74, 0.08);
}

.card-badge.deal[data-type="월세"]{
	background: #fff7ed;
	color: #ea580c;
	box-shadow: inset 0 0 0 1px rgba(234, 88, 12, 0.08);
}

.card-badge.deal[data-type="년세"]{
	background: #fef2f2;
	color: #dc2626;
	box-shadow: inset 0 0 0 1px rgba(220, 38, 38, 0.08);
}

/* 부동산 홈 매물유형 뱃지는 전체 버튼 톤으로 통일 */
.card-badge:not(.deal){
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

/* 매물 종류별 색상 */ .card-badge[data-type="아파트"]{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-badge[data-type="단독주택"],
.card-badge[data-type="다가구주택"]{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-badge[data-type="상가"]{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-badge[data-type="토지"]{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-badge[data-type="사무실"],
.card-badge[data-type="hotel"]{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-badge[data-type="오피스텔"],
.card-badge[data-type="원룸 / 투룸"],
.card-badge[data-type="생활형숙박시설"],
.card-badge[data-type="living_accommodation"],
.card-badge[data-type="빌라"],
.card-badge[data-type="건물"],
.card-badge[data-type="공장 / 창고"],
.card-badge[data-type="호텔"],
.card-badge[data-type="펜션"],
.card-badge[data-type="pension"]{
	background: #eff6ff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
}

.card-date{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 22px;
	padding: 0 7px;
	border-radius: 999px;
	background: #f6f8fb;
	border: 1px solid transparent;
	color: #98a2b3;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: -0.1px;
	white-space: nowrap;
	line-height: 1;
	flex: 0 0 auto;
}

.card-title{
	font-size: 14px;
	font-weight: 700;
	color: #4b5563;
	line-height: 1.36;
	margin-bottom: 5px;
	letter-spacing: -0.18px;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	word-break: keep-all;
}

.card-address{
	font-size: 12.5px;
	letter-spacing: -0.1px;
	color: #7b8794;
	line-height: 1.42;
	margin-bottom: 6px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.card-price-line{
	display: flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 6px;
	flex-wrap: wrap;
}

.card-deal{
	display: inline-flex;
	align-items: center;
	height: 24px;
	padding: 0 8px;
	border-radius: 0;
	background: #eef5ff;
	color: #1f6fff;
	font-size: 14px;
	letter-spacing: -0.1px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -0.15px;
}





.area-toggle-btn{
	margin-left: 2px;
	display: inline-flex;
	vertical-align: middle;
	height: 22px;
	width: 26px;
	min-width: 26px;
	padding: 0;
	border: 1px solid #d1d9e0;
	border-radius: 999px;
	background: #fff;
	color: #51606f;
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
	line-height: 1;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.area-toggle-btn:hover{
	background: #f7faff;
	border-color: #bfd6ff;
	color: #1f6fff;
}

.area-type-toggle-btn{
	margin-left: 0;
	width: 26px;
	height: 26px;
	min-width: 26px;
	padding: 0;
	border: 1px solid #d7dee6;
	border-radius: 999px;
	background: #fff;
	color: #51606f;
	cursor: pointer;
	font-size: 14px;
	letter-spacing: -0.1px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	vertical-align: middle;
	box-shadow: 0 1px 2px rgba(15, 41, 66, 0.04);
	flex: 0 0 auto;
}

.area-type-toggle-btn:hover{
	background: #f7faff;
	border-color: #bfd6ff;
	color: #1f6fff;
}

.area-display{
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	gap: 2px;
	line-height: 1.45;
	flex-wrap: nowrap;
	white-space: nowrap;
}

.area-label{
	font-size: 0.92em;
	font-weight: 600;
	color: #98a2b3;
	letter-spacing: -0.02px;
}

.area-value{
	font-size: 1em;
	font-weight: 700;
	color: #667382;
}

.area-separator{
	margin: 0 2px;
	font-size: 0.92em;
	font-weight: 600;
	color: #b3bdc9;
}

.area-line{
	display: block;
	white-space: nowrap;
	word-break: keep-all;
}

.card-agent-row{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	padding-top: 9px;
	margin-top: 2px;
	margin-left: -112px;
	width: calc(100% + 112px);
	border-top: none;
	flex-wrap: nowrap;
	white-space: nowrap;
	overflow: hidden;
}

.card-agent-left{
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	flex: 1 1 auto;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
}



.card-agent-avatar img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}



.card-agent-title{
	font-size: 12.5px;
	letter-spacing: -0.05px;
	color: #98a2b3;
	margin-left: 4px;
}

.card-agent-office{
	font-size: 12.5px;
	letter-spacing: -0.05px;
	color: #667085;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	flex: 1 1 auto;
	text-align: left;
	min-width: 0;
	font-weight: 600;
	line-height: 1.35;
}

.resizer{
	display: none;
}

.deal-buttons,
.type-buttons{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.deal-buttons button,
.type-buttons button{
	border: 0;
	border-radius: 999px;
	padding: 8px 12px;
	font-size: var(--type-font-size);
	letter-spacing: -0.1px;
	font-weight: 800;
	background: #eef3f7;
	color: #203040;
	cursor: pointer;
	white-space: nowrap;
	transition: 0.2s ease;
}

.deal-buttons button.active,
.type-buttons button.active{
	background: rgba(3, 199, 90, 0.9);
	color: #fff;
	box-shadow: 0 8px 18px rgba(3, 199, 90, 0.22);
	font-weight: 700;
}

.deal-buttons button{
	font-size: var(--deal-font-size);
}

.area-type-toggle-btn i{
	transition: transform 0.25s ease;
	font-size: 11px;
	line-height: 1;
}

.area-type-toggle-btn:hover i{
	transform: rotate(180deg);
}

.search-box input{
	height: 44px;
	border-radius: 0;
}

.filter-title{
	margin: 4px 0 10px;
	font-size: 14px;
	letter-spacing: -0.1px;
	font-weight: 800;
	color: #6b7785;
	letter-spacing: -0.1px;
}

.brand-card{
	background: #f7f8fa;
}

.list-head strong{
	font-size: 15px;
	color: #162f4d;
}

.list-head span{
	font-size: 14px;
	letter-spacing: -0.1px;
	color: #768391;
}







/* area layout fix */ .card-spec{
	font-size: 12px;
	letter-spacing: -0.1px;
	color: #667382;
	line-height: 1.5;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 4px;
	flex-wrap: nowrap;
}

.card-spec .area-display{
	min-width: 0;
	flex: 0 1 auto;
	white-space: nowrap;
}

.card-spec .area-toggle-btn{
	display: none;
}

/* premium tuning for left card broker line */ .card-agent-left{
	gap: 9px;
}

.card-agent-name,
.card-agent-title{
	color: #4e5a67;
	font-weight: 700;
}



.card-agent-text .card-agent-name,
.card-agent-text .card-agent-title,
.card-agent-text .card-agent-office{
	display:inline;
	white-space:nowrap;
}

.card-agent-text .card-agent-office{
	overflow:hidden;
	text-overflow:ellipsis;
	min-width:0;
}

/* premium left card tuning */ .card{
	background: #ffffff;
	border: 0.5px solid #e5e7eb;
	border-radius: 0;
	box-shadow: none;
	cursor: pointer;
	padding: 3px 3px 0px;
	overflow: hidden;
	border-bottom: 0.5px solid #e5e7eb;
}

.card:hover,
.card.active{
	background: #ffffff;
	transform: none;
	box-shadow: none;
	border-color: #e5e7eb;
}

.card-inner-row{
	--left-card-gap-price-type: 8px;
	--left-card-gap-type-info: 5px;
	--left-card-gap-info-title: 5px;
	gap: 16px;
	padding: 14.5px 17px 17px 14.5px;
	align-items: flex-start;
}

.thumb{
	width: 124px;
	min-width: 124px;
	height: 124px;
	border-radius: 0;
	background-size: cover;
	background-position: center;
	position: relative;
	overflow: hidden;
	box-shadow: none;
}

.card-top-line{
	margin-bottom: 6px;
	align-items: center;
}

.card-badge-row{
	gap: 4px;
}

.card-badge{
	height: 23px;
	padding: 0 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: -0.1px;
	box-shadow: none;
}

.card-date{
	min-width: auto;
	height: auto;
	padding: 0;
	border: 0;
	background: transparent;
	color: #94a3b8;
	font-size: 11px;
	font-weight: 600;
}

/* 왼쪽 패널 - 제목 */
.card-title{
	font-size: 14px;
	line-height: 1.35;
	margin-bottom: var(--left-card-gap-type-info);
	font-weight: 600;
	letter-spacing: 0;
	color: #202124;
	-webkit-line-clamp: 1;
}

/* 왼쪽 패널 - 주소 */
.card-address{
	font-size: 14px;
	line-height: 1.45;
	margin-bottom: 0;
	color: #4b5563;
	letter-spacing: -1px;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.card-region{
	margin-top: auto;
	color: #4b5563;
	font-size: 13px;
	line-height: 1.3;
	letter-spacing: -1px;
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.card-bottom-meta{
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	margin-top: auto;
}

.card-bottom-meta .card-region{
	flex: 1 1 auto;
	min-width: 0;
	margin-top: 0;
}

.card-favorite-count{
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 4px;
	flex: 0 0 auto;
	margin-left: auto;
	color: #8b95a5;
	font-size: 12.5px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
	white-space: nowrap;
}

.card-favorite-count[hidden]{
	display: none;
}

.card-favorite-count i{
	font-size: 14px;
	font-weight: 400;
}

/* 왼쪽 패널 - 면적 */
.card-spec{
	font-size: 14px;
	line-height: 1.4;
	margin-bottom: var(--left-card-gap-info-title);
	color: #202124;
	font-weight: 600;
	letter-spacing: -1px;
}

.card-price-line{
	gap: 6px;
	margin-bottom: var(--left-card-gap-price-type);
}

.card-deal{
	height: 24px;
	padding: 0 8px;
	font-size: 12px;
	font-weight: 700;
}

.card-price{
	font-family: var(--font-ui);
	font-variant-numeric: tabular-nums;
	font-size: 17px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: 0;
	color: #1f2329;
}

.card-agent-row{
	display: none;
}

.card-agent-avatar{
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #eef3f7;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	letter-spacing: -0.1px;
	font-weight: 700;
	color: #506070;
	overflow: hidden;
	flex-shrink: 0;
	border: 1px solid #e5ebf1;
	box-shadow: 0 3px 8px rgba(15, 41, 66, 0.06);
}

.card-agent-text{
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	flex: 1 1 auto;
	white-space: nowrap;
	overflow: hidden;
	line-height: 1;
}

/* 왼쪽 패널 - 중개사 이름 */
.card-agent-name{
	color: #111827;
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.2px;
	line-height: 1;
	flex: 0 0 auto;
}

/* 왼쪽 패널 - 중개사 직급 */
.card-agent-title{
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	font-weight: 600;
	color: #6b7280;
	letter-spacing: -0.12px;
	line-height: 1;
	flex: 0 0 auto;
}

.card-agent-title::after{
	content: "·";
	margin-left: 6px;
	color: #b0bac5;
	font-weight: 600;
}

/* 왼쪽 패널 - 중개사 상호 */
.card-agent-office{
	color: #111827;
	display: inline-flex;
	align-items: center;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.12px;
	line-height: 1;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	flex: 0 1 auto;
}

/* PATCH 2.551: 왼쪽 하단 이름/대표/상호 크기 통일 */
.property-list .card-agent-name,
.property-list .card-agent-title,
.property-list .card-agent-office{
	font-size: 13px;
}

.top-topbar{
	margin-left: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 38px;
	padding: 0 12px;
	border-radius: 0;
	background: transparent;
	border: 1px solid transparent;
	color: #6b7785;
	font-size: 17.5px;
	font-weight: 600;
	letter-spacing: -0.08px;
	white-space: nowrap;
	flex: 0 0 auto;
	cursor: pointer;
}

.top-topbar i{
	font-size: 16px;
	line-height: 1;
	color: currentColor;
	margin-right: 2px;
}

.top-topbar span{
	display: inline-block;
	line-height: 1;
}

.top-topbar.active{
	background: transparent;
	color: #2563eb;
	border-color: transparent;
	box-shadow: none;
}

body{
	background:var(--bg);
	color:var(--text);
}

.app{
	display:block;
	grid-template-columns:none;
	position:relative;
	height:calc(100dvh - var(--topbar-main-height) - var(--topbar-sub-height));
}

.sidebar{
	position:absolute;
	top:0;
	left:0;
	width:var(--sidebar-list-width);
	min-width:0;
	z-index:160;
	overflow:visible;
	background:rgba(255,255,255,.98);
	border-right:1px solid #e6ebf0;
	box-shadow:0 18px 34px rgba(15,41,66,.14);
	transform:translateX(0);
	opacity:1;
	pointer-events:auto;
	transition:transform .28s ease, opacity .2s ease;
	will-change: transform, opacity;
	backface-visibility: hidden;
}

body.sidebar-list-collapsed .app{
	display:block;
	grid-template-columns:none;
}

body.sidebar-list-collapsed .sidebar{
	display: none;
	width:var(--sidebar-list-width);
	transform:translateX(calc(-1 * var(--sidebar-list-width) - 16px));
	opacity:0;
	pointer-events:none;
	border-right:0;
	box-shadow:none;
}

body.sidebar-list-collapsed .sidebar-list-panel{
	opacity:1;
}

.global-topbar,
.sub-topbar{
	background:#ffffff;
	backdrop-filter:none;
	-webkit-backdrop-filter:none;
}

.global-topbar{
	position:sticky;
	top:0;
	height:var(--topbar-main-height);
	border-bottom:0;
	z-index: 1000;
	box-shadow: none;
}

.sub-topbar{
	position:relative;
	z-index:900;
	height:var(--topbar-sub-height);
	border-bottom:0;
	overflow:visible;
	box-shadow: none;
}

.global-topbar-inner{
	height:var(--topbar-main-height);
	max-width:none;
	position:relative;
	padding:0 18px;
	background:transparent;
}

.sub-topbar-inner{
	height:var(--topbar-sub-height);
	max-width:none;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:0 24px;
	position:relative;
	overflow:visible;
	background:transparent;
}

.sub-topbar-inline-version{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	justify-content:flex-start;
	height:100%;
	font-size:12px;
	color:#9aa3af;
	font-weight: 600;
	line-height:1;
	white-space:nowrap;
	margin-right:4px;
}

.global-topbar-left{
	position:absolute;
	left:22px;
	top:50%;
	transform:translateY(-50%);
	display:inline-flex;
	align-items:center;
	gap:12px;
	min-width:0;
	z-index:3;
}

.sub-topbar-left{
	display:none;
}

.global-topbar-menu{
	position:absolute;
	left:50%;
	right:auto;
	top:50%;
	transform:translate(-50%,-50%);
	width:max-content;
	max-width:calc(100vw - 520px);
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:visible;
	z-index:2;
	margin-left:0;
	padding-left:0;
}

.sub-topbar-right{
	position:absolute;
	left:0;
	right:0;
	top:0;
	transform:none;
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	min-width:0;
	background:transparent;
	overflow:visible;
	padding:0;
	pointer-events:none;
}

.sub-topbar-right .map-filter-bar{
	pointer-events:auto;
}

.global-topbar .type-buttons,
.global-topbar .deal-buttons{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-wrap:nowrap;
	flex:0 0 auto;
	gap:8px;
	margin-left:0;
	padding-left:0;
}

.sub-topbar .deal-buttons{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	margin-left:0;
	padding-left:0;
}

.global-topbar .type-buttons button,
.global-topbar .deal-buttons button,
.top-topbar,
.sub-topbar .deal-buttons button{
	background:transparent;
	border:1px solid transparent;
	border-radius: 0;
	box-shadow:none;
	color:#6b7280;
	cursor:pointer;
	transition:background .18s ease, color .18s ease, border-color .18s ease;
}

.global-topbar .type-buttons button,
.global-topbar .deal-buttons button,
.top-topbar{
	height:calc(var(--topbar-main-height) - 24px);
	padding:0 18px;
	font-weight:700;
	letter-spacing:-0.3px;
}

.global-topbar .type-buttons button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:0;
	padding:0 20px;
	font-size:17px;
	color: rgba(0, 0, 0, 0.8);
}

.global-topbar .type-buttons button span{
	display:inline-block;
	line-height:1;
}

.sub-topbar .deal-buttons button{
	height:calc(var(--topbar-sub-height) - 17px);
	padding:0 12px;
	font-size:15px;
	font-weight:600;
	letter-spacing:-0.1px;
	border-radius:999px;
}

.global-topbar .type-buttons button.active,
.global-topbar .deal-buttons button.active,
.sub-topbar .deal-buttons button.active,
.top-topbar.active{
	background:#eff6ff;
	color:#2563eb;
	border-color:#dbeafe;
	font-weight: 700;
}

.global-topbar .type-buttons button:hover,
.global-topbar .deal-buttons button:hover,
.sub-topbar .deal-buttons button:hover,
.top-topbar:hover{
	background:#f8fafc;
	color:#374151;
}

.empty-title{
	margin:0;
	font-size:16px;
	font-weight:800;
	color:#17212b;
	line-height:1.35;
}

.empty-sub{
	margin:0;
	font-size:14px;
	font-weight: 600;
	color:#6b7785;
	line-height:1.4;
}

@media (max-width: 1440px)
{
	.global-topbar-menu{
		max-width:calc(100vw - 420px);
	}

	.global-topbar .type-buttons button{
		padding:0 11px;
		font-size:14px;
	}

}

/* ===== TOPBAR/SUBTOPBAR EXACT RULES: 매물유형 + 거래유형 동일 이동 규칙 ===== */


/* 로고는 기존 위치 고정 */
.global-topbar-left{
	left: 22px;
	right: auto;
}

/* 매물유형: 가운데 정렬 → 창 축소 시 왼쪽 이동 → 로고 앞에서 정지 */


.global-topbar .type-buttons{
	width: max-content;
	min-width: max-content;
	flex: 0 0 auto;
	flex-wrap: nowrap;
	overflow: visible;
}

.global-topbar .type-buttons button,
.global-topbar .type-buttons button span{
	font-size: var(--type-font-size);
	white-space: nowrap;
	flex-shrink: 0;
}

/* 회원가입·로그인: 매물유형 오른쪽 + 50px, 창 축소 시 오른쪽에서 덮임 */


.global-auth-trigger{
	font-size: var(--auth-font-size);
	white-space: nowrap;
	flex-shrink: 0;
}

/* 로고 글자 크기 유지 */
.global-brand,
.global-brand .brand-name{
	color: #2563eb;
	font-size: var(--topbar-logo-font-size, 18px);
}

/* PATCH 3.510: compact but stronger REALJEJU.APP logo */
.global-brand .brand-name{
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: -0.35px;
	display: inline-block;
	width: 164px;
	min-width: 164px;
	max-width: 164px;
	white-space: nowrap;
	overflow: visible;
	line-height: 1;
	font-kerning: none;
	font-synthesis: none;
	text-rendering: geometricPrecision;
	text-shadow: 0.34px 0 0 currentColor, -0.34px 0 0 currentColor;
}

.global-topbar-my-suite-link{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	height: 28px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 14.5px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
}

.global-topbar-my-suite-arrow{
	display: none;
}

body.my-suite-page-open .global-topbar-my-suite-arrow{
	display: inline;
}

/* Align the topbar mypage title to the main mypage content/card start line. */


.global-topbar-my-suite-link:hover,
body.my-suite-page-open .global-topbar-my-suite-link{
	color: #111827;
	font-weight: 700;
}

body.my-suite-page-open .global-topbar-my-suite-link{
	cursor: default;
}

body.admin-page-open .global-topbar-my-suite-link,
body.operator-page-open .global-topbar-my-suite-link,
body.broker-home-page-open .global-topbar-my-suite-link,
body.notice-page-open .global-topbar-my-suite-link{
	display: none;
}

/* PATCH: 상단 메뉴 폰트/색상/웨이트 통일 */
.global-topbar .type-buttons button,
.global-topbar .deal-buttons button{
	font-family: var(--nav-font-family);
	font-size: var(--nav-font-size);
	font-weight: var(--nav-font-weight);
	color: var(--nav-color);
	letter-spacing: -0.35px;
	background: transparent;
	border-color: transparent;
	box-shadow: none;
}

.global-topbar .type-buttons button.active,
.global-topbar .deal-buttons button.active{
	color: var(--nav-active-color);
	background: transparent;
	border-color: transparent;
	box-shadow: none;
}

.global-topbar .type-buttons button:hover,
.global-topbar .deal-buttons button:hover{
	color: var(--nav-active-color);
	background: transparent;
	border-color: transparent;
	box-shadow: none;
}

.nav-new-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 30px;
	padding: 0 13px;
	border: 2px solid var(--nav-new-color);
	border-radius: 999px;
	color: var(--nav-new-color);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.3px;
	background: #fff;
}

/* Ver 2.396 표시: 하단바 왼쪽 고정 */
.sub-version-fixed{
	position: absolute;
	left: 18px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	flex-shrink: 0;
	z-index: 10;
	font-size: 13px;
	font-weight: 600;
	color: var(--brand);
	opacity: 0.72;
}

/* Ver 표시 회색 고정 */ .sub-version-fixed{
	color: #6b7280;
	opacity: 1;
	text-decoration: none;
	cursor: pointer;
}

.sub-version-fixed:hover{
	color: var(--brand);
}

/* 회원가입 로그인: 오른쪽 정렬, 매물유형 오른쪽 50px 경계 안쪽으로 침범 금지 */
.global-topbar-right{
	position: absolute;
	top: 50%;
	left: calc(max(var(--topbar-logo-stop-x), calc(50vw - (var(--topbar-type-width) / 2))) + var(--topbar-type-width) + 50px);
	right: 18px;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	text-align: right;
	white-space: nowrap;
	overflow: hidden;
	min-width: 0;
	z-index: 5;
}

.global-auth-trigger{
	margin-left: auto;
	white-space: nowrap;
	flex: 0 0 auto;
	text-align: right;
}

/* PATCH: 계정 드롭다운이 상단바 overflow/transform에 잘리지 않도록 보강 */


/* ===== ACCOUNT DROPDOWN FROM 1.897 ONLY ===== */
.global-auth-trigger.logged-in{
	max-width: 260px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.global-auth-trigger .account-email-text{
	display: inline-block;
	max-width: 260px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	vertical-align: middle;
}

/* 드롭다운 너비, 위 아래 여백 */
.global-account-dropdown{
	position: fixed;
	top: calc(var(--global-topbar-height) + 6.5px);
	right: 18px;
	z-index: 10020;
	width: 252px;
	padding: 0px 0px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.16);
	display: none;
}

.global-account-dropdown.open{
	display: block;
}

.global-account-dropdown::before{
	content: "";
	position: absolute;
	top: -9px;
	right: 42px;
	width: 16px;
	height: 16px;
	background: rgba(255,255,255,0.98);
	border-left: 1px solid #e5e7eb;
	border-top: 1px solid #e5e7eb;
	transform: rotate(45deg);
}

.global-account-dropdown::after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -17px;
	height: 18px;
	background: transparent;
}

.global-account-email{
	position: relative;
	z-index: 1;
	padding: 6px 26px 14px;
	font-size: 13px;
	font-weight: 700;
	color: #111827;
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.global-account-divider{
	height: 1px;
	margin: 0 22px;
	background: #e5e7eb;
}

/* 드롭다운 메뉴 - 글자 줄 높이 간격 */
.global-account-menu-item{
	position: relative;
	z-index: 1;
	width: 100%;
	height: 56px;
	padding: 0 26px;
	border: 0;
	background: transparent;
	color: #111827;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 400;
	letter-spacing: -0.2px;
	text-align: left;
	cursor: pointer;
}

.global-account-menu-item:hover{
	background: #f8fafc;
}

.profile-incomplete-dot{
	display: none;
	width: 7px;
	height: 7px;
	margin-left: 6px;
	border-radius: 50%;
	background: #ef4444;
	vertical-align: middle;
}

.global-account-dropdown.profile-incomplete .profile-incomplete-dot{
	display: inline-block;
}

/* PATCH: 내 정보 설정은 팝업이 아니라 전체 페이지 형태로 표시 */




.auth-modal.profile-page-mode .auth-modal-title{
	margin: 0 0 12px;
	color: #111827;
	white-space: normal;
}

.auth-modal.profile-page-mode .auth-modal-divider{
	background: #1B6FA4;
}

.auth-modal.profile-page-mode .auth-profile-guide{
	color: #475569;
}

.auth-modal.profile-page-mode .auth-myinfo-display-label,
.auth-modal.profile-page-mode .auth-myinfo-display-value{
	color: #111827;
}

.auth-modal.profile-page-mode .auth-modal-field-label,
.auth-modal.profile-page-mode .auth-profile-consent,
.auth-modal.profile-page-mode .auth-profile-consent strong{
	color: #111827;
}

.auth-modal.profile-page-mode .auth-modal-input{
	border-color: #d1d5db;
	background: #ffffff;
	color: #111827;
}



.auth-modal.profile-page-mode .auth-modal-submit{
	background: #1B6FA4;
	color: #ffffff;
}



.auth-myinfo-display-row{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	min-height: 34px;
}

.auth-myinfo-display-label{
	flex: 0 0 auto;
	font-size: 17px;
	font-weight: 600;
	letter-spacing: -0.25px;
	color: #fff;
	line-height: 1.35;
	white-space: nowrap;
}

.auth-myinfo-display-value{
	flex: 1 1 auto;
	min-width: 0;
	font-size: 17px;
	font-weight: 600;
	letter-spacing: -0.25px;
	color: #fff;
	line-height: 1.35;
	text-align: right;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-input[readonly]{
	cursor: default;
}

/* ===== PATCH 1.928: 내 정보 카드형 디자인 ===== */
.auth-modal.profile-page-mode .auth-myinfo-screen{
	width: min(500px, calc(100vw - 40px));
	margin: 0 auto;
	padding: 36px 42px 42px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: 0 18px 50px rgba(15, 23, 42, 0.10);
}



.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-divider{
	width: 48px;
	height: 4px;
	margin: 0 0 28px;
	border-radius: 999px;
}





.auth-modal.profile-page-mode .auth-myinfo-photo{
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-guide{
	display: none;
}



.auth-modal.profile-page-mode .auth-myinfo-display-row::before{
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 42px;
	height: 42px;
	transform: translateY(-50%);
	border-radius: 50%;
	background: #f1f5f9;
	border: 1px solid #e5e7eb;
}

.auth-modal.profile-page-mode .auth-myinfo-display-row::after{
	position: absolute;
	left: 0;
	top: 50%;
	width: 42px;
	height: 42px;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 14px;
	color: #334155;
}

.auth-modal.profile-page-mode .auth-myinfo-display-row.myinfo-row-name::after{
	content: "\f007";
}

.auth-modal.profile-page-mode .auth-myinfo-display-row.myinfo-row-email::after{
	content: "\f0e0";
}

.auth-modal.profile-page-mode .auth-myinfo-display-row.myinfo-row-phone::after{
	content: "\f095";
}

.auth-modal.profile-page-mode .auth-myinfo-display-row.myinfo-row-role::after{
	content: "\f2bb";
}

.auth-modal.profile-page-mode .auth-myinfo-display-row.myinfo-row-office::after{
	content: "\f1ad";
}

/* 내 정보 페이지 글자 크기 */
.auth-modal.profile-page-mode .auth-myinfo-display-label{
	font-size: 18px;
	font-weight: 600;
	color: #334155;
}

.auth-modal.profile-page-mode .auth-myinfo-display-label::after{
	content: none;
}



.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit{
	height: 50px;
	margin-top: 24px;
	border-radius: 8px;
	letter-spacing: 0;
	font-size: 17px;
	box-shadow: 0 10px 22px rgba(27, 111, 164, 0.22);
}

.auth-modal.profile-page-mode .auth-myinfo-screen #myInfoBrokerOfficeBtn{
	margin-top: 14px;
	background: #ffffff;
	color: #1B6FA4;
	border: 1px solid #1B6FA4;
	box-shadow: none;
}

/* ===== AUTH MODAL OVERRIDE FROM 1.897 ONLY ===== */ .auth-modal{
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 32px;
	background: radial-gradient(circle at 78% 48%, rgba(183, 79, 24, 0.22), transparent 22%), radial-gradient(circle at 12% 16%, rgba(26, 30, 37, 0.82), transparent 28%), linear-gradient(135deg, rgba(17, 24, 39, 0.92) 0%, rgba(25, 34, 59, 0.88) 52%, rgba(73, 92, 119, 0.82) 100%);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}

.auth-modal.open{
	display: flex;
}

/* 로그인, 회원가입 창 너비 설정 */
.auth-modal-dialog{
	position: relative;
	width: 500px;
	height: 690px;
	display: flex;
	flex-direction: column;
	padding: 38px 52px 42px;
	color: #fff;
	background: rgba(15, 23, 42, 0.72);
	border: 1px solid rgba(255,255,255,0.06);
	box-shadow: 0 24px 70px rgba(0,0,0,0.34);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
}

.auth-modal-close{
	position: absolute;
	top: 18px;
	right: 18px;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #fff;
	font-size: 34px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.auth-modal-back{
	position: absolute;
	top: 18px;
	left: 18px;
	width: 44px;
	height: 44px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #fff;
	font-size: 38px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 2;
}

.auth-modal-back.visible{
	display: inline-flex;
}

.auth-modal-title{
	margin: 0px 0 12px;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.28;
	letter-spacing: -0.9px;
	white-space: pre-line;
}

.auth-modal-divider{
	width: 44px;
	height: 4px;
	background: #fff;
	margin-top: 20px;
	margin-bottom: 34px;
}

.auth-modal-form{
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.auth-modal-field-label{
	display: block;
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: -0.25px;
	color: #fff;
}

.auth-modal-input{
	width: 100%;
	height: 66px;
	border: 2px solid rgba(255,255,255,0.88);
	border-radius: 10px;
	background: rgba(255,255,255,0.02);
	color: #fff;
	padding: 0 20px;
	font-size: 18px;
	font-weight: 600;
	outline: none;
	box-shadow: none;
}

.auth-modal-input::placeholder{
	color: rgba(255,255,255,0.26);
	font-weight: 600;
}

.auth-modal-input:focus{
	border-color: #fff;
	background: rgba(255,255,255,0.05);
}

.auth-modal-submit{
	width: 100%;
	height: 50px;
	margin-top: 8px;
	border: 0;
	border-radius: 4px;
	background: #ffffff;
	color: #0f172a;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: -0.5px;
	cursor: pointer;
}

.auth-modal-links{
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 18px 0px 0;
	font-size: 15.5px;
	font-weight: 600;
	color: rgba(255,255,255,0.88);
	letter-spacing: -0.2px;
}

.auth-modal-links button{
	border: 0;
	background: transparent;
	color: inherit;
	padding: 0;
	font: inherit;
	cursor: pointer;
}

.auth-modal-footer{
	margin-top: 38px;
	padding: 0 0px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.28px;
	color: rgba(255,255,255,0.96);
}

.auth-modal-signup{
	border: 0;
	background: transparent;
	color: #facc15;
	padding: 0;
	font-size: 19px;
	font-weight: 800;
	letter-spacing: -0.25px;
	cursor: pointer;
	white-space: nowrap;
}

.auth-error-modal{
	position: fixed;
	inset: 0;
	z-index: 200000;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(15, 23, 42, 0.42);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.auth-error-modal.open{
	display: flex;
}

.auth-error-dialog{
	width: 360px;
	max-width: 90vw;
	padding: 30px 28px 26px;
	background: #ffffff;
	color: #111827;
	border-radius: 0;
	box-shadow: 0 24px 70px rgba(0,0,0,0.28);
	text-align: center;
}

.auth-error-title{
	margin: 0 0 12px;
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -0.5px;
	line-height: 1.3;
}

.auth-error-message{
	white-space: pre-line;
	margin: 0 0 18px;
	font-size: 16px;
	font-weight: 400;
	color: #334155;
	letter-spacing: -0.2px;
	line-height: 1.5;
}

.auth-error-confirm{
	width: 100%;
	height: 46px;
	border: 0;
	border-radius: 0;
	background: #2563EB;
	color: #ffffff;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: -0.2px;
	cursor: pointer;
}

.auth-error-actions{
	display: flex;
	gap: 10px;
}

.auth-error-cancel{
	display: none;
	width: 100%;
	height: 46px;
	border: 1px solid #d1d5db;
	border-radius: 0;
	background: #ffffff;
	color: #374151;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: -0.2px;
	cursor: pointer;
}

.auth-error-modal.confirm-mode .auth-error-cancel{
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.auth-login-screen,
.auth-signup-terms-screen,
.auth-signup-form-screen,
.auth-forgot-password-screen,
.auth-reset-password-screen{
	display: flex;
	flex-direction: column;
	width: 100%;
}

.auth-screen-hidden{
	display: none;
}

.auth-terms-all-btn{
	width: 100%;
	min-height: 62px;
	margin: 8px 0 34px;
	border: 2px solid rgba(255,255,255,0.9);
	border-radius: 6px;
	background: rgba(255,255,255,0.03);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 22px;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: -0.6px;
	cursor: pointer;
}

.auth-terms-all-btn .auth-check-icon{
	font-size: 32px;
	line-height: 1;
	font-weight: 600;
}

.auth-terms-list{
	display: flex;
	flex-direction: column;
	gap: 17.5px;
	margin-bottom: 38px;
}

.auth-terms-item{
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	min-height: 18px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: -0.6px;
	cursor: pointer;
	user-select: none;
}

.auth-terms-check-zone{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	cursor: pointer;
}

.auth-terms-open-zone{
	flex: 1 1 auto;
	min-width: 0;
	border: 0;
	background: transparent;
	color: inherit;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.auth-terms-item input{
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.auth-terms-checkbox{
	width: 24px;
	height: 24px;
	border: 2px solid rgba(255,255,255,0.92);
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	color: transparent;
	font-size: 22px;
	line-height: 0.6;
}

.auth-terms-item input:checked + .auth-terms-checkbox{
	color: #fff;
}

.auth-terms-text{
	flex: 1 1 auto;
	min-width: 0;
	line-height: 1.25;
}

.auth-terms-highlight{
	color: #facc15;
	font-size: 18px;
	font-weight: 700;
}

.auth-terms-arrow{
	margin-left: auto;
	color: #fff;
	font-size: 34px;
	font-weight: 600;
	line-height: 1;
}

.auth-terms-next{
	width: 100%;
	height: 58px;
	border: 0;
	border-radius: 6px;
	background: #fff;
	color: #9ca3af;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: -0.5px;
	cursor: not-allowed;
	opacity: 0.96;
}

.auth-terms-next.enabled{
	color: #0f172a;
	cursor: pointer;
}

.auth-signup-footer{
	margin-top: 38px;
	padding: 0 0px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	color: rgba(255,255,255,0.96);
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.6px;
}

.auth-login-switch{
	border: 0;
	background: transparent;
	color: #facc15;
	padding: 0;
	font-size: 19px;
	font-weight: 800;
	letter-spacing: -0.4px;
	cursor: pointer;
	white-space: nowrap;
}

.terms-full-page{
	position: fixed;
	inset: 0;
	z-index: 300000;
	display: none;
	background: #f7f7f7;
	color: #111827;
}

.terms-full-page.open{
	display: block;
}

html:has(.terms-full-page.open) #topbarMenu,
html:has(.terms-full-page.open) #topbarMenu.global-topbar-menu,
html:has(.terms-full-page.open) #topbarMenu .extra-filter-dropdown,
html:has(.terms-full-page.open) #topbarMenu .topbar-menu-item{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.terms-full-header{
	position: sticky;
	top: 0;
	height: 56px;
	background: #ffffff;
	border-bottom: 1px solid #eef2f6;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}

.terms-full-title{
	font-size: 18px;
	font-weight: 800;
	color: #111827;
	letter-spacing: -0.35px;
}

.terms-full-close{
	position: static;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	border: 0;
	background: transparent;
	color: #111827;
	font-size: 32px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.terms-full-body{
	height: calc(100vh - 56px);
	overflow-y: auto;
	overflow-x: hidden;
	padding: 42px 0 0;
	font-size: 14px;
	line-height: 1.7;
	background: #f7f7f7;
	scrollbar-width: none;
}

.terms-full-body::-webkit-scrollbar{
	width: 0;
	height: 0;
	display: none;
}

.terms-full-main-title{
	width: auto;
	max-width: none;
	margin: 0;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.35;
	color: #111827;
	letter-spacing: -0.25px;
}

.terms-full-main-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 42px;
}

.terms-full-body h2{
	margin: 42px 0 22px;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.35;
	color: #111827;
	letter-spacing: -0.2px;
}

.terms-full-body h3{
	margin: 30px 0 12px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.45;
	color: #111827;
	letter-spacing: -0.15px;
}

.terms-full-body p{
	margin: 0 0 10px;
	color: #111827;
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0;
	white-space: pre-wrap;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.terms-full-body .terms-link-line a{
	color: #2563eb;
	font-weight: 600;
	text-decoration: none;
}

.terms-full-body .terms-link-line a:hover{
	text-decoration: underline;
}

.terms-full-body .terms-inline-heading{
	margin: 0;
	color: #111827;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.7;
	letter-spacing: 0;
	white-space: pre-wrap;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.terms-full-loading,
.terms-full-error{
	font-size: 14px;
	font-weight: 700;
	color: #374151;
}

.terms-full-body #termsFullContent{
	padding-bottom: 42px;
}

.auth-terms-open{
	cursor: pointer;
}

/* PATCH: 내 정보 설정 회원유형 드롭다운 복구 */
.auth-profile-select-wrap{
	position: relative;
	width: 100%;
}

.auth-profile-select-wrap select{
	width: 100%;
	height: 50px;
	border: 1px solid rgba(255,255,255,0.35);
	background: rgba(255,255,255,0.08);
	color: rgba(255,255,255,0.96);
	padding: 0 44px 0 16px;
	font-size: 16px;
	font-weight: 700;
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.auth-profile-select-wrap select option{
	color: #111827;
	background: #ffffff;
}

.auth-profile-select-arrow{
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 20px;  /* 30은 너무 큼 */
	color: rgba(255,255,255,0.82);
	pointer-events: none;
}

/* ===== PROFILE SETUP MODAL PATCH FROM 1.897 ONLY ===== */
.auth-profile-guide{
	margin: -6px 0 4px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: -0.2px;
	color: rgba(255,255,255,0.82);
}

.auth-modal-select{
	width: 100%;
	height: 66px;
	padding: 0 44px 0 20px;
	font-size: 17px;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.auth-profile-consent{
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-top: 2px;
	color: rgba(255,255,255,0.92);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: -0.15px;
	cursor: pointer;
	user-select: none;
}

.auth-profile-consent input{
	width: 18px;
	height: 18px;
	margin: 1px 0 0;
	accent-color: #2563EB;
	flex: 0 0 auto;
}

.auth-profile-consent strong{
	color: #fff;
	font-weight: 800;
}

/* ===== PATCH 1.897: profile role select visibility + account dropdown item lines ===== */
.auth-modal.profile-page-mode .auth-profile-select-wrap{
	display: block;
	position: relative;
	width: 100%;
}

.auth-modal.profile-page-mode .auth-profile-select-wrap select{
	display: block;
	width: 100%;
	height: 66px;
	border: 2px solid #d1d5db;
	border-radius: 10px;
	background: #ffffff;
	color: #111827;
	padding: 0 52px 0 20px;
	font-size: 17px;
	font-weight: 600;
	line-height: 1;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.auth-modal.profile-page-mode .auth-profile-select-arrow{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	right: 20px;
	color: #64748b;
	font-size: 42px;
	line-height: 1;
}

.global-account-menu-item{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	height: 56px;
	min-height: 56px;
	padding: 0 26px;
	border-bottom: 0;
}

/* 드롭다운 자동 밑줄 만드는 놈 */
.global-account-menu-item::after{
	content: "";
	position: absolute;
	left: var(--account-dropdown-padding-x);
	right: var(--account-dropdown-padding-x);
	bottom: 0;
	height: 1px;
	background: var(--account-dropdown-line-color);
	pointer-events: none;
	display: none;
}

.global-account-menu-item:last-of-type::after{
	display: none;
}

.{
	display: block;
	height: 1px;
	margin: 0 var(--account-dropdown-padding-x);
	background: var(--account-dropdown-line-color);
}

.profile-incomplete-dot{
	flex: 0 0 7px;
	align-self: center;
	margin-left: 4px;
	margin-top: 0;
	vertical-align: middle;
}

.auth-myinfo-list{
	display: flex;
	flex-direction: column;
	gap: 0;
	margin-top: 12px;
	border-top: 1px solid #e5e7eb;
	border-bottom: 1px solid #e5e7eb;
}

.auth-myinfo-row{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 12px 0;
	border-bottom: 1px solid #eef2f6;
}

.auth-myinfo-row:last-child{
	border-bottom: 0;
}

.auth-myinfo-row span{
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	color: #64748b;
	white-space: nowrap;
}

.auth-myinfo-row strong{
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	color: #111827;
	text-align: right;
	word-break: keep-all;
}

.auth-myinfo-actions{
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 12px;
}

#brokerOfficeSearchInput{
	padding-right: 64px;
}

.auth-profile-photo-field{
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.auth-profile-photo-box{
	display: flex;
	align-items: center;
	gap: 14px;
}

.auth-profile-photo-select-btn{
	height: 44px;
	padding: 0 18px;
	border: 0;
	border-radius: 4px;
	background: #1B6FA4;
	color: #ffffff;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: -0.1px;
	cursor: pointer;
}

.auth-profile-photo-hint{
	font-size: 13px;
	font-weight: 600;
	line-height: 1.45;
	color: #64748b;
}

.auth-myinfo-photo-box{
	display: flex;
	justify-content: center;
	margin-bottom: 4px;
}

/* ===== PATCH 1.928: profile edit + broker application card alignment ===== */


.auth-modal.profile-page-mode .auth-modal-dialog{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	max-width: none;
	height: 100vh;
	max-height: 100vh;
	padding: 40px 24px 48px;
	background: #f8fafc;
	overflow-y: auto;
}

.auth-modal.profile-page-mode .auth-modal-close{
	position: fixed;
	top: 24px;
	right: 28px;
	z-index: 2;
	color: #111827;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen,
.auth-modal.profile-page-mode .auth-myinfo-screen{
	width: min(500px, calc(100vw - 40px));
	margin-left: auto;
	margin-right: auto;
	padding: 36px 42px 42px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 18px;
	box-shadow: 0 18px 50px rgba(15, 23, 42, 0.10);
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-title{
	font-size: 30px;
	font-weight: 800;
	margin: 0 0 14px;
	letter-spacing: -0.8px;
	color: #111827;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-divider,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-divider{
	width: 48px;
	height: 4px;
	margin: 0 0 28px;
	border-radius: 999px;
	background: #1B6FA4;
}



.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-guide{
	margin: 0 0 4px;
	padding: 14px 16px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #f8fafc;
	color: #475569;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.55;
}



.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-field .auth-modal-field-label{
	align-self: flex-start;
	margin-bottom: 2px;
}



.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-field-label,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent strong{
	font-size: 14px;
	font-weight: 700;
	color: #334155;
	letter-spacing: -0.15px;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-select-wrap select{
	height: 54px;
	border: 1px solid #dbe3ec;
	border-radius: 12px;
	background: #f8fafc;
	color: #111827;
	font-size: 16px;
	font-weight: 700;
	padding: 0 16px;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input:focus,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-select-wrap select:focus{
	border-color: #1B6FA4;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(27, 111, 164, 0.10);
}



/* ===== PATCH 1.929: profile card close + guide hanging indent ===== */
.auth-modal.profile-page-mode > .auth-modal-dialog > .auth-modal-close{
	display: none;
}

.auth-card-close{
	position: absolute;
	top: 18px;
	right: 18px;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #64748b;
	font-size: 30px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	z-index: 3;
}

.auth-card-close:hover{
	background: #f1f5f9;
	color: #111827;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-title{
	padding-right: 44px;
}

/* PATCH: 숫자 폰트 Pretendard 통일 */
html,
body{
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1, "lnum" 1;
}

/* PATCH: 하단 매물 종류 체크박스 드롭다운 */
.type-filter-dropdown{
	position: relative;
	flex: 0 0 auto;
}

.type-filter-menu{
	min-width: 220px;
	max-height: min(620px, calc(100vh - 96px));
	overflow-y: auto;
}

.type-filter-dropdown.open .type-filter-menu{
	display: flex;
}

.type-filter-dropdown.has-active .type-filter-trigger{
	color: #2563eb;
	border-color: #bfdbfe;
	background: #eff6ff;
}

.type-filter-dropdown.open .type-filter-trigger i{
	transform: rotate(180deg);
}

.type-filter-option input{
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
	flex: 0 0 auto;
}

.type-filter-option span{
	line-height: 1.2;
}



#extraFilterMenu{
	min-width: 220px;
	gap: 0;
}

/* PATCH: 하단바 주소 검색 */
.sub-address-search{
	position: relative;
	flex: 0 0 auto;
	width: 236px;
	max-width: 278px;
	z-index: 90;
}

.sub-address-search-form{
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 38px;
	border: 0.8px solid #dbe4ee;
	background: #fff;
	color: #111827;
	box-shadow: none;
}



.sub-address-search-icon{
	width: 38px;
	height: 38px;
	border: 0;
	background: transparent;
	color: #475569;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	cursor: pointer;
	flex: 0 0 auto;
}

.sub-address-search-input{
	flex: 1 1 auto;
	min-width: 0;
	height: 100%;
	border: 0;
	outline: 0;
	background: transparent;
	padding: 0 12px 0 0;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.25px;
	font-family: var(--font-ui);
}



.sub-address-search-status{
	position: absolute;
	top: calc(100% + 10.6px);
	left: 0;
	min-width: 100%;
	max-width: 340px;
	padding: 10px 12px;
	border: 1px solid #e5e7eb;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 12px 28px rgba(15,41,66,0.14);
	color: #475569;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.15px;
	display: none;
	z-index: 9999;
	white-space: nowrap;
}

.sub-address-search-status.show{
	display: block;
}

.sub-address-search-status.error{
	color: #dc2626;
}

@media (max-width: 980px)
{
	.sub-address-search{
		width: 210px;
		max-width: 210px;
	}

	.sub-address-search-input{
		font-size: 14px;
	}
}

/* PATCH 2.551 ABSOLUTE FINAL: 내 정보/수정/중개사무소/중개사무소 수정은 모두 같은 독립 페이지 세트 */


/* PATCH 2.551: 내 정보 화면을 로그인 페이지와 같은 단순 박스 디자인으로 정리 */
































@media (max-width: 720px)
{
	

	

	

	

	
}























































/* PATCH 2.551: 좌측 매물 카드 제목은 한 줄 말줄임 유지 */
.card-title{
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	font-size: 13.5px;
	line-height: 1.35;
	font-weight: 600;
	letter-spacing: -0.08px;
	color: #273244;
}

/* PATCH 2.551: 좌측 카드 정보 위계 정리 */
.card-address,
.card-spec{
	font-size: 13px;
	line-height: 1.4;
	color: #5f6673;
}


/* PATCH 2.947: 좌측 매물 카드 제목 문구 색상 보강 */
.card-address{
	color: #020617;
}

/* PATCH 2.979: 좌측 매물 카드 제목 문구 가독성 보강 */
.property-list .card-address,
.card .card-address{
	color: #5f6673;
	font-weight: 400;
}
@media (max-width: 720px)
{
	

	
}

/* 4.951: 왼쪽 목록과 오른쪽 비슷한 매물 사진 곡률을 같은 6px로 낮춥니다. */
.property-list .thumb{
	border-radius: 6px;
}

.property-list .thumb.thumb-empty{
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	color: #64748b;
}

.property-list .thumb-empty-text{
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
}

.property-list .favorite-heart-btn{
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	line-height: 1;
	cursor: pointer;
	box-shadow: none;
}

.property-list .favorite-heart-icon{
	display: block;
	width: 26px;
	height: 26px;
	fill: transparent;
	stroke: #ffffff;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.42));
}

.property-list .favorite-heart-btn:hover{
	background: transparent;
}

.property-list .favorite-heart-btn:hover .favorite-heart-icon{
	stroke-width: 2;
	filter: drop-shadow(0 1px 3px rgba(15, 23, 42, 0.55));
}

.property-list .favorite-heart-btn.active .favorite-heart-icon{
	fill: #EF4444;
	stroke: #ffffff;
	stroke-width: 1.6;
	filter: drop-shadow(0 1px 3px rgba(15, 23, 42, 0.45));
}

.my-suite-content.my-suite-favorites-content{
	width: 100%;
	max-width: 100%;
	min-height: 260px;
	margin: 48px 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
}

.my-suite-favorites-filterbar{
	display: flex;
	align-items: center;
	gap: var(--broker-home-filter-gap);
	width: 100%;
	margin: 0 0 16px;
}

.my-suite-favorites-filterbar .broker-home-filter-menu,
.my-suite-favorites-filterbar .broker-home-filter-btn{
	box-shadow: none;
}

.my-suite-favorites-shell{
	width: 100%;
	margin: 0;
	--broker-list-front-gap: 33px;
	--broker-list-area-price-gap: 20px;
	--broker-list-price-edit-gap: 12px;
	--broker-list-button-gap: 0px;
	--broker-list-edit-col: 0px;
	--broker-list-copy-col: 0px;
	--broker-list-menu-col: 34px;
}

.my-suite-favorites-list .broker-listing-head,
.my-suite-favorites-list .broker-listing-row{
	grid-template-columns: var(--broker-list-photo-col) 36px var(--broker-list-type-col) var(--broker-list-front-gap) var(--broker-list-status-col) var(--broker-list-front-gap) var(--broker-list-date-col) var(--broker-list-front-gap) var(--broker-list-no-col) var(--broker-list-front-gap) minmax(300px, 1fr) var(--broker-list-title-area-gap) var(--broker-list-area-col) var(--broker-list-area-price-gap) var(--broker-list-price-col) var(--broker-list-price-edit-gap) var(--broker-list-menu-col);
}

.my-suite-favorites-empty-row{
	grid-column: 1 / -1;
	min-height: 160px;
	margin: 0;
	border: 1px solid #e5e7eb;
	border-top: 0;
	background: #ffffff;
}

.my-suite-favorites-list .broker-listing-row{
	cursor: default;
}

.my-suite-favorites-list .broker-listing-menu-item{
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 400;
	font-variant-numeric: normal;
	letter-spacing: 0;
	white-space: nowrap;
}

.my-suite-favorites-list .broker-listing-head > div:nth-child(2),
.my-suite-favorites-list .broker-listing-row > .broker-listing-type,
.my-suite-favorites-list .broker-listing-head > div:nth-child(3),
.my-suite-favorites-list .broker-listing-row > .broker-listing-cell:nth-child(3),
.my-suite-favorites-list .broker-listing-head > div:nth-child(4),
.my-suite-favorites-list .broker-listing-row > .broker-listing-meta,
.my-suite-favorites-list .broker-listing-head > div:nth-child(5),
.my-suite-favorites-list .broker-listing-row > .broker-listing-no{
	justify-content: center;
	text-align: center;
}

.my-suite-favorites-list .broker-listing-head > div:nth-child(9),
.my-suite-favorites-list .broker-listing-head > div:nth-child(10),
.my-suite-favorites-list .broker-listing-row > div:nth-child(9),
.my-suite-favorites-list .broker-listing-row > div:nth-child(10){
	display: none;
}

.my-suite-favorites-list .broker-listing-head > div:nth-child(11),
.my-suite-favorites-list .broker-listing-row > .broker-listing-menu-cell{
	justify-content: center;
	text-align: center;
}

.my-suite-favorites-list .broker-listing-head > div:nth-child(11),
.my-suite-favorites-list .broker-listing-row > div:nth-child(11){
	grid-column: 17;
	justify-content: center;
	text-align: center;
}

.broker-listing-status{
	white-space: nowrap;
	word-break: keep-all;
}

body.broker-home-page-open .broker-listing-head > div:nth-child(3){
	text-align: center;
}

body.broker-home-page-open .broker-listing-head > div:nth-child(2){
	text-align: center;
}

body.broker-home-page-open .broker-listing-row > .broker-listing-cell:nth-child(3){
	justify-content: center;
	text-align: center;
}

body.broker-home-page-open .broker-listing-row > .broker-listing-cell:nth-child(3) .broker-listing-status{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	white-space: nowrap;
	word-break: keep-all;
}

body.broker-home-page-open .broker-listing-head > div:nth-child(5),
body.broker-home-page-open .broker-listing-row > .broker-listing-no,
body.broker-home-page-open .broker-listing-head > div:nth-child(11),
body.broker-home-page-open .broker-listing-row > .broker-listing-menu-cell{
	justify-content: center;
	text-align: center;
}

body.broker-home-page-open .broker-listing-head > div:nth-child(4),
body.broker-home-page-open .broker-listing-row > .broker-listing-meta{
	justify-content: center;
	text-align: center;
}

.my-suite-favorites-list .broker-listing-menu-btn,
body.broker-home-page-open .broker-listing-menu-btn{
	margin-left: auto;
	margin-right: auto;
}

.my-suite-favorites-list .broker-listing-menu-btn{
	margin-left: 0;
	margin-right: 0;
}

/* PATCH 3.127: 중개사 홈 목록 컬럼 합계가 컨테이너 폭에 맞춰 줄어들게 보정 */
body.broker-home-page-open #brokerListingsList{
	--broker-list-status-col: 52px;
	--broker-list-title-area-gap: 12px;
	--broker-list-area-price-gap: 20px;
	--broker-list-price-edit-gap: 12px;
	--broker-list-button-gap: 6px;
	--broker-list-copy-col: 96px;
}

body.broker-home-page-open #brokerListingsList .broker-listing-head,
body.broker-home-page-open #brokerListingsList .broker-listing-row{
	grid-template-columns: var(--broker-list-photo-col) 36px var(--broker-list-type-col) var(--broker-list-front-gap) var(--broker-list-status-col) var(--broker-list-front-gap) var(--broker-list-date-col) var(--broker-list-front-gap) var(--broker-list-no-col) var(--broker-list-front-gap) minmax(var(--broker-list-title-min, 300px), 1fr) var(--broker-list-title-area-gap) var(--broker-list-area-col) var(--broker-list-area-price-gap) var(--broker-list-price-col) var(--broker-list-price-edit-gap) var(--broker-list-edit-col) var(--broker-list-button-gap) var(--broker-list-copy-col) var(--broker-list-button-gap) var(--broker-list-menu-col);
	min-width: 0;
}

#detailAuthTrigger,
#detailAuthTrigger:hover,
#detailAuthTrigger:focus,
#detailAuthTrigger:focus-visible,
#detailAuthTrigger:active,
#detailAuthTrigger.account-open,
.global-topbar-right #detailAuthTrigger,
.global-topbar-right #detailAuthTrigger:hover,
.global-topbar-right #detailAuthTrigger:focus,
.global-topbar-right #detailAuthTrigger:focus-visible,
.global-topbar-right #detailAuthTrigger:active{
	border: 0;
	outline: 0;
	box-shadow: none;
}

/* PATCH 2.828: 오른쪽 상세 패널 정보 섹션 상하 여백 통일 */
#sidebarDetailPanel .detail-content{
	padding: 0;
	background: #ffffff;
}

#sidebarDetailPanel .detail-summary-block{
	margin-bottom: var(--rj-detail-card-margin-x);
	border-bottom: 0;
}

#sidebarDetailPanel .detail-meta-grid{
	display: none;
	margin: 0 var(--rj-detail-card-margin-x) var(--rj-detail-card-gap-y);
	border: 1px solid #e6edf5;
	border-radius: 0;
	border-bottom: 1px solid #e6edf5;
	background: #ffffff;
	overflow: hidden;
}

#sidebarDetailPanel .detail-meta-item{
	padding: var(--rj-detail-card-padding-top) var(--rj-detail-card-padding-right) var(--rj-detail-card-padding-bottom) var(--rj-detail-card-padding-left);
	border-right: 1px solid #eef2f6;
}

#sidebarDetailPanel .detail-meta-item:last-child{
	border-right: 0;
}

#sidebarDetailPanel .detail-info-sections{
	display: flex;
	flex-direction: column;
	gap: var(--rj-detail-card-gap-y);
	margin: 0 var(--rj-detail-card-margin-x) var(--rj-detail-card-gap-y);
	background: transparent;
}

#sidebarDetailPanel .detail-info-section{
	position: relative;
	border: 0;
	border-radius: 0;
	border-bottom: 0;
	margin: 0;
	padding: var(--rj-detail-card-padding-top) 0 var(--rj-detail-card-padding-bottom);
	background: #ffffff;
}

#sidebarDetailPanel .detail-info-section-title{
	margin: 0 0 var(--rj-detail-title-gap-bottom);
	color: #111827;
	font-size: var(--rj-detail-title-font-size);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: var(--rj-detail-title-letter-spacing);
}

#sidebarDetailPanel .detail-info-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) max-content;
	align-items: center;
	gap: 24px;
	min-height: var(--rj-detail-row-min-height);
	padding: var(--rj-detail-row-padding-y) var(--rj-detail-row-padding-x);
	border-bottom: 0.5px solid #eef2f6;
}

#sidebarDetailPanel .detail-info-row:last-child{
	border-bottom: 0;
	padding-bottom: 0;
}

#sidebarDetailPanel .detail-info-label{
	/* 4.976: 라벨은 400으로 가볍게, 오른쪽 값은 700으로 분명하게 구분합니다. */
	color: #303038;
	font-size: var(--rj-detail-content-font-size);
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: var(--rj-detail-content-letter-spacing);
}

#sidebarDetailPanel .detail-info-value{
	color: #1e1e23;
	font-size: var(--rj-detail-content-font-size);
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: var(--rj-detail-content-letter-spacing);
	text-align: right;
	white-space: pre-line;
}

/* 4.951: 상세 정보에 저장된 유튜브 주소를 실제 외부 링크로 표시합니다. */
#sidebarDetailPanel .detail-info-link{
	color: #2563eb;
	font: inherit;
	line-height: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
	overflow-wrap: anywhere;
	cursor: pointer;
}

#sidebarDetailPanel .detail-location-card{
	position: relative;
	margin: 0 var(--rj-detail-card-margin-x) var(--rj-detail-card-gap-y);
	padding: var(--rj-detail-card-padding-top) 0 var(--rj-detail-card-padding-right);
	border: 0;
	border-radius: 0;
	background: #ffffff;
}

#sidebarDetailPanel .detail-location-map{
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	box-sizing: border-box;
	border: 1px solid #d8dee8;
	background: #f8fafc;
	overflow: hidden;
}

/* PATCH 2.820: 면적 전환 버튼 애니메이션 제거 */
.area-toggle-btn,
.area-type-toggle-btn,
.broker-listing-area-toggle,
.broker-listing-area-toggle-icon,
.area-type-toggle-btn i{
	transition: none;
	animation: none;
}

.area-type-toggle-btn:hover i,
.broker-listing-area-toggle:hover .broker-listing-area-toggle-icon{
	transform: none;
}

/* PATCH 2.825: 오른쪽 상세 패널을 왼쪽 패널에서 떨어진 플로팅 형태로 변경 */
.sidebar{
	height: 100%;
}

.sidebar-detail-panel{
	position: absolute;
	top: var(--rj-detail-panel-edge);
	bottom: var(--rj-detail-panel-edge);
	left: calc(var(--sidebar-list-width) + var(--rj-detail-panel-gap));
	z-index: 180;
	width: var(--rj-detail-panel-width);
	max-width: calc(100vw - var(--sidebar-list-width) - var(--rj-detail-panel-right-safe));
	height: auto;
	background: #ffffff;
	border: 1px solid #e1e7ef;
	border-radius: 8px;
	box-shadow: none;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: none;
}

.sidebar.expanded .sidebar-detail-panel{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.map-panel-toggle{
	position: fixed;
	top: 50%;
	left: 0;
	z-index: 230;
	display: none;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 54px;
	padding: 0;
	border: 1px solid #d8e1ec;
	border-left: 0;
	border-radius: 0 8px 8px 0;
	background: rgba(255, 255, 255, 0.98);
	color: #64748b;
	font-size: 14px;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
	transform: translate3d(-1px, -50%, 0);
	transition: transform .28s ease, color .16s ease, background-color .16s ease;
	will-change: transform;
	backface-visibility: hidden;
}

.map-panel-toggle i{
	pointer-events: none;
}

.map-panel-toggle:hover,
.map-panel-toggle:focus,
.map-panel-toggle:active{
	outline: 0;
	box-shadow: none;
	transform: translate3d(-1px, -50%, 0);
}

body.map-detail-panel-active:not(.map-panels-collapsed) .map-panel-toggle{
	display: inline-flex;
	left: 0;
	transform: translate3d(calc(var(--sidebar-list-width) + var(--rj-detail-panel-gap) + var(--rj-detail-panel-width)), -50%, 0);
}

body.realjeju-side-nav-enabled.map-detail-panel-active:not(.map-panels-collapsed) .map-panel-toggle{
	left: var(--realjeju-side-nav-width);
	transform: translate3d(calc(var(--rj-list-panel-gap) + var(--sidebar-list-width) + var(--rj-detail-panel-gap) + var(--rj-detail-panel-width)), -50%, 0);
}

body.map-panels-collapsed .sidebar{
	transform: translateX(calc(-1 * (var(--sidebar-list-width) + var(--rj-detail-panel-gap) + var(--rj-detail-panel-width))));
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: transform .28s ease, opacity .28s ease, visibility 0s linear .28s;
}

body.map-panels-collapsed .sidebar-list-panel,
body.map-panels-collapsed .sidebar-detail-panel{
	opacity: 1;
	visibility: visible;
	pointer-events: none;
	transition: none;
}

body.map-panels-collapsed .sidebar.expanded .sidebar-list-panel,
body.map-panels-collapsed .sidebar.expanded .sidebar-detail-panel{
	opacity: 1;
	visibility: visible;
	pointer-events: none;
	transition: none;
}

body.map-panels-collapsed .map-panel-toggle{
	display: inline-flex;
	left: 0;
	transform: translate3d(-1px, -50%, 0);
}

body.realjeju-side-nav-enabled.map-panels-collapsed .map-panel-toggle{
	left: var(--realjeju-side-nav-width);
	transform: translate3d(-1px, -50%, 0);
}

body.realjeju-side-nav-enabled.map-panels-collapsed .sidebar{
	transform: translateX(calc(-1 * (var(--rj-list-panel-gap) + var(--sidebar-list-width) + var(--rj-detail-panel-gap) + var(--rj-detail-panel-width))));
}

body.map-panels-collapsed.detail-page-panel-open .sidebar{
	transform: translateX(calc(-1 * (var(--sidebar-list-width) + var(--rj-detail-panel-gap) + var(--rj-detail-panel-width))));
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: none;
}

body.map-panels-collapsed .sidebar *,
body.map-panels-collapsed .sidebar-list-panel *,
body.map-panels-collapsed .sidebar-detail-panel *{
	pointer-events: none;
}

body.map-panels-collapsed .sidebar.expanded .sidebar-list-panel *,
body.map-panels-collapsed .sidebar.expanded .sidebar-detail-panel *{
	pointer-events: none;
}

body.map-panels-collapsed .map-panel-toggle i{
	transform: rotate(180deg);
}

body.sidebar-list-collapsed:not(.map-panels-collapsed) .map-panel-toggle,
body.property-register-page-open .map-panel-toggle,
body.my-suite-page-open .map-panel-toggle,
body.admin-page-open .map-panel-toggle,
body.broker-home-page-open .map-panel-toggle,
body.notice-page-open .map-panel-toggle,
body.payment-page-open .map-panel-toggle,
body.auth-page-open .map-panel-toggle{
	display: none;
	visibility: hidden;
	pointer-events: none;
}

.sidebar-detail-panel .detail-panel-inner{
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	min-height: 0;
}

.sidebar-detail-panel .detail-scroll{
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding-bottom: 0;
}

#sidebarDetailPanel .detail-topbar{
	position: relative;
	z-index: 80;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	min-height: var(--rj-panel-header-height);
	padding: 0 12px 0 var(--rj-detail-card-margin-x);
	background: rgba(255, 255, 255, 0.98);
	border-bottom: 1px solid #eef2f6;
	overflow: visible;
}

.sidebar-detail-panel .detail-topbar-id{
	min-width: 0;
	flex: 1 1 auto;
	color: #111827;
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	text-align: left;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 0;
}

.sidebar-detail-panel .detail-topbar-id-label,
.sidebar-detail-panel .detail-topbar-id-value{
	color: #111827;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	line-height: inherit;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar{
	left: calc(var(--realjeju-side-nav-width) + var(--rj-list-panel-gap));
	width: calc(var(--sidebar-list-width) + var(--rj-detail-panel-gap) + var(--rj-detail-panel-width));
	background: transparent;
	border: 0;
	box-shadow: none;
	pointer-events: none;
}

.sidebar-inner{
	display: block;
	position: relative;
	height: 100%;
}

.sidebar-list-panel{
	position: absolute;
	top: var(--rj-detail-panel-edge);
	bottom: var(--rj-detail-panel-edge);
	left: 0;
	width: var(--sidebar-list-width);
	height: auto;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid var(--realjeju-panel-line-color, #e5e7eb);
	border-radius: 10px;
	box-shadow: none;
	pointer-events: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.sidebar-detail-panel{
	border-radius: 10px;
	/* PATCH 3.849: 오른쪽 상세 정보 패널의 외곽선이 좌측에서 끊기지 않도록 왼쪽 테두리를 복원한다. */
	border-left: 1px solid #e1e7ef;
	border-top: 1px solid #e1e7ef;
	border-right: 1px solid #e1e7ef;
	border-bottom: 1px solid #e1e7ef;
	overflow: hidden;
}

#sidebarDetailPanel .detail-hero,
#sidebarDetailPanel .detail-hero-slides,
#sidebarDetailPanel .detail-hero-slide{
	border-left: 0;
	box-shadow: none;
}

.sidebar-list-header{
	position: relative;
	flex: 0 0 var(--rj-panel-header-height);
	min-height: var(--rj-panel-header-height);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 16px;
	box-sizing: border-box;
	border-bottom: 0.5px solid #f1f3f6;
	background: rgba(255, 255, 255, 0.98);
	color: #111827;
	font-family: var(--font-ui);
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	white-space: nowrap;
}

.sidebar-list-header strong{
	font: inherit;
	color: inherit;
}

.sidebar-list-header strong.is-agent-office-title{
	display: block;
	max-width: calc(100% - 72px);
	margin-right: auto;
	padding-right: 8px;
	overflow: hidden;
	text-align: left;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.sidebar-list-close-btn{
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
}

.sidebar-list-actions{
	position: absolute;
	right: 52px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.sidebar-list-share-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
}

.sidebar-list-share-btn[hidden]{
	display: none;
}

.sidebar-list-share-btn i{
	font-size: 18px;
	line-height: 1;
	transform: translate(1px, 0);
}

.sidebar-list-close-btn i{
	font-size: 22px;
	line-height: 1;
	transform: translate(1px, 0);
}

.sidebar-list-close-btn:hover,
.sidebar-list-close-btn:focus,
.sidebar-list-close-btn:active,
.sidebar-list-share-btn:hover,
.sidebar-list-share-btn:focus,
.sidebar-list-share-btn:active{
	background: transparent;
	color: #111827;
	outline: 0;
	box-shadow: none;
}

.sidebar-list-panel .property-list{
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.sidebar-list-panel .property-list::-webkit-scrollbar{
	display: none;
}

.sidebar-list-agent-card{
	flex: 0 0 auto;
	padding: var(--rj-detail-card-padding-top) var(--rj-detail-card-padding-right) var(--rj-detail-card-padding-right) var(--rj-detail-card-padding-left);
	box-sizing: border-box;
	border-bottom: 0.5px solid #e5e7eb;
	background: #fff;
}

.sidebar-list-agent-card .detail-agent-card-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 var(--rj-detail-title-gap-bottom);
}

.sidebar-list-agent-card .detail-agent-section-title{
	margin: 0;
	padding: var(--rj-detail-title-padding-y) var(--rj-detail-title-padding-x);
	color: #111827;
	font-size: var(--rj-detail-title-font-size);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: var(--rj-detail-title-letter-spacing);
}

.sidebar-list-agent-card-inner{
	display: flex;
	align-items: flex-start;
	gap: 20px;
}

.sidebar-list-agent-avatar{
	width: 60px;
	height: 60px;
	min-width: 60px;
	border: 0;
	border-radius: 50%;
	overflow: hidden;
	background: #f1f5f9;
	color: #64748b;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
}

.sidebar-list-agent-avatar img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.sidebar-list-agent-body{
	min-width: 0;
	flex: 1 1 auto;
}

.sidebar-list-agent-title-row{
	display: flex;
	align-items: baseline;
	gap: 8px;
	min-width: 0;
	margin: 0 0 4px;
}

.sidebar-list-agent-name{
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sidebar-list-agent-role{
	color: #64748b;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.25;
	white-space: nowrap;
}

.sidebar-list-agent-line{
	margin-top: 2px;
	color: #64748b;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sidebar-list-agent-actions{
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	flex-wrap: wrap;
}

.sidebar-list-agent-action{
	height: 34px;
	padding: 0 11px;
	border: 1px solid #bfd4ff;
	border-radius: 999px;
	background: #fff;
	color: #2563eb;
	font-family: var(--font-ui);
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	cursor: pointer;
	box-shadow: none;
	white-space: nowrap;
}

.sidebar-list-agent-action.kakao{
	background: #fee500;
	border-color: #fee500;
}

.sidebar-list-agent-action.phone{
	background: #fff;
	color: #111827;
	border-color: #e5e7eb;
}

.sidebar-list-agent-action i{
	font-size: 13px;
	line-height: 1;
}

.sidebar-list-agent-sortbar{
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 14px var(--rj-detail-card-padding-right) 12px var(--rj-detail-card-padding-left);
	box-sizing: border-box;
	border-bottom: 0.5px solid #e5e7eb;
	background: #f4f6f8;
	white-space: nowrap;
}

.sidebar-list-agent-count{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
}

.sidebar-list-agent-count strong{
	color: #2563eb;
	font-size: 16px;
	font-weight: 800;
	line-height: 1;
}

.sidebar-list-agent-count-help{
	position: relative;
	width: 16px;
	height: 16px;
	border: 1px solid #6b7280;
	border-radius: 50%;
	color: #6b7280;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
}

.sidebar-list-count-help{
	position: static;
	cursor: default;
	outline: none;
}

.sidebar-list-count-help-panel{
	position: absolute;
	left: 0;
	top: calc(100% + 10px);
	z-index: 50;
	display: none;
	width: 300px;
	padding: 12px 14px;
	border: 1px solid #d8dee8;
	border-radius: 16px;
	background: #ffffff;
	color: #334155;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.1px;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: break-word;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
	transform: none;
}

.sidebar-list-count-help-panel > span{
	position: relative;
	display: block;
	padding-left: 10px;
}

.sidebar-list-count-help-panel > span::before{
	content: "•";
	position: absolute;
	left: 0;
	top: 0;
}

.sidebar-list-count-help:hover .sidebar-list-count-help-panel,
.sidebar-list-count-help:focus .sidebar-list-count-help-panel,
.sidebar-list-count-help:focus-within .sidebar-list-count-help-panel{
	display: block;
}

.sidebar-list-agent-sort-actions{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	color: #9ca3af;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
}

.sidebar-list-agent-sort-btn{
	border: 0;
	background: transparent;
	padding: 0;
	color: #6b7280;
	font: inherit;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
	box-shadow: none;
	white-space: nowrap;
}

.sidebar-list-agent-sort-btn.active{
	color: #111827;
	font-weight: 800;
}

.sidebar-list-agent-sort-divider{
	color: #d1d5db;
	font-size: 13px;
	line-height: 1;
}

.sidebar-list-panel .card{
	flex: 0 0 auto;
	min-height: 0;
	padding: 3px 3px 0;
	overflow: hidden;
	border: 0.5px solid #e5e7eb;
	border-radius: 0;
	border-bottom: 0.5px solid #e5e7eb;
}

.sidebar-list-panel .card-inner-row{
	--left-card-gap-price-type: 8px;
	--left-card-gap-type-info: 5px;
	--left-card-gap-info-title: 5px;
	min-height: 0;
	padding: 14.5px 17px 17px 14.5px;
	box-sizing: border-box;
	align-items: flex-start;
	gap: 16px;
}

.sidebar-list-panel .thumb{
	width: 124px;
	min-width: 124px;
	height: 124px;
}

.sidebar-list-panel .card-body{
	min-height: 124px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.sidebar-list-panel .card-price-line{
	margin-bottom: var(--left-card-gap-price-type);
	flex-wrap: nowrap;
}

.sidebar-list-panel .card-price{
	flex: 1 1 auto;
	min-width: 0;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: 0;
	color: #202124;
}

.sidebar-list-panel .card-broker-flag-badges{
	margin-left: auto;
}

.sidebar-list-panel .card-title{
	margin-bottom: var(--left-card-gap-type-info);
	font-size: 14px;
	line-height: 1.35;
	font-weight: 400;
	letter-spacing: 0;
	color: #666666;
}

.sidebar-list-panel .card-spec{
	display: block;
	margin-bottom: var(--left-card-gap-info-title);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: -1px;
	color: #666666;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sidebar-list-panel .card-address,
.sidebar-list-panel .card-region{
	font-size: 14px;
	line-height: 1.45;
	letter-spacing: -1px;
	font-weight: 400;
	color: #929292;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sidebar-list-panel .card-region{
	margin-top: auto;
	font-size: 13px;
	line-height: 1.3;
	font-weight: 400;
}

#sidebarDetailPanel .detail-top-actions{
	position: static;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 2px;
	margin-left: auto;
	flex: 0 0 auto;
	width: auto;
	min-width: 0;
}

#sidebarDetailPanel .detail-icon-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 32px;
	min-width: 32px;
	height: 36px;
	flex: 0 0 32px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-size: 18px;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
}

#sidebarDetailPanel #detailShareBtn,
#sidebarDetailPanel #detailEditBtn,
#sidebarDetailPanel #detailCloseBtn{
	display: inline-flex;
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

#sidebarDetailPanel .detail-icon-btn i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	font-size: 16px;
	line-height: 1;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	transform: none;
	-webkit-text-stroke: 0.58px #ffffff;
	text-shadow: none;
}

#sidebarDetailPanel #detailShareBtn i{
	font-size: 18px;
	transform: translate(1px, 0);
}

#sidebarDetailPanel #detailCloseBtn i{
	font-size: 22px;
	transform: translate(1px, 0);
}

/* PATCH 3.394: 오른쪽 상세 패널 상단 아이콘을 왼쪽 매물 목록 상단 아이콘과 동일한 두께/형태로 맞춤 */
#sidebarDetailPanel #detailShareBtn,
#sidebarDetailPanel #detailEditBtn,
#sidebarDetailPanel #detailCloseBtn{
	width: auto;
	min-width: 36px;
	height: 36px;
	flex: 0 0 auto;
	padding: 0 10px;
	color: #111827;
	font-size: 24px;
	font-weight: 600;
}

#sidebarDetailPanel #detailShareBtn i,
#sidebarDetailPanel #detailEditBtn i,
#sidebarDetailPanel #detailCloseBtn i{
	width: auto;
	height: auto;
	line-height: 1;
	font-weight: 800;
	-webkit-text-stroke: 0;
	text-shadow: none;
	transform: translate(1px, 0);
}

#sidebarDetailPanel #detailShareBtn i{
	font-size: 18px;
}

#sidebarDetailPanel #detailEditBtn i{
	font-size: 20px;
	font-weight: 400;
	transform: translate(0, 0);
}

#sidebarDetailPanel #detailEditBtn{
	color: #9ca3af;
	width: 36px;
	min-width: 36px;
	height: 36px;
	flex: 0 0 36px;
	padding: 0;
}

#sidebarDetailPanel #detailEditBtn:hover{
	color: #6b7280;
}

#sidebarDetailPanel #detailCloseBtn i{
	font-size: 22px;
}

#sidebarDetailPanel #detailShareBtn::before,
#sidebarDetailPanel #detailShareBtn::after{
	content: none;
}

#sidebarDetailPanel #detailCloseBtn::before,
#sidebarDetailPanel #detailCloseBtn::after{
	content: none;
}

#sidebarDetailPanel .detail-icon-btn:hover{
	color: #111827;
	background: transparent;
}

#sidebarDetailPanel #detailEditBtn[hidden]{
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

#sidebarDetailPanel #detailEditBtn.detail-edit-pill-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: auto;
	min-width: 0;
	height: 23px;
	padding: 0 8px;
	border-radius: 999px;
	background: #ffffff;
	color: #2563eb;
	border: 0;
	box-shadow: inset 0 0 0 1px #bfd4ff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.1px;
	white-space: nowrap;
	cursor: pointer;
}

#sidebarDetailPanel #detailEditBtn.detail-edit-pill-btn:hover,
#sidebarDetailPanel #detailEditBtn.detail-edit-pill-btn:focus-visible{
	background: #e6f0ff;
	color: #1d4ed8;
	outline: 0;
}

#sidebarDetailPanel .detail-topbar-id{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	min-width: 0;
	text-align: left;
}

#sidebarDetailPanel .detail-topbar-id-text{
	min-width: 0;
	display: inline-flex;
	align-items: center;
	flex: 0 1 auto;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#sidebarDetailPanel .detail-close-btn{
	position: static;
	transform: none;
}

#sidebarDetailPanel .detail-share-menu{
	position: absolute;
	top: calc(100% + 14px);
	left: auto;
	right: 14px;
	z-index: 90;
	min-width: 0;
}

.sidebar-detail-panel .detail-summary-block{
	border-bottom-color: #eef2f6;
	text-align: left;
	box-sizing: border-box;
}

.sidebar-detail-panel .detail-summary-price-row,
.sidebar-detail-panel .detail-summary-price{
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
	text-align: left;
	align-items: flex-start;
	color: #0b1220;
	font-weight: 700;
}



#sidebarDetailPanel .detail-title{
	display: block;
	width: 100%;
	margin: 8px 0 4px;
	padding: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0;
	text-align: left;
	word-break: keep-all;
}

#sidebarDetailPanel .detail-summary-address{
	display: block;
	width: 100%;
	margin: 8px 0 0;
	padding: 0;
	color: #64748b;
	font-size: 13.5px;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: 0;
	text-align: left;
	word-break: keep-all;
}

#sidebarDetailPanel .detail-desc-card,
#sidebarDetailPanel .detail-agent-card,
#sidebarDetailPanel .detail-similar-card,
#sidebarDetailPanel .detail-action-box{
	margin: 0 var(--rj-detail-card-margin-x) var(--rj-detail-card-gap-y);
	border: 0;
	border-radius: 0;
	background: #ffffff;
}

#sidebarDetailPanel .detail-desc-card,
#sidebarDetailPanel .detail-agent-card{
	padding: var(--rj-detail-card-padding-top) 0 var(--rj-detail-card-padding-bottom);
}

#sidebarDetailPanel .detail-similar-card{
	padding: var(--rj-detail-card-padding-top) 0 var(--rj-detail-card-padding-bottom);
}

#sidebarDetailPanel .detail-action-box{
	padding: var(--rj-detail-card-padding-top) var(--rj-detail-card-padding-right) var(--rj-detail-card-padding-bottom) var(--rj-detail-card-padding-left);
}

#sidebarDetailPanel .detail-action-box{
	border: 1px solid #e6edf5;
}

#sidebarDetailPanel .detail-desc-card{
	position: relative;
	margin-top: 0;
}

#sidebarDetailPanel .detail-agent-card{
	display: block;
	visibility: visible;
	opacity: 1;
	position: relative;
	z-index: 1;
	margin-bottom: var(--rj-detail-card-margin-x);
	padding-bottom: var(--rj-detail-card-padding-right);
	box-shadow: none;
}

/* 상세 섹션은 바깥 22px 기준선에 맞추고, 사각 외곽선 대신 8px 회색 구분 띠로 나눕니다. */
#sidebarDetailPanel .detail-info-section:first-child::before{
	content: "";
	position: absolute;
	left: calc(-1 * var(--rj-detail-card-margin-x));
	right: calc(-1 * var(--rj-detail-card-margin-x));
	top: calc(-1 * (var(--rj-detail-card-gap-y) - 5px));
	height: 8px;
	background: #f4f6f8;
	pointer-events: none;
}

/*
 * 기본 정보는 상단 정보 묶음의 첫 섹션이라 위쪽 구분 띠가 필요하다.
 * 매물 정보는 매물 설명 뒤의 하단 묶음 첫 섹션이지만, 앞 매물 설명이 이미 아래쪽 띠를 그리므로
 * 여기서 첫 섹션 띠를 한 번 더 만들지 않아 섹션 구분선을 공통 8px 한 겹으로 유지한다.
 */
#sidebarDetailPanel #detailInfoList > .detail-info-sections > .detail-info-section:first-child::before{
	content: none;
}

#sidebarDetailPanel .detail-info-section::after,
#sidebarDetailPanel .detail-location-card::after,
#sidebarDetailPanel .detail-desc-card::after,
#sidebarDetailPanel .detail-agent-card::after{
	content: "";
	position: absolute;
	left: calc(-1 * var(--rj-detail-card-margin-x));
	right: calc(-1 * var(--rj-detail-card-margin-x));
	bottom: calc(-1 * (var(--rj-detail-card-gap-y) - 5px));
	height: 8px;
	background: #f4f6f8;
	pointer-events: none;
}

#sidebarDetailPanel .detail-similar-card{
	box-shadow: none;
	margin-bottom: var(--rj-detail-card-margin-x);
}

#sidebarDetailPanel .detail-agent-card-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 var(--rj-detail-title-gap-bottom);
}

#sidebarDetailPanel .detail-agent-card-head .detail-agent-section-title{
	margin: 0;
}

#sidebarDetailPanel .detail-agent-more-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	height: 30px;
	padding: 0 10px;
	border: 1px solid #dbe4ee;
	border-radius: 999px;
	background: #ffffff;
	color: #64748b;
	font-size: 12.5px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

#sidebarDetailPanel .detail-agent-more-btn[hidden]{
	display: none;
}

#sidebarDetailPanel .detail-panel-copy{
	margin: 0 var(--rj-detail-card-margin-x);
	/* 구분 띠 아래부터 실제 글자 외곽, 실제 글자 외곽부터 패널 끝까지를
	   각각 25.5px로 맞추되 전체 세로 패딩 합계 40px은 유지합니다. */
	padding: 16px 0 24px;
	color: #9ca3af;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0;
}

#sidebarDetailPanel .detail-similar-lazy-sentinel{
	width: 100%;
	height: 1px;
	pointer-events: none;
}

#sidebarDetailPanel .detail-similar-title{
	margin: 0 0 14px;
	color: #111827;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
}

#sidebarDetailPanel .detail-similar-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	/* 두 열 사이 18px과 행 사이 24px은 유지하고, 좌우는 섹션 공통 22px 기준선에 맞춥니다. */
	gap: 24px var(--rj-detail-card-padding-left);
}

#sidebarDetailPanel .detail-similar-item{
	display: block;
	position: relative;
	min-width: 0;
	border: 0;
	background: transparent;
	color: inherit;
	text-align: left;
}

#sidebarDetailPanel .detail-similar-open{
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	text-align: left;
	cursor: pointer;
}

#sidebarDetailPanel .detail-similar-thumb{
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f1f5f9;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #94a3b8;
	font-size: 12px;
	font-weight: 600;
}

#sidebarDetailPanel .detail-similar-thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

#sidebarDetailPanel .detail-similar-favorite-btn{
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	line-height: 1;
	cursor: pointer;
	box-shadow: none;
}

#sidebarDetailPanel .detail-similar-favorite-btn .favorite-heart-icon{
	display: block;
	width: 26px;
	height: 26px;
	fill: transparent;
	stroke: #ffffff;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	filter: drop-shadow(0 1px 2px rgba(15, 23, 42, 0.42));
}

#sidebarDetailPanel .detail-similar-favorite-btn:hover{
	background: transparent;
}

#sidebarDetailPanel .detail-similar-favorite-btn:hover .favorite-heart-icon{
	stroke-width: 2;
	filter: drop-shadow(0 1px 3px rgba(15, 23, 42, 0.55));
}

#sidebarDetailPanel .detail-similar-favorite-btn.active .favorite-heart-icon{
	fill: #ef4444;
	stroke: #ffffff;
	stroke-width: 1.6;
	filter: drop-shadow(0 1px 3px rgba(15, 23, 42, 0.45));
}

#sidebarDetailPanel .detail-similar-meta{
	margin-top: 8px;
	color: #334155;
	/* 4.938: 유형ㆍ면적ㆍ층과 가격은 같은 14px을 쓰고 굵기만 400/800으로 구분합니다. */
	font-size: 14px;
	font-weight: 400;
	line-height: 1.35;
	letter-spacing: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#sidebarDetailPanel .detail-similar-price{
	margin-top: 3px;
	color: #111827;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#sidebarDetailPanel .detail-action-box{
	display: none;
	visibility: hidden;
	opacity: 0;
}

#sidebarDetailPanel .detail-agent-cta-row{
	display: flex;
	visibility: visible;
	opacity: 1;
	gap: 8px;
	justify-content: flex-start;
	margin-top: 14px;
	width: 100%;
	flex-wrap: nowrap;
}

#sidebarDetailPanel .detail-phone{
	display: none;
}

#sidebarDetailPanel .detail-desc-title,
#sidebarDetailPanel .detail-agent-section-title{
	margin: 0 0 var(--rj-detail-title-gap-bottom);
	padding: var(--rj-detail-title-padding-y) var(--rj-detail-title-padding-x);
	color: #111827;
	font-size: var(--rj-detail-title-font-size);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: var(--rj-detail-title-letter-spacing);
}

#sidebarDetailPanel .detail-desc{
	margin: 0;
	border-bottom: 0;
	border-radius: 10px;
	background: #f7f8fa;
	color: #334155;
	font-size: var(--rj-detail-content-font-size);
	font-weight: 500;
	line-height: 1.72;
	letter-spacing: var(--rj-detail-content-letter-spacing);
	min-height: var(--rj-detail-row-min-height);
	padding: 16px 18px;
	text-decoration: none;
	white-space: pre-line;
}

#sidebarDetailPanel .detail-desc-publication{
	display: none;
	flex-direction: column;
	align-items: flex-end;
	/* 두 안내 줄은 한 묶음으로 읽히도록 참고 화면과 같은 촘촘한 간격을 사용합니다. */
	gap: 4px;
	margin-top: 16px;
	padding-top: 14px;
	border-top: 0.5px solid #eef2f6;
	color: #7b7f87;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: 0;
	text-align: right;
}

#sidebarDetailPanel .detail-desc-publication-meta{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 4px;
}

#sidebarDetailPanel .detail-desc-publication-separator{
	margin: 0 2px;
	color: #a1a6ad;
}

#sidebarDetailPanel .detail-false-listing-report-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	cursor: pointer;
}

#sidebarDetailPanel .detail-false-listing-report-btn:hover{
	color: #111827;
}

#sidebarDetailPanel .detail-agent-top{
	display: flex;
	align-items: flex-start;
	gap: 20px;
}

#sidebarDetailPanel .detail-agent-avatar{
	flex: 0 0 60px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	overflow: hidden;
	background: #f1f5f9;
	color: #64748b;
	font-size: 13px;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

#sidebarDetailPanel .detail-agent-avatar img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

#sidebarDetailPanel .detail-agent-main{
	min-width: 0;
	flex: 1 1 auto;
}

#sidebarDetailPanel .detail-agent-name-row{
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin: 0 0 4px;
}

#sidebarDetailPanel .detail-agent-name{
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
}

#sidebarDetailPanel .detail-agent-title,
#sidebarDetailPanel .detail-agent-office,
#sidebarDetailPanel .detail-agent-phone-inline,
#sidebarDetailPanel .detail-agent-address,
#sidebarDetailPanel .detail-agent-regno{
	color: #64748b;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0;
}

#sidebarDetailPanel .detail-actions{
	display: none;
	visibility: hidden;
	opacity: 0;
}

#sidebarDetailPanel .detail-agent-cta-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	flex: 0 0 auto;
	min-width: 0;
	height: 34px;
	padding: 0 11px;
	border: 1px solid #bfd4ff;
	border-radius: 999px;
	background: #ffffff;
	color: #2563eb;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 0;
	white-space: nowrap;
	box-shadow: none;
	transition: none;
	transform: none;
}

#sidebarDetailPanel .detail-agent-cta-btn.kakao{
	background: #FEE500;
	color: #191919;
	border-color: #FEE500;
}

#sidebarDetailPanel .detail-agent-cta-btn.phone{
	background: #ffffff;
	color: #111827;
	border-color: #e5e7eb;
}

#sidebarDetailPanel .detail-agent-cta-btn i{
	color: #2563eb;
	font-size: 13px;
	line-height: 1;
}

#sidebarDetailPanel .detail-agent-cta-btn.kakao i{
	color: #191919;
}

#sidebarDetailPanel .detail-agent-cta-btn.phone i{
	color: #111827;
}

#sidebarDetailPanel .detail-agent-cta-btn:hover,
#sidebarDetailPanel .detail-agent-cta-btn:focus,
#sidebarDetailPanel .detail-agent-cta-btn:focus-visible,
#sidebarDetailPanel .detail-agent-cta-btn:active{
	background: #ffffff;
	color: #2563eb;
	box-shadow: none;
	transform: none;
}

#sidebarDetailPanel .detail-agent-cta-btn.kakao:hover,
#sidebarDetailPanel .detail-agent-cta-btn.kakao:focus,
#sidebarDetailPanel .detail-agent-cta-btn.kakao:focus-visible,
#sidebarDetailPanel .detail-agent-cta-btn.kakao:active{
	background: #FEE500;
	color: #191919;
	transform: none;
}

#sidebarDetailPanel .detail-agent-cta-btn.phone:hover,
#sidebarDetailPanel .detail-agent-cta-btn.phone:focus,
#sidebarDetailPanel .detail-agent-cta-btn.phone:focus-visible,
#sidebarDetailPanel .detail-agent-cta-btn.phone:active{
	background: #ffffff;
	color: #111827;
	transform: none;
}

#sidebarDetailPanel .detail-action-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	flex: 1 1 0;
	height: 42px;
	border-radius: 0;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
}

@media (max-width: 900px)
{
	.sidebar-detail-panel{
		left: 12px;
		right: 12px;
		width: auto;
		max-width: none;
	}
}

/* PATCH 2.551: 왼쪽/오른쪽 매물 유형 뱃지 곡률 통일 */
.property-list .card-badge,
.property-list .card-deal{
	border-radius: 999px;
}

/* PATCH 3.928: 전속/공동 배지 글자 크기를 거래유형(매매/전세) 배지와 고정 통일 */
.card-badge.deal,
.detail-summary-deal-badge,
.broker-listing-flag-badge{
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
}

/* PATCH 2.551 FINAL: 내 정보 화면을 로그인 페이지 박스 디자인으로 최종 고정 */
































@media (max-width: 720px)
{
	

	

	

	

	
}

/* PATCH 2.551: 프로필 세트는 현재 body 상태의 단일 패널만 표시 */




/* PATCH 2.551: 이용권 현재 플랜 파란선은 실제 1px 선만 남긴다 */
.payment-page-panel .payment-plan-card,
.payment-page-panel .payment-current-card,
.payment-page-panel .payment-plan-btn,
.payment-page-panel .payment-select-btn{
	box-shadow: none;
	outline: 0;
}

.payment-page-panel .payment-plan-card:has(.payment-plan-btn.is-current),
.payment-page-panel .payment-plan-card.is-current,
.payment-page-panel .payment-plan-card.is-selected,
.payment-page-panel .payment-current-card{
	border: 1px solid #2563eb;
	outline: 0;
	box-shadow: none;
}

/* PATCH 2.551: 내정보 4개 화면은 독립 페이지 패널 하나의 폭 계산법만 사용 */














@media (max-width: 720px)
{
	

	
}

/* PATCH 2.551 FINAL: 내 정보 세트는 기존 모달을 재활용하지 않는 독립 페이지 4개만 사용 */






















































@media (max-width: 720px)
{
	

	
}

.sub-topbar .extra-filter-dropdown,
.sub-topbar .deal-filter-dropdown,
.sub-topbar .type-filter-dropdown,
.sub-topbar .deal-method-filter-dropdown,
.sub-address-search{
	margin-left: 0;
	position: relative;
	z-index: 330;
}

.sub-topbar .extra-filter-menu,
.sub-topbar .type-filter-menu,
.sub-topbar .deal-filter-menu,
.sub-topbar .deal-method-filter-menu{
	z-index: 340;
}

.sub-address-search-form{
	height: 38px;
	border-radius: 999px;
	border: 0.8px solid #dbe4ee;
	background: #fff;
	box-shadow: none;
	overflow: hidden;
}

.sub-address-search-form:focus-within{
	border-color: #bfdbfe;
	background: #f8fbff;
	box-shadow: none;
}

.sub-address-search-icon{
	width: 38px;
	height: 38px;
	color: #6b7785;
	font-weight: 500;
}

.sub-address-search-input{
	font-family: var(--sub-filter-font-family);
	font-size: var(--sub-filter-font-size);
	font-weight: var(--sub-filter-font-weight);
	letter-spacing: var(--sub-filter-letter-spacing);
	color: var(--sub-filter-color);
}

.sub-address-search-input::placeholder{
	font-weight: 500;
	color: #9ca3af;
}

.sub-topbar .extra-filter-trigger,
.sub-topbar .type-filter-trigger,
.sub-topbar .deal-filter-trigger,
.sub-topbar .deal-method-filter-trigger{
	font-family: var(--subbar-menu-font-family);
	font-size: var(--subbar-menu-font-size);
	font-weight: var(--subbar-menu-font-weight);
	letter-spacing: var(--subbar-menu-letter-spacing);
	color: var(--subbar-menu-color);
}

.sub-topbar .extra-filter-option,
.sub-topbar .type-filter-option,
.sub-topbar .deal-filter-option,
.sub-topbar .deal-method-filter-option,
.sub-topbar .extra-filter-reset-btn{
	font-family: var(--subbar-item-font-family);
	font-size: var(--subbar-item-font-size);
	font-weight: var(--subbar-item-font-weight);
	letter-spacing: var(--subbar-item-letter-spacing);
	color: var(--subbar-item-color);
}

/* ===== PATCH: 상단바 텍스트 디자인 단일 관리 ===== */
:root{
	--topbar-text-font-family: var(--font-ui);
	--topbar-text-font-size: 16.5px;
	--topbar-text-font-weight: 600;
	--topbar-text-active-font-weight: 700;
	--topbar-text-color: #111827;
	--topbar-text-hover-color: #2563eb;
	--topbar-text-letter-spacing: -0.2px;
	--topbar-menu-gap: 40px;
	--topbar-profile-size: 28px;
	--topbar-profile-gap: 10px;
	--nav-font-family: var(--topbar-text-font-family);
	--nav-font-size: var(--topbar-text-font-size);
	--nav-font-weight: var(--topbar-text-font-weight);
	--nav-color: var(--topbar-text-color);
	--nav-active-color: var(--topbar-text-hover-color);
	--nav-new-color: #ff2f7a;
}

/* ===== PATCH: 하단바 텍스트 디자인 단일 관리 ===== */
:root{
	--subbar-menu-gap: 14px;
	--subbar-menu-font-family: var(--topbar-text-font-family, var(--font-ui));
	--subbar-menu-font-size: 14px;
		--subbar-menu-font-weight: 600;
	--subbar-menu-letter-spacing: -0.1px;
	--subbar-menu-color: #111827;

	--subbar-item-font-family: var(--topbar-text-font-family, var(--font-ui));
	--subbar-item-font-size: 14px;
	--subbar-item-font-weight: 500;
	--subbar-item-letter-spacing: -0.1px;
	--subbar-item-color: #334155;

	/* 기존 호환 변수 */
	--sub-filter-gap: var(--subbar-menu-gap);
	--sub-filter-font-family: var(--subbar-menu-font-family);
	--sub-filter-font-size: var(--subbar-menu-font-size);
	--sub-filter-font-weight: var(--subbar-menu-font-weight);
	--sub-filter-letter-spacing: var(--subbar-menu-letter-spacing);
	--sub-filter-color: var(--subbar-menu-color);
}

.global-topbar-menu{
	position: absolute;
	left: 50%;
	top: 50%;
	right: auto;
	transform: translate(-50%, -50%);
	width: auto;
	min-width: 0;
	max-width: calc(100vw - 520px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--topbar-menu-gap);
	white-space: nowrap;
	overflow: visible;
	z-index: 4;
	padding: 0;
	margin: 0;
}

.topbar-menu-item,
.global-auth-trigger,
.global-auth-trigger .account-email-text{
	font-family: var(--topbar-text-font-family);
	font-size: var(--topbar-text-font-size);
	font-weight: var(--topbar-text-font-weight);
	color: var(--topbar-text-color);
	letter-spacing: var(--topbar-text-letter-spacing);
	line-height: 1;
	white-space: nowrap;
}

.topbar-menu-item{
	border: 0;
	background: transparent;
	padding: 0;
	margin: 0;
	cursor: pointer;
}

.topbar-menu-item:hover,
.global-auth-trigger:hover,
.global-auth-trigger:hover .account-email-text{
	color: var(--topbar-text-hover-color);
}



.global-auth-trigger.logged-in{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--topbar-profile-gap);
}

.topbar-profile-image{
	width: var(--topbar-profile-size);
	height: var(--topbar-profile-size);
	min-width: var(--topbar-profile-size);
	border-radius: 50%;
	object-fit: cover;
	display: inline-block;
	background: #eef3f7;
	border: 1px solid #e5e7eb;
	margin: 0;
	vertical-align: middle;
	flex: 0 0 auto;
}

/* ===== PATCH: 우측 상단 계정 메뉴 hover 열림 ===== */
/* ===== PATCH: 우측 상단 계정 메뉴 hover 표시 전용 ===== */
.global-auth-trigger:hover,
.global-auth-trigger.account-open{
	color: #111827;
}

.global-auth-trigger .auth-arrow{
	transform: none;
}

/* ===== PATCH: 상단바 기본 활성 메뉴 + hover 색 고정 ===== */
.topbar-menu-item.active{
	color: var(--nav-active-color);
}

.global-auth-trigger:hover{
	color: #111827;
}

/* ===== PATCH: 상단 메뉴 hover 색상 차단 ===== */
.topbar-menu-item:hover{
	color: inherit;
	background: transparent;
	border-color: transparent;
}

/* ===== PATCH: 우측 상단 이름 hover 색상 고정 ===== */
.global-auth-trigger,
.global-auth-trigger:hover,
.global-auth-trigger.account-open,
.global-auth-trigger.account-open:hover{
	color: #111827;
	background: transparent;
}

/* ===== PATCH: 상단 메뉴 active 색상만 관리 ===== */
.global-topbar .topbar-menu-item{
	color: var(--nav-color);
}

.global-topbar .topbar-menu-item:hover{
	color: var(--nav-color);
	background: transparent;
	border-color: transparent;
}

.global-topbar .topbar-menu-item.active,
.global-topbar .topbar-menu-item.active:hover{
	color: var(--nav-active-color);
	font-weight: var(--topbar-text-active-font-weight);
}

/* ===== PATCH: 우측 상단 이름 hover/active/open 색상 고정 ===== */
.global-topbar-right .global-auth-trigger,
.global-topbar-right .global-auth-trigger:hover,
.global-topbar-right .global-auth-trigger:focus,
.global-topbar-right .global-auth-trigger:focus-visible,
.global-topbar-right .global-auth-trigger:active,
.global-topbar-right .global-auth-trigger.account-open,
.global-topbar-right .global-auth-trigger.account-open:hover,
.global-topbar-right:hover .global-auth-trigger,
.global-topbar-right:focus-within .global-auth-trigger{
	color: #111827;
	background: transparent;
	outline: none;
	box-shadow: none;
}

.global-topbar-right .global-auth-trigger *,
.global-topbar-right .global-auth-trigger:hover *,
.global-topbar-right:hover .global-auth-trigger *{
	color: inherit;
}

/* PATCH 2.551: 내 정보 페이지에서는 상단 메뉴 대신 우측 계정명이 활성 표시 */
body.profile-page-open .global-topbar .topbar-menu-item.active,
body.profile-page-open .global-topbar .topbar-menu-item.active:hover{
	color: var(--nav-color);
}

body.profile-page-open .global-topbar-right .global-auth-trigger.profile-page-active,
body.profile-page-open .global-topbar-right .global-auth-trigger.profile-page-active:hover,
body.profile-page-open .global-topbar-right .global-auth-trigger.profile-page-active *,
body.profile-page-open .global-topbar-right .global-auth-trigger.profile-page-active:hover *{
	color: var(--nav-active-color);
}

/* ===== PATCH: 무료 뱃지 - 매물등록 글자 위치 완전 분리 ===== */
.topbar-menu-free-wrap{
	position: relative;
	display: inline-flex;
	align-items: center;
	margin-right: 36px; /* ← 여기 숫자로 다음 메뉴와 간격 조정 */
}

.topbar-menu-free-wrap .badge-free{
	position: absolute;
	left: 100%;
	top: 50%;
	transform: translate(4px, -50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 18px;
	padding: 0 6px;
	margin: 0;
	background: #2563EB;
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	line-height: 18px;
	border-radius: 0;
	pointer-events: none;
	white-space: nowrap;
}

/* ===== PATCH: 내 페이지 정보 / 개인정보 수정 화면 단일 변수 관리 ===== */
:root{
	--profile-page-bg: #f8fafc;
	--profile-page-card-width: clamp(320px, 90vw, 600px);
	--profile-page-card-padding: 34px 40px 40px;
	--profile-page-card-bg: #ffffff;
	--profile-page-card-border: 1px solid #e5e7eb;
	--profile-page-card-radius: 0;
	--profile-page-card-shadow: none;

	--profile-page-title-font-family: var(--topbar-text-font-family, var(--font-ui));
	--profile-page-title-font-size: 22px;
	--profile-page-title-font-weight: 800;
	--profile-page-title-letter-spacing: -0.18px;
	--profile-page-title-color: #111827;

	--profile-page-text-font-family: var(--topbar-text-font-family, var(--font-ui));
	--profile-page-text-font-size: var(--topbar-text-font-size, var(--auth-font-size));
	--profile-page-text-font-weight: var(--topbar-text-font-weight, 700);
	--profile-page-text-letter-spacing: var(--topbar-text-letter-spacing, -0.18px);
	--profile-page-label-color: #334155;
	--profile-page-value-color: #111827;

	--profile-page-line-color: #e5e7eb;
	--profile-page-row-height: 48px;
	--profile-page-row-gap: 20px;

	--profile-page-input-height: 54px;
	--profile-page-input-border: 1px solid #d1d5db;
	--profile-page-input-radius: 0;
	--profile-page-input-bg: #ffffff;
	--profile-page-input-color: #111827;

	--profile-page-button-height: 54px;
	--profile-page-button-radius: 0;
	--profile-page-button-bg: #1B6FA4;
	--profile-page-button-color: #ffffff;
	--profile-page-button-shadow: none;

	--profile-page-divider-width: 48px;
	--profile-page-divider-height: 4px;
	--profile-page-divider-radius: 0;
	--profile-page-divider-bg: #1B6FA4;

	--profile-page-photo-size: 92px;
	--profile-page-photo-radius: 50%;
	--profile-page-photo-border: 0;
	--profile-page-photo-shadow: none;
	--profile-page-photo-bg: transparent;
}

/* 내 페이지/개인정보 페이지 전체 */
.auth-modal.profile-page-mode{
	align-items: center;
	justify-content: center;
	padding: 0;
	background: var(--profile-page-bg);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

/* 내 페이지/개인정보 수정 공통 모달 외곽 */
.auth-modal.profile-page-mode .auth-modal-dialog{
	width: 100%;
	max-width: none;
	height: 100vh;
	max-height: 100vh;
	padding: 48px;
	background: transparent;
	color: var(--profile-page-value-color);
	border: 0;
	border-radius: 0;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	overflow-y: auto;
}

/* 내 정보 + 개인정보 수정 카드만 한 곳에서 관리 */
.auth-modal.profile-page-mode .auth-myinfo-screen,
.auth-modal.profile-page-mode .auth-profile-setup-screen{
	width: var(--profile-page-card-width);
	margin: 0 auto;
	padding: var(--profile-page-card-padding);
	background: var(--profile-page-card-bg);
	border: var(--profile-page-card-border);
	border-radius: var(--profile-page-card-radius);
	box-shadow: var(--profile-page-card-shadow);
}

/* 제목/구분선 */
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-title,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title{
	margin: 0 0 14px;
	font-family: var(--profile-page-title-font-family);
	font-size: var(--profile-page-title-font-size);
	font-weight: var(--profile-page-title-font-weight);
	letter-spacing: var(--profile-page-title-letter-spacing);
	line-height: 1.25;
	color: var(--profile-page-title-color);
	white-space: normal;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-divider,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-divider{
	width: var(--profile-page-divider-width);
	height: var(--profile-page-divider-height);
	margin: 0 0 28px;
	border-radius: var(--profile-page-divider-radius);
	background: var(--profile-page-divider-bg);
	box-shadow: none;
}

/* 안내문 / 라벨 / 값 */
.auth-modal.profile-page-mode .auth-profile-guide,
.auth-modal.profile-page-mode .auth-modal-field-label,
.auth-modal.profile-page-mode .auth-profile-consent,
.auth-modal.profile-page-mode .auth-profile-consent strong,
.auth-modal.profile-page-mode .auth-myinfo-display-label,
.auth-modal.profile-page-mode .auth-myinfo-display-value{
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-text-font-size);
	font-weight: var(--profile-page-text-font-weight);
	letter-spacing: var(--profile-page-text-letter-spacing);
	line-height: 1.35;
}

.auth-modal.profile-page-mode .auth-profile-guide,
.auth-modal.profile-page-mode .auth-modal-field-label,
.auth-modal.profile-page-mode .auth-profile-consent,
.auth-modal.profile-page-mode .auth-profile-consent strong,
.auth-modal.profile-page-mode .auth-myinfo-display-label{
	color: var(--profile-page-label-color);
}



/* 내 정보 항목: 아이콘 제거 + 행 모양 */
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-form{
	gap: 0;
}

.auth-modal.profile-page-mode .auth-myinfo-display-row{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: var(--profile-page-row-height);
	padding: 0;
	margin: 0;
	border-bottom: 1px solid var(--profile-page-line-color);
	gap: var(--profile-page-row-gap);
	background: transparent;
	box-shadow: none;
}

.auth-modal.profile-page-mode .auth-myinfo-display-row::before,
.auth-modal.profile-page-mode .auth-myinfo-display-row::after{
	display: none;
	content: none;
}

.auth-modal.profile-page-mode .auth-myinfo-display-label{
	flex: 0 0 auto;
	white-space: nowrap;
}

.auth-modal.profile-page-mode .auth-myinfo-display-value{
	flex: 1 1 auto;
	min-width: 0;
	text-align: right;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* 프로필 사진: 겉 네모 박스 제거 + 이미지만 원형 */
.auth-modal.profile-page-mode .auth-myinfo-photo-box{
	width: var(--profile-page-photo-size);
	height: var(--profile-page-photo-size);
	margin: 0 auto 30px;
	padding: 0;
	background: var(--profile-page-photo-bg);
	border: var(--profile-page-photo-border);
	border-radius: var(--profile-page-photo-radius);
	box-shadow: var(--profile-page-photo-shadow);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* 개인정보 수정 입력창 */
.auth-modal.profile-page-mode .auth-modal-input{
	height: var(--profile-page-input-height);
	border: var(--profile-page-input-border);
	border-radius: var(--profile-page-input-radius);
	background: var(--profile-page-input-bg);
	color: var(--profile-page-input-color);
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-text-font-size);
	font-weight: var(--profile-page-text-font-weight);
	letter-spacing: var(--profile-page-text-letter-spacing);
	box-shadow: none;
}

.auth-modal.profile-page-mode .auth-modal-input::placeholder{
	color: #9ca3af;
}

/* 버튼 */
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit,
.auth-modal.profile-page-mode #authBrokerOfficeInfoScreen #brokerOfficeInfoEditBtn,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-profile-photo-select-btn{
	height: var(--profile-page-button-height);
	border-radius: var(--profile-page-button-radius);
	background: var(--profile-page-button-bg);
	color: var(--profile-page-button-color);
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-text-font-size);
	font-weight: var(--profile-page-text-font-weight);
	letter-spacing: var(--profile-page-text-letter-spacing);
	box-shadow: var(--profile-page-button-shadow);
}

.auth-modal.profile-page-mode .auth-modal-close{
	color: var(--profile-page-value-color);
}

/* 승인 대기중 버튼 스타일 */


/* ===== PATCH: 개인정보/내정보 최종 패치 ===== */
:root{
	--profile-page-card-radius: 0;
	--profile-page-input-radius: 0;
	--profile-page-button-radius: 0;
	--profile-page-button-height: 54px;
	--profile-page-pending-button-bg: #ffffff;
	--profile-page-pending-button-color: #1B6FA4;
	--profile-page-pending-button-border: 1px solid #1B6FA4;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-select-btn{
	border-radius: 0;
	box-shadow: none;
}

.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn.is-pending{
	background: var(--profile-page-pending-button-bg);
	color: var(--profile-page-pending-button-color);
	border: var(--profile-page-pending-button-border);
	box-shadow: none;
}

.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn.is-pending:hover,
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn.is-pending:focus,
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn.is-pending:active{
	background: var(--profile-page-pending-button-bg);
	color: var(--profile-page-pending-button-color);
	border: var(--profile-page-pending-button-border);
	box-shadow: none;
}

/* ===== PATCH: 드롭다운 내정보 구분선 유지 + 중개사 메뉴만 조건부 표시 ===== */
#globalAccountDropdown #brokerOfficeMenuWrapper{
	display: none;
	margin: 0;
	padding: 0;
	line-height: 0;
}

#globalAccountDropdown #brokerOfficeMenuWrapper .global-account-menu-item{
	height: 56px;
	min-height: 56px;
	padding: 0 26px;
	line-height: 1.6;
}

/* ===== PATCH: 내 정보 / 내 정보 설정 하단 버튼 2개 구성 ===== */
.auth-profile-action-row{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: 24px;
}

.auth-profile-action-row .auth-modal-submit,
.auth-profile-action-row .auth-modal-secondary{
	width: 100%;
	height: var(--profile-common-button-height, 54px);
	margin-top: 0;
	border-radius: 0;
	box-shadow: none;
	font-family: var(--profile-common-button-font-family, var(--font-ui));
	font-size: var(--profile-common-button-font-size, 17px);
	font-weight: var(--profile-common-button-font-weight, 700);
	letter-spacing: var(--profile-common-button-letter-spacing, -0.18px);
}

.auth-profile-action-row .auth-modal-secondary{
	border: 1px solid #1B6FA4;
	background: #ffffff;
	color: #1B6FA4;
	cursor: pointer;
}

/* ===== PATCH: 내 정보 / 내 정보 설정 하단 버튼 위치 정렬 ===== */
.auth-modal.profile-page-mode .auth-profile-action-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px;
	width: 100%;
	margin-top: 32px;
	align-items: stretch;
}

.auth-modal.profile-page-mode .auth-profile-action-row > button{
	width: 100%;
	min-width: 0;
	height: 50px;
	margin: 0;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border-radius: 0;
	box-shadow: none;
	line-height: 1;
}

.auth-modal.profile-page-mode .auth-profile-action-row .auth-modal-submit,
.auth-modal.profile-page-mode .auth-profile-action-row .auth-modal-secondary{
	margin-top: 0;
}

/* ===== PATCH: 내 정보 / 내 정보 설정 / 중개사 가입 신청 버튼 단일 관리 ===== */
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-action-row,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px;
	width: 100%;
	margin-top: 32px;
	align-items: stretch;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-secondary,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-secondary{
	background: var(--profile-page-secondary-button-bg);
	color: var(--profile-page-secondary-button-color);
	border: var(--profile-page-secondary-button-border);
}

.property-price-card{
	min-height: var(--property-price-card-min-height);
}

.property-brokerage-card{
	min-height: 0;
	padding-top: 28px;
	padding-bottom: 28px;
}

.property-brokerage-checks{
	display: grid;
	grid-template-columns: calc(var(--property-register-info-checkbox-size) + var(--property-register-option-gap) + 2em + var(--property-register-deal-option-gap) - 10px) auto;
	column-gap: 0;
	row-gap: 12px;
}

.property-form-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	margin-bottom: 28px;
}

.property-form-row:last-child{
	margin-bottom: 0;
}

.property-required{
	color: #ef4444;
	margin-left: 2px;
}

.property-form-control{
	position: relative;
	min-width: 0;
}

.property-select-wrap{
	position: relative;
}

.property-select-wrap::after{
	content: "⌄";
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 24px;
	font-weight: 500;
	color: #475569;
	pointer-events: none;
	line-height: 1;
}

.property-area-pair{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
}

.property-unit-input{
	position: relative;
}

.property-money-inline{
	position: relative;
	display: block;
	width: 100%;
	min-width: 0;
}

.property-money-inline .property-unit-input{
	flex: 1 1 auto;
	min-width: 0;
}

.property-money-input-wrap{
	position: relative;
	width: 100%;
	min-width: 0;
}

.property-unit-label{
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	color: #475569;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	pointer-events: none;
}

.property-area-eq{
	text-align: center;
	color: #6b7280;
	font-size: 22px;
	font-weight: 600;
}

.property-price-dynamic{
	display: flex;
	flex-direction: column;
	gap: 30px;
	margin-top: 22px;
}

.property-price-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

.property-price-fields{
	display: grid;
	gap: 14px 18px;
}

.property-price-fields.two{
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.property-price-field-title{
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: 700;
	color: #111827;
	letter-spacing: -0.18px;
}

.property-price-field{
	position: relative;
	display: block;
	min-width: 0;
}

.property-money-korean{
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.12px;
	white-space: nowrap;
	pointer-events: none;
	z-index: 2;
	max-width: 170px;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: right;
}

.property-money-input-wrap .property-unit-label,
.property-money-inline .property-unit-label{
	left: var(--money-unit-left, 74px);
	right: auto;
	z-index: 2;
}

.property-money-korean:empty{
	display: none;
}

@media (max-width: 720px)
{
	.property-form-row,
.property-price-row{
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.property-price-guide{
		margin-left: 0;
	}
	.property-area-pair,
.property-price-fields.two{
		grid-template-columns: 1fr;
	}
	.property-area-eq{
		display: none;
	}
	.property-deal-checks{
		justify-content: flex-start;
	}
}

.property-info-card.is-hidden{
	display: none;
}

.property-info-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	margin-bottom: 28px;
}

/* PATCH 2.259: 총점포수/총세대수 행은 값이 있을 때만 클래스 하나로 노출 */
.property-store-count-row,
.property-household-count-row{
	display: none;
}

.property-store-count-row.is-visible,
.property-household-count-row.is-visible{
	display: grid;
}

/* PATCH 2.259: 총점포수/총세대수 입력칸은 내부 라벨이 없으므로 56px 라벨 칸을 제거 */
.property-store-count-row .property-inline-unit,
.property-household-count-row .property-inline-unit{
	grid-template-columns: minmax(0, 1fr);
}

.property-info-row:last-child{
	margin-bottom: 0;
}

.property-info-field{
	min-width: 0;
}

.property-inline-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 32px;
	align-items: center;
}

.property-inline-unit{
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
}

.property-check-row,
.property-radio-row{
	display: flex;
	align-items: center;
	gap: 34px;
	flex-wrap: wrap;
}

.property-parking-row{
	align-items: start;
}

/* PATCH 2.295: 방/욕실 해당없음 체크박스를 입력칸 아래에 배치 */
.property-room-field{
	display: grid;
	gap: 12px;
}

.property-room-na-option{
	margin-top: 0;
	cursor: default;
	user-select: text;
}

/* PATCH 2.302: 해당없음은 체크박스 네모에만 클릭 가능 커서를 표시 */
.property-room-na-option input{
	cursor: pointer;
}

.property-room-na-option span{
	cursor: default;
}

/* PATCH 2.297: 방/욕실 라벨을 층 정보처럼 첫 입력 줄 기준으로 정렬 */
.property-info-row.property-room-row{
	align-items: baseline;
}

.property-info-row.property-room-row > .property-form-label{
	display: flex;
	align-items: baseline;
	height: auto;
	min-height: 0;
	padding-top: 0;
	line-height: 1.2;
}

.property-room-row .property-inline-label{
	display: inline-flex;
	align-items: baseline;
	line-height: 1.2;
}

/* PATCH 2.210: 주차 라벨 높이를 가능/불가능 라디오 줄과 맞춤 */
.property-parking-row > .property-form-label,
.property-parking-row > .property-info-field > .property-radio-row{
	display: flex;
	align-items: center;
	min-height: 24px;
	line-height: 1.3;
}

.property-info-sub-options{
	margin-top: 12px;
}

.property-floor-level-options,
.property-building-whole-option,
.property-parking-detail,
.property-heating-row{
	display: none;
}

.property-info-card[data-info-mode="residential"] .property-floor-level-options,
.property-info-card[data-info-mode="residential"] .property-building-whole-option,
.property-info-card[data-info-mode="residential"] .property-loan-row,
.property-info-card[data-info-mode="residential"] .property-pet-row,
.property-info-card[data-info-mode="residential"] .property-parking-row,
.property-info-card[data-info-mode="residential"] .property-heating-row{
	display: grid;
}

.property-info-card[data-info-mode="commercial"] .property-basement-options,
.property-info-card[data-info-mode="commercial"] .property-parking-row{
	display: grid;
}

.property-info-card[data-info-mode="building"] .property-building-whole-option,
.property-info-card[data-info-mode="building"] .property-parking-row{
	display: grid;
}

.property-info-card[data-info-mode="commercial"] .property-loan-row,
.property-info-card[data-info-mode="commercial"] .property-pet-row,
.property-info-card[data-info-mode="commercial"] .property-heating-row,
.property-info-card[data-info-mode="building"] .property-loan-row,
.property-info-card[data-info-mode="building"] .property-pet-row,
.property-info-card[data-info-mode="building"] .property-heating-row{
	display: none;
}

.property-info-card[data-info-mode="commercial"] .property-floor-level-options,
.property-info-card[data-info-mode="commercial"] .property-building-whole-option,
.property-info-card[data-info-mode="building"] .property-floor-level-options{
	display: none;
}

.property-parking-detail.open{
	display: grid;
	margin-top: 12px;
}

.property-heating-fuel-wrap{
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	margin-top: 12px;
}

.property-land-select-row{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px 32px;
	align-items: center;
}

.property-land-select-field{
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
}

.property-land-info-card{
	min-height: 0;
}

.property-land-info-card.is-hidden{
	display: none;
}

.property-land-extra-checks{
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	column-gap: 0;
	row-gap: 12px;
	align-items: center;
	width: 100%;
	min-height: var(--property-register-field-height);
}

.property-land-extra-checks .property-check-option{
	justify-self: start;
}

@media (max-width: 900px)
{
	.property-inline-grid,
.property-land-select-row{
		grid-template-columns: 1fr;
	}

	.property-land-select-field{
		grid-template-columns: 84px minmax(0, 1fr);
	}
}

/* ===== PATCH: 매물 정보 층 옵션 1줄 정렬 / 건물 전체 표시 전환 ===== */
.property-floor-display-options{
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
}

.property-floor-level-inline{
	display: inline-flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
}

.property-building-whole-inline{
	display: none;
}

.property-info-card[data-info-mode="commercial"] .property-floor-level-inline,
.property-info-card[data-info-mode="commercial"] .property-building-whole-inline{
	display: none;
}

.property-info-card[data-info-floor-mode="whole"] .property-floor-level-inline{
	display: none;
}

.property-info-card[data-info-floor-mode="whole"] .property-building-whole-inline{
	display: inline-flex;
}

/* ===== PATCH: 매물 정보 라디오/체크 정렬 보정 ===== */
.property-info-row.property-heating-row{
	align-items: start;
}

.property-floor-display-options{
	align-items: center;
}

/* ===== PATCH: 층 저/중/고 라디오 비활성 상태 + 매매 시 반려동물 숨김 ===== */
.property-floor-level-inline input[name="propertyFloorLevel"]:disabled{
	opacity: 0.42;
	cursor: not-allowed;
}

.property-floor-level-inline:has(input[name="propertyFloorLevel"]:disabled) .property-radio-option{
	cursor: not-allowed;
	opacity: 0.62;
}

.property-info-card.is-sale-deal .property-pet-row{
	display: none;
}

.property-info-card[data-info-mode="residential"] .property-pet-row{
	display: none;
}

.property-info-card[data-info-mode="residential"].has-pet-rental-deal .property-pet-row{
	display: grid;
}

/* ===== PATCH: 사용승인일 하이픈 표시 + 달력 버튼 ===== */
.property-date-input-wrap{
	position: relative;
	width: 100%;
	display: flex;
	align-items: center;
}

.property-date-text-input{
	padding-right: 46px;
}

.property-date-picker-btn{
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 42px;
	height: 100%;
	border: 0;
	border-left: 1px solid #e5e7eb;
	background: transparent;
	color: #475569;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 16px;
	z-index: 2;
}

.property-date-picker-btn:hover{
	color: #2563eb;
	background: #f8fafc;
}

.property-date-native-picker{
	position: absolute;
	right: 0;
	top: 0;
	width: 42px;
	height: 100%;
	opacity: 0;
	pointer-events: none;
	z-index: 1;
}



/* ===== 권리금 카드: 단일 레이아웃 규칙 ===== */
.property-premium-card{
	display: none;
	min-height: 0;
}

.property-premium-card.is-visible,
.property-info-card[data-info-mode="commercial"] + .property-premium-card{
	display: block;
}

.property-premium-grid{
	display: grid;
	grid-template-columns: var(--property-premium-main-label-width) minmax(0, 1fr);
	gap: var(--property-premium-row-gap) var(--property-premium-column-gap);
	align-items: start;
}

.property-premium-main-label{
	grid-column: 1;
	grid-row: 1 / span 2;
}

.property-premium-input-row{
	grid-column: 2;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	column-gap: var(--property-premium-field-gap);
	align-items: start;
}

.property-premium-field{
	display: block;
	min-width: 0;
}

.property-premium-field .property-form-label{
	display: block;
	margin: 0 0 var(--property-premium-label-input-gap);
	font-size: 16px;
	font-weight: 700;
	color: #111827;
	line-height: 1.3;
	letter-spacing: -0.18px;
}

.property-premium-amount-field .property-money-inline,
.property-premium-desc-field .property-register-input{
	width: 100%;
	min-width: 0;
}

.property-premium-amount-field .property-register-input,
.property-premium-desc-field .property-register-input{
	height: var(--property-premium-input-height);
	min-height: var(--property-premium-input-height);
}

.property-label-optional{
	color: #94a3b8;
	font-weight: 500;
}

.property-premium-options{
	grid-column: 2;
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: var(--property-premium-option-gap);
	margin-left: 0;
	margin-top: 0;
	padding-bottom: 0;
	white-space: nowrap;
}

.property-premium-options .property-check-option{
	flex: 0 0 auto;
}

@media (max-width: 720px)
{
	.property-premium-grid{
		grid-template-columns: 1fr;
	}

	.property-premium-main-label,
.property-premium-input-row,
.property-premium-options{
		grid-column: 1;
		grid-row: auto;
	}

	.property-premium-input-row{
		grid-template-columns: 1fr;
		row-gap: 12px;
	}

	.property-premium-field{
		display: block;
	}

	.property-premium-field .property-form-label{
		display: block;
		margin-bottom: 12px;
	}

	.property-premium-options{
		margin-left: 0;
		flex-wrap: wrap;
		gap: 24px;
	}
}

.property-info-field,
.property-inline-grid,
.property-inline-unit,
.property-check-row,
.property-radio-row{
	max-width: 100%;
	min-width: 0;
}

/* ===== PATCH: 매물 종류별 동/호수 입력 ===== */
.property-dongho-row{
	display: none;
}

.property-dongho-row.is-visible{
	display: grid;
}

.property-dongho-field{
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	min-width: 0;
}

.property-dongho-input-unit{
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	gap: 10px;
	align-items: center;
	width: 180px;
	min-width: 0;
}

.property-dongho-note{
	color: var(--property-register-right-text-color);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -0.12px;
	white-space: nowrap;
}

@media (max-width: 720px)
{
	

	

	.property-dongho-field{
		align-items: flex-start;
		flex-direction: column;
	}

	.property-dongho-input-unit{
		width: 100%;
	}

	.property-dongho-note{
		white-space: normal;
	}
}

/* ===== PATCH: 층 정보 윗줄 수평 정렬 ===== */


.property-floor-row .property-info-field,
.property-floor-row .property-inline-grid{
	align-items: flex-start;
}

.property-floor-row .property-inline-unit{
	align-items: center;
}

.property-facility-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 20px;
}

.property-facility-row:last-child{
	margin-bottom: 0;
}

.property-facility-options{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px 28px;
	align-items: center;
	min-width: 0;
	max-width: 100%;
}

@media (max-width: 720px)
{
	.property-facility-row{
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.property-facility-options{
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px 22px;
	}
}

/* ===== PATCH: 시설정보 주거형 전용 표시 ===== */
.property-facility-card.is-hidden{
	display: none;
}

.maintenance-form-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 28px;
}

.maintenance-form-row.maintenance-input-row{
	align-items: center;
}

.maintenance-form-row:has(#maintenanceUnder100kChk){
	margin-top: -16px;
	margin-bottom: var(--property-sub-check-gap-bottom);
}

.maintenance-form-row:last-child{
	margin-bottom: 0;
}

.maintenance-form-field{
	min-width: 0;
}

.maintenance-tab-group{
	width: 100%;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	padding: 6px;
	border-radius: 999px;
	background: #f3f4f6;
}

.maintenance-tab{
	height: 44px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #9ca3af;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -0.18px;
	cursor: pointer;
}

.maintenance-tab.active{
	background: #ffffff;
	color: #111827;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04);
}

.maintenance-section{
	display: none;
}

.maintenance-section.active{
	display: block;
}

.maintenance-none-row{
	align-items: start;
}

.maintenance-none-row > .property-form-label,
.maintenance-none-summary-main{
	display: flex;
	align-items: center;
	min-height: 24px;
	line-height: 1.3;
}

.maintenance-none-summary-sub{
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
}

.maintenance-choice-grid,
.maintenance-include-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px 44px;
	align-items: flex-start;
}

.maintenance-commercial-building-reason{
	justify-self: end;
}

.maintenance-fee-field{
	display: grid;
	grid-template-columns: 110px 84px minmax(0, 1fr);
	gap: 16px;
	align-items: center;
}

.maintenance-etc-fee-field{
	grid-template-columns: 110px 110px 74px minmax(0, 1fr);
}

.maintenance-fee-field .property-unit-input{
	min-width: 0;
}

.maintenance-notice-box{
	padding: 18px 20px;
	background: #f3f4f6;
	color: #111827;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: -0.12px;
	line-height: 1.5;
}

/* PATCH 2.226: 입주가능일 즉시입주/협의가능 체크박스를 같은 줄에 배치 */
.property-move-in-checks{
	display: flex;
	align-items: center;
	gap: 36px;
	flex-wrap: wrap;
}

/* PATCH 2.227: 입주가능일 체크박스 간격을 권리금 체크박스와 동일하게 맞춤 */
.property-move-in-checks.property-form-control{
	gap: 36px;
}

.property-upload-box{
	width: 100%;
	min-height: 132px;
	padding: 22px;
	border: 2px dashed #e2e7ee;
	border-radius: 0;
	background: #ffffff;
	color: #a8b0bc;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	text-align: center;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.16px;
	cursor: pointer;
	box-sizing: border-box;
}

/* PATCH 2.320: 사진 드래그 중에도 업로드 박스 배경과 테두리 색은 기본값 유지 */
.property-upload-box.is-dragover{
	border-color: #e2e7ee;
	background: #ffffff;
	color: #a8b0bc;
}

.property-upload-box i{
	font-size: 22px;
	color: #d1d7df;
}

/* PATCH 2.309: 사진 장수 표시는 업로드 박스 밖 우측 상단에 배치 */
.property-photo-count{
	display: block;
	margin-bottom: 8px;
	text-align: right;
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.12px;
}

.property-photo-remove-btn{
	position: absolute;
	top: 6px;
	right: 6px;
	width: 28px;
	height: 28px;
	border: 1px solid rgba(17, 24, 39, 0.16);
	background: rgba(255, 255, 255, 0.92);
	color: #111827;
	font-size: 14px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.property-photo-remove-btn:hover{
	background: #ffffff;
	border-color: #4A7EDC;
	color: #4A7EDC;
}

/* PATCH 2.307: 파일 선택 버튼은 드래그 박스 아래에 분리 배치 */
.property-photo-select-btn{
	height: 42px;
	margin-top: 10px;
	padding: 0 18px;
	border: 1px solid #cbd5e1;
	background: #ffffff;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	cursor: pointer;
}

.property-photo-select-btn:hover{
	border-color: #4A7EDC;
	color: #4A7EDC;
}

.property-owner-phone-input{
	background: #f3f4f6;
	color: #9ca3af;
}

.property-owner-phone-notice{
	margin-top: 8px;
	padding: 18px 18px;
	border-radius: 8px;
	background: #f3f4f6;
	color: #374151;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.12px;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.property-owner-phone-notice i{
	margin-top: 2px;
	color: #111827;
	font-size: 14px;
}

/* ===== PATCH: 매물 정보 / 관리비 / 상세 정보 정렬 보정 ===== */

/* 매물 정보: 라벨과 오른쪽 입력 영역 수평 중앙 정렬 */
.property-info-row{
	align-items: center;
}

/* 층 정보는 기존처럼 윗줄 기준 유지 */
.property-floor-row{
	align-items: flex-start;
}

/* 관리비: 기본은 가운데, 부과 기준만 탑라인 */
.maintenance-form-row{
	align-items: center;
}

.maintenance-form-row.maintenance-base-row{
	align-items: flex-start;
}

/* ===== PATCH: 관리비 세부 행 정렬 보정 ===== */
.maintenance-form-row.maintenance-top-row{
	align-items: flex-start;
}

.maintenance-fee-row > .property-form-label{
	position: relative;
	top: 1px;
}

/* PATCH 2.214: 관리비 없음 행은 왼쪽 라벨과 첫 번째 값을 같은 라인에 고정 */
.maintenance-form-row.maintenance-none-row{
	align-items: flex-start;
}

.maintenance-form-row.maintenance-none-row > .property-form-label,
.maintenance-form-row.maintenance-none-row .maintenance-none-summary-main{
	display: flex;
	align-items: center;
	height: 24px;
	min-height: 24px;
	padding-top: 0;
	line-height: 24px;
}

.maintenance-form-row.maintenance-none-row .maintenance-none-summary{
	gap: 8px;
}

/* PATCH 2.220: 주차 라벨을 가능/불가능 라디오 첫 줄 높이에 고정 */
.property-info-row.property-parking-row{
	align-items: flex-start;
}

.property-info-row.property-parking-row > .property-form-label,
.property-info-row.property-parking-row > .property-info-field > .property-radio-row{
	display: flex;
	align-items: center;
	height: 24px;
	min-height: 24px;
	padding-top: 0;
	line-height: 24px;
}

.property-info-row.property-parking-row > .property-info-field{
	align-self: flex-start;
}

.property-info-row.property-parking-row .property-radio-option{
	height: 24px;
	align-items: center;
	line-height: 24px;
}

.property-info-card .property-loan-row > .property-radio-row,
.property-info-card .property-pet-row > .property-radio-row,
.property-info-card .property-parking-row > .property-info-field > .property-radio-row,
.property-info-card .property-heating-row > .property-info-field > .property-radio-row{
	display: grid;
	grid-template-columns: repeat(3, var(--property-register-radio-column-width));
	column-gap: 0;
	row-gap: 0;
	align-items: center;
	justify-content: start;
	width: max-content;
}

.property-info-card .property-loan-row > .property-radio-row .property-radio-option,
.property-info-card .property-pet-row > .property-radio-row .property-radio-option,
.property-info-card .property-parking-row > .property-info-field > .property-radio-row .property-radio-option,
.property-info-card .property-heating-row > .property-info-field > .property-radio-row .property-radio-option{
	height: 24px;
	min-height: 24px;
	align-items: center;
	line-height: 24px;
}

.property-info-row.property-heating-row > .property-info-field{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 32px;
	align-items: center;
}

.property-info-row.property-heating-row .property-heating-fuel-wrap{
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr);
	column-gap: 10px;
	align-items: center;
	margin-top: 0;
	height: var(--property-register-input-height);
	min-height: var(--property-register-input-height);
}

.property-info-row.property-heating-row > .property-form-label{
	display: flex;
	height: var(--property-register-input-height);
	min-height: var(--property-register-input-height);
	padding-top: 0;
	line-height: var(--property-register-input-height);
	align-items: center;
}

.property-info-row.property-heating-row > .property-info-field > .property-radio-row{
	display: grid;
	grid-template-columns: repeat(3, var(--property-register-radio-column-width));
	column-gap: 0;
	row-gap: 0;
	height: var(--property-register-input-height);
	min-height: var(--property-register-input-height);
	padding-top: 0;
	line-height: normal;
	align-items: center;
	justify-content: start;
	width: max-content;
}

/* ===== PATCH: 시설 정보 체크박스 높이/간격 통일 ===== */




/* ===== PATCH: 시설 정보 라벨/체크박스 탑라인 정렬 ===== */


.property-facility-row .property-form-label{
	align-self: flex-start;
	padding-top: 1px;
	line-height: 1.2;
}



/* ===== PATCH: 시설 정보 체크박스 행 높이 균일화 ===== */




/* ===== PATCH 2.200: 시설 정보 체크박스/라벨 간격 최종 통일 ===== */
.property-facility-card{
	--facility-option-height: 32px;
	--facility-row-gap: 12px;
	--facility-column-gap: 28px;
}

.property-facility-card .property-facility-row{
	align-items: start;
	margin-bottom: 20px;
}

.property-facility-card .property-facility-row .property-form-label{
	display: flex;
	align-items: center;
	height: var(--facility-option-height);
	min-height: var(--facility-option-height);
	padding-top: 0;
	line-height: 1.2;
}

.property-facility-card .property-facility-options{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: var(--facility-column-gap);
	row-gap: var(--facility-row-gap);
	align-items: start;
}



.property-facility-card .property-check-option input{
	align-self: center;
}

@media (max-width: 720px)
{
	.property-facility-card .property-facility-options{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}



/* ===== PATCH: 시설 정보 왼쪽 라벨을 첫 번째 체크박스 글자 높이에 맞춤 ===== */
.property-facility-row{
	align-items: flex-start;
}

.property-facility-row .property-form-label{
	display: flex;
	align-items: center;
	min-height: 32px;
	height: 32px;
	padding-top: 0;
	line-height: 1.2;
}

.property-facility-card .property-check-option{
	height: 32px;
	min-height: 32px;
	display: inline-flex;
	align-items: center;
	line-height: 1.2;
}

/* PATCH 2.211: 시설정보 전체 체크박스 칸 높이와 내부 정렬을 동일하게 고정 */
.property-facility-card .property-facility-options{
	grid-auto-rows: var(--facility-option-height, 32px);
	align-items: stretch;
}

.property-facility-card .property-check-option{
	box-sizing: border-box;
	height: var(--facility-option-height, 32px);
	min-height: var(--facility-option-height, 32px);
	max-height: var(--facility-option-height, 32px);
	padding: 0;
	align-self: stretch;
	display: inline-flex;
	align-items: center;
}

.property-facility-card .property-check-option span{
	display: inline-flex;
	align-items: center;
	height: 100%;
	line-height: 1;
}

/* PATCH 2.213: 시설정보 그룹 사이 간격도 체크박스 줄 간격과 동일하게 맞춤 */
.property-facility-card .property-facility-row{
	margin-bottom: var(--facility-row-gap, 12px);
}

.property-facility-card .property-facility-row:last-child{
	margin-bottom: 0;
}

.property-agency-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: flex-start;
	margin-bottom: 32px;
}

.property-agency-row:last-child{
	margin-bottom: 0;
}

.property-agency-textarea{
	width: 100%;
	min-height: 142px;
	border: 1px solid #d7dee8;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.16px;
	line-height: 1.55;
	padding: 16px;
	resize: vertical;
	outline: none;
	box-shadow: none;
}

.property-agency-textarea::placeholder{
	color: #a8b0bc;
}

.property-agency-text-count{
	margin-top: 8px;
	text-align: right;
	font-size: 14px;
	font-weight: 500;
	color: #8b95a1;
	letter-spacing: -0.12px;
}

@media (max-width: 720px)
{
	.property-agency-row{
		grid-template-columns: 1fr;
		gap: 12px;
	}
}

/* ===== 등록자 정보: 단일 레이아웃 규칙 ===== */
.property-registrant-card{
	min-height: 0;
	padding-bottom: 34px;
}

.property-registrant-form-row{
	display: grid;
	grid-template-columns: var(--property-registrant-main-label-width) var(--property-registrant-stack-width);
	gap: var(--property-registrant-main-gap);
	align-items: flex-start;
	margin-bottom: var(--property-registrant-form-bottom-gap);
}

.property-registrant-form-row:last-child{
	margin-bottom: 0;
}

.property-registrant-form-row .property-form-label{
	display: flex;
	align-items: center;
	height: var(--property-registrant-row-height);
	min-height: var(--property-registrant-row-height);
	padding-top: 0;
	line-height: 1.2;
}

.property-registrant-form-field{
	min-width: 0;
}

.property-registrant-stack{
	display: grid;
	grid-template-columns: var(--property-registrant-stack-width);
	row-gap: var(--property-sub-check-gap-top);
	column-gap: 0;
	width: var(--property-registrant-stack-width);
	max-width: var(--property-registrant-stack-width);
}

.property-registrant-stack .property-registrant-inline{
	display: grid;
	align-items: center;
	min-height: var(--property-registrant-row-height);
}

.property-registrant-row-full{
	grid-template-columns: var(--property-registrant-stack-width);
}

.property-registrant-row-two{
	grid-template-columns: var(--property-registrant-field-width) var(--property-registrant-field-width);
	column-gap: var(--property-registrant-column-gap);
}

.property-registrant-check-line{
	display: flex !important;
	align-items: flex-start !important;
	grid-template-columns: var(--property-registrant-stack-width);
	padding-left: var(--property-registrant-input-start-offset);
	min-height: var(--property-register-info-checkbox-size) !important;
	height: var(--property-register-info-checkbox-size);
	margin-top: 0;
	margin-bottom: var(--property-registrant-check-bottom-gap);
}

.property-registrant-field{
	display: grid;
	grid-template-columns: var(--property-registrant-field-label-width) var(--property-registrant-input-short-width);
	column-gap: var(--property-registrant-field-gap);
	align-items: center;
	width: var(--property-registrant-field-width);
	height: var(--property-registrant-row-height);
	min-width: 0;
}

.property-registrant-row-full .property-registrant-field{
	grid-template-columns: var(--property-registrant-field-label-width) var(--property-registrant-input-full-width);
	width: var(--property-registrant-stack-width);
}

.property-registrant-field-label{
	min-width: 0;
	text-align: left;
	color: #111827;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.18px;
	white-space: nowrap;
}

.property-registrant-manager-row:has(.property-registrant-input:disabled) .property-registrant-field-label{
	color: #9ca3af;
}

.property-registrant-input,
.property-registrant-input.short,
.property-registrant-input.short#registrantManagerNameInput{
	width: 100%;
	min-width: 0;
	height: var(--property-registrant-row-height);
	padding: 0 16px;
	border: 1px solid #d8dee8;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	-webkit-text-fill-color: #111827;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.16px;
	outline: none;
	box-shadow: none;
	overflow: hidden;
	text-overflow: ellipsis;
	box-sizing: border-box;
}

.property-registrant-input[readonly]{
	background: #f9fafb;
}

.property-registrant-card .property-registrant-manager-row .property-registrant-input:disabled,
.property-registrant-card .property-registrant-input:disabled{
	background: #f9fafb !important;
	color: #9ca3af;
	-webkit-text-fill-color: #9ca3af;
	cursor: not-allowed;
	opacity: 1;
}

.property-registrant-input::placeholder{
	color: #a8b0bc;
}

.property-registrant-license{
	display: inline-flex;
	align-items: center;
	justify-self: center;
	gap: var(--property-register-option-gap);
	margin-left: 0;
	color: var(--property-register-right-text-color);
	font-size: var(--property-register-option-font-size);
	font-weight: var(--property-register-option-font-weight);
	line-height: 1;
	letter-spacing: var(--property-register-option-letter-spacing);
	white-space: nowrap;
	cursor: pointer;
	user-select: none;
}

.property-registrant-license input{
	width: var(--property-register-info-checkbox-size);
	height: var(--property-register-info-checkbox-size);
	margin: 0;
	accent-color: #2f363d;
	cursor: pointer;
	flex: 0 0 auto;
}

.property-registrant-help,
.property-registrant-note{
	margin-top: 8px;
	color: #8b95a1;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: -0.12px;
	line-height: 1.4;
}

.property-registrant-help{
	text-decoration: underline;
}

@media (max-width: 900px)
{
	.property-registrant-form-row,
.property-registrant-stack,
.property-registrant-row-full,
.property-registrant-row-two,
.property-registrant-check-line,
.property-registrant-field,
.property-registrant-row-full .property-registrant-field{
		grid-template-columns: 1fr;
		width: 100%;
		max-width: 100%;
	}

	.property-registrant-check-line{
		padding-left: 0;
	}
}

.property-agency-row{
	align-items: center;
}



.property-agency-row > .property-form-label{
	align-self: flex-start;
	height: 142px;
	min-height: 142px;
	display: flex;
	align-items: center;
	padding-top: 0;
	line-height: 1.2;
}

/* ===== PATCH: 층 정보 라벨/전체/해당 글자 baseline 정렬 ===== */
.property-info-row.property-floor-row{
	align-items: baseline;
}

.property-info-row.property-floor-row > .property-form-label{
	display: flex;
	align-items: baseline;
	height: auto;
	min-height: 0;
	padding-top: 0;
	line-height: 1.2;
}

.property-floor-row .property-inline-label{
	display: inline-flex;
	align-items: baseline;
	line-height: 1.2;
}

/* ===== PATCH: 관리비 숨김 유형 강제 차단 ===== */
body[data-property-type="land"] #propertyMaintenanceCard,
body[data-property-type="hotel"] #propertyMaintenanceCard,
body[data-property-type="pension"] #propertyMaintenanceCard,
body[data-property-type="building"] #propertyMaintenanceCard,
body[data-property-type="factory_warehouse"] #propertyMaintenanceCard{
	display: none;
	visibility: hidden;
	pointer-events: none;
}

/* ===== PATCH: 내 정보 화면 매물등록 UI 톤 통일 ===== */
.auth-modal.profile-page-mode .auth-myinfo-screen{
	background: #ffffff;
	color: #111827;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	box-shadow: none;
	padding: 34px 36px 38px;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-title{
	margin: 0 0 22px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -0.35px;
	line-height: 1.25;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-divider,
.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-guide{
	display: none;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-profile-action-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 12px;
	margin-top: 28px;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-submit{
	background: #1B6FA4;
	color: #ffffff;
	border: 1px solid #1B6FA4;
}

.auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-secondary{
	background: #ffffff;
	color: #1B6FA4;
	border: 1px solid #1B6FA4;
}

@media (max-width: 720px)
{
	.auth-modal.profile-page-mode .auth-myinfo-display-row{
		grid-template-columns: 1fr;
		gap: 8px;
	}
}

/* ===== PATCH: 내 정보 값 영역은 입력창이 아닌 텍스트로 표시 ===== */
.auth-modal.profile-page-mode .auth-myinfo-display-value{
	width: auto;
	min-height: 0;
	height: auto;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: -0.16px;
	line-height: 1.45;
	padding: 0;
	display: block;
	box-shadow: none;
	box-sizing: border-box;
	overflow: visible;
	text-overflow: clip;
	white-space: normal;
}

.auth-modal.profile-page-mode .auth-myinfo-display-row{
	min-height: 34px;
	align-items: center;
}

/* ===== PATCH: 내 정보 설정 화면을 내 정보 페이지 디자인 톤으로 통일 ===== */
.auth-modal.profile-page-mode .auth-profile-setup-screen{
	width: var(--profile-page-card-width);
	margin: 0 auto;
	padding: var(--profile-page-card-padding);
	background: var(--profile-page-card-bg);
	border: var(--profile-page-card-border);
	border-radius: var(--profile-page-card-radius);
	box-shadow: var(--profile-page-card-shadow);
	color: var(--profile-page-value-color);
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title{
	margin: 0 0 22px;
	color: var(--profile-page-title-color);
	font-family: var(--profile-page-title-font-family);
	font-size: var(--profile-page-title-font-size);
	font-weight: var(--profile-page-title-font-weight);
	letter-spacing: var(--profile-page-title-letter-spacing);
	line-height: 1.25;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-divider{
	display: none;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-guide{
	display: none;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-form{
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin: 0;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-field{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	min-height: var(--profile-page-input-height, 54px);
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-field-label{
	margin: 0;
	color: var(--profile-page-label-color);
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-text-font-size);
	font-weight: var(--profile-page-label-font-weight);
	letter-spacing: var(--profile-page-text-letter-spacing);
	line-height: 1.2;
	text-align: left;
	white-space: nowrap;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-select{
	width: 100%;
	height: var(--profile-page-input-height, 54px);
	min-height: var(--profile-page-input-height, 54px);
	padding: 0 16px;
	border: var(--profile-page-input-border);
	border-radius: var(--profile-page-input-radius);
	background: var(--profile-page-input-bg);
	color: var(--profile-page-value-color);
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-text-font-size);
	font-weight: var(--profile-page-value-font-weight);
	letter-spacing: var(--profile-page-text-letter-spacing);
	line-height: 1;
	box-shadow: none;
	box-sizing: border-box;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input::placeholder{
	color: #9ca3af;
	font-weight: 500;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input:focus,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-select:focus{
	border-color: #1B6FA4;
	background: #ffffff;
	outline: none;
	box-shadow: none;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-field{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	min-height: 84px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-field .auth-modal-field-label{
	align-self: center;
	margin: 0;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-box{
	width: 100%;
	justify-content: flex-start;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-select-btn{
	height: 42px;
	min-height: 42px;
	padding: 0 16px;
	border-radius: var(--profile-page-button-radius);
	border: var(--profile-page-secondary-button-border);
	background: var(--profile-page-secondary-button-bg);
	color: var(--profile-page-secondary-button-color);
	font-family: var(--profile-page-text-font-family);
	font-size: 15px;
	font-weight: var(--profile-page-button-font-weight);
	letter-spacing: var(--profile-page-button-letter-spacing);
	box-shadow: none;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	min-height: 34px;
	margin: 4px 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--profile-page-value-color);
	font-family: var(--profile-page-text-font-family);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent::before{
	content: "동의";
	color: var(--profile-page-label-color);
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-text-font-size);
	font-weight: var(--profile-page-label-font-weight);
	letter-spacing: var(--profile-page-text-letter-spacing);
	line-height: 1.2;
}



.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent strong{
	color: var(--profile-page-value-color);
	font-weight: 600;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-submit{
	height: var(--profile-page-button-height);
	min-height: var(--profile-page-button-height);
	margin-top: 22px;
	border-radius: var(--profile-page-button-radius);
	background: var(--profile-page-primary-button-bg);
	color: var(--profile-page-primary-button-color);
	border: var(--profile-page-primary-button-border);
	font-family: var(--profile-page-text-font-family);
	font-size: var(--profile-page-button-font-size);
	font-weight: var(--profile-page-button-font-weight);
	letter-spacing: var(--profile-page-button-letter-spacing);
	box-shadow: var(--profile-page-button-shadow);
}

@media (max-width: 720px)
{
	.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-field,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-field,
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent{
		grid-template-columns: 1fr;
		gap: 8px;
	}
}

/* ===== PATCH: 개인정보 동의 UI 정리 ===== */
.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent::before{
    content: none; /* '동의' 라벨 제거 */
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent{
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: flex-start;
    padding-left: 0;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent input{
    margin: 0;
}

/* ===== PATCH: 내 정보 값 텍스트를 내 정보 설정과 동일 스타일로 ===== */
.auth-modal.profile-page-mode .auth-myinfo-display-value{
    font-family: var(--profile-page-text-font-family);
    font-size: var(--profile-page-text-font-size);
    font-weight: var(--profile-page-value-font-weight);
    letter-spacing: var(--profile-page-text-letter-spacing);
    color: var(--profile-page-value-color);
    line-height: 1.45;
}

/* hover */
.auth-modal.profile-page-mode #myInfoEditProfileBtn:hover,
.auth-modal.profile-page-mode #authProfileSaveBtn:hover,
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled):hover,
#propertySubmitBtn:hover,
#partTimeRegisterSubmitBtn:hover{
	background: #3F6FCC;
	border-color: #3F6FCC;
	color: #ffffff;
}

/* active */
.auth-modal.profile-page-mode #myInfoEditProfileBtn:active,
.auth-modal.profile-page-mode #authProfileSaveBtn:active,
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:not(:disabled):not(.is-disabled):active,
#propertySubmitBtn:active,
#partTimeRegisterSubmitBtn:active{
	background: #355FB0;
	border-color: #355FB0;
	color: #ffffff;
}

/* ===== PATCH 2.134: 내 정보 설정 저장 버튼 파랑 강제 적용 ===== */
.auth-modal.profile-page-mode #authProfileSaveBtn,
.auth-modal.profile-page-mode #authProfileSetupForm #authProfileSaveBtn.auth-modal-submit{
	background: #4A7EDC;
	color: #ffffff;
	border: 1px solid #4A7EDC;
	box-shadow: none;
}

.auth-modal.profile-page-mode #authProfileSaveBtn:hover,
.auth-modal.profile-page-mode #authProfileSetupForm #authProfileSaveBtn.auth-modal-submit:hover{
	background: #3F6FCC;
	border-color: #3F6FCC;
	color: #ffffff;
}

/* 신청중/비활성 상태는 기존 회색 유지 */
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn:disabled,
.auth-modal.profile-page-mode #myInfoBrokerOfficeBtn.is-disabled{
	background: #e5e7eb;
	color: #9ca3af;
	border: 1px solid #e5e7eb;
	cursor: not-allowed;
	box-shadow: none;
}

.quick-property-modal.open{
	display: flex;
}

.quick-property-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 0;
	margin: 0 0 18px;
}

.quick-property-body{
	padding: 0;
}

.quick-property-source-row{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 18px;
	margin: 0 0 14px;
}

.quick-property-source-option input{
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
}

.quick-property-foot{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	padding: 22px 0 0;
	border-top: 0;
}

/* ===== PATCH 2.396: 내 정보/개인정보/중개사무소 화면은 상단 메뉴 아래 메인 영역으로 표시 ===== */
body.payment-page-open .sub-topbar,
body.profile-page-open .sub-topbar{
	display: none;
}

/* PATCH 2.981: 공지사항 페이지 */
.notice-page-panel{
	position: fixed;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: none;
	padding: 32px 32px 0;
	background: #ffffff;
	color: #111827;
	box-sizing: border-box;
	overflow-y: auto;
}

body.notice-page-open .notice-page-panel,
.notice-page-panel[aria-hidden="false"]{
	display: block;
}

body.notice-page-open .sub-topbar,
body.notice-page-open .sidebar,
body.notice-page-open .resizer,
body.notice-page-open .map-wrap{
	display: none;
}

.notice-page-inner{
	width: 900px;
	max-width: calc(100vw - 64px);
	margin: 0 auto;
}

.notice-page-head{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin: 0 0 36px;
	text-align: left;
}

.notice-page-title{
	margin: 0;
	font-size: 34px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: -0.04em;
	color: #111827;
}

.notice-page-desc{
	margin: 12px 0 0;
	font-size: 15px;
	line-height: 1.6;
	font-weight: 500;
	color: #64748b;
	letter-spacing: -0.02em;
}

.notice-admin-manage-btn{
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	padding: 0 18px;
	border: 1px solid #2563eb;
	background: #2563eb;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
}

.notice-admin-manage-btn[hidden]{
	display: none;
}

.notice-list{
	border-top: 1px solid #111827;
	background: #ffffff;
}

.notice-empty{
	padding: 34px 0;
	border-bottom: 1px solid #e5e7eb;
	color: #64748b;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}

.notice-item{
	display: grid;
	grid-template-columns: 160px minmax(0, 1fr);
	gap: 24px;
	padding: 24px 0;
	border-bottom: 1px solid #e5e7eb;
}

.notice-item-meta{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	color: #64748b;
	font-size: 13px;
	font-weight: 600;
}

.notice-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 26px;
	padding: 0 10px;
	border: 1px solid #2563eb;
	background: #2563eb;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.notice-badge-soft{
	border-color: #dbe3ee;
	background: #ffffff;
	color: #334155;
}

.notice-item-title{
	margin: 0;
	font-size: 18px;
	line-height: 1.45;
	font-weight: 700;
	color: #111827;
	letter-spacing: -0.02em;
}

.notice-item-desc{
	margin: 8px 0 0;
	font-size: 14px;
	line-height: 1.65;
	font-weight: 500;
	color: #475569;
	letter-spacing: -0.01em;
	white-space: pre-line;
}

.notice-page-footer{
	margin-top: 100px;
	padding: 0 0 48px;
	text-align: center;
}

.notice-page-copy{
	color: #9ca3af;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
}

@media (max-width: 720px)
{
	.notice-page-panel{
		padding: 46px 16px 0;
	}

	.notice-page-inner{
		max-width: 100%;
	}

	.notice-page-title{
		font-size: 28px;
	}

	.notice-page-head{
		display: grid;
		grid-template-columns: 1fr;
		text-align: left;
	}

	.notice-admin-manage-btn{
		width: 100%;
	}

	.notice-item{
		grid-template-columns: 1fr;
		gap: 12px;
		padding: 22px 0;
	}

	.notice-item-meta{
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
}

.auth-modal.profile-page-mode{
	top: var(--global-topbar-height);
	bottom: 0;
	left: 0;
	right: 0;
	height: auto;
	z-index: 120;
	background: var(--profile-page-bg, #f8fafc);
	overflow: auto;
}



/* PATCH 2.551: 내 정보/중개사무소 화면 하단 사업자 푸터 */
.auth-modal.profile-page-mode .profile-company-info{
	margin-top: 34px;
	padding-top: 4px;
	border-top: 0;
	color: #9ca3af;
	font-size: 11px;
	line-height: 1.75;
	letter-spacing: 0;
	text-align: left;
}

.auth-modal.profile-page-mode .profile-company-name{
	margin-bottom: 8px;
	color: #6b7280;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
}

.auth-modal.profile-page-mode .profile-company-grid{
	display: flex;
	flex-wrap: wrap;
	gap: 2px 16px;
}

.auth-modal.profile-page-mode .profile-company-grid span{
	white-space: nowrap;
}

.auth-modal.profile-page-mode .profile-company-links{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 10px;
	margin-top: 10px;
	color: #9ca3af;
	font-size: 11px;
	line-height: 1.7;
}

.auth-modal.profile-page-mode .profile-company-link{
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #6b7280;
	font: inherit;
	font-weight: 600;
	line-height: inherit;
	cursor: pointer;
}

.auth-modal.profile-page-mode .profile-company-link:hover{
	color: #2563eb;
}

.auth-modal.profile-page-mode .broker-profile-company-info{
	margin-top: 24px;
}

@media (max-width: 720px)
{
	.auth-modal.profile-page-mode .profile-company-grid{
		display: grid;
		gap: 2px;
	}

	.auth-modal.profile-page-mode .profile-company-grid span{
		white-space: normal;
	}
}

/* PATCH 2.551: 프로필 페이지 스크롤 복구 + 중개사무소 정보 푸터를 카드 밖으로 분리 */




.auth-modal.profile-page-mode .broker-office-info-page-footer{
	display: none;
	width: var(--profile-page-card-width);
	max-width: 90vw;
	margin: 22px auto 0;
	padding: 0 4px;
}

.auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) + .broker-office-info-page-footer{
	display: block;
}

/* PATCH 2.551: 프로필 계열 화면 푸터를 카드 밖 페이지 푸터로 표시 */
.auth-modal.profile-page-mode.open{
	display: flex;
	align-items: stretch;
	justify-content: stretch;
	overflow: hidden;
	-webkit-overflow-scrolling: touch;
}

.auth-modal.profile-page-mode .auth-modal-dialog{
	display: block;
	width: 100%;
	max-width: none;
	min-height: 0;
	height: calc(100vh - var(--global-topbar-height, 0px));
	max-height: calc(100vh - var(--global-topbar-height, 0px));
	overflow-x: hidden;
	overflow-y: auto;
	padding-bottom: 96px;
	position: relative;
	-webkit-overflow-scrolling: touch;
}

.auth-modal.profile-page-mode .profile-page-footer{
	display: none;
	width: var(--profile-page-card-width);
	max-width: 90vw;
	margin: 22px auto 0;
	padding: 0 4px;
}

.auth-modal.profile-page-mode #authProfileSetupScreen:not(.auth-screen-hidden) + .profile-page-footer,
.auth-modal.profile-page-mode #authMyInfoScreen:not(.auth-screen-hidden) + .profile-page-footer,
.auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) + .profile-page-footer,
.auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden) + .profile-page-footer{
	display: block;
}

/* PATCH 2.551: 카드 뒤에 보이는 중복 푸터 제거, 공통 푸터만 카드 아래 표시 */
.auth-modal.profile-page-mode .profile-company-info:not(.auth-profile-common-footer){
	display: none;
}

.auth-modal.profile-page-mode .auth-profile-common-footer{
	display: none;
	visibility: hidden;
	position: relative;
	z-index: 0;
	clear: both;
	width: var(--profile-page-card-width);
	max-width: 90vw;
	margin: 26px auto 0;
	padding: 0 4px;
}

.auth-modal.profile-page-mode .auth-profile-common-footer.is-visible{
	display: block;
	visibility: visible;
}

.auth-modal.profile-page-mode .auth-profile-common-footer.is-positioned{
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
}

.auth-modal.profile-page-mode .auth-profile-setup-screen,
.auth-modal.profile-page-mode .auth-myinfo-screen,
.auth-modal.profile-page-mode .auth-broker-office-screen{
	position: relative;
	z-index: 1;
}

.auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden) .broker-profile-company-info{
	display: block;
	grid-column: 1 / -1;
	width: min(1080px, 100%);
	max-width: 100%;
	margin: 2px auto 0;
	padding: 0 4px 0;
	position: relative;
	z-index: 0;
}

/* PATCH 2.551: 내 정보 계열을 모달이 아닌 이용권 결제와 같은 페이지형 패널로 표시 */
.auth-modal.profile-page-mode{
	position: fixed;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: none;
	width: auto;
	height: auto;
	padding: var(--sub-topbar-height) 48px 48px;
	background: var(--profile-page-bg, #f8fafc);
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	overflow-x: hidden;
	overflow-y: auto;
}



.auth-modal.profile-page-mode .auth-modal-dialog{
	position: static;
	display: block;
	width: 100%;
	max-width: none;
	min-height: 0;
	height: auto;
	max-height: none;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	overflow: visible;
}

.auth-modal.profile-page-mode .auth-card-close,
.auth-modal.profile-page-mode .auth-modal-close,
.auth-modal.profile-page-mode .auth-modal-back{
	display: none;
}

.auth-modal.profile-page-mode .auth-profile-common-footer{
	position: static;
	transform: none;
	width: var(--profile-page-card-width);
	max-width: 90vw;
	margin: 28px auto 0;
}

/* PATCH 2.551: 내 정보 페이지 스크롤 영역 강제 고정 */
body.profile-page-open{
	overflow: hidden;
}

.auth-modal.profile-page-mode.open{
	position: fixed;
	top: var(--global-topbar-height);
	right: 0;
	bottom: 0;
	left: 0;
	height: calc(100vh - var(--global-topbar-height, 0px));
	max-height: calc(100vh - var(--global-topbar-height, 0px));
	display: block;
	overflow-x: hidden;
	overflow-y: scroll;
	overscroll-behavior: contain;
}

.auth-modal.profile-page-mode.open .auth-modal-dialog{
	min-height: max-content;
	height: auto;
	max-height: none;
	padding-bottom: 72px;
	overflow: visible;
}

/* PATCH 2.551: 내 정보 페이지 실제 스크롤 높이 확보 */
.auth-modal.profile-page-mode.open::after{
	content: "";
	display: block;
	width: 1px;
	height: 180px;
}

.auth-modal.profile-page-mode.open .auth-profile-common-footer.is-visible{
	display: block;
	margin-bottom: 96px;
}

/* PATCH 2.551: 내 정보를 이용권 결제와 같은 단일 페이지 패널 스크롤로 통일 */
html:has(body.profile-page-open),
body.profile-page-open{
	height: 100%;
	min-height: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
}

body.profile-page-open{
	background: var(--profile-page-bg, #f8fafc);
}

body.profile-page-open .auth-modal.profile-page-mode{
	position: fixed;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: none;
	width: auto;
	min-height: 0;
	height: calc(100vh - var(--global-topbar-height, 0px));
	max-height: calc(100vh - var(--global-topbar-height, 0px));
	margin: 0;
	padding: var(--sub-topbar-height) 48px 48px;
	background: var(--profile-page-bg, #f8fafc);
	overflow-x: hidden;
	overflow-y: auto;
	transform: none;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

body.profile-page-open .auth-modal.profile-page-mode.open{
	display: block;
}





body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen,
body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen,
body.profile-page-open .auth-modal.profile-page-mode .auth-broker-office-screen{
	overflow: visible;
	max-height: none;
	transform: none;
}

/* PATCH 2.551: 내 정보 페이지 아래/뒤로 다른 페이지 영역이 이어져 보이지 않게 차단 */
body.profile-page-open .map-wrap,
body.profile-page-open .broker-home-panel,
body.profile-page-open .property-register-page,
body.profile-page-open .admin-page-panel,
body.profile-page-open .map-side-tools,
body.profile-page-open .map-result-count,
body.profile-page-open .map-empty-state,
body.profile-page-open .map-agent-card,
body.profile-page-open .map-recommend-card{
	display: none;
}

/* PATCH 2.551: 내 정보 푸터는 결제 페이지처럼 패널 하단에 항상 표시 */
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer[hidden]{
	display: block;
	visibility: visible;
	position: static;
	width: 100%;
	max-width: 1080px;
	margin: 34px auto 0;
	padding: 22px 0 0;
	border-top: 1px solid #e5e7eb;
	color: #64748b;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0;
	text-align: left;
	transform: none;
}





body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-links{
	display: flex;
	align-items: center;
	gap: 8px;
	height: auto;
	max-height: none;
	margin-top: 6px;
	overflow: visible;
	padding-bottom: 0;
}

/* PATCH 2.551: 내 정보 카드와 푸터를 flex 가로배치가 아닌 세로 흐름으로 정렬 */
body.profile-page-open .auth-modal.profile-page-mode .auth-modal-dialog{
	display: block;
	align-items: initial;
	justify-content: initial;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer{
	clear: both;
	z-index: 1;
}

/* PATCH 2.551: 내 정보 화면을 이용권 결제와 같은 페이지형 레이아웃으로 재구성 */
body.profile-page-open .auth-modal.profile-page-mode{
	padding: var(--sub-topbar-height) 48px 48px;
	background: #f7f8fa;
	color: #111827;
}



body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen{
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-title,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title{
	margin: 0 0 7px;
	color: #111827;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-title::after{
	content: "가입 계정과 중개사무소 정보를 한 곳에서 관리합니다.";
	display: block;
	margin-top: 7px;
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
}



body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-divider,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-divider{
	display: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-form,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-form{
	display: grid;
	gap: 0;
	margin-top: 26px;
	padding: 26px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-photo-box{
	width: 96px;
	height: 96px;
	margin: 0 auto 24px;
	border: 1px solid #e5e7eb;
	background: #ffffff;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-display-row{
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	align-items: center;
	min-height: 58px;
	gap: 18px;
	padding: 0;
	border-bottom: 1px solid #eef2f7;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-display-label{
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-display-value{
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 14px;
	background: #f8fafc;
	border: 1px solid #dbe3ec;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-action-row{
	margin-top: 26px;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-action-row > button,
body.profile-page-open .auth-modal.profile-page-mode #myInfoBrokerOfficeBtn{
	height: 46px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 700;
}

body.profile-page-open .auth-modal.profile-page-mode #myInfoBrokerOfficeBtn{
	margin-top: 16px;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer[hidden]{
	max-width: 1080px;
	margin-top: 34px;
	padding-top: 22px;
	background: transparent;
	border-top: 1px solid #e5e7eb;
}

@media (max-width: 720px)
{
	body.profile-page-open .auth-modal.profile-page-mode{
		padding: var(--sub-topbar-height) 16px 32px;
	}

	body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-form,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-form{
		padding: 18px;
	}

	body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-display-row{
		grid-template-columns: 1fr;
		gap: 8px;
		padding: 14px 0;
	}
}

/* PATCH 2.551: 프로필 계열 화면 겹침 긴급 차단 */
body.profile-page-open .auth-modal.profile-page-mode .auth-screen-hidden,
body.profile-page-open .auth-modal.profile-page-mode [class*="auth-"].auth-screen-hidden{
	display: none;
	visibility: hidden;
	position: static;
	width: 0;
	height: 0;
	min-height: 0;
	max-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	overflow: hidden;
	pointer-events: none;
}

body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden),
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden){
	display: block;
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) .auth-modal-title,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden) .auth-modal-title,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) .broker-apply-title,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden) .broker-apply-title{
	margin: 0 0 7px;
	color: #111827;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
}

body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) .auth-modal-form,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden) .auth-modal-form,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) .broker-apply-form{
	display: grid;
	gap: 0;
	margin-top: 26px;
	padding: 26px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden) + .profile-company-info,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeScreen:not(.auth-screen-hidden) + .profile-company-info{
	display: none;
}

/* PATCH 2.551: 내 정보 내용 폭은 기존 카드 수준으로 축소 */
body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen{
	max-width: 600px;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen .auth-modal-form,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-form{
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-display-row{
	grid-template-columns: 140px minmax(0, 1fr);
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer[hidden]{
	max-width: 600px;
}

/* PATCH 2.551: 내 정보는 모달 구조를 쓰지 않고 이용권 결제와 같은 독립 페이지 패널로 표시 */
















































@media (max-width: 720px)
{
	

	

	

	

	

	
}

/* PATCH 2.551: 내 정보 페이지 스크롤/푸터를 이용권 결제 패널 방식으로 최종 고정 */
html:has(body.profile-page-open),
body.profile-page-open{
	height: 100%;
	min-height: 100%;
	overflow: hidden;
	background: #f7f8fa;
}

body.profile-page-open .auth-modal.profile-page-mode,
body.profile-page-open .auth-modal.profile-page-mode.open{
	position: fixed;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: block;
	width: auto;
	height: auto;
	min-height: 0;
	max-height: none;
	margin: 0;
	padding: var(--sub-topbar-height) 48px 64px;
	background: #f7f8fa;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-modal-dialog{
	position: static;
	display: block;
	width: 100%;
	max-width: 600px;
	min-height: auto;
	height: auto;
	max-height: none;
	margin: 0 auto;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	overflow: visible;
	transform: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-myinfo-screen,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen,
body.profile-page-open .auth-modal.profile-page-mode #authBrokerOfficeInfoScreen:not(.auth-screen-hidden){
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	padding: 0;
	overflow: visible;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer[hidden],
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer.is-visible{
	display: block;
	visibility: visible;
	position: static;
	width: 100%;
	max-width: 600px;
	height: auto;
	max-height: none;
	margin: 34px auto 0;
	padding: 22px 0 0;
	border-top: 1px solid #e5e7eb;
	background: transparent;
	overflow: visible;
	transform: none;
	pointer-events: auto;
}

body.profile-page-open .auth-modal.profile-page-mode::after{
	content: "";
	display: block;
	width: 1px;
	height: 72px;
}

@media (max-width: 720px)
{
	body.profile-page-open .auth-modal.profile-page-mode,
body.profile-page-open .auth-modal.profile-page-mode.open{
		padding: var(--sub-topbar-height) 16px 48px;
	}
}

/* PATCH 2.551: 내 정보 설정 화면을 내 정보 카드 디자인과 맞춤 */


body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen{
	max-width: 600px;
	margin: 0 auto;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-card-close{
	display: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title{
	margin: 0 0 7px;
	color: #111827;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-title::after{
	content: "회원 정보와 프로필 정보를 관리합니다.";
	display: block;
	margin-top: 7px;
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-divider{
	display: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-form{
	display: grid;
	gap: 0;
	max-width: 600px;
	margin: 26px auto 0;
	padding: 26px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-guide{
	margin: 0 0 18px;
	padding: 0;
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	background: transparent;
	border: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-field,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-field{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	align-items: center;
	min-height: 58px;
	gap: 18px;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #eef2f7;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-field-label{
	margin: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-modal-input,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-select-wrap select{
	width: 100%;
	min-height: 44px;
	height: 44px;
	padding: 0 14px;
	background: #f8fafc;
	border: 1px solid #dbe3ec;
	border-radius: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-box{
	width: 96px;
	height: 96px;
	margin: 0;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	background: #ffffff;
	overflow: hidden;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-photo-select-btn{
	height: 36px;
	margin-top: 8px;
	border-radius: 8px;
	background: #ffffff;
	border: 1px solid #1f73b7;
	color: #1f73b7;
	font-size: 13px;
	font-weight: 700;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-consent{
	margin-top: 18px;
	color: #6b7280;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 26px;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen .auth-profile-action-row > button{
	height: 46px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen #authProfileSaveBtn{
	background: #4f83df;
	color: #ffffff;
	border: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen #authProfileCloseBtn{
	background: #ffffff;
	color: #1f73b7;
	border: 1px solid #1f73b7;
}

/* PATCH 2.551: 내 정보 설정을 내 정보 페이지 카드/푸터 구조와 동일하게 최종 고정 */








body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-guide{
	display: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-photo-field{
	display: block;
	min-height: auto;
	margin: 0 auto 24px;
	padding: 0;
	border: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-photo-field .auth-modal-field-label{
	display: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-photo-box{
	position: relative;
	width: 96px;
	height: 96px;
	margin: 0 auto;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	background: #ffffff;
	overflow: hidden;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-photo-preview{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-photo-select-btn{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 28px;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: rgba(17, 24, 39, 0.72);
	color: #ffffff;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
}



body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-field-label{
	margin: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
	text-align: left;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-input,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-select-wrap select{
	width: 100%;
	min-height: 44px;
	height: 44px;
	padding: 0 14px;
	background: #f8fafc;
	border: 1px solid #dbe3ec;
	border-radius: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	box-shadow: none;
	box-sizing: border-box;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-select-wrap{
	width: 100%;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-consent{
	margin-top: 18px;
	color: #6b7280;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.5;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-action-row{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 26px;
}



body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-form > .profile-company-info{
	display: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer[hidden],
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer.is-visible{
	display: block;
	visibility: visible;
	position: static;
	width: 100%;
	max-width: 1080px;
	margin: 34px auto 0;
	padding: 4px 0 0;
	border-top: 0;
	background: transparent;
	color: #9ca3af;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: 0;
	text-align: left;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-name{
	margin-bottom: 8px;
	color: #6b7280;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-grid{
	display: flex;
	flex-wrap: wrap;
	gap: 2px 16px;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-grid span{
	color: #8b95a1;
	font-weight: 400;
	white-space: nowrap;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-links{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 10px;
	margin-top: 10px;
	color: #8b95a1;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.7;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-link{
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #6b7280;
	font: inherit;
	font-weight: 600;
	line-height: inherit;
}

/* PATCH 2.551: 내 정보 설정 푸터를 내 정보 푸터와 완전히 동일한 박스/타이포로 통일 */












@media (max-width: 720px)
{
	body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-form{
		padding: 18px;
	}

	body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-field{
		grid-template-columns: 1fr;
		gap: 8px;
		padding: 14px 0;
	}

	body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-action-row{
		grid-template-columns: 1fr;
	}

	body.profile-page-open .auth-modal.profile-page-mode .auth-profile-common-footer .profile-company-grid span{
		white-space: normal;
	}
}

/* PATCH 2.551: 내 정보 수정 화면을 내 정보 페이지의 폭/카드/푸터 규격과 동일하게 고정 */
body.profile-page-open .auth-modal.profile-page-mode .auth-modal-dialog{
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden){
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-title{
	max-width: 600px;
	margin: 0 auto;
	color: #111827;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-title::after{
	content: "가입 계정과 중개사무소 정보를 한 곳에서 관리합니다.";
	display: block;
	margin-top: 7px;
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-form{
	display: grid;
	gap: 0;
	width: 100%;
	max-width: 600px;
	margin: 26px auto 0;
	padding: 26px;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: none;
	box-sizing: border-box;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-field{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	align-items: center;
	min-height: 58px;
	gap: 18px;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #eef2f7;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-modal-input,
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-select-wrap select{
	display: flex;
	align-items: center;
	min-height: 44px;
	height: 44px;
	padding: 0 14px;
	background: #f8fafc;
	border: 1px solid #dbe3ec;
	border-radius: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	box-shadow: none;
}



/* PATCH 2.551: 내 정보 수정 하단 버튼을 내 정보 페이지 버튼과 같은 크기/색상으로 고정 */
body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-action-row{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	width: 100%;
	margin: 26px 0 0;
	padding: 0;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) .auth-profile-action-row > button{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	height: 46px;
	min-height: 46px;
	margin: 0;
	padding: 0 16px;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	box-shadow: none;
	box-sizing: border-box;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) #authProfileSaveBtn{
	border: 0;
	background: #4f83df;
	color: #ffffff;
}

body.profile-page-open .auth-modal.profile-page-mode .auth-profile-setup-screen:not(.auth-screen-hidden) #authProfileCloseBtn{
	border: 1px solid #1f73b7;
	background: #ffffff;
	color: #1f73b7;
}

/* PATCH 2.551: 프로필 공통 푸터는 현재 화면 바로 아래 정상 흐름으로만 표시 */


/* PATCH 2.551: 내 정보 수정/중개사무소 수정은 모달이 아니라 독립 페이지 패널로 표시 */










































































/* PATCH 2.551: 내 정보 수정 화면을 내 정보 페이지의 간격/푸터/사진 행과 동일하게 재정렬 */












































@media (max-width: 720px)
{
	

	

	

	
}

/* PATCH 2.551: 내정보 계열 4개 화면은 모두 모달이 아닌 독립 페이지이며 하단바를 숨긴다 */




























@media (max-width: 720px)
{
	

	

	
}

/* PATCH 2.551: 내정보 4개 화면을 하나의 세트 규격으로 통일 */
:root{
	--profile-suite-top-gap: 50px;
	--profile-suite-side-gap: 48px;
	--profile-suite-bottom-gap: 8px;
	--profile-suite-outer-width: 1080px;
	--profile-suite-card-width: 600px;
	--profile-suite-title-size: 25px;
	--profile-suite-title-weight: 800;
	--profile-suite-desc-size: 14px;
	--profile-suite-card-padding: 26px;
	--profile-suite-row-label-width: 154px;
	--profile-suite-row-gap: 18px;
	--profile-suite-row-height: 58px;
	--profile-suite-input-height: 44px;
	--profile-suite-footer-gap: 70px;
}































@media (max-width: 720px)
{
	:root{
		--profile-suite-top-gap: 50px;
		--profile-suite-side-gap: 16px;
		--profile-suite-bottom-gap: 8px;
		--profile-suite-card-padding: 18px;
	}

	
}

/* PATCH 2.551 EOF FINAL: 새 내정보 페이지 패널 우선순위 고정 */
body.auth-page-open #authModal{
	position: fixed;
	top: var(--topbar-main-height);
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100000;
	display: block;
	padding: 50px 24px 56px;
	overflow-y: auto;
	background: #ffffff;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

body.auth-page-open #authModal.open{
	display: block;
}

body.auth-page-open #authModal .auth-modal-dialog{
	width: min(520px, calc(100vw - 48px));
	min-height: 0;
	height: auto;
	margin: 0 auto;
	padding: 34px 40px 40px;
	color: #111827;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
}

body.auth-page-open #authModal .auth-modal-title{
	margin: 0 0 12px;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.28;
	letter-spacing: -0.3px;
	color: #111827;
}

body.auth-page-open #authModal .auth-login-screen,
body.auth-page-open #authModal .auth-signup-terms-screen,
body.auth-page-open #authModal .auth-signup-form-screen,
body.auth-page-open #authModal .auth-forgot-password-screen,
body.auth-page-open #authModal .auth-reset-password-screen{
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body.auth-page-open #authModal .auth-modal-divider{
	width: 28px;
	height: 1px;
	margin: 14px 0 24px;
	background: #d1d5db;
}

body.auth-page-open #authModal .auth-modal-field-label{
	margin-bottom: 8px;
	font-size: 14px;
	font-weight: 600;
	color: #4b5563;
	letter-spacing: -0.05px;
}

body.auth-page-open #authModal .auth-modal-input{
	height: 46px;
	padding: 0 14px;
	border: 1px solid #d1d5db;
	border-radius: 0;
	background: #ffffff;
	color: #111827;
	font-size: 14px;
	font-weight: 600;
	box-shadow: none;
}

body.auth-page-open #authModal .auth-modal-input::placeholder{
	color: #9ca3af;
	font-size: 14px;
	font-weight: 500;
}

body.auth-page-open #authModal .auth-modal-input:focus{
	border-color: #2563eb;
	background: #ffffff;
}

body.auth-page-open #authModal .auth-modal-submit{
	height: 46px;
	margin-top: 4px;
	border-radius: 0;
	background: #2563eb;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.08px;
}

html.auth-reset-password-open,
body.auth-reset-password-open{
	overflow: hidden;
}

body.auth-page-open #authResetPasswordForm .auth-reset-password-actions{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 32px;
}

body.auth-page-open #authResetPasswordForm .auth-reset-password-cancel,
body.auth-page-open #authResetPasswordForm .auth-modal-submit{
	width: auto;
	min-width: 0;
	height: 36px;
	min-height: 36px;
	margin: 0;
	padding: 0 14px;
	border: 1px solid #d5dee9;
	border-radius: 18px;
	background: #ffffff;
	box-sizing: border-box;
	color: #344054;
	font-size: 14px;
	font-weight: 600;
	line-height: 34px;
	letter-spacing: 0;
	white-space: nowrap;
	box-shadow: none;
	cursor: pointer;
}

body.auth-page-open #authResetPasswordForm .auth-reset-password-cancel:hover,
body.auth-page-open #authResetPasswordForm .auth-modal-submit:hover{
	border-color: #cbd5e1;
	background: #f8fafc;
	color: #1f2937;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-all-btn,
body.auth-page-open #authSignupTermsScreen .auth-terms-next{
	width: 100%;
	height: 46px;
	min-height: 46px;
	margin: 4px 0 22px;
	border: 0;
	border-radius: 0;
	background: #2563eb;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.08px;
	box-shadow: none;
	opacity: 1;
	cursor: pointer;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-all-btn .auth-check-icon{
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-all-btn{
	border: 1px solid #d1d5db;
	background: #ffffff;
	color: #111827;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-list{
	gap: 14px;
	margin: 0 0 24px;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-item{
	min-height: 32px;
	gap: 12px;
	color: #374151;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-checkbox{
	width: 20px;
	height: 20px;
	border: 1px solid #d1d5db;
	border-radius: 0;
	background: #ffffff;
	color: transparent;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	box-shadow: none;
}

/* Keep every signup terms checkbox flush with the all-agree button's left edge. */
body.auth-page-open #authSignupTermsScreen .auth-terms-check-zone{
	justify-content: flex-start;
}

body.auth-page-open #authSignupTermsScreen label.auth-terms-item > .auth-terms-checkbox{
	grid-column: 1;
	justify-self: center;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-item input:checked + .auth-terms-checkbox{
	border-color: #2563eb;
	background: #2563eb;
	color: #ffffff;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-open-zone{
	gap: 12px;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-highlight{
	color: #111827;
	font-size: 14px;
	font-weight: 700;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-arrow{
	color: #9ca3af;
	font-size: 22px;
	font-weight: 600;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-next{
	margin: 0;
	background: #e5e7eb;
	color: #9ca3af;
	cursor: not-allowed;
}

body.auth-page-open #authSignupTermsScreen .auth-terms-next.enabled{
	background: #2563eb;
	color: #ffffff;
	cursor: pointer;
}

body.auth-page-open #authModal .auth-modal-links,
body.auth-page-open #authModal .auth-modal-footer,
body.auth-page-open #authModal .auth-signup-footer{
	color: #6b7280;
	font-size: 14px;
	font-weight: 600;
}

body.auth-page-open #authModal .auth-modal-links{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: 100%;
	padding: 14px 0 0;
	margin: 0;
	letter-spacing: 0;
}

body.auth-page-open #authModal .auth-remember-id{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-width: 0;
	color: #374151;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0;
	cursor: pointer;
	white-space: nowrap;
}

body.auth-page-open #authModal .auth-remember-id input{
	width: 15px;
	height: 15px;
	margin: 0;
	border: 1px solid #cbd5e1;
	border-radius: 0;
	accent-color: #2563eb;
	cursor: pointer;
}

body.auth-page-open #authModal .auth-modal-find-links{
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 18px;
	margin-left: auto;
	white-space: nowrap;
}

body.auth-page-open #authModal .auth-modal-signup,
body.auth-page-open #authModal .auth-login-switch,
body.auth-page-open #authModal .auth-modal-links button{
	color: #2563eb;
	font-size: 14px;
	font-weight: 700;
}

body.auth-page-open #authModal:not(.profile-page-mode) .profile-company-info:not(.auth-profile-common-footer){
	display: none;
	visibility: hidden;
	height: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	pointer-events: none;
}

body.auth-page-open #authModal .auth-profile-common-footer,
body.auth-page-open #authModal .auth-profile-common-footer[hidden]{
	display: block;
	visibility: visible;
	width: min(1080px, calc(100vw - 48px));
	margin: 70px auto 0;
	padding: 0;
	border-top: 0;
	background: transparent;
	color: #6b7280;
	box-shadow: none;
	position: relative;
}

body.auth-page-open #authModal .auth-profile-common-footer::before,
body.auth-page-open #authModal .auth-profile-common-footer[hidden]::before{
	content: "";
	position: absolute;
	left: 50%;
	top: -35px;
	width: 100vw;
	height: 0.8px;
	transform: translateX(-50%);
	background: #e5e7eb;
	pointer-events: none;
	box-shadow: none;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-name{
	margin: 0 0 9px;
	color: #111827;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-grid{
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	margin: 0;
	color: #6b7280;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-grid span{
	display: inline;
	margin: 0;
}

body.auth-page-open #authModal .auth-profile-common-footer .auth-login-company-grid{
	display: block;
}

body.auth-page-open #authModal .auth-profile-common-footer .auth-login-company-grid p{
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	margin: 0 0 4px;
	padding: 0;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-links{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 8px;
	margin: 11px 0 0;
	color: #9ca3af;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.45;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-link{
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #2563eb;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-copyright{
	position: relative;
	margin: 28px 0 0;
	padding: 12px 0 0;
	color: #9ca3af;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0;
	text-align: center;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-copyright span{
	color: #8b95a5;
	font-weight: 600;
}

body.auth-page-open #authModal .auth-profile-common-footer .profile-company-copyright::before{
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	width: 100vw;
	height: 0.8px;
	transform: translateX(-50%);
	background: #e5e7eb;
	pointer-events: none;
	box-shadow: none;
}

body.auth-page-open #authModal .auth-modal-close,
body.auth-page-open #authModal .auth-modal-back{
	top: 18px;
	color: #6b7280;
	background: transparent;
}

body.auth-page-open #authModal:not(.profile-page-mode) .auth-modal-close{
	display: none;
	visibility: hidden;
	pointer-events: none;
}

body.auth-page-open .sub-topbar,
body.auth-page-open .map-filter-bar{
	display: none;
	visibility: hidden;
	pointer-events: none;
}

body.auth-page-open .map-wrap,
body.auth-page-open #map{
	visibility: hidden;
	pointer-events: none;
}

body.auth-recovery-page-open #authModal{
	display: block;
	visibility: visible;
	pointer-events: auto;
	z-index: 190000;
}

body.auth-recovery-page-open #authModal.open{
	display: block;
}

body.auth-recovery-page-open #authModal .auth-modal-dialog{
	position: relative;
	z-index: 1;
}

@media (max-width: 720px)
{
	body.auth-page-open #authModal{
		padding: 50px 16px 40px;
	}

	body.auth-page-open #authModal .auth-modal-dialog{
		width: 100%;
		padding: 28px 22px 32px;
	}
}



























.broker-office-edit-address-wrap{
	width: 100%;
}



























	















.payment-page-panel .payment-plan-card,
.payment-page-panel .payment-tab-btn,
.payment-page-panel .payment-select-btn,
.payment-page-panel .payment-plan-btn{
	box-shadow: none;
}

.payment-page-panel .payment-plan-card:has(.payment-plan-btn.is-current){
	border: 1px solid #2563eb;
	box-shadow: none;
}

@media (max-width: 720px)
{
	

	
}

/* PATCH 2.670: MY 리얼제주 통합 탭 페이지 */
.my-suite-panel{
	position: fixed;
	inset: var(--global-topbar-height) 0 0 0;
	z-index: 120;
	display: none;
	background: #ffffff;
	color: #111827;
	overflow-y: scroll;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	padding: 32px 32px 0;
}

body.my-suite-page-open .my-suite-panel,
.my-suite-panel[aria-hidden="false"]{
	display: block;
}

body.my-suite-page-open .sub-topbar,
body.my-suite-page-open .sidebar,
body.my-suite-page-open .resizer,
body.my-suite-page-open .map-wrap{
	display: none;
}

.my-suite-inner{
	width: 1180px;
	max-width: calc(100vw - 64px);
	min-height: calc(100vh - var(--global-topbar-height, 0px) - 122px);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}

.my-suite-tabs{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: auto;
	min-width: 0;
	border: 0;
	background: transparent;
	box-sizing: border-box;
}

.my-suite-tab{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 0;
	height: 34px;
	padding: 0 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #6b7280;
	font: inherit;
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	cursor: pointer;
	white-space: nowrap;
}

.my-suite-tab:hover{
	background: #f3f4f6;
	color: #111827;
	font-weight: 600;
}

.my-suite-tab.active{
	background: #2563eb;
	color: #ffffff;
	font-weight: 600;
}

.my-suite-tab.active::after{
	display: none;
}

.global-topbar-my-suite-tabs{
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 4;
	display: none;
	max-width: calc(100vw - 620px);
	padding: 0;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	transform: translate(-50%, -50%);
}

.global-topbar-my-suite-tabs::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

body.my-suite-page-open .global-topbar-my-suite-tabs{
	display: flex;
}

/* 2026-06-30: 마이페이지 상단 메뉴는 제목 오른쪽에서 왼쪽 정렬로 흐르게 한다. */
body.realjeju-side-nav-enabled.my-suite-page-open .global-topbar-my-suite-tabs{
	left: calc(var(--realjeju-topbar-page-title-left) + 101px);
	right: var(--realjeju-management-page-gap, 28px);
	justify-content: flex-start;
	max-width: calc(100vw - var(--realjeju-side-nav-width, 168px) - var(--realjeju-page-gap, 40px) - 129px);
	transform: translateY(-50%);
}

body.my-suite-page-open #topbarMenu.global-topbar-menu{
	display: none;
}

.my-suite-content{
	width: min(560px, 100%);
	min-height: 260px;
	margin: 72px auto 0;
	border: 1px solid #eef2f7;
	padding: 42px 48px;
	background: #ffffff;
	text-align: center;
}

.my-suite-content-title{
	margin: 0 0 14px;
	font-size: 22px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: -0.03em;
	color: #111827;
}

.my-suite-content-desc{
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	font-weight: 500;
	letter-spacing: -0.02em;
	color: #64748b;
}

/* Align placeholder mypage tabs with the favorites filter row start. */
.my-suite-content.my-suite-reports-content{
	margin: 48px 0 0;
	text-align: left;
}

.my-suite-content.my-suite-content-profile{
	width: min(560px, 100%);
	margin: 48px 0 0;
	padding: 0;
	border: 0;
	text-align: left;
}

.my-suite-content.my-suite-payment-content{
	width: 100%;
	margin: 48px 0 0;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
}



.my-suite-payment-content .payment-page-head{
	margin-bottom: 24px;
}



.my-suite-payment-content .payment-plan-period{
	margin: 10px 0 0;
	color: #64748b;
	font-size: 12px;
	line-height: 1.45;
	font-weight: 600;
	letter-spacing: -0.02em;
	text-align: center;
}

.payment-plan-period{
	margin: 10px 0 0;
	color: #64748b;
	font-size: 12px;
	line-height: 1.45;
	font-weight: 600;
	letter-spacing: -0.02em;
	text-align: center;
}

.payment-plan-period.is-expired{
	color: #ef4444;
}

.payment-plan-card .payment-plan-btn,
.payment-plan-card .payment-plan-btn.is-secondary,
.payment-plan-card .payment-plan-btn.is-current,
.payment-plan-card .payment-plan-btn:disabled{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 42px;
	min-height: 42px;
	padding: 0 18px;
	box-sizing: border-box;
	line-height: 1;
}

.payment-coupon-card-wrap{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.payment-coupon-card{
	display: flex;
	flex-direction: column;
	min-height: 232px;
	padding: 22px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: none;
	box-sizing: border-box;
}

.payment-coupon-kind{
	display: inline-flex;
	align-items: center;
	width: fit-content;
	height: 28px;
	padding: 0 10px;
	border: 1px solid #bfdbfe;
	border-radius: 999px;
	background: #eff6ff;
	color: #2563eb;
	font-size: 12px;
	line-height: 1;
	font-weight: 700;
	box-sizing: border-box;
}

.payment-coupon-card h2{
	margin: 16px 0 10px;
	color: #111827;
	font-size: 19px;
	line-height: 1.35;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.payment-coupon-card p{
	margin: 0;
	color: #64748b;
	font-size: 13px;
	line-height: 1.55;
	font-weight: 500;
	letter-spacing: -0.01em;
}

.payment-coupon-use-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 42px;
	min-height: 42px;
	margin-top: auto;
	padding: 0 18px;
	border: 0;
	border-radius: 999px;
	background: #2563eb;
	color: #ffffff;
	font-size: 14px;
	line-height: 1;
	font-weight: 700;
	cursor: pointer;
	box-sizing: border-box;
}

@media (max-width: 900px)
{
	.payment-coupon-card-wrap{
		grid-template-columns: 1fr;
	}
}

.my-suite-payment-content .payment-plan-card:not(:has(.payment-plan-period))::after,
.payment-page-panel .payment-plan-card:not(:has(.payment-plan-period))::after{
	content: "";
	display: block;
	height: 27px;
}

.my-suite-payment-content .payment-plan-card:has(.payment-plan-period),
.payment-page-panel .payment-plan-card:has(.payment-plan-period){
	padding-bottom: 22px;
}

.my-suite-payment-content .payment-tabs,
.payment-page-panel .payment-tabs{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: calc((100% - 24px) / 3);
	min-width: 0;
	margin-bottom: 18px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
	overflow: hidden;
}

.my-suite-payment-content .payment-tab,
.payment-page-panel .payment-tab{
	width: 100%;
	min-width: 0;
	height: 50px;
	padding: 0 10px;
	border-right: 1px solid #e5e7eb;
	border-radius: 0;
	box-sizing: border-box;
	white-space: nowrap;
}

.my-suite-payment-content .payment-tab:last-child,
.payment-page-panel .payment-tab:last-child{
	border-right: 0;
}

.payment-coupon-use-btn{
	width: 50%;
	margin: auto auto 0;
	border: 1px solid #d1d5db;
	background: #ffffff;
	color: #111827;
}

.payment-plan-card .payment-plan-btn,
.payment-plan-card .payment-plan-btn.is-secondary,
.payment-plan-card .payment-plan-btn.is-current,
.payment-plan-card .payment-plan-btn:disabled,
.payment-page-panel .payment-plan-card .payment-plan-btn,
.payment-page-panel .payment-plan-card .payment-plan-btn.is-secondary,
.payment-page-panel .payment-plan-card .payment-plan-btn.is-current,
.payment-page-panel .payment-plan-card .payment-plan-btn:disabled{
	width: 50%;
	margin: auto auto 0;
	border: 1px solid #d1d5db;
	border-radius: 999px;
	background: #ffffff;
	color: #111827;
}

.payment-plan-card .payment-plan-btn.is-current,
.payment-plan-card .payment-plan-btn:disabled,
.payment-page-panel .payment-plan-card .payment-plan-btn.is-current,
.payment-page-panel .payment-plan-card .payment-plan-btn:disabled{
	cursor: default;
	pointer-events: none;
}

@media (max-width: 900px)
{
	.my-suite-payment-content .payment-tabs,
.payment-page-panel .payment-tabs{
		width: 100%;
	}
}

.my-suite-company-footer{
	position: relative;
	width: 100%;
	max-width: 100%;
	margin: auto 0 0;
	padding: 68px 0 48px;
	background: transparent;
	color: #6b7280;
	text-align: left;
	box-sizing: border-box;
}

.my-suite-company-footer::before{
	content: "";
	position: absolute;
	left: 50%;
	top: 35px;
	width: 100vw;
	height: 1px;
	transform: translateX(-50%);
	background: rgba(229, 231, 235, 0.8);
	pointer-events: none;
	box-shadow: none;
}

.my-suite-company-name{
	margin: 0 0 12px;
	color: #111827;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
}

.my-suite-company-grid{
	display: block;
	margin: 0;
	color: #6b7280;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.58;
	letter-spacing: 0;
}

.my-suite-company-grid p{
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	margin: 0 0 4px;
	padding: 0;
}

.my-suite-company-grid span{
	display: inline;
	margin: 0;
}

.my-suite-company-links{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 8px;
	margin: 12px 0 0;
	color: #9ca3af;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
}

.my-suite-company-link{
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #2563eb;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}

.my-suite-company-copyright{
	position: relative;
	margin: 33px 0 0;
	padding: 12px 0 0;
	color: #9ca3af;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0;
	text-align: center;
}

.my-suite-company-copyright span{
	color: #8b95a5;
	font-weight: 600;
}

.my-suite-company-copyright::before{
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	width: 100vw;
	height: 1px;
	transform: translateX(-50%);
	background: rgba(229, 231, 235, 0.8);
	pointer-events: none;
	box-shadow: none;
}

.admin-page-company-footer{
	width: 1180px;
	max-width: calc(100vw - 64px);
	margin: auto auto 0;
}

.admin-page-simple-footer{
	width: 1180px;
	max-width: calc(100vw - 64px);
	margin: auto auto 0;
	padding: 0 0 48px;
	box-sizing: border-box;
	text-align: center;
}

.admin-page-simple-copy{
	margin-top: 72px;
	color: #9ca3af;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
}

.admin-page-panel,
.broker-home-panel,
.my-suite-panel,
.notice-page-panel{
	overflow-y: scroll;
	overflow-x: hidden;
	scrollbar-gutter: stable;
	scrollbar-color: transparent transparent;
}

.admin-page-panel::-webkit-scrollbar,
.broker-home-panel::-webkit-scrollbar,
.my-suite-panel::-webkit-scrollbar,
.notice-page-panel::-webkit-scrollbar{
	width: 12px;
	background: transparent;
}

.admin-page-panel::-webkit-scrollbar-track,
.broker-home-panel::-webkit-scrollbar-track,
.my-suite-panel::-webkit-scrollbar-track,
.notice-page-panel::-webkit-scrollbar-track,
.admin-page-panel::-webkit-scrollbar-thumb,
.broker-home-panel::-webkit-scrollbar-thumb,
.my-suite-panel::-webkit-scrollbar-thumb,
.notice-page-panel::-webkit-scrollbar-thumb{
	background: transparent;
	border-color: transparent;
}


.my-suite-profile-card{
	display: grid;
	gap: 0;
	padding: 30px;
	border: 1px solid #e5e7eb;
	border-radius: 0;
	background: #ffffff;
}

.my-suite-profile-head{
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	margin-bottom: 22px;
	padding-bottom: 22px;
	border-bottom: 1px solid #eef2f7;
}

.my-suite-profile-photo{
	width: 76px;
	height: 76px;
	border: 1px solid #dbe3ec;
	border-radius: 999px;
	overflow: hidden;
	background: #f1f5f9;
}

.my-suite-profile-photo img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.my-suite-profile-name{
	margin: 0 0 6px;
	font-size: 20px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #111827;
}

.my-suite-profile-email{
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 500;
	color: #6b7280;
}

.my-suite-profile-row{
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	align-items: center;
	gap: 18px;
	min-height: 54px;
	border-bottom: 1px solid #eef2f7;
}

.my-suite-profile-row:last-of-type{
	border-bottom: 0;
}

.my-suite-profile-label{
	font-size: 14px;
	line-height: 1.4;
	font-weight: 600;
	color: #111827;
}

.my-suite-profile-value{
	min-width: 0;
	font-size: 14px;
	line-height: 1.45;
	font-weight: 500;
	color: #374151;
	overflow-wrap: anywhere;
}

.my-suite-profile-status{
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid #dbeafe;
	border-radius: 999px;
	background: #eff6ff;
	color: #2563eb;
	font-size: 13px;
	font-weight: 600;
}

.my-suite-profile-actions{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-top: 26px;
}

.my-suite-profile-btn{
	height: 48px;
	border: 1px solid #dbe3ec;
	border-radius: 6px;
	background: #ffffff;
	color: #374151;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
}

.my-suite-profile-btn.primary{
	border-color: #2563eb;
	background: #2563eb;
	color: #ffffff;
}

.my-suite-profile-loading{
	margin: 0;
	padding: 42px 0;
	text-align: center;
	color: #64748b;
	font-size: 14px;
	font-weight: 500;
}

.my-suite-profile-desc{
	margin: -28px 0 0;
	text-align: center;
	color: #64748b;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
}













body.my-suite-page-open .my-suite-profile-edit-photo-control{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	margin: 0 auto 22px;
}

body.my-suite-page-open .my-suite-profile-edit-photo-control .my-suite-myinfo-photo-box{
	flex: 0 0 auto;
	margin: 0;
}











































.my-suite-broker-apply-address-wrap{
	width: 100%;
}

.my-suite-content-profile .my-suite-broker-apply-address-wrap .my-suite-broker-apply-address-input{
	padding-left: 52px;
	cursor: pointer;
}

.my-suite-content-profile #mySuiteBrokerApplyAddressInput:not(.my-suite-broker-apply-address-input){
	padding-left: 52px;
	cursor: pointer;
	background-image: url("data:image/svg+xml,%3Csvg width='26' height='26' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='11' cy='11' r='7' stroke='%23475569' stroke-width='2.6'/%3E%3Cpath d='M16.2 16.2L21 21' stroke='%23475569' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 18px center;
	background-size: 26px 26px;
}









@media (max-width: 900px)
{
	.my-suite-panel{
		padding: 40px 16px 0;
	}

	.my-suite-tabs{
		flex-wrap: nowrap;
		gap: 6px;
	}

	.my-suite-tab{
		height: 32px;
		padding: 0 12px;
		font-size: 13px;
	}

	.global-topbar-my-suite-tabs{
		max-width: calc(100vw - 220px);
	}

	.my-suite-content{
		margin-top: 36px;
		padding: 30px 22px;
	}

	.my-suite-content.my-suite-content-profile{
		margin-top: 17px;
		padding: 0;
	}

	.my-suite-profile-card{
		padding: 22px;
	}

	.my-suite-profile-head,
.my-suite-profile-row,
.my-suite-profile-actions{
		grid-template-columns: 1fr;
	}

	.my-suite-profile-head{
		justify-items: center;
		text-align: center;
	}

	

	

	
}

/* PATCH 2.675: MY 리얼제주에서도 글로벌 상단바 메뉴 유지 */
body.my-suite-page-open .global-topbar{
	display: block;
	visibility: visible;
	opacity: 1;
	z-index: 150;
	border-bottom: 1.4px solid var(--line);
	box-shadow: none;
}

body.my-suite-page-open .global-topbar-inner{
	display: block;
	visibility: visible;
	opacity: 1;
}

body.my-suite-page-open .global-topbar-left,
body.my-suite-page-open .global-topbar-menu,
body.my-suite-page-open .global-topbar-right{
	display: flex;
	visibility: visible;
	opacity: 1;
}

body.my-suite-page-open .my-suite-panel{
	z-index: 120;
}

/* PATCH 2.678: MY 화면 상단 메뉴 항목 표시 복구 */
body.my-suite-page-open .global-topbar .topbar-menu-item,
body.my-suite-page-open .global-topbar .topbar-menu-free-wrap{
	display: inline-flex;
	visibility: visible;
	opacity: 1;
	color: var(--nav-color, #111827);
}

body.my-suite-page-open .global-topbar .topbar-menu-item.active,
body.my-suite-page-open .global-topbar .topbar-menu-item.active:hover{
	color: var(--nav-active-color, #2563eb);
}

/* PATCH 2.771: 중개사무소 가입 신청 화면 표시 복구 */


#detailAuthTrigger,
#detailAuthTrigger:hover,
#detailAuthTrigger:focus,
#detailAuthTrigger:focus-visible,
#detailAuthTrigger:active,
#detailAuthTrigger.account-open,
.global-auth-trigger,
.global-auth-trigger:hover,
.global-auth-trigger:focus,
.global-auth-trigger:focus-visible,
.global-auth-trigger:active,
.global-auth-trigger.account-open{
	border: 0;
	outline: 0;
	box-shadow: none;
}

/* ===== REALJEJU 2.903 SINGLE SOURCE TOKENS ===== */
:root{
	--font-ui: "SUITLocal", "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
	--font-display: "PaperlogyLocal", var(--font-ui);
	--brand: #2563eb;
	--bg: #f8fafc;
	--line: #edf1f5;
	--text: #111827;
	--shadow: 0 10px 28px rgba(15,23,42,0.06);
	--radius-main: 0px;
	--radius-small: 0px;
	--radius-pill: 0px;
	--topbar-main-height: 65px;
	--topbar-sub-height: 55px;
	--global-topbar-height: var(--topbar-main-height);
	--sub-topbar-height: var(--topbar-sub-height);
	--topbar-row-height: var(--topbar-main-height);
	--topbar-logo-stop-x: 130px;
	--topbar-type-width: 950px;
	--topbar-auth-gap: 0px;
	--sidebar-list-width: 430px;
	--detail-panel-width: var(--rj-detail-panel-width);
	--rj-detail-panel-width: 430px;
	--rj-detail-panel-gap: 8px;
	--rj-detail-panel-edge: 16px;
	--rj-list-panel-gap: 16px;
	--rj-panel-toggle-collapsed-overlap: 28px;
	--rj-panel-header-height: 56px;
	--rj-detail-panel-right-safe: 56px;
	--sidebar-current-width: var(--sidebar-list-width);
	--realjeju-side-nav-width: 160px;
	--rj-detail-card-margin-x: 22px;
	--rj-detail-card-gap-y: 20px;
	--rj-detail-card-padding-top: 18px;
	--rj-detail-card-padding-right: 18px;
	--rj-detail-card-padding-bottom: 10px;
	--rj-detail-card-padding-left: 18px;
	--rj-detail-title-gap-bottom: 16px;
	--rj-detail-title-padding-y: 0px;
	--rj-detail-title-padding-x: 0px;
	--rj-detail-title-font-size: 19px;
	--rj-detail-title-letter-spacing: 0px;
	/* 상세 정보 라벨ㆍ값ㆍ설명 본문은 같은 15px 본문 규격을 공유합니다. */
	--rj-detail-content-font-size: 15px;
	--rj-detail-content-letter-spacing: 0px;
	--rj-detail-row-padding-y: 11px;
	--rj-detail-row-padding-x: 0px;
	--rj-detail-row-last-padding-bottom: 0px;
	--rj-detail-row-min-height: 48px;
	--property-premium-main-label-width: 140px;
	--property-premium-column-gap: 24px;
	--property-premium-row-gap: 14px;
	--property-premium-field-gap: 18px;
	--property-premium-label-input-gap: 10px;
	--property-premium-input-height: 50px;
	--property-premium-option-gap: 44px;
	--property-registrant-main-label-width: 140px;
	--property-registrant-main-gap: 24px;
	--property-registrant-stack-width: 714px;
	--property-registrant-row-height: 50px;
	--property-registrant-row-gap: 8px;
	--property-registrant-column-gap: 36px;
	--property-registrant-field-width: 339px;
	--property-registrant-field-label-width: 52px;
	--property-registrant-field-gap: 28px;
	--property-registrant-input-start-offset: 80px;
	--property-registrant-input-full-width: 634px;
	--property-registrant-input-short-width: 259px;
	--property-registrant-checkbox-size: 24px;
	--property-registrant-check-bottom-gap: 12px;
	--property-registrant-form-bottom-gap: 0px;
}

#sidebarDetailPanel .detail-desc-check-heading,
.detail-desc-check-heading{
	font-weight: 700;
}

#sidebarDetailPanel .detail-desc,
.detail-desc{
	overflow-wrap: anywhere;
	word-break: break-word;
}

.detail-desc-source-link{
	display: inline-flex;
	align-items: baseline;
	gap: 0;
	color: #111827;
	text-decoration: none;
	white-space: nowrap;
}

.detail-desc-source-link strong{
	font-weight: 700;
}

.detail-desc-source-link span{
	color: #64748b;
	font-weight: 400;
}

.detail-desc-source-link:hover{
	text-decoration: underline;
	text-underline-offset: 2px;
}

.detail-desc-url-link{
	color: #334155;
	text-decoration: none;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.detail-desc-url-link:hover{
	text-decoration: underline;
	text-underline-offset: 2px;
}



/* PATCH 2.963: 마이페이지 1:1 문의내역 */
.my-suite-content.my-suite-inquiries-content{
	width: min(560px, 100%);
	max-width: none;
	margin-top: 48px;
	margin-right: 0;
	margin-left: 0;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
}

.my-suite-inquiry-head{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
}

.my-suite-inquiry-primary,
.my-suite-inquiry-secondary{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	padding: 0 18px;
	border-radius: 0;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.my-suite-inquiry-primary{
	border: 1px solid #2563eb;
	background: #2563eb;
	color: #ffffff;
}

.my-suite-inquiry-secondary{
	border: 1px solid #dbe3ee;
	background: #ffffff;
	color: #334155;
}

.my-suite-inquiry-empty,
.my-suite-inquiry-empty-text,
.my-suite-inquiry-form,
.my-suite-inquiry-list{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #e5e7eb;
	background: #ffffff;
}

.my-suite-inquiry-empty,
.my-suite-inquiry-empty-text{
	padding: 34px;
	text-align: center;
	color: #64748b;
	font-size: 14px;
	font-weight: 500;
}

.my-suite-inquiry-form{
	display: grid;
	gap: 10px;
	padding: 30px;
}

.my-suite-inquiry-label{
	font-size: 13px;
	font-weight: 700;
	color: #111827;
}

.my-suite-inquiry-input,
.my-suite-inquiry-textarea{
	width: 100%;
	box-sizing: border-box;
}

.my-suite-inquiry-textarea{
	min-height: 170px;
	height: auto;
	padding: 12px 14px;
	line-height: 1.55;
	resize: vertical;
}

.my-suite-inquiry-status{
	min-height: 20px;
	margin: 2px 0 0;
	color: #475569;
	font-size: 13px;
	font-weight: 500;
}

.my-suite-inquiry-actions{
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 6px;
}

.my-suite-inquiry-bottom-actions{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	margin: 0;
	padding: 24px 0;
}

.my-suite-content.my-suite-inquiries-content + .my-suite-company-footer{
	margin: 0;
	padding-top: 57px;
}



.my-suite-inquiry-list{
	display: grid;
}

.my-suite-inquiry-item + .my-suite-inquiry-item{
	border-top: 1px solid #edf2f7;
}

.my-suite-inquiry-row{
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) 86px;
	align-items: center;
	gap: 14px;
	width: 100%;
	padding: 16px 18px;
	border: 0;
	background: #ffffff;
	text-align: left;
	cursor: pointer;
}

.my-suite-inquiry-date{
	color: #64748b;
	font-size: 13px;
	font-weight: 500;
}

.my-suite-inquiry-title{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #111827;
	font-size: 14px;
	font-weight: 600;
}

.my-suite-inquiry-state{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 26px;
	border: 0;
	background: #eff6ff;
	box-shadow: inset 0 0 0 .5px #dbeafe;
	color: #2563eb;
	font-size: 12px;
	font-weight: 700;
}

.my-suite-inquiry-state.answered{
	background: #f0fdf4;
	box-shadow: inset 0 0 0 .5px #dcfce7;
	color: #15803d;
}

.my-suite-inquiry-state.deleted{
	background: #f8fafc;
	box-shadow: inset 0 0 0 .5px #e2e8f0;
	color: #64748b;
}

.my-suite-inquiry-detail{
	display: none;
	padding: 0 18px 18px;
}

.my-suite-inquiry-item.open .my-suite-inquiry-detail{
	display: grid;
	gap: 12px;
}

.my-suite-inquiry-detail-block{
	padding: 16px;
	background: #f8fafc;
	border: 1px solid #edf2f7;
}

.my-suite-inquiry-detail-block strong{
	display: block;
	margin-bottom: 8px;
	color: #111827;
	font-size: 13px;
	font-weight: 700;
}

.my-suite-inquiry-detail-block p{
	margin: 0;
	white-space: pre-line;
	color: #334155;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;
}

.my-suite-inquiry-detail-block span{
	display: block;
	margin-top: 8px;
	color: #64748b;
	font-size: 12px;
	font-weight: 500;
}

.my-suite-inquiry-reply-form{
	display: grid;
	gap: 10px;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid #edf2f7;
}

.my-suite-inquiry-reply-textarea{
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	min-height: 120px;
	box-sizing: border-box;
	padding: 12px 14px;
	border: 1px solid #dbe3ee;
	border-radius: 0;
	background: #ffffff;
	box-shadow: none;
	font-size: 14px;
	line-height: 1.55;
	outline: none;
	resize: vertical;
	transform: none;
}

.my-suite-inquiry-reply-status{
	margin: 0;
	color: #475569;
	font-size: 12px;
	font-weight: 500;
}

.my-suite-inquiry-reply-status:empty{
	display: none;
}

.my-suite-inquiry-reply-actions{
	display: flex;
	justify-content: flex-end;
	margin-top: 6px;
}

@media (max-width: 720px)
{
	.my-suite-inquiry-head,
.my-suite-inquiry-actions{
		align-items: stretch;
		flex-direction: column;
	}

	.my-suite-inquiry-row{
		grid-template-columns: 1fr;
		gap: 8px;
	}
}


/* PATCH 2.963: 1:1 문의 입력칸 포커스 파란 테두리 제거 */
.my-suite-inquiry-input:focus,
.my-suite-inquiry-textarea:focus{
	border-color: #dbe3ee;
	box-shadow: none;
	outline: none;
}


/* PATCH 2.963: 1:1 문의 입력칸 클릭/포커스 효과 완전 제거 */
.my-suite-inquiry-input,
.my-suite-inquiry-textarea,
.my-suite-inquiry-input:focus,
.my-suite-inquiry-input:focus-visible,
.my-suite-inquiry-input:active,
.my-suite-inquiry-textarea:focus,
.my-suite-inquiry-textarea:focus-visible,
.my-suite-inquiry-textarea:active{
	border-color: #dbe3ee !important;
	box-shadow: none !important;
	outline: none !important;
	background: #ffffff;
}


/* PATCH 2.963: 1:1 문의 내역 삭제 버튼 */


.my-suite-inquiry-delete{
	height: 28px;
	padding: 0 10px;
	border: 0;
	background: #ffffff;
	box-shadow: inset 0 0 0 .5px #fecaca;
	color: #dc2626;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
}

.my-suite-inquiry-delete:hover{
	background: #fff5f5;
}

@media (max-width: 720px)
{
	.my-suite-inquiry-row{
		grid-template-columns: 1fr;
	}

	.my-suite-inquiry-delete{
		justify-self: start;
	}
}


/* PATCH 2.963: 1:1 문의 상태 옆 삭제 버튼 정렬 */


.my-suite-inquiry-state-actions{
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	white-space: nowrap;
}

.my-suite-inquiry-state-actions .my-suite-inquiry-delete{
	flex: 0 0 auto;
}

@media (max-width: 720px)
{
	.my-suite-inquiry-state-actions{
		justify-content: flex-start;
	}
}


/* PATCH 2.963: 1:1 문의 삭제 버튼 중첩 버튼 구조 제거 */
.my-suite-inquiry-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto !important;
	align-items: center;
	gap: 8px;
	padding: 0 18px 0 0;
}

.my-suite-inquiry-main{
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr) 86px;
	align-items: center;
	gap: 14px;
	width: 100%;
	padding: 16px 0 16px 18px;
	border: 0;
	background: transparent;
	text-align: left;
	cursor: pointer;
}

@media (max-width: 720px)
{
	.my-suite-inquiry-row,
.my-suite-inquiry-main{
		grid-template-columns: 1fr !important;
	}

	.my-suite-inquiry-row{
		padding: 16px 18px;
	}

	.my-suite-inquiry-main{
		padding: 0;
	}
}


/* PATCH 2.963: 1:1 문의 삭제 버튼 우측 여백 정렬 */
.my-suite-inquiry-row{
	padding-right: 16px !important;
}


/* PATCH 2.963: 1:1 문의 제목 입력 한 줄 배치 및 상태 변화 제거 */
.my-suite-inquiry-title-row{
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
}

.my-suite-inquiry-title-row .my-suite-inquiry-label{
	margin: 0;
}

.my-suite-inquiry-input,
.my-suite-inquiry-input:hover,
.my-suite-inquiry-input:focus,
.my-suite-inquiry-input:focus-visible,
.my-suite-inquiry-input:active{
	-webkit-appearance: none !important;
	appearance: none !important;
	height: 44px !important;
	min-height: 44px !important;
	padding: 0 14px !important;
	border: 1px solid #dbe3ee !important;
	border-radius: 0 !important;
	background: #ffffff !important;
	box-shadow: none !important;
	outline: none !important;
	transform: none !important;
}

.my-suite-inquiry-textarea,
.my-suite-inquiry-textarea:hover,
.my-suite-inquiry-textarea:focus,
.my-suite-inquiry-textarea:focus-visible,
.my-suite-inquiry-textarea:active{
	-webkit-appearance: none !important;
	appearance: none !important;
	border: 1px solid #dbe3ee !important;
	border-radius: 0 !important;
	background: #ffffff !important;
	box-shadow: none !important;
	outline: none !important;
	transform: none !important;
}

@media (max-width: 720px)
{
	.my-suite-inquiry-title-row{
		grid-template-columns: 1fr;
		gap: 8px;
	}
}


/* PATCH 2.963: 1:1 문의 글자수/버튼 영역 정렬 */
.my-suite-inquiry-counter{
	margin-top: 4px !important;
	margin-bottom: 0 !important;
	color: #64748b;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
	text-align: right;
}

.my-suite-inquiry-status{
	min-height: 0 !important;
	margin: 0 !important;
	line-height: 1.4;
}

.my-suite-inquiry-form .my-suite-inquiry-actions{
	margin-top: 0 !important;
	padding-top: 30px !important;
}


/* PATCH 2.963: 1:1 문의 상태/삭제 버튼 높이 통일 */
.my-suite-panel .my-suite-inquiry-state,
.my-suite-panel .my-suite-inquiry-delete{
	height: 28px !important;
	min-height: 28px !important;
	line-height: 26px !important;
	box-sizing: border-box;
}

/* PATCH 3.107: 관리자 1:1 문의 목록 최종 행 규격 */






















@media (max-width: 720px)
{
	body.admin-page-open .my-suite-inquiry-row.admin-inquiry-row{
		grid-template-columns: 1fr;
		align-items: stretch;
		gap: 8px;
		min-height: 0;
		padding: 14px 18px;
	}

	body.admin-page-open .admin-inquiry-main-button{
		grid-template-columns: 1fr;
		min-height: 0;
		gap: 8px;
	}

	body.admin-page-open .admin-inquiry-row .my-suite-inquiry-state,
body.admin-page-open .admin-inquiry-row .my-suite-inquiry-delete{
		width: auto;
		min-width: 70px;
		height: 38px;
		min-height: 38px;
		line-height: 36px;
	}
}

/* PATCH 3.108: 관리자 1:1 문의 폭은 탭 2~5열, 행 크기는 마이페이지 문의내역 기준 */
body.admin-page-open .admin-inquiries-content{
	width: calc((100% / 6) * 4);
	max-width: none;
	margin-left: calc(100% / 6);
	margin-right: calc(100% / 6);
}

/* PATCH 3.172: 중개사 홈은 예전처럼 본문 스크롤을 쓰고, 전역 body 배경 덮어쓰기만 차단 */
html:has(body.broker-home-page-open),
body.broker-home-page-open{
	background: #ffffff;
}

/* PATCH 3.173: 중개사 홈 아래에 이어지는 숨은 페이지/지도 컨테이너 높이를 끊는다 */
body.broker-home-page-open .property-register-page,
body.broker-home-page-open .notice-page-panel,
body.broker-home-page-open .admin-page-panel,
body.broker-home-page-open .my-suite-panel,
body.broker-home-page-open #authModal{
	display: none;
}

body.broker-home-page-open:not(.detail-page-panel-open) .app{
	display: none;
	height: 0;
	min-height: 0;
}

body.broker-home-page-open.detail-page-panel-open .app,
body.my-suite-page-open.detail-page-panel-open .app,
body.admin-page-open.detail-page-panel-open .app{
	height: 0;
	min-height: 0;
}



body.admin-page-open .admin-inquiries-head .my-suite-content-title{
	margin: 0 0 14px;
}

body.admin-page-open .my-suite-inquiry-row.admin-inquiry-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	width: 100%;
	min-height: 0;
	padding: 0 16px 0 0;
	border: 0;
	background: #ffffff;
	box-sizing: border-box;
}

body.admin-page-open .admin-inquiry-main-button{
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr) 86px;
	align-items: center;
	gap: 14px;
	width: 100%;
	min-width: 0;
	min-height: 0;
	padding: 16px 0 16px 18px;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

body.admin-page-open .admin-inquiry-date{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #64748b;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0;
}

body.admin-page-open .admin-inquiry-author-cell{
	overflow: visible;
	text-overflow: clip;
	white-space: normal;
	overflow-wrap: anywhere;
	color: #64748b;
	font-weight: 400;
	line-height: 1.45;
}

body.admin-page-open .admin-inquiry-title{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	color: #111827;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

body.admin-page-open .admin-inquiry-row .my-suite-inquiry-state{
	width: 86px;
	height: 28px;
	min-height: 28px;
	box-sizing: border-box;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 26px;
}

body.admin-page-open .admin-inquiry-row .my-suite-inquiry-delete{
	width: auto;
	height: 28px;
	min-height: 28px;
	padding: 0 10px;
	box-sizing: border-box;
	border: 0;
	background: #ffffff;
	box-shadow: inset 0 0 0 .5px #fecaca;
	color: #dc2626;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 26px;
}

body.admin-page-open .my-suite-inquiry-detail.admin-inquiry-detail{
	padding: 0 18px 18px;
	background: #ffffff;
}

@media (max-width: 720px)
{
	body.admin-page-open .admin-inquiries-content{
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	body.admin-page-open .my-suite-inquiry-row.admin-inquiry-row,
body.admin-page-open .admin-inquiry-main-button{
		grid-template-columns: 1fr;
	}

	body.admin-page-open .my-suite-inquiry-row.admin-inquiry-row{
		padding: 16px 18px;
	}

	body.admin-page-open .admin-inquiry-main-button{
		padding: 0;
	}

	body.admin-page-open .admin-inquiry-row .my-suite-inquiry-state,
body.admin-page-open .admin-inquiry-row .my-suite-inquiry-delete{
		width: auto;
		min-width: 70px;
	}
}

.my-suite-content.my-suite-inquiries-content + .my-suite-company-footer{
	padding-top: 66px;
}

.my-suite-content.my-suite-inquiries-content + .my-suite-company-footer::before{
	top: 33px;
}

body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="inquiries"]{
	margin-bottom: 0;
}

body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="inquiries"] + .admin-page-company-footer{
	padding-top: 66px;
}

body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="inquiries"] + .admin-page-company-footer::before{
	top: 33px;
}

/* PATCH 3.110: 관리자 페이지 푸터 선 위/아래 여백을 마이페이지와 동일하게 고정 */


body.admin-page-open .admin-page-company-footer{
	margin: 0 auto;
	padding-top: 66px;
}

body.admin-page-open .admin-page-company-footer::before{
	top: 33px;
}

/* PATCH 3.111: 공지사항 목록 마지막 박스와 푸터 선 사이도 공통 간격만 남김 */
body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="notices"] .admin-notice-manager{
	margin-bottom: 0;
}

/* PATCH 3.112: 마이페이지/관리자 페이지 콘텐츠 끝에서 푸터 선까지 72px 공통 */
body.my-suite-page-open .my-suite-company-footer,
body.my-suite-page-open .my-suite-content.my-suite-inquiries-content + .my-suite-company-footer{
	margin: 0;
	padding-top: 105px;
}

body.my-suite-page-open .my-suite-company-footer::before,
body.my-suite-page-open .my-suite-content.my-suite-inquiries-content + .my-suite-company-footer::before{
	top: 72px;
}

body.admin-page-open .admin-page-tab-panel.active{
	margin-bottom: 0;
}

body.admin-page-open .admin-page-company-footer,
body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="inquiries"] + .admin-page-company-footer{
	margin: 0 auto;
	padding-top: 105px;
}

body.admin-page-open .admin-page-company-footer::before,
body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="inquiries"] + .admin-page-company-footer::before{
	top: 72px;
}

/* PATCH 3.113: 마이페이지 관심매물은 숨은 최소높이 때문에 하단 여백이 커지지 않게 조정 */
body.my-suite-page-open .my-suite-content.my-suite-favorites-content{
	min-height: 0;
}

/* PATCH 3.148: 마이페이지/중개사 홈 목록 클릭 시 기존 화면은 그대로 두고 오른쪽 상세 패널만 고정 표시 */
body.my-suite-page-open.detail-page-panel-open .sidebar,
body.broker-home-page-open.detail-page-panel-open .sidebar,
body.admin-page-open.detail-page-panel-open .sidebar{
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	z-index: 2147483645;
	width: var(--rj-detail-panel-width);
	max-width: 100vw;
	height: 100vh;
	max-height: 100vh;
	background: transparent;
	border-right: 0;
	box-shadow: none;
	opacity: 1;
	pointer-events: none;
	transform: none;
}

body.my-suite-page-open.detail-page-panel-open::before,
body.broker-home-page-open.detail-page-panel-open::before,
body.admin-page-open.detail-page-panel-open::before{
	content: "";
	position: fixed;
	top: 0;
	right: var(--rj-detail-panel-width);
	bottom: 0;
	left: 0;
	z-index: 2147483644;
	background: rgba(17, 24, 39, 0.36);
	pointer-events: none;
}

body.my-suite-page-open.detail-page-panel-open .sidebar-list-panel,
body.broker-home-page-open.detail-page-panel-open .sidebar-list-panel,
body.admin-page-open.detail-page-panel-open .sidebar-list-panel{
	display: none;
}

body.my-suite-page-open.detail-page-panel-open #sidebarDetailPanel,
body.broker-home-page-open.detail-page-panel-open #sidebarDetailPanel,
body.admin-page-open.detail-page-panel-open #sidebarDetailPanel{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	z-index: 901;
	width: 100%;
	max-width: 100%;
	height: auto;
	max-height: none;
	border-top: 0;
	border-right: 0;
	border-bottom: 0;
	border-left: 0;
	box-shadow: none;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* PATCH 3.148: 상세 패널이 열려도 기존 화면 위치와 폭은 유지 */
body.my-suite-page-open.detail-page-panel-open .my-suite-panel,
body.broker-home-page-open.detail-page-panel-open .broker-home-panel{
	right: 0;
	width: auto;
	pointer-events: auto;
}

body.admin-page-open.detail-page-panel-open .admin-page-panel{
	right: 0;
	width: auto;
	pointer-events: auto;
}

body.detail-page-panel-open .broker-listing-more-menu,
body.detail-page-panel-open .broker-listing-more-menu.open,
body.detail-page-panel-open .broker-home-filter-menu,
body.detail-page-panel-open .broker-home-filter-menu.open,
body.detail-page-panel-open .global-account-dropdown,
body.detail-page-panel-open .global-account-dropdown.open,
body.detail-page-panel-open .extra-filter-menu,
body.detail-page-panel-open .extra-filter-dropdown.open .extra-filter-menu,
body.detail-page-panel-open .type-filter-menu,
body.detail-page-panel-open .type-filter-dropdown.open .type-filter-menu,
body.detail-page-panel-open .deal-filter-menu,
body.detail-page-panel-open .deal-filter-dropdown.open .deal-filter-menu,
body.detail-page-panel-open .deal-method-filter-menu,
body.detail-page-panel-open .deal-method-filter-dropdown.open .deal-method-filter-menu,
body.detail-page-panel-open .property-register-dropdown-menu,
body.detail-page-panel-open .property-register-dropdown.open .property-register-dropdown-menu,
body.detail-dropdown-suppress .broker-listing-more-menu,
body.detail-dropdown-suppress .broker-listing-more-menu.open,
body.detail-dropdown-suppress .broker-home-filter-menu,
body.detail-dropdown-suppress .broker-home-filter-menu.open,
body.detail-dropdown-suppress .global-account-dropdown,
body.detail-dropdown-suppress .global-account-dropdown.open,
body.detail-dropdown-suppress .extra-filter-menu,
body.detail-dropdown-suppress .extra-filter-dropdown.open .extra-filter-menu,
body.detail-dropdown-suppress .type-filter-menu,
body.detail-dropdown-suppress .type-filter-dropdown.open .type-filter-menu,
body.detail-dropdown-suppress .deal-filter-menu,
body.detail-dropdown-suppress .deal-filter-dropdown.open .deal-filter-menu,
body.detail-dropdown-suppress .deal-method-filter-menu,
body.detail-dropdown-suppress .deal-method-filter-dropdown.open .deal-method-filter-menu,
body.detail-dropdown-suppress .property-register-dropdown-menu,
body.detail-dropdown-suppress .property-register-dropdown.open .property-register-dropdown-menu{
	display: none;
	pointer-events: none;
}

body.detail-page-panel-open .broker-listing-menu-btn,
body.detail-page-panel-open .broker-home-filter-btn,
body.detail-page-panel-open .extra-filter-trigger,
body.detail-page-panel-open .type-filter-trigger,
body.detail-page-panel-open .deal-filter-trigger,
body.detail-page-panel-open .property-register-dropdown-trigger,
body.detail-dropdown-suppress .broker-listing-menu-btn,
body.detail-dropdown-suppress .broker-home-filter-btn,
body.detail-dropdown-suppress .extra-filter-trigger,
body.detail-dropdown-suppress .type-filter-trigger,
body.detail-dropdown-suppress .deal-filter-trigger,
body.detail-dropdown-suppress .property-register-dropdown-trigger{
	pointer-events: none;
}

body.detail-page-panel-open .global-topbar-right,
body.detail-page-panel-open .global-account-dropdown,
body.detail-page-panel-open .global-auth-trigger,
body.detail-dropdown-suppress .global-topbar-right,
body.detail-dropdown-suppress .global-account-dropdown,
body.detail-dropdown-suppress .global-auth-trigger{
	pointer-events: none;
}

body.my-suite-page-open.detail-page-panel-open .my-suite-inner{
	width: 1180px;
	max-width: calc(100vw - 64px);
}

/* PATCH 3.148: 최초 로딩 시 닫힌 왼쪽 패널이 잠깐 보이는 현상 방지 */
body.sidebar-list-collapsed:not(.detail-page-panel-open) .sidebar{
	display: none;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transform: translateX(calc(-1 * var(--sidebar-list-width) - 16px));
	transition: none;
}

body:not(.sidebar-list-collapsed):not(.map-panels-collapsed) .sidebar,
body.detail-page-panel-open .sidebar{
	visibility: visible;
}

/* PATCH 3.132: 오른쪽 패널 가격 웨이트/자간을 왼쪽 매물 카드 기준으로 맞춤 */
#sidebarDetailPanel .detail-summary-price-row{
	margin: 0 0 12px;
}

#sidebarDetailPanel .detail-summary-price{
	font-family: var(--font-ui);
	font-variant-numeric: tabular-nums;
	font-size: 27px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
}

#sidebarDetailPanel .detail-title{
	margin: 0 0 10px;
	font-size: 15.5px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
}

#sidebarDetailPanel .detail-summary-address{
	margin: 0;
	color: #6b7280;
	font-size: 13.5px;
	font-weight: 400;
	line-height: 1.45;
}

/* PATCH 3.130: 관리자 1:1 문의 상태 버튼 표시 */


body.admin-page-open .admin-inquiries-filterbar [data-admin-inquiry-view="deleted"]{
	margin-left: auto;
}

/* PATCH 3.163: 관리자 1:1 문의는 매물/회원 관리처럼 제목 없이 전체 폭 버튼 영역으로 시작 */




body.admin-page-open .admin-inquiries-head{
	display: none;
	margin: 0;
}

body.admin-page-open .admin-inquiries-filterbar{
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0 0 18px;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.my-suite-page-open):not(.broker-home-open):not(.property-register-page-open):not(.notice-page-open) .global-topbar-right .global-auth-trigger.version-only{
	min-width: 78px;
	cursor: default;
	pointer-events: none;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.my-suite-page-open):not(.broker-home-open):not(.property-register-page-open):not(.notice-page-open) .global-topbar-right .global-auth-trigger.version-only .topbar-version-text{
	display: block;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	opacity: 1;
	white-space: nowrap;
}

#globalAccountDropdown.side-account-mode{
	min-width: 186px;
}

/* PATCH 3.347: 왼쪽 사이드바 아코디언 메뉴 간격/배경 정리 */
.realjeju-side-nav .realjeju-side-account-menu,
.realjeju-side-nav .realjeju-side-nav-flyout{
	width: calc(100% + 28px);
	margin: 2px -14px 4px;
	padding: 2px 0;
	background: #f3f4f6;
	box-shadow: none;
}

.realjeju-side-nav .realjeju-side-account-menu-item.global-account-menu-item,
.realjeju-side-nav .realjeju-side-nav-flyout-check{
	display: flex;
	align-items: center;
	width: 100%;
	height: 44px;
	min-height: 44px;
	padding: 0 22px;
	box-sizing: border-box;
	border: 0;
	background: transparent;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.1px;
	line-height: 1.1;
	text-align: left;
	white-space: nowrap;
	box-shadow: none;
}

.realjeju-side-nav .realjeju-side-nav-flyout-check{
	gap: 6px;
	font-size: 13px;
}

.realjeju-side-nav .realjeju-side-account-menu-item.global-account-menu-item:hover,
.realjeju-side-nav .realjeju-side-nav-flyout-check:hover{
	background: #eef2f7;
	color: #111827;
}

.realjeju-side-nav .realjeju-side-account-menu-item.global-account-menu-item.active,
.realjeju-side-nav .realjeju-side-account-menu-item.global-account-menu-item[aria-current="page"]{
	color: #111827;
	font-weight: 700;
}

.realjeju-side-nav .realjeju-side-account-menu-line{
	margin: 2px 0;
}

/* PATCH 2.986: 입력/버튼 선택 시 외곽선과 그림자 효과 제거 */
input:focus,
textarea:focus,
select:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.auth-modal-input:focus,
.property-register-input:focus,
.property-register-select:focus,
.admin-notice-field input:focus,
.admin-notice-field select:focus,
.admin-notice-field textarea:focus{
	outline: none !important;
	box-shadow: none !important;
	transform: none !important;
}

button:focus,
button:focus-visible{
	outline: none !important;
	box-shadow: none !important;
}

/* PATCH 3.347: hidden 속성은 사이드 메뉴 flex 스타일보다 우선 적용 */
.realjeju-side-nav .realjeju-side-nav-item[hidden],
.realjeju-side-nav .realjeju-side-register-btn[hidden],
.realjeju-side-nav .realjeju-side-account-badge[hidden],
.realjeju-side-nav .realjeju-side-account-image[hidden]{
	display: none;
}

/* PATCH 3.347: 상단 메뉴 자리에 홈 필터 배치 */
.global-topbar-menu.has-map-filters{
	left: var(--realjeju-side-nav-width);
	right: 86px;
	top: 50%;
	transform: translateY(-50%);
	width: auto;
	max-width: none;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--sub-filter-gap);
	overflow: visible;
	z-index: 1200;
}

.global-topbar-menu.has-map-filters .map-filter-bar{
	position: static;
	top: auto;
	left: auto;
	z-index: 1200;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: var(--sub-filter-gap);
	width: max-content;
	min-width: max-content;
	max-width: none;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	overflow: visible;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open){
	--topbar-sub-height: 0px;
	--sub-topbar-height: 0px;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sub-topbar{
	height: 0;
	min-height: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	overflow: visible;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sub-topbar-inner{
	display: none;
}

body.admin-page-open .global-topbar-menu.has-map-filters,
body.broker-home-page-open .global-topbar-menu.has-map-filters,
body.property-register-page-open .global-topbar-menu.has-map-filters,
body.my-suite-page-open .global-topbar-menu.has-map-filters,
body.notice-page-open .global-topbar-menu.has-map-filters,
body.auth-page-open .global-topbar-menu.has-map-filters,
body.payment-page-open .global-topbar-menu.has-map-filters{
	display: none;
}

.global-topbar-menu.has-map-filters .sub-address-search{
	width: 286px;
	max-width: 286px;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger{
	gap: 8px;
	padding: 0 18px;
}

/* 상단 `전체` 필터는 아이콘ㆍ라벨ㆍ화살표를 포함해 96px 고정 폭을 유지한다. */
.global-topbar-menu.has-map-filters .all-filter-trigger{
	box-sizing: border-box;
	display: inline-grid;
	grid-template-columns: 16px max-content 12px;
	column-gap: 7px;
	align-items: center;
	justify-content: center;
	min-width: 96px;
	max-width: 96px;
	width: 96px;
	padding: 0 16px;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger > i:first-child,
.global-topbar-menu.has-map-filters .all-filter-trigger > i:first-child{
	display: inline-flex;
	flex: 0 0 16px;
	align-items: center;
	justify-content: center;
	width: 16px;
	font-size: 16px;
	line-height: 1;
	color: #6b7280;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger > .map-region-heart-icon{
	display: block;
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	fill: transparent;
	stroke: #9ca3af;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	filter: none;
}

.global-topbar-menu.has-map-filters .all-filter-trigger > i:first-child{
	transform: none !important;
}

.global-topbar-menu.has-map-filters .all-filter-trigger > span{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	line-height: 1;
}

.global-topbar-menu.has-map-filters .all-filter-trigger > i:last-child{
	display: inline-flex;
	flex: 0 0 12px;
	align-items: center;
	justify-content: center;
	width: 12px;
	min-width: 12px;
	height: 12px;
	line-height: 1;
	transform-origin: center;
}

.global-topbar-menu.has-map-filters .map-region-filter-menu{
	/* PATCH 3.850: 주소/현재 위치 드롭다운 하단이 리스트 영역과 동일한 여백을 갖도록 하단 여백 추가 */
	width: 420px;
	max-width: calc(100vw - 48px);
	max-height: min(760px, calc(100vh - 125px - var(--rj-detail-panel-edge, 16px)));
	padding: 0 0 var(--rj-detail-panel-edge, 16px) 0;
	border-radius: 20px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.98);
}

.map-region-panel{
	display: flex;
	flex-direction: column;
	max-height: calc(min(760px, calc(100vh - 125px - var(--rj-detail-panel-edge, 16px))) - var(--rj-detail-panel-edge, 16px));
	min-height: 420px;
	color: #111827;
}

.map-region-loading,
.map-region-empty{
	padding: 28px 24px;
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.45;
}

.map-region-breadcrumb{
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 0 0 auto;
	padding: 24px 24px 18px;
	color: #05070a;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	white-space: nowrap;
}

.map-region-breadcrumb-chevron{
	color: #05070a;
	font-size: 26px;
	font-weight: 400;
	line-height: 1;
	transform: translateY(-1px);
}

.map-region-breadcrumb-province,
.map-region-breadcrumb-city,
.map-region-breadcrumb-dong{
	text-decoration: none;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
	text-decoration-color: currentColor;
	border: 0;
	padding: 0;
	margin: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	line-height: inherit;
	cursor: pointer;
}

.map-region-breadcrumb-province:hover,
.map-region-breadcrumb-province:focus-visible,
.map-region-breadcrumb-city:hover,
.map-region-breadcrumb-city:focus-visible,
.map-region-breadcrumb-dong:hover,
.map-region-breadcrumb-dong:focus-visible{
	text-decoration: underline;
}

.map-region-breadcrumb-dong{
	display: inline-flex;
	align-items: center;
	border: 0;
	padding: 0;
	margin: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	line-height: inherit;
	cursor: pointer;
}

.map-region-breadcrumb-placeholder{
	color: #a3a3a3;
}

.map-region-breadcrumb-chevron-muted{
	color: #a3a3a3;
}

.map-region-panel.is-city-select{
	min-height: 0;
}

.map-region-city-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	padding: 22px 24px 32px;
}



.map-region-city-option{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: 40px;
	border: 0;
	border-radius: 4px;
	background: #f3f4f6;
	color: #05070a;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.map-region-province-option{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: 40px;
	border: 0;
	border-radius: 4px;
	background: #f3f4f6;
	color: #05070a;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.map-region-city-option:hover{
	background: #e9edf2;
}

.map-region-province-option:hover{
	background: #e9edf2;
}

.map-region-list-head{
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	flex: 0 0 auto;
	margin: 0;
	padding: 14px 24px 12px;
	border-top: 1px solid #eef0f3;
	border-bottom: 0.5px solid #e5e7eb;
	background: #f4f6f8;
	white-space: nowrap;
}

.map-region-list-count{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
}

.map-region-list-count strong{
	color: #2563eb;
	font-size: 16px;
	font-weight: 800;
	line-height: 1;
}

.map-region-list-count-help{
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	border: 1px solid #6b7280;
	border-radius: 50%;
	color: #6b7280;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	cursor: default;
	outline: none;
}

.map-region-list-count-help-panel{
	position: absolute;
	left: 0;
	top: calc(100% + 10px);
	z-index: 50;
	display: none;
	width: 300px;
	padding: 12px 14px;
	border: 1px solid #d8dee8;
	border-radius: 8px;
	background: #ffffff;
	color: #334155;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.1px;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: break-word;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.map-region-list-count-help-panel > span{
	position: relative;
	display: block;
	padding-left: 10px;
}

.map-region-list-count-help-panel > span::before{
	content: "•";
	position: absolute;
	left: 0;
	top: 0;
}

.map-region-list-count-help-panel > .map-region-list-count-help-note{
	margin-top: 8px;
}

.map-region-list-count-help:hover .map-region-list-count-help-panel,
.map-region-list-count-help:focus .map-region-list-count-help-panel,
.map-region-list-count-help:focus-within .map-region-list-count-help-panel{
	display: block;
}

.map-region-sort-actions{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	color: #9ca3af;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
}

.map-region-sort-btn{
	display: inline-flex;
	align-items: center;
	border: 0;
	padding: 0;
	background: transparent;
	color: #6b7280;
	font: inherit;
	line-height: 1;
	cursor: pointer;
}

.map-region-sort-btn.active{
	color: #111827;
	font-weight: 800;
}

.map-region-sort-divider{
	color: #d1d5db;
	font-weight: 500;
}

.map-region-complex-list{
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 0 24px 18px;
}

.map-region-complex-card{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	padding: 18px 0;
	border-bottom: 1px solid #eef0f3;
	background: #ffffff;
}

.map-region-complex-card > i{
	flex: 0 0 auto;
	margin-top: 2px;
	color: #a3a7ad;
	font-size: 24px;
	line-height: 1;
}

.map-region-heart-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	margin: -3px -2px 0 0;
	border: 0;
	padding: 0;
	background: transparent;
	cursor: pointer;
}

.map-region-heart-btn:disabled{
	cursor: default;
	opacity: 0.55;
}

.map-region-heart-btn .map-region-heart-icon{
	display: block;
	width: 26px;
	height: 26px;
	fill: transparent;
	stroke: #a3a7ad;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	filter: none;
}

.map-region-heart-btn.active .map-region-heart-icon{
	fill: #EF4444;
	stroke: #ffffff;
	stroke-width: 1.6;
	filter: drop-shadow(0 1px 3px rgba(15, 23, 42, 0.45));
}

.map-region-complex-main{
	min-width: 0;
}

.map-region-complex-title-row{
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
}

.map-region-complex-title-row strong{
	overflow: hidden;
	color: #05070a;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.map-region-complex-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 0;
	height: 23px;
	padding: 0 8px;
	border: 0;
	border-radius: 999px;
	color: #2563eb;
	background: #eff6ff;
	box-shadow: inset 0 0 0 1px #bfd4ff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.1px;
}

.detail-summary-type-badge[data-type="아파트"],
.map-region-complex-badge[data-type="아파트"]{
	background: rgba(59,130,246,0.08);
	color: var(--brand);
	box-shadow: inset 0 0 0 1px rgba(15, 41, 66, 0.06);
}

.detail-summary-type-badge[data-type="단독주택"],
.detail-summary-type-badge[data-type="다가구주택"],
.map-region-complex-badge[data-type="단독주택"],
.map-region-complex-badge[data-type="다가구주택"]{
	background: rgba(59,130,246,0.06);
	color: #1E3A8A;
	box-shadow: inset 0 0 0 1px rgba(15, 41, 66, 0.06);
}

.detail-summary-type-badge[data-type="상가"],
.map-region-complex-badge[data-type="상가"]{
	background: rgba(59,130,246,0.10);
	color: #3730A3;
	box-shadow: inset 0 0 0 1px rgba(15, 41, 66, 0.06);
}

.detail-summary-type-badge[data-type="토지"],
.map-region-complex-badge[data-type="토지"]{
	background: rgba(16,185,129,0.08);
	color: #047857;
	box-shadow: inset 0 0 0 1px rgba(15, 41, 66, 0.06);
}

.detail-summary-type-badge[data-type="사무실"],
.detail-summary-type-badge[data-type="hotel"],
.map-region-complex-badge[data-type="사무실"],
.map-region-complex-badge[data-type="hotel"]{
	background: rgba(59,130,246,0.10);
	color: #3730A3;
	box-shadow: inset 0 0 0 1px rgba(15, 41, 66, 0.06);
}

.detail-summary-type-badge[data-type="오피스텔"],
.detail-summary-type-badge[data-type="원룸 / 투룸"],
.detail-summary-type-badge[data-type="생활형숙박시설"],
.detail-summary-type-badge[data-type="living_accommodation"],
.detail-summary-type-badge[data-type="빌라"],
.detail-summary-type-badge[data-type="건물"],
.detail-summary-type-badge[data-type="공장 / 창고"],
.detail-summary-type-badge[data-type="호텔"],
.detail-summary-type-badge[data-type="펜션"],
.detail-summary-type-badge[data-type="pension"],
.map-region-complex-badge[data-type="오피스텔"],
.map-region-complex-badge[data-type="원룸 / 투룸"],
.map-region-complex-badge[data-type="생활형숙박시설"],
.map-region-complex-badge[data-type="living_accommodation"],
.map-region-complex-badge[data-type="빌라"],
.map-region-complex-badge[data-type="건물"],
.map-region-complex-badge[data-type="공장 / 창고"],
.map-region-complex-badge[data-type="호텔"],
.map-region-complex-badge[data-type="펜션"],
.map-region-complex-badge[data-type="pension"]{
	background: rgba(59,130,246,0.10);
	color: var(--brand);
	box-shadow: inset 0 0 0 1px rgba(15, 41, 66, 0.06);
}

.map-region-complex-meta{
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
	color: #4b5563;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0;
}

.map-region-complex-meta span{
	color: #d1d5db;
}

.map-region-complex-deals{
	display: flex;
	align-items: center;
	gap: 11px;
	margin-top: 11px;
	color: #8b8f96;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0;
}

.map-region-complex-deals span + span{
	position: relative;
}

.map-region-complex-deals span + span::before{
	content: "";
	position: absolute;
	left: -6px;
	top: 50%;
	width: 1px;
	height: 12px;
	background: #d7dbe0;
	transform: translateY(-50%);
}

.map-region-complex-deals b{
	color: #2563eb;
	font-weight: 800;
}

.map-region-dong-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	padding: 12px 24px 18px;
}

.map-region-dong-option{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: 40px;
	border: 0;
	border-radius: 4px;
	background: #f3f4f6;
	color: #05070a;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.map-region-dong-option:hover{
	background: #e9edf2;
}

.map-region-footer{
	flex: 0 0 auto;
	padding: 14px 24px 20px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.72), #ffffff 18px);
}

.map-region-map-btn{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	height: 52px;
	border: 0;
	border-radius: 8px;
	background: #2563eb;
	color: #ffffff;
	font-size: 17px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.global-topbar-menu.has-map-filters .all-filter-menu,
body > .map-filter-floating-menu.all-filter-menu{
	width: 420px;
	max-height: min(760px, calc(100vh - 125px - var(--rj-detail-panel-edge, 16px)));
	/* PATCH 3.851/3.862: "전체" 드롭다운 하단도 목록 여백과 동일하게 맞춥니다. */
	padding: 0 0 var(--rj-detail-panel-edge, 16px) 0 !important;
	border-radius: 20px;
	/* 툴팁이 드롭다운 경계를 넘어 표시될 수 있도록 우측 잘림 제거 */
	overflow: visible;
	background: rgba(255, 255, 255, 0.98);
}

.all-filter-head{
	position: sticky;
	top: 0;
	z-index: 2;
	display: grid;
	grid-template-columns: 84px 1fr 84px;
	align-items: center;
	gap: 8px;
	min-height: 84px;
	padding: 0 20px;
	box-sizing: border-box;
	background: #ffffff;
	border-bottom: 8px solid #f3f4f6;
	border-radius: 20px 20px 0 0;
}

.all-filter-head strong{
	justify-self: center;
	color: #111827;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
}

.all-filter-title{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
}

.all-filter-help{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border: 1.5px solid #7b8088;
	border-radius: 50%;
	color: #7b8088;
	background: #ffffff;
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	transform: translateY(0.6px);
}

.all-filter-help > span{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transform: translateY(0.2px);
}

.all-filter-help::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	width: 46px;
	height: 20px;
	transform: translateX(-50%);
	pointer-events: auto;
}

.all-filter-help-panel{
	position: absolute;
	left: 50%;
	top: calc(100% + 14px);
	/* 드롭다운 위로 항상 떠야 하므로 상위 스택에 노출 */
	z-index: 2147483000;
	display: none;
	box-sizing: border-box;
	width: 300px;
	max-width: calc(100vw - 80px);
	padding: 20px 22px 18px;
	border: 1px solid #d8dee8;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.1px;
	text-align: left;
	white-space: normal;
	word-break: keep-all;
	overflow-wrap: break-word;
	transform: translateX(-50%);
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.12s ease, visibility 0.12s ease;

}

.all-filter-help.open + .all-filter-help-panel{
	display: block;
	visibility: visible;
	opacity: 1;
}

.all-filter-help-close{
	position: absolute;
	right: 16px;
	top: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 0;
	background: transparent;
	color: #94a3b8;
	padding: 0;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
}

.all-filter-help-close i{
	display: inline-flex;
	line-height: 1;
}

.all-filter-help-title{
	display: block;
	margin: 0 0 12px;
	color: #111827;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	text-align: left;
}

.all-filter-help-list{
	display: block;
	text-align: left;
}

.all-filter-help-list span{
	display: block;
	padding-left: 10px;
	text-indent: -10px;
}

.all-filter-help-link{
	display: inline-block;
	margin-top: 14px;
	color: #6b7280;
	font-size: 14px;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
	text-align: left;
}

.all-filter-reset,
.all-filter-close{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #d7dde6;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	cursor: pointer;
}

.all-filter-head .all-filter-reset{
	gap: 4px;
	width: 84px !important;
	min-width: 84px !important;
	max-width: 84px !important;
	height: 36px !important;
	min-height: 36px !important;
	padding: 0 8px !important;
	border-radius: 6px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	white-space: nowrap;
}

.all-filter-head .all-filter-reset:hover{
	background: #f3f4f6 !important;
	border-color: #d7dde6;
	color: #111827;
}

.all-filter-head .all-filter-reset i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 12px;
	min-width: 12px;
	font-size: 12px;
	line-height: 1;
}

.all-filter-close{
	justify-self: end;
	width: 36px;
	height: 36px;
	border: 0;
	font-size: 22px;
	line-height: 1;
}

.all-filter-close i{
	line-height: 1;
}

.all-filter-body{
	box-sizing: border-box;
	flex: 1 1 auto;
	min-height: 0;
	max-height: calc(min(760px, calc(100vh - 125px - var(--rj-detail-panel-edge, 16px))) - 76px);
	padding-bottom: var(--rj-detail-panel-edge, 16px) !important;
	overflow-y: auto;
	scrollbar-gutter: auto;
	background: #ffffff;
	border-radius: 0 0 20px 20px;
}

.all-filter-section{
	border-bottom: 8px solid #f3f4f6;
	background: #ffffff;
}

.all-filter-menu .all-filter-section[data-all-filter-section="extra"]{
	/* PATCH 3.862: 기타 조건은 마지막 메뉴이므로 하단 회색 구분선을 제거합니다. */
	border-bottom: 0;
}

.all-filter-section-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 58px;
	padding: 0 24px;
	box-sizing: border-box;
	border: 0;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
}

.all-filter-section-head i{
	font-size: 18px;
}

.all-filter-section-content{
	display: none;
	padding: 0 24px 24px;
}

.all-filter-section.open .all-filter-section-content{
	display: block;
}

.all-filter-fixed-section .all-filter-section-content{
	display: block;
	padding-top: 24px;
}

.all-filter-fixed-section[data-all-filter-section="deal"] .all-filter-section-content{
	padding-top: 24px;
}

.all-filter-fixed-section[data-all-filter-section="type"] .all-filter-section-content{
	padding-top: 24px;
	padding-bottom: 10px;
}

.all-filter-summary{
	display: flex;
	align-items: center;
	min-height: 42px;
	margin: 0 0 12px;
	color: #2563eb;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.2px;
	word-break: keep-all;
}

.all-price-filter-options{
	display: flex;
	flex-direction: column;
	gap: 22px;
	width: 100%;
}

.all-price-filter-options .price-filter-panel{
	gap: 18px;
}

.all-price-filter-options .price-filter-summary-row{
	min-height: 24px;
}

.all-area-filter-options{
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.all-area-filter-options .area-filter-summary-row{
	min-height: 24px;
}

.all-room-bath-filter-options,
.all-floor-direction-filter-options,
.all-approval-year-filter-options,
.all-extra-filter-options{
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
}

.all-approval-year-filter-options{
	gap: 20px;
}

.all-room-bath-filter-options .extra-filter-reset-row,
.all-floor-direction-filter-options .extra-filter-reset-row,
.all-extra-filter-options .extra-filter-reset-row{
	width: 100%;
	margin-top: 0;
	padding-top: 14px;
}

.all-filter-menu .floor-direction-filter-section-title,
.all-filter-menu .room-bath-filter-section-title{
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0;
}

.all-filter-open-detail{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 44px;
	border: 0;
	border-radius: 8px;
	background: #f3f4f6;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: -0.1px;
	cursor: pointer;
}

.all-filter-open-detail:hover{
	background: #e9edf3;
	color: #111827;
}

.all-filter-deal-grid{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

.all-filter-type-wrap{
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 100%;
}

.all-filter-type-wrap.commercial-collapsed [data-all-filter-commercial-section]{
	display: none;
}

.all-filter-type-more{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	min-height: 42px;
	margin-top: 2px;
	padding: 0;
	border: 0;
	border-top: 1px solid #edf0f4;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0;
	cursor: pointer;
}

.all-filter-type-more i{
	font-size: 13px;
}

.all-filter-menu .type-filter-section-title,
.all-filter-menu .deal-filter-section-title{
	font-size: 18px;
	font-weight: 700;
}

.all-filter-menu .type-filter-section:nth-of-type(2) .type-filter-section-title{
	font-size: 15px;
}

.all-filter-menu .type-filter-tile span,
.all-filter-menu .deal-filter-tile span{
	font-size: 15px;
	font-weight: 600;
	color: #73777d;
}

.all-filter-menu .type-filter-tile input:checked + span,
.all-filter-menu .deal-filter-tile input:checked + span{
	color: #111827;
	font-weight: 700;
}

.global-topbar-menu.has-map-filters .sub-address-search-form{
	height: 40px;
	border: 0;
	border-radius: 999px;
	background: #f3f4f6;
	box-shadow: none;
	overflow: hidden;
}

.global-topbar-menu.has-map-filters .sub-address-search-form:focus-within{
	border: 0;
	background: #f3f4f6;
	box-shadow: none;
}

.global-topbar-menu.has-map-filters .sub-address-search-icon{
	width: 42px;
	height: 40px;
	color: #111827;
	font-size: 16px;
	font-weight: 500;
}

.global-topbar-menu.has-map-filters .sub-address-search-input{
	height: 40px;
	padding: 0 16px 0 0;
	color: #6b7280;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.2px;
}

.global-topbar-menu.has-map-filters .sub-address-search-input::placeholder{
	color: #9ca3af;
	font-weight: 600;
}

.map-center-region-label{
	position: absolute;
	left: 50%;
	bottom: 28px;
	z-index: 36;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 86px;
	min-height: 46px;
	padding: 0 22px;
	box-sizing: border-box;
	border: 1px solid rgba(15, 23, 42, 0.06);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: #111827;
	font-family: var(--font-ui);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -0.2px;
	line-height: 1;
	box-shadow: none;
	pointer-events: none;
	white-space: nowrap;
}

.map-center-region-label[hidden]{
	display: none;
}

/* PATCH 3.347: 왼쪽 고정 메뉴를 제외한 화면 기준으로 주요 페이지 정렬 */
body.realjeju-side-nav-enabled{
	--realjeju-workspace-left: var(--realjeju-side-nav-width);
	--realjeju-workspace-width: calc(100vw - var(--realjeju-side-nav-width));
	--realjeju-page-gap: 32px;
	--realjeju-admin-suite-page-gap: var(--realjeju-page-gap);
	--realjeju-page-top-gap: var(--realjeju-page-gap);
	--realjeju-page-content-width: calc(var(--realjeju-workspace-width) - (var(--realjeju-page-gap) * 2));
}

/* PATCH 3.926: 운영자/관리자/마이페이지 상단 여백 규격을 공통 정렬한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-page-panel,
body.realjeju-side-nav-enabled.operator-page-open .operator-page-panel,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-panel{
	padding-top: var(--realjeju-admin-suite-page-gap) !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content{
	margin-top: 0;
}

body.realjeju-side-nav-enabled.property-register-page-open .property-register-page,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-panel,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-panel,
body.realjeju-side-nav-enabled.operator-page-open .operator-page-panel{
	left: var(--realjeju-workspace-left);
	right: 0;
	width: auto;
}

body.realjeju-side-nav-enabled.property-register-page-open .property-register-bottom-bar{
	left: var(--realjeju-workspace-left);
	right: 0;
	width: auto;
}

body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-panel,
body.realjeju-side-nav-enabled.operator-page-open .operator-page-panel{
	padding: var(--realjeju-page-top-gap) 0 0;
}

body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-panel{
	padding: var(--realjeju-page-top-gap) 0 0;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-head,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-head{
	display: none;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tabs,
body.realjeju-side-nav-enabled.operator-page-open .operator-page-tabs{
	margin-top: 0;
}

body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-tabs{
	margin-top: 0;
}



body.realjeju-side-nav-enabled .my-suite-inner{
	max-width: var(--realjeju-page-content-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

/* Keep mypage body content top spacing aligned with the left page gutter. */
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content{
	margin-top: 0;
}

/* Align the 1:1 inquiry page top gutter with the mypage left gutter. */
body.my-suite-page-open .my-suite-panel:has(.my-suite-content.my-suite-inquiries-content){
	padding-top: var(--realjeju-page-gap, 40px);
}

body.realjeju-side-nav-enabled .broker-home-panel > .broker-home-overview,
body.realjeju-side-nav-enabled .broker-home-panel > .broker-home-list-title,
body.realjeju-side-nav-enabled .broker-home-panel > .broker-home-filterbar,
body.realjeju-side-nav-enabled .broker-home-panel > #brokerListingsList,
body.realjeju-side-nav-enabled .broker-home-panel > .broker-home-section-tabs,
body.realjeju-side-nav-enabled .broker-home-panel > #brokerContractsShell{
	width: min(1280px, var(--realjeju-page-content-width));
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

/* PATCH 3.946: 중개사/관리자/관심 매물관리 목록은 작업 영역 전체 폭을 사용한다. */
body.realjeju-side-nav-enabled .broker-home-panel > .broker-home-filterbar,
body.realjeju-side-nav-enabled .broker-home-panel > #brokerListingsList{
	width: var(--realjeju-page-content-width);
	max-width: var(--realjeju-page-content-width);
}

/* PATCH 3.947: 100% 폭 목록에서 면적/가격 열을 살짝 왼쪽으로 당겨 관리 버튼과 겹치지 않게 한다. */
body.realjeju-side-nav-enabled .broker-listing-shell{
	--broker-list-title-area-gap: 10px;
	--broker-list-area-price-gap: 14px;
	--broker-list-price-edit-gap: 8px;
	--broker-list-button-gap: 4px;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-shell,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-shell{
	--broker-list-title-area-gap: 10px;
	--broker-list-area-price-gap: 14px;
	--broker-list-price-edit-gap: 8px;
}

/* PATCH 3.949: 관리자 매물관리/관심부동산은 같은 가격·관리 열 간격을 사용한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-shell,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-shell{
	--broker-list-area-price-gap: 18px;
	--broker-list-price-col: 178px;
	--broker-list-price-edit-gap: 18px;
	--broker-list-menu-col: 34px;
	--broker-list-title-min: 0px;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-shell,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content.my-suite-favorites-content,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-shell{
	width: var(--realjeju-page-content-width);
	max-width: var(--realjeju-page-content-width);
}

/* PATCH 3.950: 관리자 매물관리와 관심부동산 필터 버튼줄의 첫 시작 위치를 같은 기준으로 고정한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-filterbar,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content.my-suite-favorites-content,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-filterbar{
	box-sizing: border-box;
	width: var(--realjeju-page-content-width);
	max-width: var(--realjeju-page-content-width);
	margin-left: 0;
	margin-right: 0;
}

/* PATCH 3.951: 매물관리 화면들의 오른쪽 끝선을 상단 버전 정보 오른쪽 여백(18px)에 맞춘다. */


body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-overview,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-list-title,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-filterbar,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > #brokerListingsList,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-section-tabs,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > #brokerContractsShell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-shell,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content.my-suite-favorites-content,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-filterbar,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-shell{
	box-sizing: border-box;
	width: var(--realjeju-list-page-width);
	max-width: var(--realjeju-list-page-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

/* PATCH 3.952: 관심부동산 본문은 my-suite-inner 안에서 다시 밀리지 않게 하고 관리 메뉴 열을 보이게 한다. */
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-inner{
	box-sizing: border-box;
	width: var(--realjeju-list-page-width);
	max-width: var(--realjeju-list-page-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content.my-suite-favorites-content,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-filterbar,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-shell{
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-head,
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-row,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list .broker-listing-head,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list .broker-listing-row{
	overflow: visible;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .broker-listing-menu-cell,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list .broker-listing-menu-cell{
	min-width: var(--broker-list-menu-col);
	overflow: visible;
}

/* PATCH 3.953: 관리자 매물관리 목록 칸 구조를 관심부동산과 동일하게 맞춘다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-head > div:nth-child(9),
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-head > div:nth-child(10),
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-row > div:nth-child(9),
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-row > div:nth-child(10){
	display: none;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-head > div:nth-child(11),
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-row > div:nth-child(11){
	grid-column: 17;
	justify-content: center;
	text-align: center;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list .admin-listing-row > .broker-listing-menu-cell{
	grid-column: 17;
	justify-content: center;
	text-align: center;
}

/* PATCH 3.954: 회원관리와 중개사무소 가입신청도 매물관리처럼 작업 영역 100% 폭을 사용한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-users-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-users-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-users-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-applications-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-application-list,
body.realjeju-side-nav-enabled.operator-page-open .operator-applications-filterbar,
body.realjeju-side-nav-enabled.operator-page-open .operator-application-list{
	box-sizing: border-box;
	width: var(--realjeju-list-page-width);
	max-width: var(--realjeju-list-page-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active .admin-applications-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active .admin-application-list,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active .operator-applications-filterbar,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active .operator-application-list{
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}

/* PATCH 3.955: 관리자 매물관리 왼쪽 여백은 바깥 패널에만 적용하고 내부 목록은 제목줄과 맞춘다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active{
	box-sizing: border-box;
	width: var(--realjeju-list-page-width);
	max-width: var(--realjeju-list-page-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

/* PATCH 3.958: 관리형 표 화면 여백과 상단 제목 시작선은 이 변수 하나로 관리한다. */
body.realjeju-side-nav-enabled{
	--realjeju-management-page-gap: 32px;
	--realjeju-version-right-gap: var(--realjeju-management-page-gap);
	--realjeju-list-page-width: calc(var(--realjeju-workspace-width) - (var(--realjeju-management-page-gap) * 2));
	--realjeju-topbar-page-title-left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap));
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-panel,
body.realjeju-side-nav-enabled.operator-page-open .operator-page-panel,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-panel,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel{
	padding-top: var(--realjeju-management-page-gap) !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-inner,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-overview,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-list-title,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-filterbar,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > #brokerListingsList,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .broker-home-section-tabs,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > #brokerContractsShell{
	box-sizing: border-box;
	width: var(--realjeju-list-page-width);
	max-width: var(--realjeju-list-page-width);
	margin-left: var(--realjeju-management-page-gap);
	margin-right: 0;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active .admin-applications-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active .admin-application-list,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active .operator-applications-filterbar,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active .operator-application-list,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-content.my-suite-favorites-content,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-filterbar,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-shell{
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}

body.realjeju-side-nav-enabled .global-topbar-page-title{
	left: var(--realjeju-topbar-page-title-left) !important;
}

body.realjeju-side-nav-enabled .global-topbar-my-suite-link{
	margin-left: max(0px, calc(var(--realjeju-topbar-page-title-left) - 194px)) !important;
}

/* PATCH 3.962: 관리자 매물관리 검색창은 부동산 홈 검색창 자리에서 쓰고, 제목/탭은 오른쪽으로 배치한다. */
.admin-listing-topbar-search{
	position: absolute;
	left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap, 32px));
	top: 50%;
	z-index: 4;
	display: none;
	align-items: center;
	gap: 10px;
	width: 286px;
	height: 38px;
	box-sizing: border-box;
	padding: 0 16px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #f3f4f6;
	color: #111827;
	transform: translateY(-50%);
}

.admin-listing-topbar-search i{
	flex: 0 0 auto;
	color: #111827;
	font-size: 15px;
	line-height: 1;
}

.admin-listing-topbar-search input{
	width: 100%;
	min-width: 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

.admin-listing-topbar-search input::placeholder{
	color: #94a3b8;
	opacity: 1;
}



body.realjeju-side-nav-enabled.my-suite-page-open.my-suite-favorites-tab-open #mySuiteFavoritesTopbarSearch,
body.realjeju-side-nav-enabled.my-suite-page-open:has(.global-topbar-my-suite-tabs .my-suite-tab[data-my-suite-tab="favorites"].active) #mySuiteFavoritesTopbarSearch,
body.realjeju-side-nav-enabled.presale-page-open #presaleTopbarSearch{
	display: flex !important;
}

body.realjeju-side-nav-enabled.admin-page-open.admin-listings-tab-open{
	--realjeju-admin-listing-search-width: 286px;
	--realjeju-admin-listing-search-gap: 32px;
	--realjeju-topbar-page-title-left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap, 32px) + var(--realjeju-admin-listing-search-width) + var(--realjeju-admin-listing-search-gap));
}

body.realjeju-side-nav-enabled.my-suite-page-open.my-suite-favorites-tab-open,
body.realjeju-side-nav-enabled.my-suite-page-open:has(.global-topbar-my-suite-tabs .my-suite-tab[data-my-suite-tab="favorites"].active),
body.realjeju-side-nav-enabled.presale-page-open{
	--realjeju-admin-listing-search-width: 286px;
	--realjeju-admin-listing-search-gap: 32px;
	--realjeju-topbar-page-title-left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap, 32px) + var(--realjeju-admin-listing-search-width) + var(--realjeju-admin-listing-search-gap));
}

/* PATCH 3.952: 관심부동산과 관리자 매물관리 필터바 아래 여백을 같은 값으로 맞춘다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-filterbar,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-filterbar{
	margin-bottom: 18px;
}

/* PATCH 3.959: 관리자 페이지의 모든 탭을 같은 32px 기준선과 폭으로 맞춘다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="notices"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="inquiries"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="coupons"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active{
	box-sizing: border-box;
	width: var(--realjeju-list-page-width) !important;
	max-width: var(--realjeju-list-page-width) !important;
	margin: 0 0 35px var(--realjeju-management-page-gap) !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="notices"].active .admin-notice-manager,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="inquiries"].active .admin-inquiries-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="coupons"].active > .admin-empty,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active .admin-listings-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-content,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="users"].active .admin-users-shell,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active .admin-applications-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="broker-applications"].active .admin-application-list,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active .operator-applications-filterbar,
body.realjeju-side-nav-enabled.operator-page-open .admin-page-tab-panel[data-operator-tab-panel="broker-applications"].active .operator-application-list{
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* PATCH 3.946: 중개사 홈 매물유형 필터에서 다가구주택 같은 긴 라벨이 잘리지 않게 한다. */
.broker-home-map-style-menu .type-filter-tile,
.broker-home-map-style-menu .broker-home-filter-option,
.broker-home-map-style-menu .type-filter-tile span,
.broker-home-map-style-menu .deal-filter-tile span{
	box-sizing: border-box !important;
	width: 100% !important;
	min-width: 0;
	max-width: 100% !important;
	overflow: hidden;
	text-overflow: clip;
	justify-self: stretch !important;
}

.broker-home-map-style-menu .type-filter-grid{
	grid-template-columns: repeat(3, minmax(0, 1fr));
	justify-content: stretch;
	justify-items: stretch;
	width: 100%;
}

.broker-home-map-style-menu.broker-home-price-type-menu .broker-home-price-type-grid,
.broker-home-map-style-menu.broker-home-price-type-menu .type-filter-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}



.broker-home-map-style-menu.broker-home-land-use-zone-menu .broker-home-land-use-zone-grid,
.broker-home-map-style-menu.broker-home-land-use-zone-menu .type-filter-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.broker-home-map-style-menu.broker-home-land-type-menu,
.broker-home-map-style-menu.broker-home-land-use-zone-menu{
	width: 410px !important;
	min-width: 410px !important;
	max-width: min(410px, calc(100vw - 48px)) !important;
}

.broker-home-map-style-menu.broker-home-land-use-zone-menu input[data-value="자연환경보전지역"] + span{
	white-space: nowrap !important;
	word-break: keep-all !important;
	font-size: 14px !important;
	padding-left: 4px !important;
	padding-right: 4px !important;
}

.broker-home-map-style-menu.broker-home-land-type-menu .type-filter-tile,
.broker-home-map-style-menu.broker-home-land-type-menu .broker-home-filter-option,
.broker-home-map-style-menu.broker-home-land-type-menu .type-filter-tile span{
	box-sizing: border-box !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	justify-self: stretch !important;
}

body.realjeju-side-nav-enabled .admin-page-head,
body.realjeju-side-nav-enabled .admin-page-tabs,
body.realjeju-side-nav-enabled .admin-page-tab-panel.active,
body.realjeju-side-nav-enabled .admin-page-company-footer,
body.realjeju-side-nav-enabled .admin-page-simple-footer{
	width: min(1180px, var(--realjeju-page-content-width));
	max-width: var(--realjeju-page-content-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

/* PATCH 3.348: 입지분석/필터/등록 화면 정렬 보정 */
.global-topbar-menu.has-map-filters{
	--sub-filter-gap: 14px;
}

.global-topbar-menu.has-map-filters .map-filter-bar{
	gap: var(--sub-filter-gap);
	column-gap: var(--sub-filter-gap);
}

.global-topbar-menu.has-map-filters .map-filter-bar > *{
	margin-left: 0;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown,
.global-topbar-menu.has-map-filters .type-filter-dropdown,
.global-topbar-menu.has-map-filters .deal-filter-dropdown,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown,
.global-topbar-menu.has-map-filters .sub-address-search{
	z-index: 1250;
}

.global-topbar-menu.has-map-filters .extra-filter-menu:not(.presale-filter-menu),
.global-topbar-menu.has-map-filters .type-filter-menu,
.global-topbar-menu.has-map-filters .deal-filter-menu,
.global-topbar-menu.has-map-filters .deal-method-filter-menu{
	z-index: 1300;
}

.global-topbar-menu.has-map-filters .extra-filter-menu,
.global-topbar-menu.has-map-filters .type-filter-menu,
.global-topbar-menu.has-map-filters .deal-filter-menu,
.global-topbar-menu.has-map-filters .deal-method-filter-menu{
	top: calc(100% + 10.6px);
}





.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger{
	height: 36px;
	min-height: 36px;
	padding: 0 18px;
	border-radius: 999px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 15px;
	letter-spacing: -0.2px;
	line-height: 1;
	gap: 7px;
	box-shadow: none;
}

.global-topbar-menu.has-map-filters .extra-filter-trigger i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 12px;
	min-width: 12px;
	height: 12px;
	font-size: 12px;
	line-height: 1;
	flex: 0 0 12px;
}

.global-topbar-menu.has-map-filters .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger:hover,
.global-topbar-menu.has-map-filters .location-analysis-trigger:hover{
	background: #f3f4f6;
	color: #111827;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active .area-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active .approval-year-filter-trigger{
	color: #fff;
	border-color: #2f343b;
	background: #2f343b;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active .deal-method-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active .area-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active .approval-year-filter-trigger:hover{
	background: #2f343b;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger{
	color: #111827;
	border: 1px solid #2f343b;
	border-color: #2f343b;
	background: #ffffff;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger:hover{
	background: #ffffff;
	color: #111827;
}

/* PATCH 3.405: 홈 필터를 최상단바에서 지도 위 레이어로 이동 */
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	position: fixed;
	top: calc(var(--global-topbar-height) + 16px);
	left: calc(var(--realjeju-side-nav-width, 0px) + 16px);
	right: 116px;
	transform: none;
	width: auto;
	min-width: 0;
	max-width: none;
	height: auto;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	overflow: visible;
	pointer-events: none;
	z-index: 1200;
}

body.realjeju-filters-in-topbar:not(.sidebar-list-collapsed):not(.map-detail-panel-active):not(.detail-page-panel-open):not(.shared-detail-mode):not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--rj-list-panel-gap, 16px) + var(--sidebar-list-width, 420px) + 16px);
}



body.roadview-detail-left-open .global-topbar-menu.has-map-filters,
body.roadview-split-open .global-topbar-menu.has-map-filters,
body.roadview-detail-left-open > .map-filter-floating-menu,
body.roadview-split-open > .map-filter-floating-menu{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* PATCH 3.876 final override: keep land type dropdown sizing after later topbar patches. */




/* PATCH 3.876: 지목 드롭다운을 공통 메뉴 폭에 맞추고 3열로 정리한다. */




/* PATCH 3.876 final override: 지목 메뉴는 항목 수가 많아 전용 폭과 하단 여백을 유지한다. */




/* PATCH 3.876: 지목 필터 드롭다운 */
.land-type-filter-menu{
	width: 520px;
	min-width: 520px;
	max-width: min(520px, calc(100vw - 48px));
	max-height: min(680px, calc(100vh - 150px));
	overflow-y: auto;
	padding-bottom: 24px;
}

.land-type-filter-grid{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
	width: 100%;
}

.land-type-filter-section + .land-type-filter-section{
	padding-top: 4px;
}

.land-type-filter-tile span{
	white-space: normal;
	word-break: keep-all;
}

.land-type-filter-menu .land-type-filter-reset-row{
	margin-top: 2px;
	padding-top: 14px;
	border-top: 1px solid #edf0f4;
}

body.realjeju-filters-in-topbar.roadview-split-open:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	display: none;
	pointer-events: none;
}

body.realjeju-filters-in-topbar.roadview-detail-left-open:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.roadview-detail-left-open > .map-filter-floating-menu{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.roadview-detail-left-open .roadview-overlay.detail-left-roadview .roadview-close-btn,
body.roadview-detail-left-open .roadview-overlay.detail-left-roadview .roadview-fullscreen-btn{
	z-index: 2147482601;
	pointer-events: auto;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .map-filter-bar{
	gap: 6px;
	column-gap: 6px;
	width: max-content;
	min-width: max-content;
	max-width: none;
	height: auto;
	background: transparent;
	box-shadow: none;
	filter: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	pointer-events: auto;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .extra-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .type-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .deal-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .deal-method-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .price-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .area-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .approval-year-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .location-analysis-trigger{
	height: 36px;
	padding: 0 16px;
	border-radius: 999px;
	border: 1px solid transparent;
	box-shadow: none;
	filter: none;
	overflow: hidden;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger{
	border-color: #2f343b;
	background: #ffffff;
	color: #111827;
}



body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .sub-address-search-form{
	height: 40px;
	box-shadow: none;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .extra-filter-menu,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .type-filter-menu,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .deal-filter-menu,
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .deal-method-filter-menu{
	top: calc(100% + 8px);
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	height: 36px;
	background: transparent;
	box-shadow: none;
	filter: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	pointer-events: auto;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::after{
	content: "";
	position: absolute;
	top: 50%;
	z-index: 1310;
	width: 36px;
	height: 36px;
	border-radius: 999px;
	background: #fff;
	transform: translateY(-50%);
	pointer-events: none;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::before{
	left: 0;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::after{
	right: 0;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track{
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 100%;
	height: 36px;
	display: flex;
	align-items: center;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	scroll-behavior: smooth;
	background: transparent;
	box-shadow: none;
	filter: none;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	border-radius: 999px;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track::-webkit-scrollbar{
	display: none;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track{
	padding: 0 42px;
	box-sizing: border-box;
	scroll-padding-inline: 42px;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track .map-filter-bar{
	flex: 0 0 auto;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	position: absolute;
	top: 50%;
	z-index: 1320;
	width: 36px;
	height: 36px;
	min-width: 36px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #fff;
	background-clip: padding-box;
	color: #111827;
	box-shadow: none;
	filter: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transform: translateY(-50%);
	cursor: pointer;
	pointer-events: auto;
	overflow: hidden;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn:hover{
	background: #f3f4f6;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn[hidden]{
	display: none;
}





.global-topbar-menu.has-map-filters .map-filter-scroll-btn i{
	font-size: 20px;
	line-height: 1;
	pointer-events: none;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn.is-disabled{
	opacity: 0.48;
	cursor: default;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-menu{
	position: fixed;
	top: -9999px;
	left: -9999px;
	right: auto;
	z-index: 1400;
}

.global-topbar-right{
	gap: 10px;
}

body.realjeju-side-nav-enabled.property-register-page-open .property-register-inner,
body.realjeju-side-nav-enabled.property-register-page-open .property-register-bottom-inner{
	width: min(960px, calc(100vw - var(--realjeju-side-nav-width, 168px) - 64px));
	margin-left: auto;
	margin-right: auto;
}

body.admin-page-open .admin-page-tab-panel.active .admin-applications-filterbar,
body.operator-page-open .admin-page-tab-panel.active .operator-applications-filterbar,
body.admin-page-open .admin-page-tab-panel.active .admin-listings-filterbar,
body.admin-page-open .admin-page-tab-panel.active .admin-users-filterbar,
body.admin-page-open .admin-page-tab-panel.active .admin-inquiries-filterbar{
	margin-top: 0;
}

/* 관리자 관리 탭 상태 버튼줄 간격을 중개사 홈 필터 버튼줄과 동일하게 맞춤 */
body.admin-page-open .admin-applications-filterbar,
body.operator-page-open .operator-applications-filterbar,
body.admin-page-open .admin-listings-filterbar,
body.admin-page-open .admin-users-filterbar,
body.admin-page-open .admin-inquiries-filterbar{
	gap: var(--broker-home-filter-gap);
	margin-bottom: 20px;
}

@media (max-width: 900px)
{
	body.admin-page-open .admin-application-card,
body.operator-page-open .admin-application-card{
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: stretch;
		gap: 12px;
		padding: 14px;
		overflow: visible;
	}

	body.admin-page-open .admin-application-card > *,
body.operator-page-open .admin-application-card > *{
		min-width: 0;
	}

	body.admin-page-open .admin-application-contact,
body.admin-page-open .admin-application-status-block,
body.operator-page-open .admin-application-contact,
body.operator-page-open .admin-application-status-block{
		margin-left: 0;
	}

	body.admin-page-open .admin-application-status-block,
body.operator-page-open .admin-application-status-block{
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
	}

	body.admin-page-open .admin-application-actions,
body.operator-page-open .admin-application-actions{
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(86px, 1fr));
		justify-content: stretch;
		width: 100%;
		gap: 6px;
	}

	body.admin-page-open .admin-status-btn,
body.operator-page-open .admin-status-btn{
		width: 100%;
		min-width: 0;
		padding: 0 4px;
	}
}



.broker-office-map-marker{
	--broker-office-marker-size: 36px;
	--broker-office-marker-offset-x: 0px;
	position: relative;
	border: 0;
	border-radius: 999px;
	padding: 0;
	background: transparent;
	color: #111827;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	font-family: inherit;
	text-align: center;
	cursor: pointer;
	overflow: visible;
	transform: translateX(var(--broker-office-marker-offset-x));
}

.broker-office-map-marker-row{
	--broker-office-marker-size: 36px;
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 4px;
	overflow: visible;
	pointer-events: auto;
}

.broker-office-map-marker-row .broker-office-map-marker{
	--broker-office-marker-offset-x: 0px;
	width: 52px;
	flex: 0 0 auto;
	transform: none;
	pointer-events: auto;
}

.broker-office-map-marker-row .broker-office-map-marker-badge{
	min-width: 52px;
}

.broker-office-map-marker-badge{
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3px;
	min-width: var(--broker-office-marker-size);
	position: relative;
}

.broker-office-map-marker-group-count{
	position: absolute;
	top: -6px;
	left: calc(50% + 5px);
	z-index: 4;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 4px;
	border: 1.5px solid #ffffff;
	border-radius: 999px;
	background: #cc5a61;
	box-sizing: border-box;
	color: #ffffff;
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
	pointer-events: none;
}

.broker-office-map-marker-crown{
	position: absolute;
	left: 50%;
	top: -18px;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 23px;
	height: 18px;
	color: #f7c948;
	font-size: 17px;
	line-height: 1;
	-webkit-text-stroke: 0.6px rgba(17, 24, 39, 0.72);
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.75), 0 1px 3px rgba(15, 23, 42, 0.18);
	pointer-events: none;
	z-index: 2;
}

.broker-office-map-marker-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--broker-office-marker-size);
	height: var(--broker-office-marker-size);
	border: 3px solid rgba(255,255,255,0.98);
	border-radius: 50%;
	background: #2563EB;
	color: #ffffff;
	font-size: 15px;
	box-shadow: 0 2px 6px rgba(15,41,66,0.24);
	flex: 0 0 auto;
	overflow: hidden;
	box-sizing: border-box;
}

.broker-office-map-marker-badge.has-specialist-stars .broker-office-map-marker-icon{
	border-color: #f5b301;
}

.broker-office-map-marker-photo{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	background: #eef2f7;
}

.broker-office-map-marker-count{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 16px;
	padding: 0 6px;
	border: 1px solid rgba(255,255,255,0.96);
	border-radius: 999px;
	background: rgba(23,100,255,0.94);
	color: #ffffff;
	font-size: 10px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	white-space: nowrap;
	box-shadow: 0 2px 5px rgba(15,41,66,0.20);
}

.broker-office-map-marker-stars{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 1px;
	min-height: 10px;
	margin-top: 1px;
	color: #facc15;
	line-height: 1;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.75), 0 1px 3px rgba(15, 23, 42, 0.18);
	white-space: nowrap;
}

.broker-office-map-marker-stars .weekly-specialist-star{
	font-size: 10px;
	line-height: 1;
	-webkit-text-stroke: 0.75px rgba(17, 24, 39, 0.88);
	paint-order: stroke fill;
}

.broker-office-map-marker-stars .weekly-specialist-star.big{
	font-size: 12px;
	-webkit-text-stroke-width: 0.75px;
}

.broker-office-map-marker:hover,
.broker-office-map-marker:focus-visible{
	z-index: 99999;
}

.broker-office-map-marker-text{
	position: absolute;
	left: 50%;
	bottom: calc(100% + 8px);
	display: grid;
	gap: 3px;
	width: max-content;
	min-width: 148px;
	max-width: 240px;
	padding: 8px 10px;
	border: 1px solid rgba(31,111,255,0.22);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(15,41,66,0.20);
	transform: translate(-50%, 4px);
	opacity: 0;
	pointer-events: none;
	z-index: 99999;
	transition: opacity 0.12s ease, transform 0.12s ease;
}

.broker-office-map-marker:hover .broker-office-map-marker-text,
.broker-office-map-marker:focus-visible .broker-office-map-marker-text{
	transform: translate(-50%, 0);
	opacity: 0;
}

.broker-office-map-marker-text::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	width: 8px;
	height: 8px;
	border-right: 1px solid rgba(31,111,255,0.22);
	border-bottom: 1px solid rgba(31,111,255,0.22);
	background: #ffffff;
	transform: translate(-50%, -4px) rotate(45deg);
}

.broker-office-map-marker-list{
	display: grid;
	gap: 2px;
}

.broker-office-map-marker-text strong{
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	word-break: keep-all;
}

.broker-office-map-marker-text small{
	font-size: 10px;
	font-weight: 600;
	line-height: 1.2;
	color: #6b7280;
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	word-break: keep-all;
}



.broker-office-map-tooltip-layer{
	position: fixed;
	display: grid;
	gap: 2px;
	width: max-content;
	min-width: 148px;
	max-width: 260px;
	padding: 10px 14px;
	border: 1px solid rgba(31,111,255,0.22);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(15,41,66,0.24);
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	z-index: 2147483647;
	transform: translateY(4px);
	transition: opacity 0.1s ease, transform 0.1s ease;
}

.broker-office-map-tooltip-layer.open{
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.broker-office-map-tooltip-layer::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	width: 8px;
	height: 8px;
	border-right: 1px solid rgba(31,111,255,0.22);
	border-bottom: 1px solid rgba(31,111,255,0.22);
	background: #ffffff;
	transform: translate(-50%, -4px) rotate(45deg);
}

.broker-office-map-tooltip-layer strong{
	display: block;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	word-break: keep-all;
}

.broker-office-map-tooltip-title{
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	min-width: 0;
}

.broker-office-map-tooltip-avatar{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border: 1px solid rgba(226,232,240,0.95);
	border-radius: 50%;
	background: #f3f6fa;
	color: #6b7280;
	font-size: 13px;
	line-height: 1;
	overflow: hidden;
	box-sizing: border-box;
}

.broker-office-map-tooltip-avatar-img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.broker-office-map-tooltip-address{
	display: block;
	margin-top: 0;
	padding: 12px 4px 0;
	border-top: 1px solid #e5e9ef;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.25;
	color: #6b7280;
	word-break: keep-all;
	text-align: center;
}


.broker-office-map-tooltip-row{
	appearance: none;
	display: block;
	width: 100%;
	border: 0;
	padding: 7px 0;
	background: transparent;
	color: #111827;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.broker-office-map-tooltip-row:hover,
.broker-office-map-tooltip-row:focus-visible{
	color: #1f6fff;
	outline: none;
}


.broker-office-map-tooltip-row + .broker-office-map-tooltip-row{
	border-top: 1px solid #e5e9ef;
	margin-top: 0;
}

.broker-office-map-tooltip-roadview{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: center;
	height: 24px;
	margin-top: 12px;
	padding: 0 12px;
	border: 1px solid rgba(37,99,235,0.55);
	border-radius: 999px;
	background: #ffffff;
	color: #2563eb;
	font-family: inherit;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	white-space: nowrap;
}

.broker-office-map-tooltip-roadview:hover,
.broker-office-map-tooltip-roadview:focus-visible{
	border-color: rgba(37,99,235,0.75);
	background: #f8fbff;
	outline: 0;
}


.education-facility-map-marker{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 0;
	border-radius: 0;
	padding: 0;
	background: transparent;
	font-family: inherit;
	cursor: pointer;
	overflow: visible;
}

.education-facility-map-marker-icon{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 0;
	background: transparent;
	color: #a8783a;
	filter: drop-shadow(0 2px 3px rgba(0,0,0,0.34));
}

.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon{
	width: 32px;
	height: 32px;
	border: 2px solid #c17a2f;
	border-radius: 50%;
	background: #ffffff;
	color: #c17a2f;
	filter: drop-shadow(0 2px 4px rgba(0,0,0,0.26));
}

.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon{
	border-color: #22C55E;
	color: #22C55E;
}

.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon{
	width: 28px;
	height: 28px;
	border-width: 1.6px;
	border-color: #34D399;
	color: #34D399;
}

.education-facility-map-marker-icon i{
	display: block;
	font-size: 26px;
	line-height: 1;
	color: #a8783a;
	-webkit-text-stroke: 1.2px #ffffff;
}

.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon i{
	font-size: 18px;
	color: currentColor;
	-webkit-text-stroke: 0;
}

.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-label,
.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-label,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-label{
	display: none;
}

.education-facility-map-marker-tooltip{
	text-align: left;
	position: absolute;
	left: 50%;
	bottom: calc(100% + 8px);
	display: grid;
	gap: 3px;
	min-width: 140px;
	max-width: 240px;
	width: max-content;
	padding: 8px 10px;
	border: 1px solid rgba(154,106,47,0.22);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(15,41,66,0.20);
	transform: translate(-50%, 4px);
	opacity: 0;
	pointer-events: none;
	z-index: 99999;
	transition: opacity 0.12s ease, transform 0.12s ease;
}

.education-facility-map-marker:hover .education-facility-map-marker-tooltip,
.education-facility-map-marker:focus-visible .education-facility-map-marker-tooltip{
	transform: translate(-50%, 0);
	opacity: 0;
}

.education-facility-map-marker-tooltip strong{
	display: block;
	text-align: left;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	word-break: keep-all;
}

.education-facility-map-marker-tooltip small{
	display: block;
	text-align: left;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.2;
	color: #6b7280;
	word-break: keep-all;
}


.education-facility-map-tooltip-layer{
	position: fixed;
	display: grid;
	gap: 3px;
	min-width: 140px;
	max-width: 260px;
	width: max-content;
	padding: 12px 16px;
	border: 1px solid rgba(154,106,47,0.22);
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 10px 24px rgba(15,41,66,0.24);
	text-align: left;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	z-index: 2147483647;
	transform: translateY(4px);
	transition: opacity 0.1s ease, transform 0.1s ease;
}

.education-facility-map-tooltip-layer.open{
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.education-facility-map-tooltip-layer::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	width: 8px;
	height: 8px;
	border-right: 1px solid rgba(154,106,47,0.22);
	border-bottom: 1px solid rgba(154,106,47,0.22);
	background: #ffffff;
	transform: translate(-50%, -4px) rotate(45deg);
}

.education-facility-map-tooltip-layer strong{
	display: block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.35;
	word-break: keep-all;
}

.education-facility-map-tooltip-layer small{
	display: block;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.35;
	color: #6b7280;
	word-break: keep-all;
}

.education-facility-map-tooltip-roadview{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: center;
	height: 24px;
	margin-top: 8px;
	padding: 0 12px;
	border: 1px solid rgba(37,99,235,0.55);
	border-radius: 999px;
	background: #ffffff;
	color: #2563eb;
	font-family: inherit;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	white-space: nowrap;
}

.education-facility-map-tooltip-roadview:hover,
.education-facility-map-tooltip-roadview:focus-visible{
	border-color: rgba(37,99,235,0.75);
	background: #f8fbff;
	outline: 0;
}

.education-facility-detail-panel{
	position: fixed;
	top: calc(var(--global-topbar-height, 65px) + var(--rj-detail-panel-edge, 16px));
	bottom: var(--rj-detail-panel-edge, 16px);
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--rj-list-panel-gap, 16px) + var(--sidebar-list-width, 420px) + var(--rj-detail-panel-gap, 8px));
	z-index: 1600;
	display: flex;
	flex-direction: column;
	width: min(420px, calc(100vw - var(--realjeju-side-nav-width, 0px) - var(--rj-list-panel-gap, 16px) - var(--sidebar-list-width, 420px) - var(--rj-detail-panel-gap, 8px) - 24px));
	min-width: 320px;
	overflow: hidden;
	border: 1px solid var(--realjeju-panel-line-color, #e5e7eb);
	border-radius: 10px;
	background: #ffffff;
	box-shadow: 0 18px 44px rgba(15, 23, 42, 0.15);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateX(-8px);
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
}

body.sidebar-list-collapsed .education-facility-detail-panel{
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--rj-list-panel-gap, 16px));
	width: min(420px, calc(100vw - var(--realjeju-side-nav-width, 0px) - var(--rj-list-panel-gap, 16px) - 24px));
}

.education-facility-detail-panel.open{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(0);
}

.education-facility-detail-head{
	position: relative;
	flex: 0 0 56px;
	display: flex;
	align-items: center;
	padding: 0 56px 0 20px;
	border-bottom: 0.5px solid #edf0f4;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
}

.education-facility-detail-close{
	position: absolute;
	right: 12px;
	top: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #6b7280;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	transform: translateY(-50%);
}

.education-facility-detail-close:hover,
.education-facility-detail-close:focus-visible{
	background: #f3f4f6;
	color: #111827;
	outline: 0;
}

.education-facility-detail-scroll{
	flex: 1 1 auto;
	overflow-y: auto;
	background: #ffffff;
	scrollbar-width: thin;
}

.education-facility-detail-hero{
	padding: 24px 20px 22px;
	border-bottom: 8px solid #f3f4f6;
}

.education-facility-detail-hero h2{
	margin: 0 0 10px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 26px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.25;
	word-break: keep-all;
}

.education-facility-detail-hero p{
	margin: 0;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.45;
	word-break: keep-all;
}

.education-facility-detail-hero p + p{
	margin-top: 8px;
	color: #8b95a1;
	font-size: 14px;
	font-weight: 600;
}

.education-facility-detail-actions{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.education-facility-detail-action{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 34px;
	padding: 0 12px;
	border: 1px solid #d8dee8;
	border-radius: 8px;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.education-facility-detail-action:hover{
	background: #f8fafc;
}

.education-facility-detail-section{
	padding: 22px 20px 24px;
	border-bottom: 8px solid #f3f4f6;
}

.education-facility-detail-section:last-child{
	border-bottom: 0;
}

#educationFacilityDetailStatusSection{
	padding-bottom: 38px;
}

.education-facility-detail-section h3{
	margin: 0 0 18px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 19px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.25;
}

.education-facility-detail-section-title-row{
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 18px;
}

.education-facility-detail-section-title-row h3{
	margin: 0;
}

.education-facility-detail-section-title-row span{
	flex: none;
	color: #8b95a1;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.2;
}

.education-facility-detail-section dl{
	display: grid;
	gap: 16px;
	margin: 0;
}

.education-facility-detail-row{
	display: grid;
	grid-template-columns: 108px minmax(0, 1fr);
	gap: 16px;
	align-items: start;
	font-family: var(--font-ui);
	font-size: 15px;
	letter-spacing: 0;
	line-height: 1.45;
}

.education-facility-detail-row dt{
	color: #8b95a1;
	font-weight: 400;
}

.education-facility-detail-row dd{
	margin: 0;
	color: #111827;
	font-weight: 500;
	word-break: keep-all;
}

.education-facility-detail-row dd a{
	color: #2563eb;
	text-decoration: none;
	word-break: break-all;
}

.education-facility-detail-row dd a:hover{
	text-decoration: underline;
}

.education-facility-detail-stats{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-bottom: 22px;
}

.education-facility-detail-stats div{
	display: grid;
	gap: 8px;
	place-items: center;
	min-height: 76px;
	padding: 12px 6px;
	border-radius: 12px;
	background: #f3f4f6;
	font-family: var(--font-ui);
	box-sizing: border-box;
}

.education-facility-detail-stats strong{
	color: #111827;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0;
}

.education-facility-detail-stats span{
	color: #8b95a1;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0;
}

.education-facility-school-tabs{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 2px 0 18px;
	border-bottom: 1px solid #eceff3;
	font-family: var(--font-ui);
}

.education-facility-school-tabs span{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	color: #8b95a1;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: 0;
	position: relative;
}

.education-facility-school-tabs span.active{
	color: #111827;
}

.education-facility-school-tabs span.active::after{
	content: "";
	position: absolute;
	left: 10%;
	right: 10%;
	bottom: -1px;
	height: 2px;
	background: #111827;
}

.education-facility-grade-chart{
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	align-items: end;
	gap: 8px;
	min-height: 160px;
	margin: 4px 0 22px;
	font-family: var(--font-ui);
}

.education-facility-grade-bar{
	display: grid;
	grid-template-rows: auto 1fr auto;
	align-items: end;
	justify-items: center;
	min-width: 0;
	height: 160px;
	color: #111827;
}

/* PATCH 3.510: SUIT base + Paperlogy title/emphasis */
.detail-title,
.detail-section-title,
.detail-info-section-title,
.detail-desc-title,
.detail-agent-section-title,
.detail-agent-title,
.detail-similar-title,
.card-title,
.brand-title,
.filter-title,
.list-head strong,
.sub-topbar-left strong,
.broker-home-panel > .broker-home-list-title,
.broker-home-company-lines strong,
.broker-home-law-lines strong,
.broker-home-usage-meta strong,
.payment-current-plan-card strong,
.payment-current-date-box strong,
.payment-extra-item strong,
.my-suite-inquiry-detail-block strong,
.property-address-detail-section-title,
.education-facility-map-marker-tooltip strong,
.education-facility-map-tooltip-layer strong,
.education-facility-detail-head,
.education-facility-detail-hero h2,
.education-facility-detail-section h3,
.education-facility-detail-stats strong,
.life-safety-region-filter-title,
.type-filter-section-title,
.deal-filter-section-title,
.floor-direction-filter-title,
.floor-direction-filter-section-title,
.area-filter-title,
.approval-year-filter-title,
.price-filter-panel-title{
	font-family: var(--font-display);
}

/* REALJEJU 4.975
 * 오른쪽 매물 상세 패널의 섹션 제목은 상단 매물번호와 같은 SUIT 계열을 사용합니다.
 * 제목 크기·굵기·행간·여백은 기존 값을 그대로 유지하고 글꼴 계열만 통일합니다.
 */
#sidebarDetailPanel .detail-section-title,
#sidebarDetailPanel .detail-info-section-title,
#sidebarDetailPanel .detail-desc-title,
#sidebarDetailPanel .detail-agent-section-title,
#sidebarDetailPanel .detail-similar-title{
	font-family: var(--font-ui);
}

/* REALJEJU 4.976
 * 왼쪽 중개사 매물 카드와 오른쪽 상세 카드의 공인중개사 제목은 같은 SUIT 글꼴을 사용합니다.
 * 대표 역할도 본문 공통 글꼴로 맞추되 기존 15px / 500과 색상ㆍ간격은 유지합니다.
 */
.sidebar-list-agent-card .detail-agent-section-title,
.sidebar-list-agent-card .detail-agent-title,
#sidebarDetailPanel .detail-agent-section-title,
#sidebarDetailPanel .detail-agent-title{
	font-family: var(--font-ui);
}

/* 일반 오른쪽 상세 패널은 상단 계정 버튼을 가리지 않습니다.
 * 전체 화면 사진 뷰어의 기존 숨김 규칙은 그대로 유지합니다.
 */
body.detail-page-panel-open .global-topbar-right,
body.detail-page-panel-open .global-auth-trigger,
body.detail-dropdown-suppress .global-topbar-right,
body.detail-dropdown-suppress .global-auth-trigger{
	pointer-events: auto;
}

body.detail-page-panel-open .global-account-dropdown.open,
body.detail-dropdown-suppress .global-account-dropdown.open{
	display: block;
	pointer-events: auto;
}

.education-facility-grade-bar-value{
	min-height: 20px;
	color: #111827;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	white-space: nowrap;
}

.education-facility-grade-bar-fill-wrap{
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 100%;
	height: 100px;
}

.education-facility-grade-bar-fill{
	width: min(38px, 70%);
	min-height: 8px;
	border-radius: 5px 5px 0 0;
	background: #ff6b00;
}

.education-facility-grade-bar-label{
	margin-top: 8px;
	color: #8b95a1;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	white-space: nowrap;
}

@media (max-width: 980px)
{
	.education-facility-detail-panel,
body.sidebar-list-collapsed .education-facility-detail-panel{
		left: 12px;
		right: 12px;
		width: auto;
		min-width: 0;
	}

	.education-facility-grade-chart{
		gap: 6px;
	}

	.education-facility-grade-bar-value,
.education-facility-grade-bar-label{
		font-size: 12px;
	}
}


.education-facility-filter-panel{
	position: fixed;
	display: none;
	box-sizing: border-box;
	width: 236px;
	max-width: calc(100vw - 88px);
	padding: 15px;
	border-radius: 14px;
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(15,41,66,0.16);
	z-index: 2147483647;
}

.education-facility-filter-panel.open{
	display: block;
}

.education-facility-filter-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.broker-office-filter-section-label,
.development-facility-filter-section-label{
	margin: 16px 0 8px;
	color: #64748B;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.development-facility-filter-panel{
	max-height: calc(100vh - 16px);
	overflow-y: auto;
	overscroll-behavior: contain;
}

.education-facility-filter-option{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	gap: 4px;
	height: 58px;
	border: 1px solid transparent;
	border-radius: 10px;
	background: #f4f5f7;
	color: #8a8f97;
	font-family: inherit;
	cursor: pointer;
}

.education-facility-filter-option i{
	font-size: 16px;
	line-height: 1;
}

.education-facility-filter-option span{
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
}

.education-facility-filter-option.active{
	border: 1px solid #a8783a;
	background: #ffffff;
	color: #111827;
}

.education-facility-filter-option.active i{
	color: #a8783a;
}

.education-facility-filter-option.active[data-category="kindergarten"]{
	border-color: #22C55E;
}

.education-facility-filter-option.active[data-category="daycare"]{
	border-color: #34D399;
}

.education-facility-filter-option.active[data-category="kindergarten"] i{
	color: #22C55E;
}

.education-facility-filter-option.active[data-category="daycare"] i{
	color: #34D399;
}

.education-facility-filter-option.active[data-category="academy"]{
	border-color: #14B8A6;
}

.education-facility-filter-option.active[data-category="academy"] i{
	color: #14B8A6;
}

.education-facility-filter-option.active[data-category="elementary"]{
	border-color: #10B981;
}

.education-facility-filter-option.active[data-category="middle"]{
	border-color: #0EA5E9;
}

.education-facility-filter-option.active[data-category="high"]{
	border-color: #6366F1;
}

.education-facility-filter-clear{
	width: 100%;
	height: 36px;
	margin-top: 8px;
	border: 1px solid #d7dbe0;
	border-radius: 9px;
	background: #ffffff;
	color: #111827;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}

.education-facility-filter-clear.is-disabled,
.education-facility-filter-clear:disabled{
	border-color: #e7ebef;
	background: #f8f9fb;
	color: #d4d8de;
	cursor: default;
}

.education-facility-filter-radius{
	margin-top: 9px;
	color: #8b8f96;
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	text-align: right;
}

.convenience-facility-level-note{
	line-height: 1.45;
	text-align: right;
}


.education-facility-map-marker-label{
	position: absolute;
	left: 50%;
	top: 61%;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 17px;
	height: 17px;
	border-radius: 50%;
	background: #a8783a;
	color: #ffffff;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	transform: translate(-50%, -50%);
	text-shadow: none;
	box-shadow: 0 0 0 1px rgba(255,255,255,0.72), 0 1px 2px rgba(0,0,0,0.16);
}



#mapEducationToolBtn.active{
	position: relative;
	isolation: isolate;
	background: #1764ff !important;
	color: #ffffff !important;
	border: 0 !important;
	border-radius: var(--map-control-radius) var(--map-control-radius) 0 0;
	outline: 0 !important;
	box-shadow: none !important;
	overflow: hidden;
}

#mapEducationToolBtn.active::before{
	content: "";
	position: absolute;
	inset: -1px -1px 0 -1px;
	background: #1764ff;
	z-index: 0;
}

#mapEducationToolBtn.active .map-tool-icon,
#mapEducationToolBtn.active .map-tool-label{
	position: relative;
	z-index: 1;
}



.map-side-tools,
.map-side-tools *,
.map-type-popover,
.map-type-popover *{
	-webkit-user-select: none;
	user-select: none;
}

.map-side-tools{
	-webkit-tap-highlight-color: transparent;
}


#map,
#map *,
.map-wrap,
.map-wrap *{
	-webkit-user-select: none;
	user-select: none;
}

#map{
	-webkit-tap-highlight-color: transparent;
}


#locationAnalysisDropdown{
	display: none !important;
}

.convenience-facility-filter-panel .education-facility-filter-option.active{
	border-color: #f97316;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .education-facility-filter-option.active i{
	color: #f97316;
}

.convenience-facility-filter-panel .public-parking-filter-option.active{
	border-color: #2563eb;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .public-parking-filter-option.active i{
	color: #2563eb;
}

.convenience-facility-filter-panel .large-mart-filter-option.active{
	border-color: #f97316;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .large-mart-filter-option.active i{
	color: #f97316;
}

.convenience-facility-filter-panel .convenience-store-filter-option.active{
	border-color: #16a34a;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .convenience-store-filter-option.active i{
	color: #16a34a;
}

.convenience-facility-filter-panel .clean-house-filter-option.active{
	border-color: #06b6d4;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .clean-house-filter-option.active i{
	color: #06b6d4;
}

.convenience-facility-filter-panel .bank-filter-option.active{
	border-color: #4f46e5;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .bank-filter-option.active i{
	color: #4f46e5;
}

.convenience-facility-filter-panel .public-office-filter-option.active{
	border-color: #64748b;
	background: #ffffff;
	color: #111827;
}

.convenience-facility-filter-panel .public-office-filter-option.active i{
	color: #64748b;
}



.public-parking-marker-label{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
}

.education-facility-map-marker[data-category="public-parking"].selected .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"]:focus-visible .education-facility-map-marker-icon{
	background: #ffffff;
	color: #2563eb;
	border-color: #2563eb;
}

/* 2026-07-01: match public parking markers to school/childcare circular badge sizing. */
.education-facility-map-marker[data-category="public-parking"]{
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
}

.education-facility-map-marker[data-category="public-parking"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"] .public-parking-marker-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
	box-sizing: border-box;
	border: 0;
	border-radius: 50%;
	background: rgba(20,184,166,0.78);
	color: #ffffff;
	filter: none;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.14);
}



.education-facility-map-marker[data-category="public-parking"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(20,184,166,0.9);
	border-width: 0;
	border-color: transparent;
	color: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18);
}

.broker-office-filter-panel{
	width: 236px;
}

.broker-office-filter-panel .education-facility-filter-option{
	min-height: 58px;
	height: 58px;
}

.broker-office-filter-panel .education-facility-filter-option i{
	font-size: 16px;
	line-height: 1;
}

.broker-office-filter-panel .education-facility-filter-option span{
	text-align: center;
	line-height: 1.15;
	word-break: keep-all;
}

.broker-office-filter-panel .education-facility-filter-option.active{
	border-color: #1764ff;
	background: #ffffff;
	color: #111827;
}

.broker-office-filter-panel .education-facility-filter-option.active i{
	color: #1764ff;
}

.convenience-facility-filter-option.placeholder,
.development-facility-filter-option.placeholder{
	visibility: visible;
	pointer-events: none;
	background: #f4f5f7;
	border-color: transparent;
	cursor: default;
}

.development-facility-filter-option[data-development-layer="admin-boundary"] i{
	color: #ef4444;
}

.development-facility-filter-option[data-development-layer="factory-restriction"] i{
	color: #b45309;
}

.development-facility-filter-option[data-development-layer="cultural-heritage-protection"] i{
	color: #0f766e;
}

.development-facility-filter-option[data-development-layer="livestock-breeding-restriction"] i{
	color: #ea580c;
}

.development-facility-filter-option[data-development-layer="factory-restriction"] > span,
.development-facility-filter-option[data-development-layer="cultural-heritage-protection"] > span,
.development-facility-filter-option[data-development-layer="livestock-breeding-restriction"] > span{
	font-size: 11.5px;
	white-space: nowrap;
}

.education-facility-map-marker[data-category="clean-house"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="clean-house"] .clean-house-marker-icon{
	background: #06b6d4;
	color: #ffffff;
	border-color: #ffffff;
}

.education-facility-map-marker[data-category="clean-house"].selected .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="clean-house"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="clean-house"]:focus-visible .education-facility-map-marker-icon{
	background: #ffffff;
	color: #0891b2;
	border-color: #06b6d4;
}

.clean-house-guide-list{
	display: grid;
	gap: 7px;
	margin-top: 10px;
}

.life-safety-legend-divider{
	width: 100%;
	height: 1px;
	margin: 12px 0;
	background: rgba(148, 163, 184, 0.28);
}

.clean-house-guide-list div{
	display: grid;
	grid-template-columns: 74px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	color: #4b5563;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0;
}

.clean-house-guide-list strong{
	color: #111827;
	font-weight: 800;
	letter-spacing: 0;
}

.clean-house-guide-list span{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.development-facility-filter-option[data-development-layer="admin-boundary"].active{
	border-color: #ef4444;
	background: #fef2f2;
	color: #111827;
}

.development-facility-filter-option[data-development-layer="factory-restriction"].active{
	border-color: #d97706;
	background: #fffbeb;
	color: #111827;
}

.development-facility-filter-option[data-development-layer="cultural-heritage-protection"].active{
	border-color: #0f766e;
	background: #f0fdfa;
	color: #111827;
}

.development-facility-filter-option[data-development-layer="livestock-breeding-restriction"].active{
	border-color: #ea580c;
	background: #fff7ed;
	color: #111827;
}

.development-facility-filter-option[data-national-land-plan-layer="urban-area"],
.national-land-plan-legend-swatch[data-national-land-plan-key="urban-area"]{
	--national-land-plan-stroke: #dc2626;
	--national-land-plan-fill: #f87171;
	--national-land-plan-fill-soft: rgba(248, 113, 113, 0.34);
	--national-land-plan-active-bg: #fef2f2;
}

.development-facility-filter-option[data-national-land-plan-layer="conservation-green"],
.national-land-plan-legend-swatch[data-national-land-plan-key="conservation-green"]{
	--national-land-plan-stroke: #166534;
	--national-land-plan-fill: #22c55e;
	--national-land-plan-fill-soft: rgba(34, 197, 94, 0.34);
	--national-land-plan-active-bg: #f0fdf4;
}

.development-facility-filter-option[data-national-land-plan-layer="production-green"],
.national-land-plan-legend-swatch[data-national-land-plan-key="production-green"]{
	--national-land-plan-stroke: #65a30d;
	--national-land-plan-fill: #a3e635;
	--national-land-plan-fill-soft: rgba(163, 230, 53, 0.34);
	--national-land-plan-active-bg: #f7fee7;
}

.development-facility-filter-option[data-national-land-plan-layer="natural-green"],
.national-land-plan-legend-swatch[data-national-land-plan-key="natural-green"]{
	--national-land-plan-stroke: #0f766e;
	--national-land-plan-fill: #2dd4bf;
	--national-land-plan-fill-soft: rgba(45, 212, 191, 0.34);
	--national-land-plan-active-bg: #f0fdfa;
}

.development-facility-filter-option[data-national-land-plan-layer="management-area"],
.national-land-plan-legend-swatch[data-national-land-plan-key="management-area"]{
	--national-land-plan-stroke: #2563eb;
	--national-land-plan-fill: #60a5fa;
	--national-land-plan-fill-soft: rgba(96, 165, 250, 0.34);
	--national-land-plan-active-bg: #eff6ff;
}

.development-facility-filter-option[data-national-land-plan-layer="absolute-conservation"],
.national-land-plan-legend-swatch[data-national-land-plan-key="absolute-conservation"]{
	--national-land-plan-stroke: #a21caf;
	--national-land-plan-fill: #e879f9;
	--national-land-plan-fill-soft: rgba(232, 121, 249, 0.34);
	--national-land-plan-active-bg: #fdf4ff;
}

.development-facility-filter-option[data-national-land-plan-layer].active{
	border-color: var(--national-land-plan-stroke);
	background: var(--national-land-plan-active-bg);
	color: #111827;
}

.development-facility-filter-option[data-national-land-plan-layer].active > i{
	color: var(--national-land-plan-stroke);
}

.national-land-plan-legend-rows{
	display: grid;
	gap: 7px;
	margin-top: 9px;
}

.national-land-plan-legend-swatch{
	width: 14px;
	height: 10px;
	box-sizing: border-box;
	flex: 0 0 auto;
	border: 2px solid var(--national-land-plan-stroke);
	background: var(--national-land-plan-fill-soft);
}

.factory-restriction-legend-swatch{
	width: 14px;
	height: 10px;
	box-sizing: border-box;
	flex: 0 0 auto;
	border: 2px solid #b45309;
	background: rgba(245, 158, 11, 0.34);
}

.sewer-treatment-area-legend-swatch{
	width: 14px;
	height: 10px;
	box-sizing: border-box;
	flex: 0 0 auto;
	border: 2px solid #dc2626;
	background: rgba(239, 68, 68, 0.20);
}

.cultural-heritage-protection-legend-swatch{
	width: 14px;
	height: 10px;
	box-sizing: border-box;
	flex: 0 0 auto;
	border: 2px solid #0f766e;
	background: rgba(20, 184, 166, 0.30);
}

.livestock-breeding-restriction-legend-swatch{
	width: 14px;
	height: 10px;
	box-sizing: border-box;
	flex: 0 0 auto;
}

.livestock-breeding-restriction-legend-swatch.full{
	border: 2px solid #c2410c;
	background: rgba(249, 115, 22, 0.28);
}

.livestock-breeding-restriction-legend-swatch.partial{
	border: 2px solid #d97706;
	background: rgba(251, 191, 36, 0.25);
}

.life-safety-region-filter{
	grid-column: 1 / -1;
	box-sizing: border-box;
	padding: 10px 10px 9px;
	border: 1px solid #f97316;
	border-radius: 10px;
	background: #fff7ed;
}

.life-safety-region-filter-title{
	padding-bottom: 7px;
	border-bottom: 1px solid rgba(249,115,22,0.24);
	color: #111827;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
}

.life-safety-region-filter-subtitle{
	margin-top: 8px;
	color: #6b7280;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
}

.life-safety-region-filter-list{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-auto-rows: 24px;
	gap: 7px 8px;
	margin-top: 8px;
	align-items: center;
}

.life-safety-region-filter-item{
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-width: 0;
	color: #111827;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

.life-safety-region-filter-item input{
	width: 13px;
	height: 13px;
	margin: 0;
	accent-color: #f97316;
}

.life-safety-region-reset{
	grid-column: 4;
	justify-self: stretch;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	box-sizing: border-box;
	border: 1px solid rgba(249,115,22,0.34);
	border-radius: 999px;
	padding: 0 6px;
	background: #ffffff;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
}

.life-safety-region-reset:hover{
	border-color: rgba(249,115,22,0.52);
	color: #111827;
}


.education-facility-filter-school-mark{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	line-height: 1;
	color: #9ca3af;
}

.education-facility-filter-school-mark i{
	display: block;
	font-size: 20px;
	line-height: 1;
	color: currentColor;
	-webkit-text-stroke: 0.9px #ffffff;
	filter: drop-shadow(0 1px 1px rgba(0,0,0,0.18));
}

.education-facility-filter-school-mark-label{
	position: absolute;
	left: 50%;
	top: 61%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #ffffff;
	color: #6b7280;
	font-size: 8px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	transform: translate(-50%, -50%);
	box-shadow: 0 0 0 1px rgba(107,114,128,0.22), 0 1px 1px rgba(0,0,0,0.12);
}

.education-facility-filter-option.active .education-facility-filter-school-mark{
	color: #a8783a;
}

.education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark{
	color: #10B981;
}

.education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark{
	color: #0EA5E9;
}

.education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark{
	color: #6366F1;
}

.education-facility-filter-option.active .education-facility-filter-school-mark-label{
	color: #8a5a24;
	box-shadow: 0 0 0 1px rgba(138,90,36,0.28), 0 1px 2px rgba(0,0,0,0.14);
}

.education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark-label{
	color: #047857;
	box-shadow: 0 0 0 1px rgba(16,185,129,0.28), 0 1px 2px rgba(0,0,0,0.14);
}

.education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark-label{
	color: #0369A1;
	box-shadow: 0 0 0 1px rgba(14,165,233,0.28), 0 1px 2px rgba(0,0,0,0.14);
}

.education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark-label{
	color: #4338CA;
	box-shadow: 0 0 0 1px rgba(99,102,241,0.28), 0 1px 2px rgba(0,0,0,0.14);
}

.education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark,
.education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark,
.education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark{
	width: 26px;
	height: 26px;
}

.education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark i,
.education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark i,
.education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark i{
	display: none;
}

.education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark-label{
	position: static;
	width: 26px;
	height: 26px;
	transform: none;
	color: #ffffff;
	font-size: 12.5px !important;
	font-weight: 800 !important;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.18);
}

.education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark-label{
	background: #10B981;
}

.education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark-label{
	background: #0EA5E9;
}

.education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark-label{
	background: #6366F1;
}

.education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark-label{
	color: #ffffff;
}


.education-facility-filter-option{
	display: grid;
	grid-template-rows: 26px 14px;
	align-content: center;
	justify-items: center;
	row-gap: 4px;
}

.education-facility-filter-option > i,
.education-facility-filter-option > .education-facility-filter-school-mark{
	grid-row: 1;
	align-self: center;
}

.education-facility-filter-option > i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
}

.education-facility-filter-option > span:not(.education-facility-filter-school-mark){
	grid-row: 2;
	align-self: center;
	display: block;
	height: 14px;
	line-height: 14px;
}



.education-facility-filter-option > .education-facility-filter-school-mark{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	transform: none;
}

.education-facility-filter-option > i{
	transform: translateY(1px);
}

.map-zoom-stack{
    gap: 14px !important;
}

.map-type-cadastral-toggle.active .map-type-cadastral-icon{
	color: #1764ff;
}

.map-type-cadastral-toggle.active .map-type-cadastral-label{
	color: #202124;
}

.map-type-cadastral-toggle.active .map-type-switch{
	background: #1764ff;
}









.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon{
	width: 28px;
	height: 28px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #22C55E;
	filter: none;
}

.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon i{
	font-size: 28px;
	line-height: 1;
	color: currentColor;
	-webkit-text-stroke: 0;
}


.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 0;
	background: transparent;
	color: #22C55E;
}

.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker svg{
	display: block;
	width: 28px;
	height: 28px;
}


.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon{
	width: 28px;
	height: 28px;
	border: 0;
	background: #34D399;
	color: #ffffff;
	filter: none;
}

.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon i{
	color: #ffffff;
	-webkit-text-stroke: 0;
}














.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-label{
	background: #10B981;
}

.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-label{
	background: #0EA5E9;
}

.education-facility-map-marker[data-category="high"] .education-facility-map-marker-label{
	background: #6366F1;
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon{
	width: 28px;
	height: 28px;
	border: 0;
	border-radius: 50%;
	color: #ffffff;
	filter: drop-shadow(0 2px 5px rgba(15, 23, 42, 0.18));
}







.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon i{
	display: none;
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-label,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-label,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-label{
	position: static;
	width: 28px;
	height: 28px;
	background: transparent;
	color: #ffffff;
	font-size: 14px;
	font-weight: 800;
	transform: none;
	box-shadow: none;
}







/* PATCH 3.525: 매물/거래/기타조건 필터 최종 스타일 정리 */
.type-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 24px;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	gap: 16px;
}

.deal-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 24px;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	gap: 16px;
}

#typeButtons,
#dealButtons{
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 100%;
}

#extraButtons{
	display: flex;
	flex-direction: column;
	gap: 18px;
	width: 100%;
}

.type-filter-section{
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.type-filter-section:nth-of-type(2){
	margin-top: 4px;
}

.type-filter-section-title,
.deal-filter-section-title{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.type-filter-section:nth-of-type(2) .type-filter-section-title{
	font-size: 15px;
}

.type-filter-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.deal-filter-grid{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

.extra-condition-filter-grid{
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.type-filter-tile,
.deal-filter-tile{
	position: relative;
	min-height: 36px;
	padding: 0;
	border-radius: 6px;
	background: transparent;
	cursor: pointer;
	user-select: none;
}

.type-filter-tile:hover,
.deal-filter-tile:hover{
	background: transparent;
}

.type-filter-tile input,
.deal-filter-tile input{
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}

.type-filter-tile span,
.deal-filter-tile span{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 36px;
	padding: 0 8px;
	border: 1.25px solid transparent;
	border-radius: 6px;
	background: #f3f4f6;
	color: #73777d;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	text-align: center;
	box-sizing: border-box;
	transition: background 0.14s ease, border-color 0.14s ease, color 0.14s ease;
}

.type-filter-tile input:checked + span,
.deal-filter-tile input:checked + span{
	border-color: #111827;
	background: #ffffff;
	color: #111827;
	font-weight: 700;
}

.type-filter-tile:hover span,
.deal-filter-tile:hover span{
	background: #eef0f3;
	color: #202124;
}

.type-filter-tile input:checked + span:hover,
.deal-filter-tile input:checked + span:hover{
	border-color: #111827;
	background: #f3f4f6;
	color: #111827;
}

.type-filter-menu .extra-filter-reset-row,
.deal-filter-menu .extra-filter-reset-row{
	margin-top: 0;
	padding-top: 12px;
	border-top: 1px solid #edf0f4;
}

.type-filter-menu .extra-filter-reset-btn,
.deal-filter-menu .extra-filter-reset-btn{
	min-height: 38px;
	font-size: 15px;
	font-weight: 600;
}

.extra-condition-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 24px;
	border-radius: 20px;
	gap: 16px;
}

.extra-condition-filter-menu .extra-filter-reset-row{
	width: 100%;
	margin-top: 16px;
	padding-top: 12px;
	border-top: 1px solid #edf0f4;
}

.extra-condition-filter-menu .extra-filter-reset-btn{
	min-height: 38px;
	font-size: 15px;
	font-weight: 600;
}

/* PATCH 3.525: 방/욕실, 층/방향 필터 최종 스타일 정리 */
.floor-direction-filter-menu,
.room-bath-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 24px;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	gap: 16px;
}

.floor-direction-filter-title,
.room-bath-filter-title{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.floor-direction-filter-section,
.room-bath-filter-section{
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.floor-direction-filter-section-title,
.room-bath-filter-section-title{
	margin: 0;
	color: #3f4652;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.floor-direction-filter-chip-grid,
.floor-direction-filter-floor-grid,
.floor-direction-filter-direction-grid,
.room-bath-filter-chip-grid{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
	width: 100%;
}

.floor-direction-filter-chip,
.room-bath-filter-chip{
	position: relative;
	min-height: 36px;
	padding: 0;
	border-radius: 6px;
	background: transparent;
	cursor: pointer;
	user-select: none;
}

.floor-direction-filter-chip input,
.room-bath-filter-chip input{
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}

.floor-direction-filter-chip span,
.room-bath-filter-chip span{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	min-height: 36px;
	padding: 0 8px;
	border: 1.25px solid transparent;
	border-radius: 6px;
	background: #f3f4f6;
	color: #73777d;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	box-sizing: border-box;
	transition: background 0.14s ease, border-color 0.14s ease, color 0.14s ease;
}

.floor-direction-filter-chip span::before,
.room-bath-filter-chip span::before{
	display: none;
	content: none;
}

.floor-direction-filter-chip:hover span,
.room-bath-filter-chip:hover span{
	border-color: transparent;
	background: #eef0f3;
	color: #202124;
}

.floor-direction-filter-chip input:checked + span,
.room-bath-filter-chip input:checked + span{
	border-color: #111827;
	background: #ffffff;
	color: #111827;
	font-weight: 700;
}

.floor-direction-filter-menu .extra-filter-reset-row,
.room-bath-filter-menu .extra-filter-reset-row{
	width: 100%;
	margin-top: 0;
	padding-top: 14px;
}

.floor-direction-filter-menu .extra-filter-reset-btn,
.room-bath-filter-menu .extra-filter-reset-btn{
	min-height: 40px;
	font-size: 15px;
	font-weight: 600;
}

/* PATCH 3.431: 면적 범위 필터 */
.area-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 30px;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	gap: 20px;
}

.area-filter-title{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.area-filter-summary-row{
	display: flex;
	align-items: center;
	gap: 2px;
	width: 100%;
}

.area-filter-summary{
	margin-right: 0;
	color: #1764ff;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0;
	white-space: nowrap;
}

.area-filter-icon-btn,
.area-filter-unit-btn{
	border: 0;
	background: transparent;
	color: #1f2937;
	font-family: var(--font-ui);
	cursor: pointer;
}

.area-filter-icon-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 28px;
	border-radius: 50%;
	font-size: 15px;
	color: #6b7280;
}

.area-filter-icon-btn:hover{
	background: #f3f4f6;
	color: #111827;
}

.area-filter-unit-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 56px;
	height: 34px;
	padding: 0 12px;
	border: 1px solid #d9dee5;
	border-radius: 8px;
	background: #ffffff;
	font-size: 14px;
	font-weight: 500;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.area-filter-unit-btn .fa-arrows-rotate{
	font-size: 13px;
	color: #4b5563;
	line-height: 1;
}

.area-filter-unit-btn:hover{
	background: #f8fafc;
}

.area-filter-manual-unit-btn{
	width: 48px;
	min-width: 48px;
	height: 36px;
	padding: 0;
	gap: 3px;
	font-size: 13px;
}

.area-filter-manual-unit-btn .fa-arrows-rotate{
	font-size: 12px;
}

.area-filter-reset-btn{
	display: none;
	margin-left: auto;
	width: 34px;
	height: 34px;
	border: 1px solid #d9dee5;
	background: #ffffff;
	color: #111827;
	font-size: 15px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.area-filter-reset-btn.is-visible{
	display: inline-flex;
}

.area-filter-reset-btn[hidden]{
	display: none !important;
}

.area-filter-slider-wrap{
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	padding: 0;
	padding-top: 2px;
	box-sizing: border-box;
}

.area-filter-slider-rail{
	position: relative;
	width: 100%;
	height: 30px;
	cursor: pointer;
}

.area-filter-slider-rail::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 14px;
	height: 4px;
	border-radius: 999px;
	background: #dfe3e7;
}

.area-filter-slider-fill{
	position: absolute;
	top: 14px;
	height: 4px;
	border-radius: 999px;
	background: #1764ff;
	pointer-events: none;
}

.area-filter-range{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 30px;
	margin: 0;
	background: transparent;
	pointer-events: none;
	appearance: none;
	-webkit-appearance: none;
}

.area-filter-range::-webkit-slider-runnable-track{
	height: 30px;
	background: transparent;
}

.area-filter-range::-webkit-slider-thumb{
	width: 26px;
	height: 26px;
	margin-top: 2px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
	cursor: grab;
	pointer-events: auto;
	-webkit-appearance: none;
}

.area-filter-range:active::-webkit-slider-thumb,
.area-filter-range.is-dragging::-webkit-slider-thumb{
	cursor: grabbing;
}

.area-filter-range::-moz-range-track{
	height: 30px;
	background: transparent;
}

.area-filter-range::-moz-range-thumb{
	width: 26px;
	height: 26px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
	cursor: grab;
	pointer-events: auto;
}

.area-filter-range:active::-moz-range-thumb,
.area-filter-range.is-dragging::-moz-range-thumb{
	cursor: grabbing;
}

.area-filter-scale{
	position: relative;
	display: block;
	height: 18px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
}

.area-filter-scale span{
	position: absolute;
	top: 0;
	width: 56px;
	margin-left: -28px;
	transform: none;
	text-align: center;
	white-space: nowrap;
}

.area-filter-scale span:first-child{
	width: 56px;
	margin-left: 0;
	text-align: left;
}

.area-filter-scale span:last-child{
	width: 56px;
	margin-left: -56px;
	text-align: right;
}

.area-filter-target-options{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}

.area-filter-exclusive-option{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: fit-content;
	color: #3f4652;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	cursor: pointer;
	user-select: none;
}

.area-filter-exclusive-option input{
	width: 22px;
	height: 22px;
	margin: 0;
	accent-color: #111827;
	cursor: pointer;
	flex: 0 0 22px;
}

.area-filter-manual-modal{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	inset: 0;
	width: 100vw;
	height: 100vh;
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 70000;
}

.area-filter-manual-modal.open{
	display: flex;
}

.area-filter-manual-backdrop{
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
}

.area-filter-manual-dialog{
	position: relative;
	width: min(600px, calc(100vw - 56px));
	margin: 0;
	padding: 24px 22px 22px;
	border: 0;
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24);
}

.area-filter-manual-head{
	display: grid;
	grid-template-columns: 48px 1fr 48px;
	align-items: center;
	gap: 12px;
	margin-bottom: 22px;
}

.area-filter-manual-head h3{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 21px;
	font-weight: 700;
	line-height: 1.1;
	text-align: center;
	letter-spacing: 0;
}

.area-filter-manual-close{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #111827;
	font-size: 26px;
	cursor: pointer;
}

.area-filter-manual-close:hover{
	background: #f3f4f6;
}

.area-filter-manual-fields{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 26px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	margin-bottom: 8px;
}

.area-filter-manual-field{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 28px 24px;
	align-items: center;
	column-gap: 2px;
	height: 54px;
	padding: 0 12px 0 16px;
	border: 1px solid #d8dde4;
	border-radius: 8px;
	background: #ffffff;
}

.area-filter-manual-field.is-invalid{
	border-color: #ff3030;
	border-width: 2px;
}

.area-filter-manual-field input{
	width: 100%;
	min-width: 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
}

.area-filter-manual-field.is-invalid input{
	color: #ff3030;
}

.area-filter-manual-field input::placeholder{
	color: #c2c7cf;
	font-weight: 600;
	opacity: 1;
}

.area-filter-manual-field input[type="number"]{
	appearance: textfield;
	-moz-appearance: textfield;
}

.area-filter-manual-field input[type="number"]::-webkit-outer-spin-button,
.area-filter-manual-field input[type="number"]::-webkit-inner-spin-button{
	margin: 0;
	-webkit-appearance: none;
}

.area-filter-manual-clear{
	display: inline-flex;
	justify-self: end;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 0;
	border-radius: 50%;
	background: #9ca3af;
	color: #ffffff;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}

.area-filter-manual-clear.is-visible{
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

.area-filter-manual-unit{
	justify-self: end;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}

.area-filter-manual-separator{
	color: #111827;
	font-family: var(--font-ui);
	font-size: 22px;
	font-weight: 700;
	text-align: center;
}

.area-filter-manual-errors{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 26px minmax(0, 1fr);
	align-items: start;
	gap: 12px;
	min-height: 18px;
	margin-bottom: 12px;
	color: #ff3030;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
}

.area-filter-manual-errors span{
	display: block;
	min-height: 18px;
}

.area-filter-manual-apply{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 58px;
	border: 0;
	border-radius: 8px;
	background: #1764ff;
	color: #ffffff;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
}

.area-filter-manual-apply:hover{
	background: #0f55df;
}

.area-filter-manual-apply:disabled{
	background: #d9dce1;
	color: #a7adb7;
	cursor: not-allowed;
}

.area-filter-manual-apply:disabled:hover{
	background: #d9dce1;
}

/* PATCH 3.432: 사용승인일 범위 필터 */
.approval-year-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 30px;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	gap: 20px;
}

.approval-year-filter-title{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.approval-year-filter-summary{
	display: block;
	color: #1764ff;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0;
	white-space: nowrap;
}

.approval-year-filter-summary-row{
	display: flex;
	align-items: center;
	gap: 2px;
	width: 100%;
	min-height: 34px;
}

.approval-year-filter-icon-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 28px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 15px;
	cursor: pointer;
}

.approval-year-filter-icon-btn:hover{
	background: #f3f4f6;
	color: #111827;
}

.approval-year-filter-reset-btn{
	display: inline-flex;
	margin-left: auto;
	width: 34px;
	height: 34px;
	border: 1px solid #d9dee5;
	background: #ffffff;
	color: #111827;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.approval-year-filter-reset-btn.is-visible{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.approval-year-filter-slider-wrap{
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	padding: 0;
	padding-top: 2px;
	box-sizing: border-box;
}

.approval-year-filter-slider-rail{
	position: relative;
	width: 100%;
	height: 30px;
	cursor: pointer;
}

.approval-year-filter-slider-rail::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 14px;
	height: 4px;
	border-radius: 999px;
	background: #dfe3e7;
}

.approval-year-filter-slider-fill{
	position: absolute;
	top: 14px;
	height: 4px;
	border-radius: 999px;
	background: #1764ff;
	pointer-events: none;
}

.approval-year-filter-range{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 30px;
	margin: 0;
	background: transparent;
	pointer-events: none;
	appearance: none;
	-webkit-appearance: none;
}

.approval-year-filter-range::-webkit-slider-runnable-track{
	height: 30px;
	background: transparent;
}

.approval-year-filter-range::-webkit-slider-thumb{
	width: 26px;
	height: 26px;
	margin-top: 2px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
	cursor: grab;
	pointer-events: auto;
	-webkit-appearance: none;
}

.approval-year-filter-range:active::-webkit-slider-thumb,
.approval-year-filter-range.is-dragging::-webkit-slider-thumb{
	cursor: grabbing;
}

.approval-year-filter-range::-moz-range-track{
	height: 30px;
	background: transparent;
}

.approval-year-filter-range::-moz-range-thumb{
	width: 26px;
	height: 26px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
	cursor: grab;
	pointer-events: auto;
}

.approval-year-filter-range:active::-moz-range-thumb,
.approval-year-filter-range.is-dragging::-moz-range-thumb{
	cursor: grabbing;
}

body.filter-range-dragging,
body.filter-range-dragging *{
	cursor: grabbing !important;
}

body.filter-track-default,
body.filter-track-default *{
	cursor: default !important;
}

.approval-year-filter-scale{
	position: relative;
	display: block;
	height: 18px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
}

.approval-year-filter-scale span{
	position: absolute;
	top: 0;
	left: 50%;
	width: 56px;
	margin-left: -28px;
	transform: none;
	text-align: center;
	white-space: nowrap;
}

.approval-year-filter-scale span:nth-child(1){ left: 0; }
.approval-year-filter-scale span:nth-child(2){ left: 20%; }
.approval-year-filter-scale span:nth-child(3){ left: 40%; }
.approval-year-filter-scale span:nth-child(4){ left: 60%; }
.approval-year-filter-scale span:nth-child(5){ left: 80%; }
.approval-year-filter-scale span:nth-child(6){ left: 100%; }

.approval-year-filter-scale span:first-child{
	width: 56px;
	margin-left: 0;
	text-align: left;
}

.approval-year-filter-scale span:last-child{
	width: 56px;
	margin-left: -56px;
	text-align: right;
}

/* PATCH 3.503: 가격 필터 임시 정적 표시 */
.price-filter-menu{
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	padding: 22px 24px 30px;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	gap: 20px;
}

#priceFilterOptions{
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.price-filter-panel{
	display: flex;
	flex-direction: column;
	gap: 20px;
	width: 100%;
}

.price-filter-panel-title{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.price-filter-summary-row{
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	min-height: 18px;
	font-family: var(--font-ui);
	line-height: 1.1;
	letter-spacing: 0;
}

.price-filter-summary-label{
	color: #374151;
	font-size: 15px;
	font-weight: 700;
	white-space: nowrap;
}

.price-filter-summary{
	color: #1764ff;
	font-size: 15px;
	font-weight: 700;
	white-space: nowrap;
}

.price-filter-icon-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 28px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 15px;
	cursor: pointer;
}

.price-filter-icon-btn:hover{
	background: #f3f4f6;
	color: #111827;
}

.price-filter-edit-btn{
	flex: 0 0 32px;
	margin-left: -6px;
}

.price-filter-reset-btn{
	display: inline-flex;
	margin-left: auto;
	width: 34px;
	height: 34px;
	border: 1px solid #d9dee5;
	background: #ffffff;
	color: #111827;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.price-filter-reset-btn.is-visible{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.price-filter-slider-wrap{
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	padding: 0;
	padding-top: 2px;
	box-sizing: border-box;
}

.price-filter-slider-rail{
	position: relative;
	width: 100%;
	height: 30px;
	cursor: pointer;
}

.price-filter-slider-rail::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 14px;
	height: 4px;
	border-radius: 999px;
	background: #dfe3e7;
}

.price-filter-slider-fill{
	position: absolute;
	top: 14px;
	height: 4px;
	border-radius: 999px;
	background: #1764ff;
	pointer-events: none;
}

.price-filter-range{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 30px;
	margin: 0;
	background: transparent;
	pointer-events: none;
	appearance: none;
	-webkit-appearance: none;
}

.price-filter-range::-webkit-slider-runnable-track{
	height: 30px;
	background: transparent;
}

.price-filter-range::-webkit-slider-thumb{
	width: 26px;
	height: 26px;
	margin-top: 2px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
	cursor: grab;
	pointer-events: auto;
	-webkit-appearance: none;
}

.price-filter-range:active::-webkit-slider-thumb,
.price-filter-range.is-dragging::-webkit-slider-thumb{
	cursor: grabbing;
}

.price-filter-range::-moz-range-track{
	height: 30px;
	background: transparent;
}

.price-filter-range::-moz-range-thumb{
	width: 26px;
	height: 26px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
	cursor: grab;
	pointer-events: auto;
}

.price-filter-range:active::-moz-range-thumb,
.price-filter-range.is-dragging::-moz-range-thumb{
	cursor: grabbing;
}

.price-filter-scale{
	position: relative;
	display: block;
	height: 18px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
}

.price-filter-scale span{
	position: absolute;
	top: 0;
	width: 64px;
	margin-left: -32px;
	transform: none;
	text-align: center;
	white-space: nowrap;
}

.price-filter-scale span:first-child{
	width: 56px;
	margin-left: 0;
	text-align: left;
}

.price-filter-scale span:last-child{
	width: 56px;
	margin-left: -56px;
	text-align: right;
}

.price-filter-manual-modal{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	inset: 0;
	width: 100vw;
	height: 100vh;
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 70000;
}

.price-filter-manual-modal.open{
	display: flex;
}

.price-filter-manual-backdrop{
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
}

.price-filter-manual-dialog{
	position: relative;
	width: min(600px, calc(100vw - 56px));
	margin: 0;
	padding: 24px 22px 22px;
	border: 0;
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24);
}

.price-filter-manual-head{
	display: grid;
	grid-template-columns: 48px 1fr 48px;
	align-items: center;
	gap: 12px;
	margin-bottom: 22px;
}

.price-filter-manual-head h3{
	margin: 0;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 21px;
	font-weight: 700;
	line-height: 1.1;
	text-align: center;
	letter-spacing: 0;
}

.price-filter-manual-close{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #111827;
	font-size: 26px;
	cursor: pointer;
}

.price-filter-manual-close:hover{
	background: #f3f4f6;
}

.price-filter-manual-fields,
.price-filter-manual-hints{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 26px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
}

.price-filter-manual-fields{
	margin-bottom: 8px;
}

.price-filter-manual-hints{
	min-height: 18px;
	margin-bottom: 12px;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
}

.price-filter-manual-hints.is-error{
	color: #ff3030;
}

.price-filter-manual-hints span{
	display: block;
	min-height: 18px;
}

.price-filter-manual-field{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 28px 24px;
	align-items: center;
	column-gap: 2px;
	height: 54px;
	padding: 0 12px 0 16px;
	border: 1px solid #d8dde4;
	border-radius: 8px;
	background: #ffffff;
}

.price-filter-manual-field.is-invalid{
	border-color: #ff3030;
	border-width: 2px;
}

.price-filter-manual-field input{
	width: 100%;
	min-width: 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
}

.price-filter-manual-field.is-invalid input{
	color: #ff3030;
}

.price-filter-manual-field input::placeholder{
	color: #c2c7cf;
	font-weight: 600;
	opacity: 1;
}

.price-filter-manual-clear{
	display: inline-flex;
	justify-self: end;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 0;
	border-radius: 50%;
	background: #9ca3af;
	color: #ffffff;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}

.price-filter-manual-clear.is-visible{
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

.price-filter-manual-unit{
	justify-self: end;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}

.price-filter-manual-separator{
	color: #111827;
	font-family: var(--font-ui);
	font-size: 22px;
	font-weight: 700;
	text-align: center;
}

.price-filter-manual-apply{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 58px;
	border: 0;
	border-radius: 8px;
	background: #1764ff;
	color: #ffffff;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
}

.price-filter-manual-apply:hover{
	background: #0f55df;
}

.price-filter-manual-apply:disabled{
	background: #d9dce1;
	color: #a7adb7;
	cursor: not-allowed;
}

.price-filter-manual-apply:disabled:hover{
	background: #d9dce1;
}

/* PATCH 3.729: keep the address/current-location icon fixed while the dropdown opens. */
.global-topbar-menu.has-map-filters .map-region-filter-trigger > .map-region-trigger-icon,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"] > .map-region-trigger-icon,
.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger > .map-region-trigger-icon{
	transform: none !important;
}

/* PATCH 3.729: region complex list card hover and keyboard focus state. */
.map-region-complex-card{
	cursor: pointer;
	transition: background-color 0.12s ease;
}

.map-region-complex-card:hover,
.map-region-complex-card:focus-visible{
	background: #f1f3f5;
	outline: none;
}

/* PATCH 3.729: fill the full row width on region list hover. */
.map-region-complex-list{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.map-region-complex-card{
	width: 100%;
	box-sizing: border-box;
	padding-left: 24px;
	padding-right: 24px;
}

.map-region-complex-card:hover,
.map-region-complex-card:focus-visible{
	background: #f1f3f5;
}

/* PATCH 3.729: keep the region dropdown open and place detail panel to its right. */


/* PATCH 3.729: region list detail opens at the normal detail-panel position. */
body.map-region-detail-next-to-menu .sidebar-detail-panel{
	position: absolute !important;
	top: var(--rj-detail-panel-edge, 16px) !important;
	bottom: var(--rj-detail-panel-edge, 16px) !important;
	left: calc(var(--sidebar-list-width) + var(--rj-detail-panel-gap)) !important;
	width: var(--rj-detail-panel-width, 420px) !important;
	max-width: calc(100vw - var(--sidebar-list-width) - var(--rj-detail-panel-right-safe)) !important;
	z-index: 180 !important;
}

/* PATCH 3.729: make top filter arrow scrolling immediate and reliable in full-window mode. */


/* PATCH 3.729: show gray hover on left listing rows. */
.sidebar-list-panel .property-list .card:hover,
.sidebar-list-panel .property-list .card:focus-visible,
.sidebar-list-panel .property-list .card.active{
	background: #f1f3f5 !important;
	border-color: #e5e7eb !important;
	box-shadow: none !important;
	transform: none !important;
}

/* PATCH 4.783: keep the currently opened listing visibly selected in the left list. */
.sidebar-list-panel .property-list .card.active,
.sidebar-list-panel .property-list .card[aria-selected="true"]{
	background: #eef0f3 !important;
	border-color: #d7dce2 !important;
}

/* PATCH 3.729: make top filter arrow steps deterministic. */
.global-topbar-menu.has-map-filters .map-filter-scroll-track{
	scroll-behavior: auto !important;
}

/* PATCH 3.729: Naver-like light gray for address/current-location and left listing hover only. */
.map-region-complex-card:hover,
.map-region-complex-card:focus-visible,
.sidebar-list-panel .property-list .card:hover,
.sidebar-list-panel .property-list .card:focus-visible{
	background: #f7f8fa !important;
}

.sidebar-list-panel .property-list .card.active{
	background: #ffffff !important;
}

/* PATCH 3.729: keep selected left listing gray until another listing is hovered/selected. */
.sidebar-list-panel .property-list .card.active,
.sidebar-list-panel .property-list .card:hover,
.sidebar-list-panel .property-list .card:focus-visible{
	background: #f7f8fa !important;
}

/* PATCH 3.729: keep top map filter bar visible and usable on direct detail URL loads. */






/* PATCH 3.729: address/current-location list click follows normal detail-panel rules. */
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	display: none !important;
	pointer-events: none !important;
}

body.detail-page-panel-open .global-topbar-menu.has-map-filters .extra-filter-trigger,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .type-filter-trigger,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .deal-filter-trigger,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .deal-method-filter-trigger,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .price-filter-trigger,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .area-filter-trigger,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .approval-year-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .extra-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .type-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .deal-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .deal-method-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .price-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .area-filter-trigger,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .approval-year-filter-trigger{
	pointer-events: none !important;
}

body.detail-page-panel-open .global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-menu,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-menu,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-menu,
body.detail-page-panel-open .global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-menu,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-menu,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-menu,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-menu,
body.detail-dropdown-suppress .global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-menu{
	display: none !important;
	pointer-events: none !important;
}

/* PATCH 3.729: province selector grid in address/current-location dropdown. */
.map-region-province-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	padding: 24px 0 0;
}

.map-region-province-option{
	height: 80px;
	border: 0;
	border-radius: 8px;
	background: #f7f8fa;
	color: #000;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

.map-region-province-option:hover,
.map-region-province-option:focus-visible{
	background: #f1f3f5;
	outline: none;
}

/* PATCH 3.917: clean ring and shadow for daycare, kindergarten, and academy map marker icons. */
.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon{
	filter: none;
	box-shadow:
		0 0 0 0.5px rgba(255,255,255,0.96),
		0 2px 5px rgba(15, 23, 42, 0.18);
}





.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker,
.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker svg{
	display: block;
	width: 28px;
	height: 28px;
	overflow: visible;
}

/* PATCH 3.729: align unavailable city notice to the region option grid left edge. */
.map-region-city-grid .map-region-empty{
	grid-column: 1 / -1;
	padding: 0;
}

/* PATCH 3.729: make province/city option buttons match dong option button size. */
.map-region-province-grid,
.map-region-city-grid,
.map-region-dong-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	padding: 12px 24px 18px;
}

.map-region-province-option,
.map-region-city-option,
.map-region-dong-option{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: 40px;
	border: 0;
	border-radius: 4px;
	background: #f3f4f6;
	color: #05070a;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.map-region-province-option:hover,
.map-region-city-option:hover,
.map-region-dong-option:hover{
	background: #e9edf2;
}

/* PATCH 3.729: move heart shadow effect to the top filter buttons. */




/* PATCH 3.729: restore a subtle outline shadow on active region favorite hearts. */
.map-region-heart-btn.active .map-region-heart-icon{
	filter: drop-shadow(0 1px 1.5px rgba(15, 23, 42, 0.28));
}

/* PATCH 3.729: soften top filter button shadows without a hard rectangular drop-shadow edge. */


/* PATCH 3.729: match top filter button shadow to the heart-style outline shadow. */


.global-topbar-menu.has-map-filters .map-region-filter-trigger:hover,
.global-topbar-menu.has-map-filters .all-filter-trigger:hover,
.global-topbar-menu.has-map-filters .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .area-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger:hover,
.global-topbar-menu.has-map-filters .location-analysis-trigger:hover{
	filter: drop-shadow(0 1px 3px rgba(15, 23, 42, 0.42));
}

/* PATCH 3.729: soften top filter pills with a broad rounded shadow like the reference. */
.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger{
	filter: none;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.10), 0 2px 6px rgba(15, 23, 42, 0.06);
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger:hover,
.global-topbar-menu.has-map-filters .all-filter-trigger:hover,
.global-topbar-menu.has-map-filters .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .area-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger:hover,
.global-topbar-menu.has-map-filters .location-analysis-trigger:hover{
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.13), 0 3px 8px rgba(15, 23, 42, 0.08);
}

/* PATCH 3.729: make top filter pill shadows visibly match the reference on map backgrounds. */
.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-filter-trigger,
.global-topbar-menu.has-map-filters .floor-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	filter: none;
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.16), 0 4px 10px rgba(15, 23, 42, 0.09);
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger:hover,
.global-topbar-menu.has-map-filters .all-filter-trigger:hover,
.global-topbar-menu.has-map-filters .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .area-filter-trigger:hover,
.global-topbar-menu.has-map-filters .room-filter-trigger:hover,
.global-topbar-menu.has-map-filters .floor-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger:hover,
.global-topbar-menu.has-map-filters .location-analysis-trigger:hover,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn:hover{
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.19), 0 5px 12px rgba(15, 23, 42, 0.11);
}

/* PATCH 3.729: give top filter shadows room to render instead of being clipped by the 36px scroll track. */






.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::after,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	top: 50%;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	filter: none;
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.18), 0 4px 10px rgba(15, 23, 42, 0.10);
}

/* PATCH 3.729: make the 기타조건 trigger explicit in top filter styles and keep it visible/openable. */
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger{
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	filter: none;
	box-shadow: 0 14px 30px rgba(15, 23, 42, 0.18), 0 4px 10px rgba(15, 23, 42, 0.10);
}

.global-topbar-menu.has-map-filters .extra-condition-filter-trigger:hover{
	box-shadow: 0 16px 34px rgba(15, 23, 42, 0.19), 0 5px 12px rgba(15, 23, 42, 0.11);
}

.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-menu{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* PATCH 3.729: force top filter shadows to render outside the cramped topbar scroll row. */
.global-topbar,
.global-topbar-inner,
.global-topbar-main,
.global-topbar-menu,
.global-topbar-menu.has-map-filters,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	overflow: visible !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	height: 120px !important;
	margin-top: -42px !important;
	margin-bottom: -42px !important;
	z-index: 2000;
}





.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	position: relative;
	z-index: 2;
	overflow: visible !important;
	filter: none !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.24), 0 7px 16px rgba(15, 23, 42, 0.14) !important;
}



/* PATCH 3.729: remove row-like shadow feel and render separate rounded shadows per top filter button. */








.global-topbar-menu.has-map-filters .map-region-filter-trigger::before,
.global-topbar-menu.has-map-filters .all-filter-trigger::before,
.global-topbar-menu.has-map-filters .extra-filter-trigger::before,
.global-topbar-menu.has-map-filters .type-filter-trigger::before,
.global-topbar-menu.has-map-filters .deal-filter-trigger::before,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger::before,
.global-topbar-menu.has-map-filters .price-filter-trigger::before,
.global-topbar-menu.has-map-filters .area-filter-trigger::before,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger::before,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger::before,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger::before,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger::before,
.global-topbar-menu.has-map-filters .location-analysis-trigger::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn::before{
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	border-radius: inherit;
	background: transparent;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.16), 0 3px 7px rgba(15, 23, 42, 0.08);
	pointer-events: none;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .all-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .extra-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .type-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .deal-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .price-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .area-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger:hover::before,
.global-topbar-menu.has-map-filters .location-analysis-trigger:hover::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn:hover::before{
	box-shadow: 0 12px 26px rgba(15, 23, 42, 0.19), 0 4px 9px rgba(15, 23, 42, 0.10);
}

/* PATCH 3.729: remove square pseudo shadows and use one rounded shadow per top filter button. */






.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::after,
.global-topbar-menu.has-map-filters .map-region-filter-trigger::before,
.global-topbar-menu.has-map-filters .all-filter-trigger::before,
.global-topbar-menu.has-map-filters .extra-filter-trigger::before,
.global-topbar-menu.has-map-filters .type-filter-trigger::before,
.global-topbar-menu.has-map-filters .deal-filter-trigger::before,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger::before,
.global-topbar-menu.has-map-filters .price-filter-trigger::before,
.global-topbar-menu.has-map-filters .area-filter-trigger::before,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger::before,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger::before,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger::before,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger::before,
.global-topbar-menu.has-map-filters .location-analysis-trigger::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn::before{
	content: none !important;
	display: none !important;
	box-shadow: none !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	position: relative !important;
	isolation: auto !important;
	overflow: visible !important;
	filter: none !important;
	box-shadow: 0 7px 16px rgba(15, 23, 42, 0.16), 0 2px 5px rgba(15, 23, 42, 0.08) !important;
}



/* PATCH 3.729: restore strict horizontal alignment of top filter buttons and scroll arrows. */












/* PATCH 3.729: keep top filter alignment fixed, separate each button shadow, and avoid a connected shadow band. */














/* PATCH 3.729: keep alignment fixed, separate button shadows, and avoid connected shadow bands. */








.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	top: 50% !important;
	width: 36px !important;
	height: 36px !important;
	min-width: 36px !important;
	transform: translateY(-50%) !important;
	filter: none !important;
	box-shadow: 0 8px 14px -8px rgba(15, 23, 42, 0.42), 0 3px 6px -4px rgba(15, 23, 42, 0.28) !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger{
	top: auto !important;
	transform: none !important;
	align-self: center !important;
	filter: none !important;
	box-shadow: 0 8px 14px -8px rgba(15, 23, 42, 0.42), 0 3px 6px -4px rgba(15, 23, 42, 0.28) !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger:hover,
.global-topbar-menu.has-map-filters .all-filter-trigger:hover,
.global-topbar-menu.has-map-filters .extra-filter-trigger:hover,
.global-topbar-menu.has-map-filters .type-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-filter-trigger:hover,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger:hover,
.global-topbar-menu.has-map-filters .price-filter-trigger:hover,
.global-topbar-menu.has-map-filters .area-filter-trigger:hover,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger:hover,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger:hover,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger:hover,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger:hover,
.global-topbar-menu.has-map-filters .location-analysis-trigger:hover,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn:hover{
	box-shadow: 0 9px 16px -8px rgba(15, 23, 42, 0.46), 0 4px 7px -4px rgba(15, 23, 42, 0.30) !important;
}

/* PATCH 3.729: move individual top filter shadows slightly lower without changing button alignment. */
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	box-shadow: 0 10px 14px -8px rgba(15, 23, 42, 0.42), 0 5px 7px -4px rgba(15, 23, 42, 0.28) !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger{
	box-shadow: 0 10px 14px -8px rgba(15, 23, 42, 0.42), 0 5px 7px -4px rgba(15, 23, 42, 0.28) !important;
}

/* PATCH 3.729: keep button alignment, but expand only the scroll clipping area so shadows can drop below buttons. */






.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::after,
.global-topbar-menu.has-map-filters .map-region-filter-trigger::before,
.global-topbar-menu.has-map-filters .all-filter-trigger::before,
.global-topbar-menu.has-map-filters .extra-filter-trigger::before,
.global-topbar-menu.has-map-filters .type-filter-trigger::before,
.global-topbar-menu.has-map-filters .deal-filter-trigger::before,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger::before,
.global-topbar-menu.has-map-filters .price-filter-trigger::before,
.global-topbar-menu.has-map-filters .area-filter-trigger::before,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger::before,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger::before,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger::before,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger::before,
.global-topbar-menu.has-map-filters .location-analysis-trigger::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn::before{
	content: none !important;
	display: none !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	filter: none !important;
	box-shadow: 0 15px 18px -9px rgba(15, 23, 42, 0.44), 0 7px 9px -6px rgba(15, 23, 42, 0.30) !important;
}

/* PATCH 3.729: reduce the lower top-filter shadow to about half strength. */


/* PATCH 3.729: halve the lower top-filter shadow again. */


/* PATCH 3.729: keep shadow compact, restore strength, and add a slight right-side shadow. */


/* 상단 지도 필터의 최종 높이와 좌우 여백. 개별 버튼 규칙은 이 공통값에서만 보정한다. */






.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger{
	height: 34px !important;
	min-height: 34px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
	border-radius: 999px !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger{
	padding-left: 10px !important;
	padding-right: 10px !important;
}

.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger{
	padding-left: 14px !important;
	padding-right: 14px !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	border-radius: 14px !important;
}

/* PATCH 3.729: keep 34px button alignment while restoring space for lower shadows. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	position: relative !important;
	height: 34px !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	overflow: visible !important;
}





.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.14) !important;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active .extra-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger,
.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"]{
	background: #111827 !important;
	color: #ffffff !important;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active .extra-filter-trigger i,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger i,
.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger i,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"] i{
	color: #ffffff !important;
}

/* PATCH 3.729: keep the right top-filter scroll arrow visible while filters overflow. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-btn-right{
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	right: 0 !important;
	z-index: 5000 !important;
	pointer-events: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-btn-right.is-disabled{
	opacity: 0.48 !important;
	cursor: default !important;
}

/* PATCH 3.729: match top address search text size to filter buttons and raise weight slightly. */
.global-topbar-menu.has-map-filters .sub-address-search-input,
.global-topbar-menu.has-map-filters .sub-address-search-input::placeholder{
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: -0.2px !important;
}

/* PATCH 3.729: restore stable top filter row and place scroll arrows at row edges only. */


.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::before,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow::after{
	content: none !important;
	display: none !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track{
	padding-left: 42px !important;
	padding-right: 42px !important;
	box-sizing: border-box !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn{
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	z-index: 1325 !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn-left{
	left: 0 !important;
	right: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn-right{
	left: auto !important;
	right: 0 !important;
}

/* PATCH 3.729: make top-filter scroll arrows independent from the filter button track. */
.global-topbar-menu.has-map-filters{
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	overflow: visible !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	position: relative !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	pointer-events: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track{
	position: relative !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	width: 100% !important;
	height: 34px !important;
	padding-left: 2px !important;
	padding-right: 36px !important;
	box-sizing: border-box !important;
	display: flex !important;
	align-items: center !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}



.global-topbar-menu.has-map-filters .map-filter-scroll-controls{
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: 0 !important;
	height: 34px !important;
	z-index: 6500 !important;
	pointer-events: none !important;
	overflow: visible !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	position: absolute !important;
	top: 50% !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	border-radius: 8px !important;
	transform: translateY(-50%) !important;
	background: #ffffff !important;
	pointer-events: auto !important;
	z-index: 6501 !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left{
	left: 0 !important;
	right: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-right{
	left: auto !important;
	right: 0 !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell > .map-filter-scroll-btn{
	display: none !important;
}

/* PATCH 3.730: restore individual shadows on top filter buttons after independent arrows. */




/* PATCH 3.730: import only the 3.731 individual top-filter button shadow effect. */






.global-topbar-menu.has-map-filters .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
.global-topbar-menu.has-map-filters .map-filter-scroll-controls{
	box-shadow: none !important;
	filter: none !important;
	background: transparent !important;
}

/* PATCH 3.770: keep filter buttons aligned while allowing individual button shadows to render. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
.global-topbar-menu.has-map-filters .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-track .map-filter-bar{
	clip-path: none !important;
	filter: none !important;
	box-shadow: none !important;
	background: transparent !important;
}





.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	filter: none !important;
	box-shadow: 4px 10px 10px -9px rgba(15, 23, 42, 0.26), 2px 4px 5px -4px rgba(15, 23, 42, 0.18) !important;
}

/* PATCH 3.770: open vertical paint room for top filter button shadows without moving the 34px button row. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	position: relative !important;
	height: 34px !important;
	overflow: visible !important;
	clip-path: none !important;
	box-shadow: none !important;
	filter: none !important;
	background: transparent !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track{
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	top: -13px !important;
	height: 60px !important;
	display: flex !important;
	align-items: center !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	clip-path: none !important;
	box-shadow: none !important;
	filter: none !important;
	background: transparent !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track .map-filter-bar{
	height: 34px !important;
	align-self: center !important;
	align-items: center !important;
	overflow: visible !important;
	clip-path: none !important;
	box-shadow: none !important;
	filter: none !important;
	background: transparent !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .map-filter-scroll-btn,
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	filter: none !important;
	box-shadow: 4px 10px 10px -9px rgba(15, 23, 42, 0.26), 2px 4px 5px -4px rgba(15, 23, 42, 0.18) !important;
}

/* PATCH 3.771: keep the top filter bar visible on direct ?id= detail loads. */
body.realjeju-filters-in-topbar.detail-page-panel-open .global-topbar-menu.has-map-filters,
body.realjeju-filters-in-topbar.shared-detail-mode .global-topbar-menu.has-map-filters,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
	z-index: 6500 !important;
}

body.realjeju-filters-in-topbar.detail-page-panel-open .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-filters-in-topbar.shared-detail-mode .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-filters-in-topbar.detail-page-panel-open .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.realjeju-filters-in-topbar.shared-detail-mode .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.realjeju-filters-in-topbar.detail-page-panel-open .global-topbar-menu.has-map-filters .sub-address-search,
body.realjeju-filters-in-topbar.shared-detail-mode .global-topbar-menu.has-map-filters .sub-address-search,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .sub-address-search,
body.realjeju-filters-in-topbar.detail-page-panel-open .global-topbar-menu.has-map-filters .extra-filter-dropdown,
body.realjeju-filters-in-topbar.shared-detail-mode .global-topbar-menu.has-map-filters .extra-filter-dropdown,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .extra-filter-dropdown{
	pointer-events: auto !important;
}

/* PATCH 3.770: clip the filter track at the right arrow center so hidden pills do not show a vertical cut behind the circle. */




/* PATCH 3.772: home and presale map modes must never lose the top address search. */
body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .sub-address-search{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	position: fixed !important;
	top: calc((var(--global-topbar-height) - 40px) / 2) !important;
	left: calc(var(--realjeju-side-nav-width, 0px) + 16px) !important;
	width: 286px !important;
	max-width: 286px !important;
	z-index: 6600 !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters > .sub-address-search[data-topbar-address-search="true"]{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	position: fixed !important;
	top: calc((var(--global-topbar-height) - 40px) / 2) !important;
	left: calc(var(--realjeju-side-nav-width, 0px) + 16px) !important;
	width: 286px !important;
	max-width: 286px !important;
	z-index: 7000 !important;
	transform: none !important;
	clip-path: none !important;
	overflow: visible !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-track .sub-address-search{
	display: none !important;
}

/* PATCH 3.773: region/current-location detail opens keep only address search; hide filter buttons. */
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-controls{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters > .sub-address-search[data-topbar-address-search="true"]{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

body.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .sub-address-search-form{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* PATCH 3.770: do not clip dropdown panels when a top filter dropdown is open after arrow scrolling. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.map-region-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.all-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.extra-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.type-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.deal-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.deal-method-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.price-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.area-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.room-bath-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.approval-year-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has([aria-expanded="true"]) .map-filter-scroll-track{
	clip-path: none !important;
	overflow-x: visible !important;
	overflow-y: visible !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.map-region-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.all-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.extra-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.type-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.deal-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.deal-method-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.price-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.area-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.room-bath-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.floor-direction-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.approval-year-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has(.extra-condition-filter-dropdown.open),
.global-topbar-menu.has-map-filters .map-filter-scroll-shell:has([aria-expanded="true"]){
	overflow: visible !important;
	clip-path: none !important;
}

/* PATCH 3.770: keep the top button row hidden past the right arrow center, even while dropdowns are open. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.map-region-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.all-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.type-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-method-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.price-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.area-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.room-bath-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.approval-year-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has([aria-expanded="true"]) .map-filter-scroll-track{
	right: 17px !important;
	width: auto !important;
	clip-path: none !important;
	overflow-x: hidden !important;
	overflow-y: visible !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.map-region-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.all-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.type-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-method-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.price-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.area-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.room-bath-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.approval-year-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track .map-filter-bar,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has([aria-expanded="true"]) .map-filter-scroll-track .map-filter-bar{
	overflow: visible !important;
}

/* PATCH 3.770: align address/current-location filter dropdown with the left listing panel edge. */
.global-topbar-menu.has-map-filters .map-filter-scroll-track{
	padding-left: 0 !important;
}

/* PATCH 3.770: selected top filter buttons use white fill with a black outline. */
.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"],
.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active .extra-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active .type-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active .price-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active .area-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.has-active .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.open .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.has-active .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.open .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.has-active .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-trigger{
	background: #ffffff !important;
	color: #111827 !important;
	border-color: #111827 !important;
	box-shadow: 4px 10px 10px -9px rgba(15, 23, 42, 0.26), 2px 4px 5px -4px rgba(15, 23, 42, 0.18) !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger i,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"] i,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active .extra-filter-trigger i,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger i,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active .type-filter-trigger i,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active .deal-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active .deal-method-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger i,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active .price-filter-trigger i,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger i,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active .area-filter-trigger i,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger i,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.has-active .room-bath-filter-trigger i,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.open .room-bath-filter-trigger i,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.has-active .floor-direction-filter-trigger i,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.open .floor-direction-filter-trigger i,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active .approval-year-filter-trigger i,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger i,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.has-active .extra-condition-filter-trigger i,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-trigger i{
	color: #111827 !important;
}

/* PATCH 4.952: completed selected top filters use Naver's dark tone; the currently open filter stays white. */
.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active:not(.open) .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active:not(.open) .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active:not(.open) .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active:not(.open) .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.has-active:not(.open) .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.has-active:not(.open) .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active:not(.open) .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.has-active:not(.open) .extra-condition-filter-trigger{
	background: #24282C !important;
	color: #ffffff !important;
	border-color: #24282C !important;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active:not(.open) .extra-filter-trigger i,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active:not(.open) .deal-method-filter-trigger i,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active:not(.open) .price-filter-trigger i,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active:not(.open) .area-filter-trigger i,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.has-active:not(.open) .room-bath-filter-trigger i,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.has-active:not(.open) .floor-direction-filter-trigger i,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active:not(.open) .approval-year-filter-trigger i,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.has-active:not(.open) .extra-condition-filter-trigger i{
	color: #ffffff !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"],
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.open .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.open .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-trigger{
	background: #ffffff !important;
	color: #1E1E23 !important;
	border-color: #111827 !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger i,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"] i,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger i,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger i,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger i,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger i,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger i,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.open .room-bath-filter-trigger i,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.open .floor-direction-filter-trigger i,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger i,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-trigger i{
	color: #1E1E23 !important;
}

/* PATCH 3.770: keep hidden filter buttons from showing left of the left arrow center. */


.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-controls,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-controls .map-filter-scroll-btn{
	clip-path: none !important;
}

/* PATCH 3.770: cut overflowing top filter pills at the scroll arrow circle center only once. */





/* PATCH 3.770: add a thin sampled gray outline to the top filter scroll arrow circles. */
.global-topbar-menu.has-map-filters .map-filter-scroll-btn,
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	border: 1px solid #d4d6d9 !important;
	box-sizing: border-box !important;
}


/* PATCH 3.770: make the independent top filter scroll arrow circles slightly smaller. */









/* PATCH 3.770: set top filter scroll arrow circles to 30px and align clipping to the 15px center. */









/* PATCH 3.770: set top filter scroll arrow circle height back to 32px. */









/* PATCH 3.770: match scroll arrow circle height to the 34px filter buttons so covered pills do not peek behind it. */
.global-topbar-menu.has-map-filters .map-filter-scroll-btn,
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-btn i,
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn i{
	font-size: 18px !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track{
	left: 17px !important;
	right: 17px !important;
	width: auto !important;
	clip-path: inset(-20px 0 -20px 0) !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.map-region-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.all-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.type-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-method-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.price-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.area-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.room-bath-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.approval-year-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has([aria-expanded="true"]) .map-filter-scroll-track{
	left: 17px !important;
	right: 17px !important;
	width: auto !important;
}


/* PATCH 3.770: remove the excessive initial left gap before the top filter buttons. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 0px) + 18px) !important;
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
}

body.realjeju-filters-in-topbar.sidebar-list-collapsed .global-topbar-menu.has-map-filters{
	left: 18px !important;
}



body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-btn-left[hidden] ~ *,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left[hidden]{
	display: none !important;
}


/* PATCH 3.770: keep the top filter bar outside the listing panel, with only an 18px gap from the panel edge. */
body.realjeju-filters-in-topbar:not(.sidebar-list-collapsed) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--rj-list-panel-gap, 0px) + var(--sidebar-list-width, 420px) + 18px) !important;
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
}



body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-track{
	padding-left: 0 !important;
}




/* PATCH 3.770: when the listing panel is closed, keep filters outside the left side navigation. */
body.realjeju-filters-in-topbar.sidebar-list-collapsed .global-topbar-menu.has-map-filters,
body.realjeju-filters-in-topbar.map-panels-collapsed .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 320px) + 18px) !important;
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
}

body.realjeju-filters-in-topbar:not(.sidebar-list-collapsed):not(.map-panels-collapsed) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 320px) + var(--rj-list-panel-gap, 0px) + var(--sidebar-list-width, 420px) + 18px) !important;
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
}


/* PATCH 3.770: no left-arrow gap before the first scroll; keep the gap only after left scroll is possible. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.map-region-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.all-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.extra-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.type-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.deal-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.deal-method-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.price-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.area-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.room-bath-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.approval-year-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll):has([aria-expanded="true"]) .map-filter-scroll-track{
	left: 0 !important;
	right: 17px !important;
	width: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.map-region-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.all-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.extra-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.type-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.deal-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.deal-method-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.price-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.area-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.room-bath-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.approval-year-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track,
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll:has([aria-expanded="true"]) .map-filter-scroll-track{
	left: 17px !important;
	right: 17px !important;
	width: auto !important;
}


/* PATCH 3.770: keep first filter button flush to the left edge while no left-arrow state exists. */
.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll) .map-filter-scroll-track{
	left: 0 !important;
	right: 17px !important;
	width: auto !important;
	padding-left: 0 !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll) .map-filter-scroll-track .map-filter-bar{
	margin-left: 0 !important;
	padding-left: 0 !important;
}


/* PATCH 3.770: never let the hidden left-arrow rule hide the right scroll arrow. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left[hidden] ~ .map-filter-scroll-btn-right:not([hidden]),
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-btn-left[hidden] ~ .map-filter-scroll-btn-right:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-right:not([hidden]){
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left[hidden]{
	display: none !important;
}


/* PATCH 3.770: restore simple overflow arrow behavior for the top filter bar. */
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn[hidden]{
	display: none !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	align-items: center !important;
	justify-content: center !important;
	pointer-events: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left[hidden] ~ .map-filter-scroll-btn-right:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track{
	overflow-x: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll) .map-filter-scroll-track{
	left: 0 !important;
	right: 17px !important;
	width: auto !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll .map-filter-scroll-track{
	left: 17px !important;
	right: 17px !important;
	width: auto !important;
}


/* 3.770: keep right scroll arrow visible at the right edge; dim instead of removing it. */
.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-right:not([hidden]),
.global-topbar-menu.has-map-filters .map-filter-scroll-btn-right:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn.is-disabled:not([hidden]),
.global-topbar-menu.has-map-filters .map-filter-scroll-btn.is-disabled:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 0.38 !important;
	pointer-events: none !important;
}


/* 3.770: keep independent filter scroll arrows 18px from each edge. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-btn-left{
	left: 18px !important;
	right: auto !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-right,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-btn-right{
	right: 18px !important;
	left: auto !important;
}


/* PATCH 3.790: realjeju home keeps address search visible while detail/list panels are open. */
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-detail-panel-active:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.detail-page-panel-open:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.shared-detail-mode:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-detail-panel-active:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.detail-page-panel-open:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.shared-detail-mode:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	position: fixed !important;
	top: calc((var(--global-topbar-height) - 40px) / 2) !important;
	left: calc(var(--realjeju-side-nav-width, 0px) + 16px) !important;
	width: 286px !important;
	max-width: 286px !important;
	height: 40px !important;
	z-index: 2147483000 !important;
	transform: none !important;
	clip-path: none !important;
	overflow: visible !important;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search .sub-address-search-form{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters .map-filter-scroll-controls{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}


/* PATCH 3.790: make top filter scroll arrows independent of the filter track. */


body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	position: fixed !important;
	top: var(--map-filter-arrow-top, 98px) !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 9999px !important;
	background: rgba(255, 255, 255, 0.96) !important;
	border: 1px solid rgba(213, 220, 230, 0.95) !important;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.16) !important;
	color: #111827 !important;
	pointer-events: auto !important;
	z-index: 2147483002 !important;
	transform: none !important;
	cursor: pointer !important;
}





body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn[hidden]{
	display: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn.is-disabled:not([hidden]){
	opacity: 0.38 !important;
	pointer-events: auto !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll .map-filter-scroll-track{
	left: 0 !important;
	right: 0 !important;
	width: auto !important;
	clip-path: none !important;
}

/* PATCH 3.790: direct ?id= detail loads keep the topbar shell and left listing visible. */
body.direct-detail-list-mode.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters,
body.direct-detail-list-mode.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
}



/* PATCH 3.790: top filter scroll arrows appear only while their direction can reveal hidden buttons. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn[hidden],
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-btn[hidden],
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell:not(.has-left-scroll) .map-filter-scroll-controls .map-filter-scroll-btn-left,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell:not(.has-right-scroll) .map-filter-scroll-controls .map-filter-scroll-btn-right{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-left-scroll .map-filter-scroll-controls .map-filter-scroll-btn-left:not([hidden]),
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-right-scroll .map-filter-scroll-controls .map-filter-scroll-btn-right:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* PATCH 3.790: controls are siblings of the scroll shell, so mirror arrow states on the topbar. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters:not(.has-left-scroll) .map-filter-scroll-controls .map-filter-scroll-btn-left,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters:not(.has-right-scroll) .map-filter-scroll-controls .map-filter-scroll-btn-right{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}



/* PATCH 4.824: 외부 상세 링크도 접기 상태에서는 공통 패널 이동 규칙을 따른다. */
body.direct-detail-list-mode:not(.map-panels-collapsed):not(.sidebar-list-collapsed) .sidebar,
body.direct-detail-list-mode:not(.map-panels-collapsed) .sidebar{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
	transform: none !important;
}

body.direct-detail-list-mode:not(.map-panels-collapsed) .sidebar-list-panel{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* PATCH 3.790: when the detail panel is open, keep filters over the map only. */
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-detail-panel-active:not(.map-panels-collapsed) .global-topbar-menu.has-map-filters,
body.direct-detail-list-mode.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.map-panels-collapsed) .global-topbar-menu.has-map-filters{
	left: calc(var(--map-filter-visible-panel-right, calc(var(--realjeju-side-nav-width, 168px) + var(--rj-list-panel-gap, 16px) + var(--sidebar-list-width, 420px) + var(--rj-detail-panel-gap, 8px) + var(--rj-detail-panel-width, 420px))) + 18px) !important;
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
}

/* PATCH 3.790: direct ?id= detail loads keep the address search, not the filter buttons. */
body.direct-detail-list-mode.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.direct-detail-list-mode.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search{
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

body.direct-detail-list-mode.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.direct-detail-list-mode.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.direct-detail-list-mode.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.direct-detail-list-mode.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-controls{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* PATCH 3.800 FINAL: the last rule wins for independent top filter scroll arrows. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls{
	position: fixed !important;
	inset: 0 auto auto 0 !important;
	width: 0 !important;
	height: 0 !important;
	overflow: visible !important;
	z-index: 2147483001 !important;
	pointer-events: none !important;
	clip-path: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	position: fixed !important;
	top: var(--map-filter-arrow-top, 98px) !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 9999px !important;
	background: rgba(255, 255, 255, 0.98) !important;
	border: 1px solid rgba(213, 220, 230, 0.98) !important;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.18) !important;
	color: #111827 !important;
	z-index: 2147483002 !important;
	transform: none !important;
	cursor: pointer !important;
	clip-path: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-left{
	left: var(--map-filter-left-arrow-left, 222px) !important;
	right: auto !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn-right{
	left: var(--map-filter-right-arrow-left, calc(100vw - 112px)) !important;
	right: auto !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn[hidden],
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters:not(.has-left-scroll) .map-filter-scroll-controls .map-filter-scroll-btn-left,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters:not(.has-right-scroll) .map-filter-scroll-controls .map-filter-scroll-btn-right{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters.has-left-scroll .map-filter-scroll-controls .map-filter-scroll-btn-left:not([hidden]),
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters.has-right-scroll .map-filter-scroll-controls .map-filter-scroll-btn-right:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* PATCH 3.826: in recent-shared detail mode, shift top filter bar right by the left panel width, same as normal list-open flow. */
body.recent-shared-detail-mode.realjeju-filters-in-topbar:not(.sidebar-list-collapsed) .global-topbar-menu.has-map-filters,
body.list-shared-detail-mode.realjeju-filters-in-topbar:not(.sidebar-list-collapsed) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--rj-list-panel-gap, 0px) + var(--sidebar-list-width, 420px) + 18px) !important;
	right: calc(var(--map-side-tools-right, 16px) + var(--map-control-box-size, 44px) + 18px) !important;
	width: auto !important;
	max-width: none !important;
}

/* HIDE right side panel toggle arrow in recent-view shared detail mode. */
body.recent-shared-detail-mode .map-panel-toggle,
body.list-shared-detail-mode .map-panel-toggle{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}



/* PATCH 3.800 FINAL: remove old overflow fade boxes behind independent arrows. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell::before,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell::after{
	content: none !important;
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls::before,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls::after{
	background: transparent !important;
	box-shadow: none !important;
	filter: none !important;
	clip-path: none !important;
}



/* PATCH 3.800 FINAL: keep filter pills visible behind independent arrow circles. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track{
	clip-path: none !important;
}

/* PATCH 3.800 FINAL: keep arrow height equal to filter buttons without outer halo. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn{
	overflow: hidden !important;
	background: #ffffff !important;
	box-shadow: 0 8px 20px rgba(15, 41, 66, 0.18) !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn::before{
	content: none !important;
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls .map-filter-scroll-btn *{
	pointer-events: auto !important;
}

body.direct-detail-list-mode.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.direct-detail-list-mode.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.realjeju-filters-in-topbar.map-filterbar-detail-hidden .global-topbar-menu.has-map-filters .map-filter-scroll-shell{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* PATCH 3.800 FINAL: round the left cut edge of horizontally clipped filter buttons. */


/* PATCH 3.800 FINAL: trim filter pills at the arrow circle centerline and settle weights. */
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow.has-left-scroll .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:not(.has-left-scroll) .map-filter-scroll-track{
	border-radius: 999px !important;
	clip-path: inset(0 var(--map-filter-track-mask-right, 0px) 0 var(--map-filter-track-mask-left, 0px) round 999px) !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
}

/* PATCH 3.963: 부동산 홈 상단 주소검색/필터 버튼 시작 여백을 관심부동산 본문 여백 32px 기준으로 맞춘다. */
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar{
	--realjeju-home-topbar-edge-gap: var(--realjeju-management-page-gap, 32px);
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-detail-panel-active:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.detail-page-panel-open:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.shared-detail-mode:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search{
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--realjeju-home-topbar-edge-gap)) !important;
}









/* PATCH 3.964: 홈 필터바는 주소검색창 폭만큼 오른쪽에서 시작하고, 홈/관리자 검색창 타이포를 통일한다. */
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar{
	--realjeju-top-search-width: 286px;
	--realjeju-top-search-icon-size: 16px;
	--realjeju-top-search-input-size: 14px;
	--realjeju-top-search-input-weight: 600;
	--realjeju-home-filter-left-offset: calc(var(--realjeju-home-topbar-edge-gap, 32px) + var(--realjeju-top-search-width));
}

body.realjeju-side-nav-enabled.admin-page-open.admin-listings-tab-open{
	--realjeju-top-search-width: 286px;
	--realjeju-top-search-icon-size: 16px;
	--realjeju-top-search-input-size: 14px;
	--realjeju-top-search-input-weight: 600;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-filterbar-detail-hidden:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-detail-panel-active:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.detail-page-panel-open:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.shared-detail-mode:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters > #subAddressSearch.sub-address-search{
	width: var(--realjeju-top-search-width) !important;
	max-width: var(--realjeju-top-search-width) !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-icon,
.admin-listing-topbar-search i{
	font-size: var(--realjeju-top-search-icon-size, 16px) !important;
}



body.realjeju-side-nav-enabled.admin-page-open.admin-listings-tab-open #adminListingTopbarSearch{
	width: var(--realjeju-top-search-width) !important;
	max-width: var(--realjeju-top-search-width) !important;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.sidebar-list-collapsed:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-panels-collapsed:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 320px) + var(--realjeju-home-filter-left-offset)) !important;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.sidebar-list-collapsed):not(.map-panels-collapsed):not(.map-detail-panel-active):not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 320px) + var(--rj-list-panel-gap, 0px) + var(--sidebar-list-width, 420px) + var(--realjeju-home-filter-left-offset)) !important;
}

body.realjeju-side-nav-enabled.realjeju-filters-in-topbar.map-detail-panel-active:not(.map-panels-collapsed):not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.direct-detail-list-mode.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.map-panels-collapsed):not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	left: calc(var(--map-filter-visible-panel-right, calc(var(--realjeju-side-nav-width, 168px) + var(--rj-list-panel-gap, 16px) + var(--sidebar-list-width, 420px) + var(--rj-detail-panel-gap, 8px) + var(--rj-detail-panel-width, 420px))) + var(--realjeju-home-filter-left-offset)) !important;
}

body.recent-shared-detail-mode.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.sidebar-list-collapsed):not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters,
body.list-shared-detail-mode.realjeju-side-nav-enabled.realjeju-filters-in-topbar:not(.sidebar-list-collapsed):not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-topbar-menu.has-map-filters{
	left: calc(var(--realjeju-side-nav-width, 0px) + var(--rj-list-panel-gap, 0px) + var(--sidebar-list-width, 420px) + var(--realjeju-home-filter-left-offset)) !important;
}

/* PATCH 3.801: keep top filter dropdown panels independent from horizontal arrow clipping. */
body > .map-filter-floating-menu{
	position: fixed !important;
	right: auto !important;
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	z-index: 2147482500 !important;
}

body > .map-filter-floating-menu:not(.is-map-filter-floating-open){
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.map-region-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.all-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.type-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.deal-method-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.price-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.area-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.room-bath-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.floor-direction-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.approval-year-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has(.extra-condition-filter-dropdown.open) .map-filter-scroll-track,
body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-shell.has-overflow:has([aria-expanded="true"]) .map-filter-scroll-track{
	border-radius: 999px !important;
	clip-path: inset(0 var(--map-filter-track-mask-right, 0px) 0 var(--map-filter-track-mask-left, 0px) round 999px) !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
}

/* PATCH 3.811: keep address/current-location and all-filter dropdowns consistent with the other top filters. */
.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger{
	border-radius: 999px !important;
}

.global-topbar-menu.has-map-filters .map-region-filter-menu,
.global-topbar-menu.has-map-filters .all-filter-menu,
body > .map-filter-floating-menu.map-region-filter-menu,
body > .map-filter-floating-menu.all-filter-menu{
	box-sizing: border-box !important;
	width: 420px !important;
	min-width: 420px !important;
	max-width: min(420px, calc(100vw - 48px)) !important;
	border-radius: 20px !important;
}

/* PATCH 3.862: "전체" 메뉴가 floating 상태일 때도 하단 여백이 유지되도록 합니다. */
body > .map-filter-floating-menu.all-filter-menu{
	padding: 0 0 var(--rj-detail-panel-edge, 16px) 0 !important;
}

body > .map-filter-floating-menu.all-filter-menu .all-filter-body{
	padding-bottom: var(--rj-detail-panel-edge, 16px) !important;
}

/* PATCH 3.862: 하단 여백이 실제로 보이도록 마지막에 보강 빈 공간을 추가합니다. */
body > .map-filter-floating-menu.all-filter-menu::after,
.global-topbar-menu.has-map-filters .all-filter-dropdown.open .all-filter-menu::after{
	content: "";
	display: block;
	height: var(--rj-detail-panel-edge, 16px);
	background: transparent;
	flex-shrink: 0;
}

/* PATCH 3.917: avoid stacking three bottom gaps in the home "전체" filter dropdown. */
body > .map-filter-floating-menu.all-filter-menu,
.global-topbar-menu.has-map-filters .all-filter-menu{
	--all-filter-footer-height: 91px;
	padding-bottom: 0 !important;
	overflow: visible;
}

body > .map-filter-floating-menu.all-filter-menu .all-filter-body,
.global-topbar-menu.has-map-filters .all-filter-menu .all-filter-body{
	flex: 0 1 auto !important;
	height: auto !important;
	max-height: calc(min(760px, calc(100vh - 125px - var(--rj-detail-panel-edge, 16px))) - 76px - var(--all-filter-footer-height)) !important;
	padding-bottom: 0 !important;
	border-radius: 0 !important;
	clip-path: none;
}

body > .map-filter-floating-menu.all-filter-menu::after,
.global-topbar-menu.has-map-filters .all-filter-dropdown.open .all-filter-menu::after{
	display: none !important;
	height: 0 !important;
	content: none !important;
}

.global-topbar-menu.has-map-filters .all-filter-menu .all-filter-section[data-all-filter-section="extra"],
body > .map-filter-floating-menu.all-filter-menu .all-filter-section[data-all-filter-section="extra"]{
	border-radius: 0 !important;
	overflow: visible;
}

.global-topbar-menu.has-map-filters .all-filter-menu .all-filter-section[data-all-filter-section="extra"] .all-filter-section-content,
body > .map-filter-floating-menu.all-filter-menu .all-filter-section[data-all-filter-section="extra"] .all-filter-section-content{
	padding-bottom: 24px !important;
}

.global-topbar-menu.has-map-filters .all-filter-menu .all-filter-extra-footer,
body > .map-filter-floating-menu.all-filter-menu .all-filter-extra-footer{
	flex: 0 0 auto;
	margin: 0 !important;
	padding: 14px 24px 24px !important;
	border-top: 1px solid #edf0f4;
	border-radius: 0 0 20px 20px;
	background: #ffffff;
}

.global-topbar-menu.has-map-filters .all-filter-menu .all-filter-extra-footer .extra-filter-reset-btn,
body > .map-filter-floating-menu.all-filter-menu .all-filter-extra-footer .extra-filter-reset-btn{
	min-height: 52px !important;
	height: 52px !important;
}

/* PATCH 4.953: Naver-style top filter colors and weights.
   White/open filters use #1E1E23 at 500; closed selected filters keep every inner label white at 700. */
.global-topbar-menu.has-map-filters .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .map-region-filter-trigger span,
.global-topbar-menu.has-map-filters .all-filter-trigger,
.global-topbar-menu.has-map-filters .all-filter-trigger span,
.global-topbar-menu.has-map-filters .extra-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-trigger #typeFilterLabel,
.global-topbar-menu.has-map-filters .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-trigger span,
.global-topbar-menu.has-map-filters .deal-filter-trigger #dealFilterLabel,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-trigger span,
.global-topbar-menu.has-map-filters .price-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-trigger span,
.global-topbar-menu.has-map-filters .area-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-trigger span,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-trigger span,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-trigger span,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-trigger span,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-trigger span,
.global-topbar-menu.has-map-filters .location-analysis-trigger,
.global-topbar-menu.has-map-filters .location-analysis-trigger span,
.global-topbar-menu.has-map-filters .land-type-filter-trigger,
.global-topbar-menu.has-map-filters .land-type-filter-trigger span,
.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger,
.global-topbar-menu.has-map-filters .map-region-filter-dropdown.open .map-region-filter-trigger span,
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"],
.global-topbar-menu.has-map-filters .map-region-filter-trigger[aria-expanded="true"] span,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.open .extra-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-dropdown.open .type-filter-trigger #typeFilterLabel,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger span,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.open .deal-filter-trigger #dealFilterLabel,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.open .deal-method-filter-trigger span,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.open .price-filter-trigger span,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.open .area-filter-trigger span,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.open .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.open .room-bath-filter-trigger span,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.open .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.open .floor-direction-filter-trigger span,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.open .approval-year-filter-trigger span,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.open .extra-condition-filter-trigger span,
.global-topbar-menu.has-map-filters .land-type-filter-dropdown.open .land-type-filter-trigger,
.global-topbar-menu.has-map-filters .land-type-filter-dropdown.open .land-type-filter-trigger span{
	color: #1E1E23;
	font-weight: 500 !important;
	text-shadow: none !important;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active:not(.open) .extra-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active:not(.open) .extra-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger #typeFilterLabel,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger span,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger #dealFilterLabel,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active:not(.open) .deal-method-filter-trigger,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown.has-active:not(.open) .deal-method-filter-trigger span,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active:not(.open) .price-filter-trigger,
.global-topbar-menu.has-map-filters .price-filter-dropdown.has-active:not(.open) .price-filter-trigger span,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active:not(.open) .area-filter-trigger,
.global-topbar-menu.has-map-filters .area-filter-dropdown.has-active:not(.open) .area-filter-trigger span,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.has-active:not(.open) .room-bath-filter-trigger,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown.has-active:not(.open) .room-bath-filter-trigger span,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.has-active:not(.open) .floor-direction-filter-trigger,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown.has-active:not(.open) .floor-direction-filter-trigger span,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active:not(.open) .approval-year-filter-trigger,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown.has-active:not(.open) .approval-year-filter-trigger span,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.has-active:not(.open) .extra-condition-filter-trigger,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown.has-active:not(.open) .extra-condition-filter-trigger span,
.global-topbar-menu.has-map-filters .land-type-filter-dropdown.has-active:not(.open) .land-type-filter-trigger,
.global-topbar-menu.has-map-filters .land-type-filter-dropdown.has-active:not(.open) .land-type-filter-trigger span{
	color: #ffffff !important;
	font-weight: 700 !important;
	text-shadow: none !important;
}

/* PATCH 3.862: hide only filter controls over roadview, keep the top address search visible. */
body.roadview-detail-left-open #topbarMenu.global-topbar-menu.has-map-filters,
body.roadview-split-open #topbarMenu.global-topbar-menu.has-map-filters,
body.realjeju-filters-in-topbar.roadview-detail-left-open #topbarMenu.global-topbar-menu.has-map-filters,
body.realjeju-filters-in-topbar.roadview-split-open #topbarMenu.global-topbar-menu.has-map-filters{
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

body.roadview-detail-left-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.roadview-split-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.roadview-detail-left-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.roadview-split-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.roadview-detail-left-open #topbarMenu.global-topbar-menu.has-map-filters.roadview-filters-hidden .map-filter-scroll-shell,
body.roadview-split-open #topbarMenu.global-topbar-menu.has-map-filters.roadview-filters-hidden .map-filter-scroll-shell,
body.roadview-detail-left-open #topbarMenu.global-topbar-menu.has-map-filters.roadview-filters-hidden .map-filter-scroll-controls,
body.roadview-split-open #topbarMenu.global-topbar-menu.has-map-filters.roadview-filters-hidden .map-filter-scroll-controls,
body.roadview-detail-left-open > .map-filter-floating-menu,
body.roadview-split-open > .map-filter-floating-menu{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* PATCH 3.876 final override: keep land type dropdown at common width. */
.global-topbar-menu.has-map-filters .land-type-filter-menu,
.land-type-filter-menu{
	width: 420px !important;
	min-width: 420px !important;
	max-width: min(420px, calc(100vw - 48px)) !important;
	max-height: min(680px, calc(100vh - 150px));
	overflow-y: auto;
	padding-bottom: 24px !important;
}

.global-topbar-menu.has-map-filters .land-type-filter-grid,
.land-type-filter-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px;
	width: 100%;
}

/* PATCH 3.876: 용도지역 필터 드롭다운 */
.global-topbar-menu.has-map-filters .land-use-zone-filter-menu,
.land-use-zone-filter-menu{
	width: 420px !important;
	min-width: 420px !important;
	max-width: min(420px, calc(100vw - 48px)) !important;
	max-height: min(680px, calc(100vh - 150px));
	overflow-y: auto;
	padding-bottom: 24px !important;
}

.global-topbar-menu.has-map-filters .land-use-zone-filter-grid,
.land-use-zone-filter-grid{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 8px;
	width: 100%;
}

.land-use-zone-filter-section + .land-use-zone-filter-section{
	padding-top: 4px;
}

.land-use-zone-filter-tile span{
	white-space: normal;
	word-break: keep-all;
	font-size: 15px;
}

.land-use-zone-filter-menu .land-use-zone-filter-reset-row{
	margin-top: 2px;
	padding-top: 14px;
	border-top: 1px solid #edf0f4;
}

/* PATCH 3.876: 용도지역 드롭다운 우측 모서리 곡률 보정 */
.global-topbar-menu.has-map-filters .land-use-zone-filter-dropdown.open .land-use-zone-filter-menu,
.global-topbar-menu.has-map-filters .land-use-zone-filter-menu,
.land-use-zone-filter-menu{
	border-radius: 20px !important;
	border-top-right-radius: 20px !important;
	border-bottom-right-radius: 20px !important;
	background: rgba(255,255,255,0.98) !important;
	background-clip: padding-box !important;
	overflow: hidden !important;
	clip-path: inset(0 round 20px);
}

/* PATCH 3.876: 용도지역 스크롤바를 둥근 모서리 아래 영역에만 표시 */
.land-use-zone-filter-scroll{
	display: flex;
	flex-direction: column;
	gap: 16px;
	max-height: none;
	margin-right: 0;
	padding-right: 0;
	overflow: visible;
}

.land-use-zone-filter-scroll .land-use-zone-filter-section{
	flex: 0 0 auto;
}


/* PATCH 3.917: align top-right version counter to the right edge of map-side buttons. */
.global-topbar-right{
	right: var(--map-side-tools-right, 16px) !important;
	left: auto !important;
	justify-content: flex-end !important;
	max-width: none !important;
}

.global-topbar-right #detailAuthTrigger.version-only,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.my-suite-page-open):not(.broker-home-open):not(.property-register-page-open):not(.notice-page-open) .global-topbar-right .global-auth-trigger.version-only{
	min-width: max-content !important;
	width: auto !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	text-align: right !important;
}

.global-topbar-right #detailAuthTrigger.version-only .topbar-version-text,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.my-suite-page-open):not(.broker-home-open):not(.property-register-page-open):not(.notice-page-open) .global-topbar-right .global-auth-trigger.version-only .topbar-version-text{
	text-align: right !important;
}

.global-topbar-right #detailAuthTrigger.logged-in{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	padding: 0 !important;
	cursor: default !important;
	overflow: visible !important;
	text-align: right !important;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-account-profile{
	display: inline-flex;
	align-items: center;
	min-width: 0;
	cursor: pointer;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-profile-version-gap{
	display: block !important;
	flex: 0 0 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	height: 1px !important;
	pointer-events: none !important;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-profile-image{
	width: 30px;
	height: 30px;
	min-width: 30px;
	max-width: 30px;
	min-height: 30px;
	max-height: 30px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	object-fit: cover;
	flex: 0 0 auto;
	border: 0.5px solid rgba(148, 163, 184, 0.26);
	background: #eef3f7;
	box-sizing: border-box;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-profile-fallback{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-color: rgba(148, 163, 184, 0.26);
	background: #eef3f7;
	color: #6b7280 !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-profile-fallback i{
	display: block;
	line-height: 1;
}

.global-topbar-right #detailAuthTrigger.logged-in .account-email-text{
	display: inline-block;
	max-width: 138px;
	overflow: hidden;
	color: #374151 !important;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-account-profile:hover .account-email-text{
	color: #111827 !important;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-version-text{
	display: inline-block;
	flex: 0 0 auto;
	color: #6b7280 !important;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	margin-left: 0 !important;
	white-space: nowrap;
}

/* PATCH 3.918: education map markers match broker marker size and invert on selection. */


.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="kindergarten"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon{
	width: 36px;
	height: 36px;
	border: 3px solid rgba(255,255,255,0.98);
	border-radius: 50%;
	box-sizing: border-box;
	color: #ffffff;
	filter: none;
	box-shadow: 0 2px 6px rgba(15,41,66,0.24);
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon{ background: #10B981; }
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon{ background: #0EA5E9; }
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon{ background: #6366F1; }
.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon{ background: #34D399; }





.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker{
	width: 36px;
	height: 36px;
	border: 0;
	background: transparent;
	color: #DB2777;
	box-shadow: none;
}

.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker svg{
	width: 36px;
	height: 36px;
	filter: drop-shadow(0 2px 6px rgba(15,41,66,0.24));
}

.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:first-child{
	fill: #DB2777;
	stroke: rgba(255,255,255,0.98);
	stroke-width: 3;
}



.education-facility-map-marker.selected[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="high"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	background: #ffffff;
	box-shadow: 0 2px 8px rgba(15,41,66,0.28);
}

.education-facility-map-marker.selected[data-category="elementary"] .education-facility-map-marker-icon{ border-color: #10B981; color: #10B981; }
.education-facility-map-marker.selected[data-category="middle"] .education-facility-map-marker-icon{ border-color: #0EA5E9; color: #0EA5E9; }
.education-facility-map-marker.selected[data-category="high"] .education-facility-map-marker-icon{ border-color: #6366F1; color: #6366F1; }



.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon i,
.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon i{
	color: currentColor;
}







/* PATCH 3.918: soften unselected daycare, kindergarten, and academy marker rings. */
.education-facility-map-marker:not(.selected)[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon{
	width: 36px;
	height: 36px;
	border-width: 1px;
	border-color: rgba(255,255,255,0.72);
	box-shadow: 0 2px 5px rgba(15,41,66,0.18);
}





.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker,
.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker svg{
	width: 36px;
	height: 36px;
}



/* 2026-06-29: education panel - inactive buttons gray, active in category colors. */
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category]{
	border-width: 0;
	border-style: solid;
	border-color: transparent;
	background: #f4f5f7;
	color: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category] .education-facility-filter-school-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="kindergarten"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="academy"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark{
	color: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark-label{
	background: #b4bec9;
	color: #ffffff;
}



.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="kindergarten"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="academy"] > i{
	background: #f4f5f7;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"],
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"],
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"],
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"],
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="kindergarten"],
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"]{
	background: #ffffff;
	color: #111827;
}



.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark{
	color: #10B981;
}



.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark{
	color: #0EA5E9;
}



.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark{
	color: #6366F1;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"]{
	border-color: #34D399;
	box-shadow: inset 0 0 0 1px #34D399;
}





.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="kindergarten"]{
	border-color: #DB2777;
	box-shadow: inset 0 0 0 1px #DB2777;
}







/* PATCH 3.918: use daycare house-heart icon and normalize non-school education filter icons. */
.education-facility-map-marker[data-category="daycare"] .daycare-house-heart-marker svg{
	width: 23px;
	height: 23px;
	display: block;
}









.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="kindergarten"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="academy"] > i{
	grid-row: 1;
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	box-sizing: border-box;
	color: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark{
	background: #f4f5f7;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark svg{
	width: 17px;
	height: 17px;
	display: block;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:first-child{
	fill: #ffffff;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:last-child{
	fill: #9ca3af;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="kindergarten"] > i{
	background: #f4f5f7;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="academy"] > i{
	background: #f4f5f7;
}

/* PATCH 3.918: slightly reduce map education marker size and keep kindergarten selection size stable. */
.education-facility-map-marker{
	width: 34px;
	height: 34px;
}



.education-facility-map-marker:not(.selected)[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker,
.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker svg,
.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="kindergarten"] .kindergarten-smile-marker,
.education-facility-map-marker.selected[data-category="kindergarten"] .kindergarten-smile-marker svg{
	width: 34px;
	height: 34px;
}







/* PATCH 3.918: academy marker starts white and inverts to purple when selected. */




/* PATCH 3.918: hard-lock education map marker outer size to match school circles. */
.education-facility-map-marker[data-category="elementary"],
.education-facility-map-marker[data-category="middle"],
.education-facility-map-marker[data-category="high"],
.education-facility-map-marker[data-category="daycare"],
.education-facility-map-marker[data-category="kindergarten"],
.education-facility-map-marker[data-category="academy"]{
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker,
.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker svg{
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
	box-sizing: border-box;
}



.education-facility-map-marker:not(.selected)[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon{
	border-width: 2.4px;
	border-color: #34D399;
}

.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	border-width: 2.4px;
	border-color: #7C3AED;
}

.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:first-child,
.education-facility-map-marker.selected[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:first-child{
	stroke-width: 2.4;
}

/* PATCH 3.918: keep selected outline thickness unchanged and raise marker transparency. */
.education-facility-map-marker:not(.selected)[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon{
	background: rgba(255,255,255,0.82);
}

















.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon i{
	color: #ffffff;
}

/* PATCH 3.918: thin education marker and filter-panel outlines. */
.education-facility-map-marker.selected[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="high"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	border-width: 1.5px;
}





/* PATCH 3.918: normalize daycare, kindergarten, and academy default map marker rings. */
.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker,
.education-facility-map-marker[data-category="kindergarten"] .kindergarten-smile-marker svg{
	width: 34px;
	height: 34px;
}

.education-facility-map-marker:not(.selected)[data-category="daycare"] .education-facility-map-marker-icon{
	background: #ffffff;
	border: 3px solid #34D399;
	color: #34D399;
	box-shadow: 0 2px 5px rgba(15,41,66,0.18);
}

.education-facility-map-marker[data-category="daycare"] .daycare-house-heart-marker svg{
	width: 24px;
	height: 24px;
}













.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon i{
	color: #7C3AED;
}

/* 2026-06-29: daycare selected icon keeps a white house with a green heart. */
.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon{
	background: rgba(52,211,153,0.82);
	border-color: #34D399;
	color: #ffffff;
}











/* 2026-06-29: swap daycare default and selected color states. */
.education-facility-map-marker:not(.selected)[data-category="daycare"] .education-facility-map-marker-icon{
	background: rgba(52,211,153,0.70);
	border-color: #34D399;
	color: #ffffff;
}

.education-facility-map-marker:not(.selected)[data-category="daycare"] .daycare-house-heart-marker svg path:first-child{
	fill: #ffffff;
}

.education-facility-map-marker:not(.selected)[data-category="daycare"] .daycare-house-heart-marker svg path:last-child{
	fill: #34D399;
}

.education-facility-map-marker.selected[data-category="daycare"] .education-facility-map-marker-icon{
	background: #ffffff;
	border: 3px solid #34D399;
	color: #34D399;
}

.education-facility-map-marker.selected[data-category="daycare"] .daycare-house-heart-marker svg path:first-child{
	fill: #34D399;
}

.education-facility-map-marker.selected[data-category="daycare"] .daycare-house-heart-marker svg path:last-child{
	fill: #ffffff;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="daycare"] > .education-facility-filter-daycare-mark{
	background: #34D399;
	color: #ffffff;
}











/* 2026-06-29: keep kindergarten map markers visible with red default state. */
.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:first-child{
	fill: rgba(219,39,119,0.82);
	stroke: #DB2777;
	stroke-width: 1.5;
}

.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:not(:first-child){
	fill: #ffffff;
}

.education-facility-map-marker:not(.selected)[data-category="kindergarten"] .kindergarten-smile-marker svg > path{
	stroke: #ffffff;
}

.education-facility-map-marker.selected[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:first-child{
	fill: #ffffff;
	stroke: #DB2777;
	stroke-width: 2.6;
}

.education-facility-map-marker.selected[data-category="kindergarten"] .kindergarten-smile-marker svg > circle:not(:first-child){
	fill: #DB2777;
}

.education-facility-map-marker.selected[data-category="kindergarten"] .kindergarten-smile-marker svg > path{
	stroke: #DB2777;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="kindergarten"] > i{
	background: #DB2777;
	color: #ffffff;
}



/* 2026-06-29: invert school filter badges to translucent white fill with colored text and outline. */
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark-label{
	background: rgba(255,255,255,0.78);
	border: 1px solid rgba(16,185,129,0.82);
	box-sizing: border-box;
	color: #10B981;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.14);
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark-label{
	background: rgba(255,255,255,0.78);
	border: 1px solid rgba(14,165,233,0.82);
	box-sizing: border-box;
	color: #0EA5E9;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.14);
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark-label{
	background: rgba(255,255,255,0.78);
	border: 1px solid rgba(99,102,241,0.82);
	box-sizing: border-box;
	color: #6366F1;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.14);
}

/* 2026-06-29: keep school map marker circles the same size as daycare. */
.education-facility-map-marker[data-category="elementary"],
.education-facility-map-marker[data-category="middle"],
.education-facility-map-marker[data-category="high"],
.education-facility-map-marker[data-category="daycare"]{
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="daycare"] .education-facility-map-marker-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
	box-sizing: border-box;
	border-radius: 50%;
}



/* 2026-06-29: keep all left education filter panel icons gray. */


.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="high"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark-label{
	background: rgba(244,245,247,0.94);
	border: 1px solid rgba(156,163,175,0.72);
	box-sizing: border-box;
	color: #8a8f97;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.10);
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="kindergarten"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="academy"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"] > .education-facility-filter-daycare-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="kindergarten"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"] > i{
	background: rgba(244,245,247,0.94);
	border: 1px solid rgba(156,163,175,0.72);
	box-sizing: border-box;
	color: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:first-child,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:first-child{
	fill: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:last-child,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:last-child{
	fill: #ffffff;
}

/* 2026-06-29: make selected left education panel button outline thin. */
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category]{
	border-width: 0.5px;
	border-color: rgba(156,163,175,0.55);
	box-shadow: none;
}

/* 2026-06-29: restore daycare and kindergarten left panel selected states. */
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="daycare"] > .education-facility-filter-daycare-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="kindergarten"] > i{
	background: rgba(244,245,247,0.94);
	border: 1px solid rgba(156,163,175,0.72);
	box-sizing: border-box;
	color: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"] > .education-facility-filter-daycare-mark{
	background: #34D399;
	border: 1px solid rgba(52,211,153,0.72);
	box-sizing: border-box;
	color: #ffffff;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:first-child{
	fill: #8a8f97;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:last-child{
	fill: #ffffff;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:first-child{
	fill: #ffffff;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="daycare"] > .education-facility-filter-daycare-mark svg path:last-child{
	fill: #34D399;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="kindergarten"] > i{
	background: #DB2777;
	border: 1px solid rgba(219,39,119,0.72);
	box-sizing: border-box;
	color: #ffffff;
}

/* 2026-06-29: final education school map and left panel icon colors. */
.education-facility-map-marker[data-category="elementary"],
.education-facility-map-marker[data-category="middle"],
.education-facility-map-marker[data-category="high"],
.education-facility-map-marker[data-category="daycare"],
.education-facility-map-marker[data-category="kindergarten"]{
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
	background: rgba(255,255,255,0.78);
	border-width: 1.5px;
	border-style: solid;
	border-radius: 50%;
	box-sizing: border-box;
	box-shadow: 0 2px 5px rgba(15, 23, 42, 0.14);
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon{
	border-color: rgba(16,185,129,0.82);
	color: #10B981;
}

.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon{
	border-color: rgba(14,165,233,0.82);
	color: #0EA5E9;
}

.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon{
	border-color: rgba(99,102,241,0.82);
	color: #6366F1;
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-label,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-label,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-label{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	max-width: 34px;
	max-height: 34px;
	background: transparent;
	color: currentColor;
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
	box-sizing: border-box;
}

.education-facility-map-marker.selected[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="high"] .education-facility-map-marker-icon{
	background: rgba(255,255,255,0.86);
	border-width: 1.5px;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18);
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category] > .education-facility-filter-school-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category] > .education-facility-filter-daycare-mark,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option[data-category] .education-facility-filter-school-mark-label{
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="elementary"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="middle"] .education-facility-filter-school-mark-label,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="high"] .education-facility-filter-school-mark-label{
	background: rgba(244,245,247,0.94);
	border: 1px solid rgba(156,163,175,0.72);
	box-sizing: border-box;
	color: #8a8f97;
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"] .education-facility-filter-school-mark-label{
	background: rgba(255,255,255,0.78);
	border: 1px solid rgba(16,185,129,0.82);
	box-sizing: border-box;
	color: #10B981;
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"] .education-facility-filter-school-mark-label{
	background: rgba(255,255,255,0.78);
	border: 1px solid rgba(14,165,233,0.82);
	box-sizing: border-box;
	color: #0EA5E9;
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"] .education-facility-filter-school-mark-label{
	background: rgba(255,255,255,0.78);
	border: 1px solid rgba(99,102,241,0.82);
	box-sizing: border-box;
	color: #6366F1;
	box-shadow: none;
}

/* 2026-06-29: match selected school panel button outlines to map colors. */
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"]{
	border-width: 0.5px;
	border-color: rgba(16,185,129,0.82);
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"]{
	border-width: 0.5px;
	border-color: rgba(14,165,233,0.82);
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"]{
	border-width: 0.5px;
	border-color: rgba(99,102,241,0.82);
	box-shadow: none;
}

/* 2026-06-29: match school map marker outline thickness to daycare. */
.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="high"] .education-facility-map-marker-icon{
	border-width: 3px;
}

/* 2026-06-29: make school map markers slightly more opaque. */
.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon{
	background: rgba(255,255,255,0.88);
}

.education-facility-map-marker.selected[data-category="elementary"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="middle"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="high"] .education-facility-map-marker-icon{
	background: rgba(255,255,255,0.92);
}

.education-facility-map-marker[data-category="elementary"] .education-facility-map-marker-icon{
	border-color: rgba(16,185,129,0.90);
}

.education-facility-map-marker[data-category="middle"] .education-facility-map-marker-icon{
	border-color: rgba(14,165,233,0.90);
}

.education-facility-map-marker[data-category="high"] .education-facility-map-marker-icon{
	border-color: rgba(99,102,241,0.90);
}

/* 2026-06-29: simplify dense academy map markers into small purple dots. */
.education-facility-map-marker[data-category="academy"]{
	width: 17px;
	height: 17px;
	min-width: 17px;
	min-height: 17px;
	max-width: 17px;
	max-height: 17px;
}

.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 17px;
	height: 17px;
	min-width: 17px;
	min-height: 17px;
	max-width: 17px;
	max-height: 17px;
	border: 1px solid rgba(255,255,255,0.95);
	border-radius: 50%;
	background: rgba(124,58,237,0.72);
	box-sizing: border-box;
	box-shadow: none;
	filter: none;
	color: transparent;
}

.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-label{
	display: none;
}

.education-facility-map-marker.selected[data-category="academy"]{
	width: 20px;
	height: 20px;
	min-width: 20px;
	min-height: 20px;
	max-width: 20px;
	max-height: 20px;
}

.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	width: 20px;
	height: 20px;
	min-width: 20px;
	min-height: 20px;
	max-width: 20px;
	max-height: 20px;
	border-width: 1px;
	border-color: rgba(255,255,255,0.98);
	background: rgba(124,58,237,0.88);
	box-shadow: 0 1px 4px rgba(76,29,149,0.20);
	color: transparent;
}

/* 2026-06-29: recolor academy map dots to kindergarten red. */




/* 2026-06-29: invert selected academy dot colors against the default dot. */
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon{
	background: rgba(219,39,119,0.88);
	border-color: rgba(255,255,255,0.98);
	box-shadow: 0 1px 4px rgba(131,24,67,0.16);
}



/* 2026-06-29: use selected academy dot size as the default size. */




/* 2026-06-29: lock default academy dot to requested red opacity. */




/* 2026-06-29: match inactive left filter panel menu tone to reference. */
.education-facility-filter-panel .education-facility-filter-option:not(.active){
	background: #f4f5f7;
	color: #8d9094;
}

.education-facility-filter-panel .education-facility-filter-option:not(.active) > i,
.education-facility-filter-panel .education-facility-filter-option:not(.active) > .education-facility-filter-school-mark,
.education-facility-filter-panel .education-facility-filter-option:not(.active) > .education-facility-filter-daycare-mark,
.education-facility-filter-panel .education-facility-filter-option:not(.active) .education-facility-filter-school-mark-label{
	color: #8d9094;
}

.education-facility-filter-panel .education-facility-filter-option:not(.active) > span:not(.education-facility-filter-school-mark),
.education-facility-filter-panel .education-facility-filter-option:not(.active) .education-facility-filter-school-mark-label{
	color: #8d9094;
	font-weight: 600;
}

.education-facility-filter-panel .education-facility-filter-option:not(.active) > i{
	font-weight: 800;
}

.education-facility-filter-panel .education-facility-filter-option:not(.active) > .education-facility-filter-daycare-mark svg path:first-child{
	fill: #8d9094;
}

.education-facility-filter-panel .education-facility-filter-option:not(.active) > .education-facility-filter-daycare-mark svg path:last-child{
	fill: #ffffff;
}

/* 2026-06-29: remove academy map dot outline. */


/* 2026-06-29: hard-remove white outline from academy map dots. */
.education-facility-map-marker[data-category="academy"],
.education-facility-map-marker.selected[data-category="academy"],
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	filter: none !important;
}





/* 2026-06-29: sync selected academy panel and map colors. */




.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"] > i,
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"] > span{
	color: #0E7490;
}

/* 2026-06-29: make academy map and panel selection consistently cyan blue. */
.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon{
	background: rgba(8,145,178,0.78) !important;
	border: 2.2px solid rgba(255,255,255,0.98) !important;
	outline: 0 !important;
	box-shadow: none !important;
	filter: none !important;
}

.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	background: #0E7490 !important;
	border: 2.2px solid rgba(255,255,255,0.98) !important;
	outline: 0 !important;
	box-shadow: none !important;
	filter: none !important;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"]{
	border-color: #0E7490;
	box-shadow: none;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"] > i{
	background: #ffffff;
	border: 1px solid #0E7490;
	border-radius: 50%;
	box-sizing: border-box;
	color: #0E7490;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="academy"] > span{
	color: #0E7490;
}

/* 2026-06-29: tune selected academy map dot outline to 2.2px. */


/* 2026-06-29: make selected school filter text slightly heavier. */
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="elementary"] > span:not(.education-facility-filter-school-mark),
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="middle"] > span:not(.education-facility-filter-school-mark),
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option:not(.active)[data-category="high"] > span:not(.education-facility-filter-school-mark){
	font-weight: 600;
}

.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="elementary"] > span:not(.education-facility-filter-school-mark),
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="middle"] > span:not(.education-facility-filter-school-mark),
.education-facility-filter-panel:not(.convenience-facility-filter-panel):not(.development-facility-filter-panel):not(.broker-office-filter-panel) .education-facility-filter-option.active[data-category="high"] > span:not(.education-facility-filter-school-mark){
	font-weight: 600;
}

/* 2026-06-29: unify left filter panel label weights and active text color. */
.education-facility-filter-panel .education-facility-filter-option:not(.active) > span:not(.education-facility-filter-school-mark){
	font-weight: 600;
}

.education-facility-filter-panel .education-facility-filter-option.active > span:not(.education-facility-filter-school-mark){
	color: #111827 !important;
	font-weight: 600;
}

/* 2026-06-29: set academy map dot white outline to 2.2px. */


/* 2026-06-29: apply 2.2px white outline to unselected academy map dots. */


/* 2026-06-30: unify mypage action buttons as rounded pill controls. */
.my-suite-panel .my-suite-inquiry-primary,
.my-suite-panel .my-suite-inquiry-secondary,
.my-suite-panel .my-suite-profile-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 104px;
	height: 42px;
	padding: 0 22px;
	border-radius: 999px !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	box-shadow: none;
	cursor: pointer;
}

.my-suite-panel .my-suite-inquiry-primary,
.my-suite-panel .my-suite-profile-btn.primary{
	border: 1px solid #2563eb;
	background: #2563eb;
	color: #ffffff;
}

.my-suite-panel .my-suite-inquiry-secondary,
.my-suite-panel .my-suite-profile-btn:not(.primary){
	border: 1px solid #dbe3ee;
	background: #ffffff;
	color: #334155;
}





/* 2026-06-30: profile and broker info action buttons stay compact and right-aligned. */








/* 2026-06-30: match admin page menu buttons to the mypage pill tab style. */
body.admin-page-open .admin-page-tabs{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
	width: auto;
	max-width: none;
	min-width: 0;
	margin: 0 auto 40px;
	border: 0;
	border-right: 0;
	background: transparent;
	box-sizing: border-box;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tabs{
	width: min(1180px, var(--realjeju-page-content-width));
	max-width: var(--realjeju-page-content-width);
	margin-left: var(--realjeju-page-gap);
	margin-right: 0;
}

body.admin-page-open .admin-page-tab,
body.operator-page-open .admin-page-tab{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 0;
	height: 34px;
	padding: 0 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #6b7280;
	font: inherit;
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	cursor: pointer;
	white-space: nowrap;
	box-shadow: none;
}

body.admin-page-open .admin-page-tab:hover,
body.operator-page-open .admin-page-tab:hover{
	background: #f3f4f6;
	color: #111827;
	font-weight: 600;
}

body.admin-page-open .admin-page-tab.active,
body.operator-page-open .admin-page-tab.active{
	background: #2563eb;
	color: #ffffff;
	font-weight: 600;
}

/* 2026-06-30: place admin tabs in the global topbar, matching mypage tabs. */
.global-topbar-admin-tabs{
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 4;
	display: none;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 6px;
	width: auto !important;
	max-width: calc(100vw - 620px) !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0;
	border: 0;
	background: transparent;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	transform: translate(-50%, -50%);
}

.global-topbar-admin-tabs::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

.global-topbar-operator-tabs{
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 4;
	display: none;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 6px;
	width: auto !important;
	max-width: calc(100vw - 620px) !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0;
	border: 0;
	background: transparent;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	transform: translate(-50%, -50%);
}

.global-topbar-operator-tabs::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-admin-tabs{
	left: calc(var(--realjeju-topbar-page-title-left) + 127px) !important;
	right: var(--realjeju-management-page-gap, 28px) !important;
	justify-content: flex-start !important;
	max-width: calc(100vw - var(--realjeju-side-nav-width, 168px) - var(--realjeju-page-gap, 40px) - 279px) !important;
	transform: translateY(-50%) !important;
	width: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.realjeju-side-nav-enabled.operator-page-open .global-topbar-operator-tabs{
	/* 운영자 탭 정렬을 관리자/마이페이지 공통 규격으로 맞춤 */
	left: calc(var(--realjeju-topbar-page-title-left) + 127px) !important;
	right: var(--realjeju-management-page-gap, 28px) !important;
	justify-content: flex-start !important;
	max-width: calc(100vw - var(--realjeju-side-nav-width, 168px) - var(--realjeju-page-gap, 40px) - 279px) !important;
	transform: translateY(-50%) !important;
	width: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.admin-page-open .global-topbar-admin-tabs{
	display: flex;
}

body.operator-page-open .global-topbar-operator-tabs{
	display: flex;
}

body.admin-page-open #topbarMenu.global-topbar-menu,
body.operator-page-open #topbarMenu.global-topbar-menu{
	display: none;
}

body.admin-page-open .admin-page-panel > .admin-page-tabs{
	display: none;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-page-title{
	left: var(--realjeju-topbar-page-title-left) !important;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: 0;
}

body.realjeju-side-nav-enabled.operator-page-open .global-topbar-page-title{
	left: var(--realjeju-topbar-page-title-left) !important;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: 0;
}

body.realjeju-side-nav-enabled.broker-home-page-open:not(.admin-page-open) .global-topbar-page-title{
	left: var(--realjeju-topbar-page-title-left) !important;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: 0;
}

body.realjeju-side-nav-enabled.presale-page-open .global-topbar-page-title{
	left: var(--realjeju-topbar-page-title-left) !important;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: 0;
}

body.realjeju-side-nav-enabled.notice-page-open .global-topbar-page-title{
	left: var(--realjeju-topbar-page-title-left) !important;
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: 0;
}

/* 2026-06-30: 관리자 1:1 문의내역은 마이페이지 문의내역 폭과 행 크기를 따른다. */
body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="inquiries"]{
	width: min(1180px, var(--realjeju-page-content-width, calc(100vw - 64px)));
	max-width: var(--realjeju-page-content-width, calc(100vw - 64px));
}

body.admin-page-open .admin-inquiries-content{
	width: min(560px, 100%);
	max-width: none;
	margin: 0;
}

body.admin-page-open .admin-inquiries-filterbar{
	align-items: center;
	gap: 6px;
	margin: 0 0 18px;
}

body.admin-page-open .admin-inquiries-filterbar .broker-home-filter-btn{
	height: 34px;
	min-height: 34px;
	padding: 0 14px;
	border-radius: 999px;
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1;
}

body.admin-page-open .admin-inquiry-table.my-suite-inquiry-list{
	width: 100%;
	border: 1px solid #e5e7eb;
	background: #ffffff;
}

/* 2026-06-30: 관리자 공지사항 관리도 1:1 문의내역과 같은 본문 폭을 쓴다. */
body.admin-page-open .admin-page-tab-panel.active[data-admin-tab-panel="notices"] .admin-notice-manager{
	width: min(560px, 100%);
	max-width: none;
	margin-right: 0;
	margin-left: 0;
}

body.admin-page-open .my-suite-inquiry-row.admin-inquiry-row{
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
	padding: 0 16px 0 0;
}

body.admin-page-open .admin-inquiry-main-button{
	grid-template-columns: 280px minmax(0, 1fr) 86px;
	gap: 14px;
	min-height: 0;
	padding: 16px 0 16px 18px;
}

body.admin-page-open .admin-inquiry-date{
	font-size: 13px;
	font-weight: 500;
}

body.admin-page-open .admin-inquiry-title{
	font-size: 14px;
	font-weight: 600;
}

body.admin-page-open .admin-inquiry-row .my-suite-inquiry-state{
	width: 86px;
	height: 26px;
	min-height: 26px;
	font-size: 12px;
	font-weight: 700;
	line-height: 24px;
}

body.admin-page-open .admin-inquiry-row .my-suite-inquiry-delete{
	width: auto;
	height: 28px;
	min-height: 28px;
	padding: 0 10px;
	font-size: 12px;
	font-weight: 600;
	line-height: 26px;
}

@media (max-width: 720px)
{
	body.admin-page-open .admin-inquiries-content{
		width: 100%;
		margin-right: 0;
	}

body.admin-page-open .admin-inquiry-main-button{
		grid-template-columns: 1fr;
	}
}

/* 2026-06-30: 관리자 중개사무소 신청 카드에 프로필 사진을 중개사무소명 왼쪽에 표시한다. */
body.admin-page-open .admin-application-identity,
body.operator-page-open .admin-application-identity{
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
}

body.admin-page-open .admin-application-identity-text,
body.operator-page-open .admin-application-identity-text{
	min-width: 0;
}

body.admin-page-open .admin-application-profile-thumb,
body.operator-page-open .admin-application-profile-thumb{
	flex: 0 0 60px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	border: 1px solid #e5e7eb;
	border-radius: 50%;
	background: #f8fafc;
	color: #64748b;
	font-size: 18px;
	font-weight: 700;
	overflow: hidden;
	box-sizing: border-box;
}

body.admin-page-open .admin-application-identity-line,
body.operator-page-open .admin-application-identity-line{
	display: block;
	margin-top: 2px;
	line-height: 1.32;
}

body.admin-page-open .admin-application-profile-thumb img,
body.operator-page-open .admin-application-profile-thumb img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.admin-page-open .admin-application-profile-thumb.fallback,
body.operator-page-open .admin-application-profile-thumb.fallback{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #eef3f7;
	color: #6b7280;
	font-size: 18px;
}

body.admin-page-open .admin-application-profile-thumb.fallback i,
body.operator-page-open .admin-application-profile-thumb.fallback i{
	display: block;
	line-height: 1;
}

@media (max-width: 900px)
{
	body.admin-page-open .admin-application-identity,
body.operator-page-open .admin-application-identity{
		align-items: flex-start;
	}
}

/* 2026-06-30: non-map pages must never show the home map filter/address topbar. */
body.my-suite-page-open #topbarMenu.global-topbar-menu.has-map-filters,
body.broker-home-page-open #topbarMenu.global-topbar-menu.has-map-filters,
body.admin-page-open #topbarMenu.global-topbar-menu.has-map-filters,
body.operator-page-open #topbarMenu.global-topbar-menu.has-map-filters{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.my-suite-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.my-suite-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.my-suite-page-open #topbarMenu.global-topbar-menu.has-map-filters #subAddressSearch,
body.broker-home-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.broker-home-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.broker-home-page-open #topbarMenu.global-topbar-menu.has-map-filters #subAddressSearch,
body.admin-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.admin-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.admin-page-open #topbarMenu.global-topbar-menu.has-map-filters #subAddressSearch,
body.operator-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.operator-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.operator-page-open #topbarMenu.global-topbar-menu.has-map-filters #subAddressSearch{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* 2026-07-01: #operatorPagePanel also has admin-page-panel, so prevent cross-page content bleed. */
body.admin-page-open #adminPagePanel{
	display: flex !important;
}

body.admin-page-open #operatorPagePanel{
	display: none !important;
}

body.operator-page-open #operatorPagePanel{
	display: flex !important;
}

body.operator-page-open #adminPagePanel{
	display: none !important;
}

/* 2026-07-01: keep operator application action buttons inside the same card like admin. */
body.operator-page-open .operator-application-list{
	overflow: visible;
}

body.operator-page-open .operator-application-card{
	display: grid !important;
	grid-template-columns: minmax(240px, 1.25fr) minmax(320px, 1fr) minmax(140px, 0.65fr) minmax(120px, auto) !important;
	align-items: center !important;
	gap: 16px !important;
	overflow: visible !important;
}

body.operator-page-open .operator-application-card .admin-application-actions{
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: auto !important;
	min-width: 96px;
	gap: 8px !important;
}

body.operator-page-open .operator-application-card .admin-status-btn{
	width: auto !important;
	min-width: 62px;
	padding: 0 12px !important;
}

/* 2026-07-01: 모바일/태블릿 운영자 가입 신청 카드에서 승인 버튼이 화면 밖으로 밀리지 않게 한다. */
@media (max-width: 1280px)
{
	body.operator-page-open .operator-application-card{
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: stretch !important;
		gap: 12px !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		overflow: visible !important;
	}

	body.operator-page-open .operator-application-card > *{
		min-width: 0 !important;
		max-width: 100% !important;
	}

	body.operator-page-open .operator-application-card .admin-application-status-block{
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 100% !important;
		margin-left: 0 !important;
	}

	body.operator-page-open .operator-application-card .admin-application-actions{
		display: grid !important;
		grid-template-columns: minmax(96px, 1fr) !important;
		justify-content: stretch !important;
		width: 100% !important;
		min-width: 0 !important;
		margin-left: 0 !important;
	}

	body.operator-page-open .operator-application-card .admin-status-btn{
		width: 100% !important;
		min-width: 0 !important;
		height: 38px !important;
		padding: 0 12px !important;
	}
}

/* 2026-07-01: match listing/detail panel radius to the address/current-location dropdown box. */
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-panel,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-detail-panel{
	border: 0 !important;
	/* 4.935: 왼쪽 목록ㆍ오른쪽 상세 패널 외곽 곡률을 4.922 기준 20px로 복원합니다. */
	border-radius: 20px !important;
	overflow: hidden !important;
	box-shadow: 0 12px 34px rgba(15, 23, 42, 0.14), 0 3px 10px rgba(15, 23, 42, 0.08) !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-detail-panel .detail-panel-inner{
	border-radius: inherit;
	overflow: hidden;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-detail-panel{
	top: var(--rj-detail-panel-edge, 16px);
	bottom: var(--rj-detail-panel-edge, 16px);
}

/* 2026-07-01: align listing/detail panel title text size. */
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-header,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-detail-panel .detail-topbar-id{
	font-size: 18px !important;
}

/* 2026-07-01: keep panel topbar icons visually aligned with the 18px title. */
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel .detail-top-actions{
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	gap: 4px !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel .detail-icon-btn,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel .detail-close-btn{
	width: 38px !important;
	min-width: 38px !important;
	height: 38px !important;
	flex: 0 0 38px !important;
	padding: 0 !important;
	font-size: 26px !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel .detail-icon-btn i,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel .detail-close-btn i{
	width: 26px !important;
	height: 26px !important;
	font-size: 26px !important;
	line-height: 1 !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn{
	min-width: 38px !important;
	width: 38px !important;
	height: 38px !important;
	padding: 0 !important;
	font-size: 26px !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn i,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn i{
	width: 26px !important;
	height: 26px !important;
	font-size: 26px !important;
	line-height: 1 !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn i,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn i{
	width: 22px !important;
	height: 22px !important;
	font-size: 22px !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailEditBtn i{
	width: 22px !important;
	height: 22px !important;
	font-size: 22px !important;
	font-weight: 400 !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailEditBtn{
	width: 38px !important;
	min-width: 38px !important;
	height: 38px !important;
	flex: 0 0 38px !important;
	padding: 0 !important;
	color: #9ca3af !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailEditBtn.detail-edit-pill-btn{
	width: auto !important;
	min-width: 0 !important;
	height: 23px !important;
	flex: 0 0 auto !important;
	padding: 0 8px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #2563eb !important;
	box-shadow: inset 0 0 0 1px #bfd4ff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: -0.1px !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailEditBtn[hidden]{
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn{
	position: relative !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn i{
	display: none !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn::before{
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	top: 20px !important;
	display: block !important;
	width: 18px !important;
	height: 10px !important;
	border: 2px solid currentColor !important;
	border-top: 0 !important;
	border-radius: 0 0 5px 5px !important;
	background: transparent !important;
	transform: translateX(-50%) !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn::after{
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	top: 7px !important;
	display: block !important;
	width: 18px !important;
	height: 20px !important;
	background:
		linear-gradient(currentColor, currentColor) center 4px / 2px 16px no-repeat,
		linear-gradient(45deg, transparent calc(50% - 1px), currentColor 0 calc(50% + 1px), transparent 0) left 1px top 1px / 9px 9px no-repeat,
		linear-gradient(-45deg, transparent calc(50% - 1px), currentColor 0 calc(50% + 1px), transparent 0) right 1px top 1px / 9px 9px no-repeat !important;
	transform: translateX(-50%) !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn::before{
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	display: block !important;
	width: 24px !important;
	height: 24px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: currentColor !important;
	transform: translate(-50%, -50%) !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'/%3E%3Cpath%20d='M12%203v13'/%3E%3Cpath%20d='m7%208%205-5%205%205'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'/%3E%3Cpath%20d='M12%203v13'/%3E%3Cpath%20d='m7%208%205-5%205%205'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailShareBtn::after{
	content: none !important;
	display: none !important;
	background: none !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn{
	position: relative !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn i{
	display: none !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn::before{
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	display: block !important;
	width: 24px !important;
	height: 24px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: currentColor !important;
	transform: translate(-50%, -50%) !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'/%3E%3Cpath%20d='M12%203v13'/%3E%3Cpath%20d='m7%208%205-5%205%205'/%3E%3C/svg%3E") center / contain no-repeat !important;
	mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'/%3E%3Cpath%20d='M12%203v13'/%3E%3Cpath%20d='m7%208%205-5%205%205'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-share-btn::after{
	content: none !important;
	display: none !important;
	background: none !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn{
	position: absolute !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn{
	position: relative !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn i,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn i{
	display: none !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn::before,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn::after,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn::before,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn::after{
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	display: block !important;
	width: 24px !important;
	height: 2px !important;
	border-radius: 999px !important;
	background: currentColor !important;
	transform-origin: center !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn::before,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn::before{
	transform: translate(-50%, -50%) rotate(45deg) !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) #sidebarDetailPanel #detailCloseBtn::after,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .sidebar-list-close-btn::after{
	transform: translate(-50%, -50%) rotate(-45deg) !important;
}

/* 2026-07-01: match education facility panels to listing/detail panel shape. */
.education-facility-detail-panel,
.education-facility-filter-panel{
	border: 0 !important;
	border-radius: 20px !important;
	overflow: hidden !important;
	box-shadow: 0 12px 34px rgba(15, 23, 42, 0.14), 0 3px 10px rgba(15, 23, 42, 0.08) !important;
}

.education-facility-detail-action{
	border-radius: 999px !important;
	padding: 0 14px !important;
}

/* 2026-07-01: side-floating information panels use 430px. */
.education-facility-detail-panel{
	width: min(430px, calc(100vw - var(--realjeju-side-nav-width, 0px) - var(--rj-list-panel-gap, 16px) - var(--sidebar-list-width, 430px) - var(--rj-detail-panel-gap, 8px) - 24px)) !important;
}

body.sidebar-list-collapsed .education-facility-detail-panel{
	width: min(430px, calc(100vw - var(--realjeju-side-nav-width, 0px) - var(--rj-list-panel-gap, 16px) - 24px)) !important;
}

body.map-region-detail-next-to-menu .sidebar-detail-panel{
	width: var(--rj-detail-panel-width, 430px) !important;
	max-width: calc(100vw - var(--sidebar-list-width, 430px) - var(--rj-detail-panel-right-safe, 56px)) !important;
}

/* 2026-07-01: keep top filterbar dropdown boxes at 410px while side panels use 430px. */
.global-topbar-menu.has-map-filters .map-region-filter-menu,
.global-topbar-menu.has-map-filters .all-filter-menu,
.global-topbar-menu.has-map-filters .extra-filter-menu,
.global-topbar-menu.has-map-filters .type-filter-menu,
.global-topbar-menu.has-map-filters .deal-filter-menu,
.global-topbar-menu.has-map-filters .deal-method-filter-menu,
.global-topbar-menu.has-map-filters .price-filter-menu,
.global-topbar-menu.has-map-filters .area-filter-menu,
.global-topbar-menu.has-map-filters .room-bath-filter-menu,
.global-topbar-menu.has-map-filters .floor-direction-filter-menu,
.global-topbar-menu.has-map-filters .approval-year-filter-menu,
.global-topbar-menu.has-map-filters .extra-condition-filter-menu,
.global-topbar-menu.has-map-filters .land-type-filter-menu,
.global-topbar-menu.has-map-filters .land-use-zone-filter-menu,
body > .map-filter-floating-menu.map-region-filter-menu,
body > .map-filter-floating-menu.all-filter-menu,
body > .map-filter-floating-menu.extra-filter-menu,
body > .map-filter-floating-menu.type-filter-menu,
body > .map-filter-floating-menu.deal-filter-menu,
body > .map-filter-floating-menu.deal-method-filter-menu,
body > .map-filter-floating-menu.price-filter-menu,
body > .map-filter-floating-menu.area-filter-menu,
body > .map-filter-floating-menu.room-bath-filter-menu,
body > .map-filter-floating-menu.floor-direction-filter-menu,
body > .map-filter-floating-menu.approval-year-filter-menu,
body > .map-filter-floating-menu.extra-condition-filter-menu,
body > .map-filter-floating-menu.land-type-filter-menu,
body > .map-filter-floating-menu.land-use-zone-filter-menu{
	box-sizing: border-box !important;
	width: 410px !important;
	min-width: 410px !important;
	max-width: min(410px, calc(100vw - 48px)) !important;
}

/* 2026-07-01: keep broker home filter buttons on one line. */
.broker-home-filterbar,
.admin-listings-filterbar,
.my-suite-favorites-filterbar{
	flex-wrap: nowrap !important;
}

.broker-home-filter-btn,
.broker-home-filter-btn span,
.broker-home-filter-btn i{
	white-space: nowrap !important;
	word-break: keep-all !important;
	flex-shrink: 0 !important;
}

/* PATCH 3.961: 관리형 목록 필터바 간격/버튼 크기와 회원관리 헤더 타이포를 매물관리와 통일한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-users-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-applications-filterbar,
body.realjeju-side-nav-enabled.admin-page-open .admin-inquiries-filterbar,
body.realjeju-side-nav-enabled.operator-page-open .operator-applications-filterbar,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-filterbar{
	gap: var(--broker-home-filter-gap) !important;
	margin-top: 0 !important;
	margin-bottom: 18px !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-inquiries-filterbar .broker-home-filter-btn,
body.realjeju-side-nav-enabled.admin-page-open .admin-users-filterbar .broker-home-filter-btn,
body.realjeju-side-nav-enabled.admin-page-open .admin-applications-filterbar .broker-home-filter-btn,
body.realjeju-side-nav-enabled.operator-page-open .operator-applications-filterbar .broker-home-filter-btn{
	height: 38px !important;
	min-height: 38px !important;
	padding: 0 14px !important;
	border-radius: 100px !important;
	font-family: var(--subbar-menu-font-family) !important;
	font-size: var(--subbar-menu-font-size) !important;
	font-weight: var(--subbar-menu-font-weight) !important;
	letter-spacing: var(--subbar-menu-letter-spacing) !important;
	line-height: 1 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-inquiries-filterbar .broker-home-filter-btn.active,
body.realjeju-side-nav-enabled.admin-page-open .admin-users-filterbar .broker-home-filter-btn.active,
body.realjeju-side-nav-enabled.admin-page-open .admin-applications-filterbar .broker-home-filter-btn.active,
body.realjeju-side-nav-enabled.operator-page-open .operator-applications-filterbar .broker-home-filter-btn.active{
	font-weight: 600 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-users-list .admin-user-head > div{
	color: #94a3b8 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	letter-spacing: -0.08px !important;
	line-height: 1.45 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-inquiries-content{
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-inquiry-table.my-suite-inquiry-list{
	max-width: 100% !important;
	min-width: 0 !important;
}

/* 2026-07-01: enlarge academy markers and match public parking to the academy circle format. */
.education-facility-map-marker[data-category="academy"],
.education-facility-map-marker.selected[data-category="academy"]{
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
}

.education-facility-map-marker[data-category="public-parking"],
.education-facility-map-marker[data-category="large-mart"],
.education-facility-map-marker[data-category="convenience-store"],
.education-facility-map-marker[data-category="clean-house"],
.education-facility-map-marker[data-category="bank"],
.education-facility-map-marker[data-category="public-office"]{
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	min-height: 28px !important;
	max-width: 28px !important;
	max-height: 28px !important;
}

.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
	box-sizing: border-box !important;
	border-width: 3px !important;
	border-style: solid !important;
	border-radius: 50% !important;
	filter: none !important;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18) !important;
}

.education-facility-map-marker[data-category="public-parking"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"] .public-parking-marker-icon{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	min-height: 28px !important;
	max-width: 28px !important;
	max-height: 28px !important;
	box-sizing: border-box !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: 8px !important;
	filter: none !important;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18) !important;
}

.education-facility-map-marker[data-category="large-mart"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="large-mart"] .large-mart-marker-icon{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	min-height: 28px !important;
	max-width: 28px !important;
	max-height: 28px !important;
	box-sizing: border-box !important;
	border: 1px solid #ffffff !important;
	border-radius: 8px !important;
	background: rgba(249, 115, 22, 0.82) !important;
	color: #ffffff !important;
	filter: none !important;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18) !important;
}

.education-facility-map-marker[data-category="large-mart"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="large-mart"] .large-mart-marker-icon i{
	display: block !important;
	color: #ffffff !important;
	font-size: 14px !important;
	line-height: 1 !important;
	-webkit-text-stroke: 0 !important;
}

.education-facility-map-marker[data-category="convenience-store"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="convenience-store"] .convenience-store-marker-icon,
.education-facility-map-marker[data-category="bank"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="bank"] .bank-marker-icon,
.education-facility-map-marker[data-category="public-office"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-office"] .public-office-marker-icon,
.education-facility-map-marker[data-category="clean-house"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="clean-house"] .clean-house-marker-icon{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	min-height: 28px !important;
	max-width: 28px !important;
	max-height: 28px !important;
	box-sizing: border-box !important;
	border: 1px solid #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	filter: none !important;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.18) !important;
}

.education-facility-map-marker[data-category="convenience-store"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="convenience-store"] .convenience-store-marker-icon{
	background: rgba(22, 163, 74, 0.82) !important;
}

.education-facility-map-marker[data-category="bank"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="bank"] .bank-marker-icon{
	background: rgba(79, 70, 229, 0.82) !important;
}

.education-facility-map-marker[data-category="public-office"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-office"] .public-office-marker-icon{
	background: rgba(100, 116, 139, 0.84) !important;
}

.education-facility-map-marker[data-category="clean-house"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="clean-house"] .clean-house-marker-icon{
	background: rgba(20, 184, 166, 0.88) !important;
}

.education-facility-map-marker[data-category="convenience-store"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="convenience-store"] .convenience-store-marker-icon i,
.education-facility-map-marker[data-category="bank"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="bank"] .bank-marker-icon i,
.education-facility-map-marker[data-category="public-office"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="public-office"] .public-office-marker-icon i,
.education-facility-map-marker[data-category="clean-house"] .education-facility-map-marker-icon i,
.education-facility-map-marker[data-category="clean-house"] .clean-house-marker-icon i{
	display: block !important;
	color: #ffffff !important;
	font-size: 14px !important;
	line-height: 1 !important;
	-webkit-text-stroke: 0 !important;
}

.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon{
	background: rgba(8,145,178,0.78) !important;
	border-color: rgba(255,255,255,0.98) !important;
	color: #ffffff !important;
}

.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	background: #0E7490 !important;
	border-color: rgba(255,255,255,0.98) !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="public-parking"] .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"] .public-parking-marker-icon{
	background: rgba(37, 99, 235, 0.72) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="public-parking"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-parking"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(37, 99, 235, 0.86) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="large-mart"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="large-mart"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(234, 88, 12, 0.92) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="convenience-store"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="convenience-store"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(21, 128, 61, 0.92) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="bank"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="bank"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(67, 56, 202, 0.92) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="public-office"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="public-office"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(71, 85, 105, 0.94) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="clean-house"]:hover .education-facility-map-marker-icon,
.education-facility-map-marker[data-category="clean-house"]:focus-visible .education-facility-map-marker-icon{
	background: rgba(13, 148, 136, 0.94) !important;
	border-color: #ffffff !important;
	border-radius: 8px !important;
	color: #ffffff !important;
}

.public-parking-marker-label{
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	min-height: 28px !important;
	max-width: 28px !important;
	max-height: 28px !important;
	font-size: 15px !important;
	font-weight: 800 !important;
}

.public-parking-marker-icon-symbol{
	display: block !important;
	color: #ffffff !important;
	font-size: 16px !important;
	line-height: 1 !important;
	-webkit-text-stroke: 0 !important;
}

/* 2026-07-01: make academy circles visually match public parking ring thickness. */
.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon,
.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	background: rgba(20,184,166,0.78) !important;
	border: 3px solid rgba(255,255,255,0.98) !important;
	color: #ffffff !important;
}

.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-icon i{
	display: none !important;
	color: #ffffff !important;
	font-size: 13px !important;
	line-height: 1 !important;
	-webkit-text-stroke: 0 !important;
}

.education-facility-map-marker[data-category="academy"] .education-facility-map-marker-label{
	display: none !important;
}

/* 2026-07-01: final academy selected/unselected swap with identical ring thickness. */
.education-facility-map-marker:not(.selected)[data-category="academy"] .education-facility-map-marker-icon{
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
	box-sizing: border-box !important;
	background: rgba(20,184,166,0.78) !important;
	border: 3px solid rgba(255,255,255,0.98) !important;
	border-radius: 50% !important;
}

.education-facility-map-marker.selected[data-category="academy"] .education-facility-map-marker-icon{
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
	box-sizing: border-box !important;
	background: rgba(8,145,178,0.78) !important;
	border: 3px solid rgba(255,255,255,0.98) !important;
	border-radius: 50% !important;
}

/* PATCH 3.965: 부동산 홈 주소검색창과 관리자 매물관리 검색창의 크기/아이콘/글자 크기를 통일한다. */
.global-topbar-menu.has-map-filters .sub-address-search-form,
.admin-listing-topbar-search{
	width: 286px !important;
	max-width: 286px !important;
	height: 40px !important;
	min-height: 40px !important;
	box-sizing: border-box !important;
	border-radius: 999px !important;
	background: #f3f4f6 !important;
	box-shadow: none !important;
}

.admin-listing-topbar-search{
	display: none;
	align-items: center !important;
	gap: 10px !important;
	padding: 0 16px !important;
}



.global-topbar-menu.has-map-filters .sub-address-search-icon{
	width: 42px !important;
	height: 40px !important;
	min-width: 42px !important;
	min-height: 40px !important;
	font-size: 16px !important;
	color: #111827 !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-icon i,
.admin-listing-topbar-search i{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 18px !important;
	height: 18px !important;
	font-size: 16px !important;
	line-height: 1 !important;
	color: #111827 !important;
}





/* PATCH 3.966: 홈 주소검색과 관리자 매물검색의 돋보기 중심 위치를 같은 42px 아이콘 영역으로 맞춘다. */
.admin-listing-topbar-search{
	gap: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.admin-listing-topbar-search i{
	flex: 0 0 42px !important;
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	box-sizing: border-box !important;
}

.admin-listing-topbar-search input{
	flex: 1 1 auto !important;
	min-width: 0 !important;
	padding: 0 16px 0 0 !important;
	box-sizing: border-box !important;
}

/* PATCH 3.967: 검색창 돋보기 아이콘을 flex 흐름이 아니라 같은 좌표에 절대 배치한다. */
.global-topbar-menu.has-map-filters .sub-address-search-form,
.admin-listing-topbar-search{
	position: relative !important;
}



.global-topbar-menu.has-map-filters .sub-address-search-icon i,
.admin-listing-topbar-search > i{
	position: absolute !important;
	left: 21px !important;
	top: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
	font-size: 16px !important;
	line-height: 1 !important;
	color: #111827 !important;
	transform: translate(-50%, -50%) !important;
}



/* PATCH 3.968: 관리자 매물검색 박스는 원래 자리(사이드바 끝 + 32px)에 고정하고, 내부 아이콘 좌표만 유지한다. */


/* PATCH 3.969: 홈 주소검색과 관리자 매물검색의 돋보기를 같은 폰트/좌표의 가상 아이콘으로 고정한다. */






.global-topbar-menu.has-map-filters .sub-address-search-form::before,
.admin-listing-topbar-search::before{
	content: "\f002";
	position: absolute !important;
	left: 21px !important;
	top: 50% !important;
	z-index: 2 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 18px !important;
	height: 18px !important;
	color: #111827 !important;
	font-family: "Font Awesome 6 Free" !important;
	font-size: 16px !important;
	font-style: normal !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	transform: translate(-50%, -50%) !important;
	pointer-events: none !important;
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
}

.global-topbar-menu.has-map-filters .sub-address-search-icon{
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	width: 42px !important;
	height: 40px !important;
	min-width: 42px !important;
	min-height: 40px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-input,
.admin-listing-topbar-search input{
	padding-left: 42px !important;
	padding-right: 16px !important;
	box-sizing: border-box !important;
}

/* PATCH 3.970: 검색창 내부 치수를 완전히 같은 값으로 고정한다. */
.global-topbar-menu.has-map-filters .sub-address-search-form,
.admin-listing-topbar-search{
	width: 286px !important;
	max-width: 286px !important;
	height: 40px !important;
	min-height: 40px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #f3f4f6 !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-form{
	position: relative !important;
	display: block !important;
}

.admin-listing-topbar-search{
	position: absolute !important;
	left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap, 32px)) !important;
	top: 50% !important;
	display: none !important;
	transform: translateY(-50%) !important;
}

body.realjeju-side-nav-enabled.admin-page-open.admin-listings-tab-open #adminListingTopbarSearch{
	display: block !important;
}

/* PATCH 3.973: 중개사 홈에서는 매물 검색창 하나만 사용한다. */
body.realjeju-side-nav-enabled.broker-home-page-open:not(.admin-page-open) #adminListingTopbarSearch{
	display: block !important;
}

body.realjeju-side-nav-enabled.broker-home-page-open:not(.admin-page-open),
body.realjeju-side-nav-enabled.presale-page-open{
	--realjeju-admin-listing-search-width: 286px;
	--realjeju-admin-listing-search-gap: 32px;
	--realjeju-topbar-page-title-left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap, 32px) + var(--realjeju-admin-listing-search-width) + var(--realjeju-admin-listing-search-gap));
}

.global-topbar-menu.has-map-filters .sub-address-search-icon,
.admin-listing-topbar-search > i{
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	display: block !important;
	width: 42px !important;
	height: 40px !important;
	min-width: 42px !important;
	min-height: 40px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-sizing: border-box !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-icon i,
.admin-listing-topbar-search > i{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-form::before,
.admin-listing-topbar-search::before{
	content: "\f002";
	position: absolute !important;
	left: 21px !important;
	top: 20px !important;
	z-index: 3 !important;
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	color: #111827 !important;
	font-family: "Font Awesome 6 Free" !important;
	font-size: 16px !important;
	font-style: normal !important;
	font-weight: 900 !important;
	line-height: 18px !important;
	text-align: center !important;
	transform: translate(-50%, -50%) !important;
	pointer-events: none !important;
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
}

.global-topbar-menu.has-map-filters .sub-address-search-input,
.admin-listing-topbar-search input{
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	width: 286px !important;
	height: 40px !important;
	min-height: 40px !important;
	padding: 0 16px 0 42px !important;
	border: 0 !important;
	background: transparent !important;
	box-sizing: border-box !important;
	color: #6b7280 !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	line-height: 40px !important;
	outline: none !important;
}

.global-topbar-menu.has-map-filters .sub-address-search-input::placeholder,
.admin-listing-topbar-search input::placeholder{
	color: #9ca3af !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	line-height: 40px !important;
	opacity: 1 !important;
}

/* PATCH 3.971: 주소지 검색/매물 검색 글자를 기존보다 아주 조금 더 진하게 맞춘다. */
.global-topbar-menu.has-map-filters .sub-address-search-input,
.admin-listing-topbar-search input,
.global-topbar-menu.has-map-filters .sub-address-search-input::placeholder,
.admin-listing-topbar-search input::placeholder{
	font-weight: 600 !important;
}

/* PATCH 3.972: 검색창 안내 글자를 실제로 보이게 한 단계만 진하게 한다. */
.global-topbar-menu.has-map-filters .sub-address-search-input::placeholder,
.admin-listing-topbar-search input::placeholder{
	color: #8b95a1 !important;
	opacity: 1 !important;
}

/* PATCH 4.132: top category menu is muted by default and only the selected item uses color. */
.global-category-menu{
	position: fixed;
	top: calc((var(--global-topbar-height, 64px) - 38px) / 2);
	left: 50vw;
	right: auto;
	transform: translateX(-50%);
	z-index: 2147483001;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	height: 38px;
	min-width: 0;
	max-width: calc(100vw - var(--realjeju-side-nav-width, 0px) - 230px);
	overflow-x: auto;
	overflow-y: visible;
	white-space: nowrap;
	pointer-events: auto;
	scrollbar-width: none;
}

.global-category-menu::-webkit-scrollbar{
	display: none;
}

.global-category-item{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	flex: 0 0 auto;
	height: 38px;
	min-height: 38px;
	padding: 0 6px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #8b8f96;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.2px;
	cursor: pointer;
	transition: color .14s ease;
}

.global-category-item:hover,
.global-category-item:focus-visible{
	background: transparent;
	color: #5f6368;
	box-shadow: none;
	outline: none;
}

.global-category-item.is-active{
	background: transparent;
	color: #111827;
	box-shadow: none;
}

.global-category-item.is-active:hover,
.global-category-item.is-active:focus-visible{
	background: transparent;
	color: #111827;
}

.global-category-item i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	min-width: 16px;
	font-size: 15px;
	line-height: 1;
	color: #96999f;
}

.global-category-item.is-active[data-global-category="local-business"] i{ color: #f59e0b; }

.global-category-item.is-active[data-global-category="part-time"] i{ color: #f97316; }
.global-category-item.is-active[data-global-category="used-market"] i{ color: #ff6b00; }
.global-category-item.is-active[data-global-category="car"] i{ color: #3b82f6; }
.global-category-item.is-active[data-global-category="meetup"] i{ color: #8b5cf6; }

body.admin-page-open .global-category-menu,
body.operator-page-open .global-category-menu,
body.broker-home-page-open .global-category-menu,
body.property-register-page-open .global-category-menu,
body.presale-page-open .global-category-menu,
body.my-suite-page-open .global-category-menu,
body.notice-page-open .global-category-menu,
body.auth-page-open .global-category-menu,
body.payment-page-open .global-category-menu{
	display: none !important;
}

/* PATCH 4.132: keep the category navigation on normal user pages; admin/operator and property register keep their own topbar. */
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.operator-page-open):not(.property-register-page-open) .global-category-menu{
	display: inline-flex !important;
}

body.realjeju-side-nav-enabled:not(.admin-page-open):not(.operator-page-open) .global-topbar-page-title,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.operator-page-open) .global-topbar-my-suite-link,
body.realjeju-side-nav-enabled:not(.admin-page-open):not(.operator-page-open) .global-topbar-my-suite-tabs{
	display: none !important;
}

@media (max-width: 1280px)
{
	.global-category-menu{
		gap: 14px;
		right: auto;
		max-width: calc(100vw - var(--realjeju-side-nav-width, 0px) - 160px);
	}

	
}

/* PATCH 4.902: 세 관리 화면의 페이지 버튼 규격을 중개사 홈 기준으로 통일한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list.broker-listing-list .broker-listing-pagination,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list.broker-listing-list .broker-listing-pagination,
body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList .broker-listing-pagination,
body.realjeju-side-nav-enabled.broker-home-page-open #brokerContractsShell .broker-listing-pagination{
	grid-column: 1 / -1 !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	width: 100% !important;
	margin: 28px 0 0 !important;
	padding: 12px 0 0 !important;
	border-top: 0 !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list.broker-listing-list .admin-listing-row[data-admin-listing-id]{
	border-bottom: 1px solid #edf1f5 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list.broker-listing-list .admin-listing-row[data-admin-listing-id]:last-child{
	border-bottom: 0 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active{
	padding-bottom: 0 !important;
	overflow: visible !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-listings-shell{
	overflow: visible !important;
	padding-bottom: 0 !important;
}

/* PATCH 3.984: align the top-right version text with the shared page/right edge gap. */
body.realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only,
body.admin-page-open .global-topbar-right #detailAuthTrigger.version-only,
body.operator-page-open .global-topbar-right #detailAuthTrigger.version-only,
body.my-suite-page-open .global-topbar-right #detailAuthTrigger.version-only,
body.broker-home-page-open .global-topbar-right #detailAuthTrigger.version-only{
	padding-right: 0 !important;
	text-align: right !important;
}

/* PATCH 4.000: stabilize version badge alignment in the top-right across states */
body.realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only,
body.admin-page-open .global-topbar-right #detailAuthTrigger.version-only,
body.operator-page-open .global-topbar-right #detailAuthTrigger.version-only,
body.my-suite-page-open .global-topbar-right #detailAuthTrigger.version-only,
body.broker-home-page-open .global-topbar-right #detailAuthTrigger.version-only,
.global-topbar-right #detailAuthTrigger.version-only{
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: max-content !important;
	min-width: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	text-align: right !important;
}

body.realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only .topbar-version-text,
body.admin-page-open .global-topbar-right #detailAuthTrigger.version-only .topbar-version-text,
body.operator-page-open .global-topbar-right #detailAuthTrigger.version-only .topbar-version-text,
body.my-suite-page-open .global-topbar-right #detailAuthTrigger.version-only .topbar-version-text,
body.broker-home-page-open .global-topbar-right #detailAuthTrigger.version-only .topbar-version-text,
.global-topbar-right #detailAuthTrigger.version-only .topbar-version-text{
	display: inline-flex !important;
	align-items: center !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* PATCH 4.132: category pages keep top filter buttons; only the main category nav is icon text. */
.global-category-side-panel{
	position: fixed;
	left: calc(var(--realjeju-side-nav-width, 168px) + 16px);
	top: calc(var(--global-topbar-height, 56px) + 16px);
	z-index: 2147482600;
	display: none;
	flex-direction: column;
	width: 318px;
	max-height: calc(100vh - var(--global-topbar-height, 56px) - 32px);
	padding: 18px 16px 16px;
	border: 1px solid rgba(226, 232, 240, 0.76);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	box-sizing: border-box;
	overflow: hidden;
	display: none !important;
}

body.global-category-panel-open:not(.admin-page-open):not(.operator-page-open):not(.broker-home-page-open):not(.property-register-page-open):not(.presale-page-open):not(.my-suite-page-open):not(.notice-page-open):not(.auth-page-open):not(.payment-page-open):not(.myinfo-page-open):not(.profile-edit-page-open):not(.broker-office-info-page-open):not(.broker-office-edit-page-open) .global-category-side-panel{
	display: none !important;
}

.map-filter-bar.global-category-filter-mode > :not(.map-region-filter-dropdown):not(.all-filter-dropdown):not(.global-category-top-filters){
	display: none !important;
}

.global-category-top-filters{
	display: inline-flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
	min-width: max-content;
}

.global-category-top-filters[hidden]{
	display: none !important;
}

.global-category-filter-dropdown{
	position: relative;
	flex: 0 0 auto;
}

.global-category-filter-trigger{
	gap: 8px;
	min-width: 118px;
	padding: 0 18px;
}

.global-category-filter-menu{
	width: 420px;
	min-width: 420px;
	padding: 22px;
	border-radius: 18px;
}

.global-category-filter-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.global-category-filter-option{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	height: 44px;
	min-width: 0;
	padding: 0 16px;
	border: 1px solid rgba(226, 232, 240, 0.86);
	border-radius: 12px;
	background: #f8fafc;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: -0.12px;
	line-height: 1;
	text-align: left;
	white-space: nowrap;
	cursor: pointer;
}

.global-category-filter-option:hover,
.global-category-filter-option:focus-visible,
.global-category-filter-option.active{
	background: #eef2f7;
	color: #111827;
	outline: none;
}

.global-category-filter-option i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	min-width: 16px;
	font-size: 14px;
	color: #f59e0b;
	line-height: 1;
}

.global-category-side-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 16px;
}

.global-category-side-title{
	display: inline-flex;
	align-items: center;
	min-width: 0;
	gap: 9px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: -0.2px;
	line-height: 1.2;
}

.global-category-side-title i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	min-width: 20px;
	font-size: 18px;
	color: #f59e0b;
}

.global-category-side-close{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	min-width: 30px;
	height: 30px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #9ca3af;
	font-size: 18px;
	cursor: pointer;
}

.global-category-side-close:hover,
.global-category-side-close:focus-visible{
	background: #f3f4f6;
	color: #4b5563;
	outline: none;
}

.global-category-side-body{
	display: flex;
	flex-direction: column;
	gap: 18px;
	min-height: 0;
	overflow: auto;
	padding-right: 2px;
	scrollbar-width: none;
}

.global-category-side-body::-webkit-scrollbar{
	display: none;
}

.global-category-side-group{
	display: flex;
	flex-direction: column;
	gap: 9px;
	padding-bottom: 16px;
	border-bottom: 1px solid #edf1f5;
}

.global-category-side-group:last-child{
	border-bottom: 0;
	padding-bottom: 0;
}

.global-category-side-group-title{
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: -0.1px;
	line-height: 1.25;
}

.global-category-side-grid{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.global-category-side-option{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 7px;
	height: 38px;
	min-width: 0;
	padding: 0 11px;
	border: 1px solid rgba(226, 232, 240, 0.82);
	border-radius: 11px;
	background: #f8fafc;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: -0.1px;
	line-height: 1;
	text-align: left;
	cursor: pointer;
	white-space: nowrap;
}

.global-category-side-option:hover,
.global-category-side-option:focus-visible,
.global-category-side-option.active{
	background: #eef2f7;
	color: #111827;
	outline: none;
}

.global-category-side-option i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 14px;
	min-width: 14px;
	color: var(--global-category-panel-accent, #f59e0b);
	font-size: 13px;
}

@media (max-width: 920px)
{
	.global-category-side-panel{
		left: 12px;
		top: calc(var(--global-topbar-height, 56px) + 12px);
		width: min(318px, calc(100vw - 24px));
	}
}

.part-time-page-panel{
	position: relative;
	inset: auto;
	z-index: auto;
	display: none;
	width: 100%;
	min-height: calc(100vh - var(--global-topbar-height, 64px));
	overflow: visible;
	background: #ffffff;
	font-family: var(--font-ui);
	color: #111827;
}

.part-time-page-panel::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

body.part-time-page-open .part-time-page-panel{
	display: block;
}

body.part-time-page-open .realjeju-side-nav,
body.part-time-page-open .sidebar,
body.part-time-page-open .resizer,
body.part-time-page-open .map-wrap,
body.part-time-page-open .sub-topbar,
body.part-time-page-open .map-panel-toggle,
body.part-time-page-open .weekly-specialist-broker-panel,
body.part-time-page-open .global-category-side-panel{
	display: none !important;
}

body.realjeju-side-nav-enabled.part-time-page-open .app{
	padding-left: 0 !important;
}

body.realjeju-document-page-open #topbarMenu.global-topbar-menu.has-map-filters{
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	height: 100% !important;
	transform: none !important;
	z-index: 1200 !important;
}

body.realjeju-document-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.realjeju-document-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.realjeju-document-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-bar,
body.realjeju-document-page-open #topbarMenu.global-topbar-menu.has-map-filters .global-category-top-filters,
body.global-category-hide-filter-menu #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
body.global-category-hide-filter-menu #topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-controls,
body.global-category-hide-filter-menu #topbarMenu.global-topbar-menu.has-map-filters .map-filter-bar,
body.global-category-hide-filter-menu #topbarMenu.global-topbar-menu.has-map-filters .global-category-top-filters{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.part-time-page-inner{
	width: min(1120px, calc(100vw - 64px));
	margin: 0 auto;
	padding: 40px 0 0;
	box-sizing: border-box;
}

.part-time-toolbar{
	display: grid;
	grid-template-columns: max-content max-content;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 12px;
}

.part-time-region,
.part-time-register-btn{
	display: inline-flex;
	align-items: center;
	height: 34px;
	box-sizing: border-box;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	white-space: nowrap;
}

.part-time-region{
	gap: 6px;
	padding: 0 12px;
	border: 1px solid #e5e7eb;
	background: #ffffff;
	color: #4b5563;
}

.part-time-region i{
	color: #f97316;
	font-size: 12px;
}

.part-time-register-btn{
	appearance: none;
	justify-content: center;
	gap: 6px;
	padding: 0 13px;
	border: 0;
	background: #111827;
	color: #ffffff;
	cursor: pointer;
}

.part-time-filterbar{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-bottom: 22px;
	overflow-x: auto;
	scrollbar-width: none;
}

.part-time-filterbar::-webkit-scrollbar{
	display: none;
}

.part-time-filter-chip{
	appearance: none;
	flex: 0 0 auto;
	height: 30px;
	padding: 0 11px;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	background: #ffffff;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	cursor: pointer;
}

.part-time-filter-chip:hover,
.part-time-filter-chip:focus-visible,
.part-time-filter-chip.active{
	border-color: #f97316;
	background: #fff7ed;
	color: #c2410c;
	outline: none;
}

.part-time-board-head{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
}

.part-time-board-actions{
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex: 0 0 auto;
}

.part-time-page-title{
	margin: 0;
	color: #111827;
	font-size: 28px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.15;
}

.part-time-page-count{
	margin: 7px 0 0;
	color: #6b7280;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

.part-time-view-toggle{
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	background: #f9fafb;
}

.part-time-view-toggle button{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 30px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #9ca3af;
	cursor: pointer;
}

.part-time-view-toggle button.active{
	background: #ffffff;
	color: #111827;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
}

.part-time-trash-btn{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 40px;
	padding: 0 13px;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	background: #ffffff;
	color: #6b7280;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
}

.part-time-trash-btn i{
	font-size: 13px;
}

.part-time-trash-btn.active{
	border-color: #cbd5e1;
	background: #f8fafc;
	color: #111827;
}

.part-time-content-row{
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	align-items: start;
	gap: 18px;
}

.part-time-ad-slot{
	min-width: 0;
	position: sticky;
	top: 24px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.part-time-ad-card{
	appearance: none;
	position: relative;
	display: block;
	width: 100%;
	min-height: 400px;
	padding: 0;
	border: 1px solid #d7e3ec;
	border-radius: 8px;
	background: #ffffff;
	color: #111827;
	text-align: left;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
	cursor: pointer;
}

.part-time-square-ad-card{
	appearance: none;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 4 / 3;
	box-sizing: border-box;
	border: 1px solid #d7e3ec;
	border-radius: 8px;
	background: #f5f7f9;
	color: #9ca3af;
	font-family: var(--font-ui);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0;
	cursor: pointer;
}

.part-time-square-ad-badge{
	position: absolute;
	top: 10px;
	right: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #ffffff;
	color: #9ca3af;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.14);
}

.part-time-ad-badge{
	position: absolute;
	right: 10px;
	top: 10px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 27px;
	height: 22px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.78);
	color: #8b8b8b;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.16);
}

.part-time-ad-visual{
	position: relative;
	display: block;
	height: 170px;
	padding: 112px 14px 15px;
	box-sizing: border-box;
	background:
		radial-gradient(circle at 64% 18%, rgba(255, 255, 255, 0.76) 0 16px, transparent 17px),
		linear-gradient(90deg, rgba(54, 73, 58, 0.92) 0 46%, rgba(181, 142, 105, 0.92) 46% 74%, rgba(246, 247, 247, 0.98) 74% 100%);
	color: #ffffff;
	overflow: hidden;
}

.part-time-ad-visual::before,
.part-time-ad-visual::after{
	content: "";
	position: absolute;
	top: -18px;
	bottom: 0;
	width: 62px;
	border-radius: 0 0 30px 30px;
	background: rgba(255, 255, 255, 0.22);
	transform: rotate(3deg);
}

.part-time-ad-visual::before{
	left: 68px;
}

.part-time-ad-visual::after{
	left: 146px;
	background: rgba(255, 255, 255, 0.18);
	transform: rotate(-2deg);
}

.part-time-ad-copy-main,
.part-time-ad-copy-sub{
	position: relative;
	z-index: 1;
	display: block;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
}

.part-time-ad-copy-main{
	font-size: 24px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.05;
}

.part-time-ad-copy-sub{
	margin-top: 5px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
}

.part-time-ad-brand-mark{
	position: absolute;
	left: 20px;
	bottom: -34px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 999px;
	background: radial-gradient(circle at 42% 34%, #ffffff 0, #f5f5f5 46%, #d7d7d7 100%);
	color: #333333;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 3px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.16);
}

.part-time-ad-body{
	display: flex;
	flex-direction: column;
	min-height: 230px;
	padding: 46px 22px 20px;
	box-sizing: border-box;
}

.part-time-ad-body strong{
	color: #111111;
	font-size: 18px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.3;
}

.part-time-ad-nowrap{
	white-space: nowrap;
}

.part-time-ad-body span{
	margin-top: 12px;
	color: #222222;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.45;
}

.part-time-ad-body em{
	margin-top: 24px;
	color: #737373;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0;
}

.part-time-ad-body .part-time-ad-cta{
	align-self: flex-end;
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 44px;
	padding: 0 22px;
	border-radius: 999px;
	background: #c9826e;
	color: #ffffff;
	font-size: 16px;
	font-weight: 800;
	line-height: 1;
}

.part-time-card-grid{
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	align-items: start;
	gap: 14px;
}

.part-time-card{
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 0;
	padding: 18px;
	box-sizing: border-box;
	border: 1px solid #d7e3ec;
	border-radius: 8px !important;
	background: #ffffff;
	color: #111827;
	overflow: hidden;
	cursor: pointer;
}

.part-time-card:hover,
.part-time-card:focus-visible{
	outline: none;
	background: #f8fafc;
}

.part-time-card-actions{
	position: absolute;
	top: 12px;
	left: 18px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.part-time-card-edit-btn,
.part-time-card-refresh-btn,
.part-time-card-delete-btn,
.part-time-card-restore-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 0;
	height: 23px;
	padding: 0 8px;
	border: 0;
	border-radius: 999px;
	background: #ffffff;
	color: #2563eb;
	box-shadow: inset 0 0 0 1px #bfd4ff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: -0.1px;
	line-height: 1;
	white-space: nowrap;
	cursor: pointer;
}

.part-time-card-refresh-btn{
	color: #6b7280;
	box-shadow: inset 0 0 0 1px #d1d5db;
}

.part-time-card-delete-btn{
	color: #dc2626;
	box-shadow: inset 0 0 0 1px #fecaca;
}

.part-time-card-restore-btn{
	color: #16a34a;
	box-shadow: inset 0 0 0 1px #bbf7d0;
}

.part-time-card-edit-btn:hover,
.part-time-card-edit-btn:focus-visible{
	outline: none;
	background: #e6f0ff;
	color: #1d4ed8;
}

.part-time-card-refresh-btn:hover,
.part-time-card-refresh-btn:focus-visible{
	outline: none;
	background: #f3f4f6;
	color: #4b5563;
}

.part-time-card-delete-btn:hover,
.part-time-card-delete-btn:focus-visible{
	outline: none;
	background: #fef2f2;
	color: #b91c1c;
}

.part-time-card-restore-btn:hover,
.part-time-card-restore-btn:focus-visible{
	outline: none;
	background: #ecfdf5;
	color: #15803d;
}

.part-time-card-deadline{
	align-self: flex-end;
	min-height: 18px;
	color: #a3a3a3;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1;
}

.part-time-card-logo{
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 58px;
	margin: 10px 0 18px;
	color: var(--part-time-card-color, #111827);
	font-size: clamp(20px, 1.25vw, 27px);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.1;
	text-align: center;
}

.part-time-card-image{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 2 / 1;
	margin: 10px 0 18px;
	border: 0;
	border-radius: 0;
	background: transparent;
	overflow: hidden;
}

.part-time-card-image.is-empty{
	background: #f3f4f6;
}

.part-time-card-image img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.part-time-card-company{
	display: block;
	max-width: 100%;
	margin: 8px 0 0;
	color: #374151;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.part-time-card.no-image .part-time-card-company{
	margin-top: 8px;
}

.part-time-card-title{
	margin: 0;
	color: #111827;
	font-size: 17px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.35;
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.part-time-card-meta{
	display: flex;
	align-items: center;
	gap: 7px;
	margin-top: auto;
	padding-top: 18px;
	color: #9ca3af;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.2;
}

.part-time-card-meta i{
	flex: 0 0 auto;
}

.part-time-card-meta span{
	min-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.part-time-card-pay{
	margin-top: 20px;
	padding-top: 0;
	color: #ef4444;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.2;
}

.part-time-card-pay + .part-time-card-meta{
	margin-top: 6px;
	padding-top: 0;
}

.part-time-empty{
	grid-column: 1 / -1;
	padding: 80px 24px;
	border: 1px solid #e5e7eb;
	background: #f9fafb;
	color: #6b7280;
	text-align: center;
	font-size: 15px;
	font-weight: 600;
}

.part-time-detail-dim{
	position: fixed;
	inset: 0;
	z-index: 2147483646;
	display: none;
	background: rgba(15, 23, 42, 0.38);
}

body.part-time-detail-open .part-time-detail-dim{
	display: block;
}

.part-time-detail-panel{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 2147483647;
	display: flex;
	width: var(--rj-detail-panel-width, 430px);
	max-width: 100vw;
	background: #ffffff;
	border-left: 1px solid #e5e7eb;
	box-shadow: none;
	color: #111827;
	font-family: var(--font-ui);
	transform: translateX(100%);
	transition: transform 0.22s ease;
}

body.part-time-detail-open .part-time-detail-panel{
	transform: translateX(0);
}

.part-time-detail-inner{
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 0;
}

.part-time-detail-topbar{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	flex: 0 0 var(--rj-panel-header-height, 56px);
	min-height: var(--rj-panel-header-height, 56px);
	padding: 0 12px 0 24px;
	box-sizing: border-box;
	border-bottom: 1px solid #eef2f7;
	background: rgba(255, 255, 255, 0.98);
}

.part-time-detail-edit-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 23px;
	padding: 0 8px;
	border: 1px solid #bfd4ff;
	border-radius: 999px;
	background: #ffffff;
	color: #2563eb;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: -0.1px;
	line-height: 1;
	cursor: pointer;
}

.part-time-detail-edit-btn:hover,
.part-time-detail-edit-btn:focus-visible{
	outline: none;
	background: #e6f0ff;
	color: #1d4ed8;
}

.part-time-detail-actions{
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 2px;
	margin-left: auto;
	flex: 0 0 auto;
	width: auto;
	min-width: 0;
}

.part-time-detail-action-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: auto;
	min-width: 36px;
	height: 36px;
	flex: 0 0 auto;
	padding: 0 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
}

.part-time-detail-share-btn{
	font-size: 24px;
}

.part-time-detail-action-btn i{
	width: auto;
	height: auto;
	line-height: 1;
	font-weight: 800;
	-webkit-text-stroke: 0;
	text-shadow: none;
	transform: translate(1px, 0);
}

.part-time-detail-share-btn i{
	font-size: 18px;
}

.part-time-detail-close-btn i{
	font-size: 22px;
}

.part-time-detail-action-btn:hover,
.part-time-detail-action-btn:focus-visible{
	outline: none;
	background: transparent;
	color: #111827;
}

.part-time-detail-scroll{
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding: 28px 24px var(--rj-detail-card-gap-y);
	box-sizing: border-box;
}

.part-time-detail-scroll::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

.part-time-detail-category{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 23px;
	padding: 0 8px;
	box-sizing: border-box;
	border: 1px solid transparent;
	margin-bottom: 12px;
	border-radius: 999px;
	background: #eff6ff;
	color: #2563eb;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: -0.1px;
	line-height: 1;
}

.part-time-detail-image{
	width: 140px;
	aspect-ratio: 2 / 1;
	margin: 0 0 12px;
	border: 0;
	border-radius: 0;
	background: transparent;
	overflow: hidden;
}

.part-time-detail-image img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.part-time-detail-title{
	margin: 0;
	color: #111827;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.3;
}

.part-time-detail-company{
	margin: 10px 0 0;
	color: #374151;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.35;
}

.part-time-detail-summary{
	display: grid;
	gap: 10px;
	margin-top: 22px;
	padding: 18px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #f9fafb;
}

.part-time-detail-summary-row{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	color: #111827;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
}

.part-time-detail-summary-row strong{
	flex: 0 0 auto;
	color: #6b7280;
	font-size: 13px;
	font-weight: 600;
}

.part-time-detail-summary-row span{
	text-align: right;
}

.part-time-detail-pay{
	color: #ef4444;
	font-weight: 600;
}

.part-time-detail-section{
	margin-top: 26px;
}

.part-time-detail-section:last-of-type{
	margin-bottom: var(--rj-detail-card-gap-y);
}

.part-time-detail-section h3{
	margin: 0 0 12px;
	color: #111827;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.25;
}

.part-time-detail-list{
	display: grid;
	gap: 0;
	border-top: 1px solid #eef2f7;
}

.part-time-detail-row{
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	gap: 18px;
	padding: 12px 0;
	border-bottom: 1px solid #eef2f7;
	color: #111827;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
}

.part-time-detail-row dt{
	color: #6b7280;
	font-weight: 600;
}

.part-time-detail-row dd{
	margin: 0;
	word-break: break-word;
}

.part-time-detail-description{
	white-space: pre-wrap;
	word-break: break-word;
	padding: 18px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	background: #ffffff;
	color: #111827;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.65;
}

.part-time-detail-description strong{
	font-weight: 700;
}

.part-time-detail-copy{
	margin: 0 var(--rj-detail-card-margin-x);
	padding: 0;
	color: #9ca3af;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.5;
	text-align: center;
}

.part-time-detail-apply-action{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 16px;
}

.part-time-detail-apply-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 126px;
	height: 38px;
	padding: 0 20px;
	border: 0;
	border-radius: 999px;
	background: #2563eb;
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	text-decoration: none;
}

.part-time-detail-apply-btn:hover,
.part-time-detail-apply-btn:focus-visible{
	outline: none;
	background: #2563eb;
	color: #ffffff;
}

@media (max-width: 640px)
{
	.part-time-detail-panel{
		width: 100vw;
	}

	.part-time-detail-topbar{
		flex-basis: var(--rj-panel-header-height, 56px);
		min-height: var(--rj-panel-header-height, 56px);
		padding: 0 18px;
	}

	.part-time-detail-scroll{
		padding: 22px 18px 28px;
	}
}

.part-time-register-page{
	position: fixed;
	inset: var(--global-topbar-height, 64px) 0 0 0;
	z-index: 119;
	display: none;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior-y: contain;
	background: #f4f7fb;
	color: #111827;
	font-family: var(--font-ui);
	padding: 13px 0 114px;
	box-sizing: border-box;
}

body.part-time-register-page-open .part-time-register-page{
	display: block;
}

body.part-time-register-page-open{
	overflow: hidden;
	overscroll-behavior: none;
}

.part-time-register-inner{
	width: min(960px, calc(100vw - 48px));
	margin: 0 auto;
}

.part-time-register-head{
	margin-bottom: 13px;
}

.part-time-register-card{
	min-height: 0;
	margin-bottom: 14px;
}

.part-time-register-card:last-child{
	margin-bottom: 0;
}

.part-time-register-dropdown.property-select-wrap::after{
	display: none;
}

.part-time-register-dropdown .property-register-dropdown-menu{
	width: 100%;
	min-width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.part-time-image-upload-box{
	min-height: 132px;
	aspect-ratio: 2 / 1;
}

.part-time-image-upload-box.has-photo-preview{
	align-items: center;
	justify-content: center;
}

.part-time-image-preview{
	grid-template-columns: minmax(0, 100%);
	justify-content: center;
	width: 100%;
	height: 100%;
	margin-top: 0;
}

.part-time-image-preview-item{
	aspect-ratio: 2 / 1;
	width: 100%;
	height: 100%;
	cursor: default;
}

.part-time-image-preview-item img{
	object-fit: contain !important;
}

.part-time-image-actions{
	display: flex;
	align-items: center;
	gap: 8px;
}

.part-time-image-select-btn,
.part-time-image-remove-btn{
	margin-top: 10px;
}

.part-time-image-help{
	margin: 8px 0 0;
	color: #9ca3af;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.35;
}

.part-time-address-wrap .property-register-input{
	cursor: pointer;
}

.part-time-address-detail-row[hidden]{
	display: none !important;
}

.part-time-address-detail-display{
	display: flex;
	align-items: center;
	min-height: 54px;
	padding: 0 20px;
	box-sizing: border-box;
	border: 1px solid #d8e0ea;
	background: #ffffff;
	color: #111827;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.35;
}

.part-time-pay-control{
	display: grid;
	grid-template-columns: 150px 220px auto;
	gap: 12px;
	align-items: center;
	justify-content: start;
}

.part-time-pay-control .property-money-input-wrap .property-register-input{
	padding-right: 58px;
}

.part-time-pay-amount-wrap{
	width: 220px;
}

.part-time-pay-control .property-money-input-wrap .property-unit-label{
	left: auto;
	right: 18px;
}

.part-time-pay-control .property-money-input-wrap.is-disabled .property-register-input{
	background: #f3f6fa;
	color: #94a3b8;
}

.part-time-pay-consult-label{
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 54px;
	color: #111827;
	font-size: 15px;
	font-weight: 600;
	white-space: nowrap;
	cursor: pointer;
	user-select: none;
}

.part-time-pay-consult-label input{
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: #2563eb;
	cursor: pointer;
}

.part-time-time-control{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
}

.part-time-time-separator{
	color: #6b7280;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.part-time-register-textarea-row{
	align-items: start;
}

.part-time-register-textarea{
	display: block;
	min-height: 164px;
	height: 164px;
	padding-top: 14px;
	padding-bottom: 14px;
	line-height: 1.55;
	resize: vertical;
}

.part-time-register-bottom-bar{
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9996;
	display: none;
	justify-content: center;
	background: rgba(255,255,255,0.96);
	border-top: 1px solid #e5e7eb;
	padding: 18px 0;
	box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.05);
}

.part-time-register-bottom-bar .property-register-bottom-inner{
	width: min(960px, calc(100vw - 48px));
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	justify-content: space-between;
}

.part-time-register-bottom-bar .property-register-legal-notice{
	flex: 1 1 auto;
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	text-align: left;
}

.part-time-register-bottom-bar .property-register-legal-copy{
	margin: 0;
}

.part-time-register-legal-links{
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0;
}

.part-time-register-legal-links a{
	color: #64748b;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.part-time-register-legal-links a:hover,
.part-time-register-legal-links a:focus-visible{
	color: #2563eb;
	outline: none;
}

.part-time-register-bottom-bar .property-register-bottom-actions{
	margin-left: auto;
}

body.part-time-register-page-open .part-time-register-bottom-bar{
	display: flex;
}

body.part-time-register-page-open .part-time-page-panel{
	overflow: hidden;
	visibility: hidden;
	pointer-events: none;
}

@media (max-width: 1440px)
{
	.part-time-content-row{
		grid-template-columns: 240px minmax(0, 1fr);
		gap: 16px;
	}

	.part-time-card-grid{
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.part-time-ad-card{
		min-height: 360px;
	}

	.part-time-ad-visual{
		height: 152px;
		padding-top: 96px;
	}

	.part-time-ad-body{
		min-height: 208px;
		padding-left: 18px;
		padding-right: 18px;
	}
}

@media (max-width: 980px)
{
	.part-time-page-inner{
		width: min(1120px, calc(100vw - 44px));
		margin: 0 auto;
		padding-top: 24px;
	}

	.part-time-toolbar{
		grid-template-columns: 1fr;
	}

	.part-time-board-head{
		align-items: flex-start;
	}

	.part-time-content-row{
		grid-template-columns: 1fr;
	}

	.part-time-ad-card{
		min-height: 0;
	}

	.part-time-ad-slot{
		position: relative;
		top: auto;
	}

	.part-time-card-grid{
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
	}

	.part-time-register-inner,
.part-time-register-bottom-bar .property-register-bottom-inner{
		width: min(960px, calc(100vw - 48px));
	}
}

@media (max-width: 640px)
{
	.part-time-card-grid{
		grid-template-columns: 1fr;
	}

	.part-time-card{
		min-height: 0;
		padding: 22px;
	}

	.part-time-register-page{
		padding-top: 24px;
	}

	.part-time-register-inner,
.part-time-register-bottom-bar .property-register-bottom-inner{
		width: calc(100vw - 32px);
	}

	.part-time-register-bottom-bar .property-register-bottom-inner{
		padding: 0;
	}

		.part-time-pay-control,
.part-time-time-control{
			grid-template-columns: 1fr;
		}

		.part-time-pay-amount-wrap{
			width: 100%;
		}

	.part-time-time-separator{
		display: none;
	}

	.part-time-register-bottom-bar .property-register-bottom-inner{
		align-items: stretch;
		flex-direction: column;
	}

	.part-time-register-bottom-bar .property-register-bottom-actions{
		width: 100%;
	}

	.part-time-register-bottom-bar .property-register-bottom-btn{
		flex: 1 1 0;
		min-width: 0;
	}
}

/* 알바 목록은 데이터를 자르지 않고 데스크톱 기준 한 줄 4개로 고정한다. */
body.part-time-page-open .part-time-card-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 14px !important;
}

body.part-time-page-open .part-time-content-row{
	grid-template-columns: minmax(0, calc((100% - 60px) / 5)) minmax(0, 1fr) !important;
	gap: 18px !important;
}

@media (max-width: 980px)
{
	body.part-time-page-open .part-time-card-grid{
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px)
{
	body.part-time-page-open .part-time-card-grid{
		grid-template-columns: 1fr !important;
	}
}

/* PATCH 3.984: match broker/favorite land-type dropdown width to the real-estate home dropdown. */
.broker-home-map-style-menu.broker-home-land-type-menu{
	width: 410px !important;
	min-width: 410px !important;
	max-width: min(410px, calc(100vw - 48px)) !important;
}

.broker-home-map-style-menu.broker-home-land-type-menu .broker-home-type-buttons,
.broker-home-map-style-menu.broker-home-land-type-menu .type-filter-grid{
	width: 100% !important;
}

.broker-home-map-style-menu.broker-home-land-type-menu .broker-home-land-type-grid,
.broker-home-map-style-menu.broker-home-land-type-menu .type-filter-grid{
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	justify-content: stretch !important;
	justify-items: stretch !important;
}

/* PATCH 4.005: 매물등록 매물유형 드롭다운을 지도 필터처럼 버튼 그리드로 표시 */
.property-form-control.property-type-dropdown .property-register-dropdown-menu{
	width: min(724px, calc(100vw - 64px)) !important;
	max-width: none !important;
	padding: 28px 30px 30px !important;
	border: 0 !important;
	border-radius: 26px !important;
	background: rgba(255, 255, 255, 0.98) !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18) !important;
	gap: 28px !important;
}

/* PATCH 4.006: 토지 기타조건 체크박스 첫 줄을 라벨 높이에 맞춤 */


/* PATCH 4.007: 매물등록 토지종류/용도지역 드롭다운을 부동산 홈 버튼 메뉴와 같은 규격으로 표시 */
.property-form-control.property-register-land-dropdown .property-register-dropdown-menu{
	width: min(410px, calc(100vw - 64px)) !important;
	max-width: none !important;
	max-height: min(720px, calc(100vh - 120px)) !important;
	overflow-y: auto !important;
	padding: 24px 24px 28px !important;
	border: 0 !important;
	border-radius: 24px !important;
	background: rgba(255, 255, 255, 0.98) !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18) !important;
	gap: 22px !important;
}

.property-form-control.property-register-land-use-zone-dropdown .property-register-dropdown-menu{
	width: min(520px, calc(100vw - 64px)) !important;
}

.property-register-land-menu-title{
	margin: 0;
	color: #111827;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: -0.3px;
	line-height: 1.25;
}

.property-register-land-section{
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.property-register-land-section-title{
	margin: 0;
	color: #374151;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -0.2px;
	line-height: 1.25;
}

.property-register-land-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}



.property-register-land-tile{
	width: auto !important;
	height: 42px;
	min-height: 42px;
	padding: 0 10px;
	border: 0;
	border-radius: 8px;
	background: #f3f4f6;
	color: #737982;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: -0.2px;
	justify-content: center;
	text-align: center;
}

.property-register-land-tile:hover,
.property-register-land-tile.active{
	background: #e9edf2;
	color: #111827;
}

/* PATCH 4.012: 매물등록 버튼식 드롭다운을 부동산 홈 410px 기준으로 통일 */
.property-form-control.property-type-dropdown .property-register-dropdown-menu,
.property-form-control.property-register-land-dropdown .property-register-dropdown-menu,
.property-form-control.property-register-land-use-zone-dropdown .property-register-dropdown-menu{
	box-sizing: border-box !important;
	width: 410px !important;
	min-width: 410px !important;
	max-width: min(410px, calc(100vw - 48px)) !important;
	padding: 22px 22px 24px !important;
	border: 0 !important;
	border-radius: 20px !important;
	background: rgba(255, 255, 255, 0.98) !important;
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.14) !important;
	gap: 18px !important;
}

.property-register-type-section{
	gap: 12px !important;
}

.property-register-type-section-title,
.property-register-land-menu-title{
	font-size: 20px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: 1.25 !important;
}

.property-register-land-section-title{
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: 1.25 !important;
}

.property-register-type-grid,
.property-register-land-grid{
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px !important;
	width: 100% !important;
}

.property-register-land-use-zone-grid{
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.property-register-type-tile,
.property-register-land-tile{
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 8px !important;
	border-radius: 8px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	white-space: nowrap !important;
	word-break: keep-all !important;
}

.property-register-land-use-zone-grid .property-register-land-tile{
	font-size: 14px !important;
	padding-left: 4px !important;
	padding-right: 4px !important;
}

/* PATCH 4.013: 토지 기타조건 행을 거래유형 행과 같은 수평선/공용 여백 기준으로 정렬 */
.property-land-extra-row{
	align-items: flex-start !important;
	margin-top: 0 !important;
	margin-bottom: 28px !important;
}

.property-land-extra-row > .property-form-label{
	padding-top: 0 !important;
	min-height: var(--property-register-field-height) !important;
	align-items: center !important;
}

.property-land-extra-row .property-form-control{
	min-height: var(--property-register-field-height) !important;
	gap: 8px !important;
	justify-content: flex-start !important;
}

.property-land-extra-row .property-land-extra-checks{
	margin-top: 0 !important;
	min-height: var(--property-register-field-height) !important;
	align-items: center !important;
}



/* PATCH 4.022 FINAL: 라벨을 따로 밀지 않고 체크박스 첫 줄과 같은 행 중앙선에 맞춤 */




/* PATCH 4.025: 매물등록 지목/용도지역 선택 타일을 매물유형 선택 타일과 같은 흰 바탕+외곽선으로 통일 */
.property-register-land-tile{
	box-sizing: border-box !important;
	border: 1px solid transparent !important;
}

.property-register-land-tile.active{
	background: #ffffff !important;
	color: #111827 !important;
	border-color: #111827 !important;
	box-shadow: none !important;
	font-weight: 700 !important;
}

/* PATCH 4.022: 설명문이 있는 체크박스 행도 중개유형처럼 첫 줄 높이 기준으로 중앙 정렬 */




/* PATCH 4.016: 설명문이 있는 체크박스 행의 왼쪽 라벨을 시각 기준선에 맞춰 소폭 올림 */


/* PATCH 4.017: 매물등록 드롭다운 버튼 글자 웨이트를 부동산 홈 기본/선택 기준과 일치 */
.property-register-type-tile,
.property-register-land-tile{
	font-weight: 600 !important;
}

.property-register-type-tile:hover,
.property-register-type-tile.active,
.property-register-land-tile:hover,
.property-register-land-tile.active{
	font-weight: 700 !important;
}

/* PATCH 4.018: 토지 기타조건 안내문 아래 여백을 카드 상단 공통 padding과 동일하게 맞춤 */


@media (max-width: 720px)
{
	
}

/* PATCH 4.021: 매물등록 드롭다운 버튼 높이를 부동산 홈 타일 기준과 동일하게 맞춤 */
.property-register-type-tile,
.property-register-land-tile{
	height: 36px !important;
	min-height: 36px !important;
	border-radius: 6px !important;
}

/* PATCH 4.014: 매물등록 매물유형 섹션 라벨 크기를 부동산 홈 드롭다운 기준과 일치 */
.property-form-control.property-type-dropdown .property-register-type-section-title{
	font-size: 18px !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
	line-height: 1.2 !important;
}

.property-form-control.property-type-dropdown .property-register-type-section:nth-of-type(2) .property-register-type-section-title{
	font-size: 15px !important;
}

/* PATCH 4.015: 토지 기타조건 안내문 아래 여백을 위쪽 8px 기준과 맞춤 */


/* PATCH 4.019 FINAL: 4.015의 8px override보다 뒤에서 토지 기본정보 하단을 상단 공통 padding과 일치 */
body[data-property-type="land"] .property-register-card:has(.property-land-extra-row){
	padding-bottom: 34px !important;
}

@media (max-width: 720px)
{
	body[data-property-type="land"] .property-register-card:has(.property-land-extra-row){
		padding-bottom: 26px !important;
	}
}

.property-land-extra-row{
	margin-bottom: 0 !important;
}

.property-land-extra-row .property-land-extra-guide{
	margin: 8px 0 0 !important;
}

/* PATCH 4.022 LAST: 기존 라벨 보정을 덮고 중개유형처럼 첫 줄 중앙선에 맞춤 */
.property-land-extra-row > .property-form-label,
.property-price-card > .property-form-row > .property-form-label{
	transform: none !important;
	min-height: var(--property-register-field-height) !important;
	display: inline-flex !important;
	align-items: center !important;
}

.property-land-extra-row .property-land-extra-checks,
.property-price-card .property-deal-checks{
	min-height: var(--property-register-field-height) !important;
	align-items: center !important;
}

/* PATCH 4.027 LAST: hover는 회색 강조, 선택 완료는 흰 바탕+외곽선으로 최종 고정 */
.property-register-type-tile:hover:not(.active),
.property-register-land-tile:hover:not(.active){
	background: #eef0f3 !important;
	color: #202124 !important;
	border-color: transparent !important;
	box-shadow: none !important;
}

.property-register-type-tile.active,
.property-register-type-tile.active:hover,
.property-register-land-tile.active,
.property-register-land-tile.active:hover{
	background: #ffffff !important;
	color: #111827 !important;
	border-color: #111827 !important;
	box-shadow: none !important;
}

/* PATCH 4.057: 중개사 홈 목록도 관심부동산/관리자 매물관리처럼 앞쪽 컬럼 폭을 줄이지 않는다. */
body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList{
	--broker-list-front-gap: 33px;
	--broker-list-photo-size: 72px;
	--broker-list-photo-col: 72px;
	--broker-list-type-col: 76px;
	--broker-list-status-col: 52px;
	--broker-list-date-col: 56px;
	--broker-list-no-col: 132px;
	--broker-list-title-min: 300px;
	overflow-x: visible;
}

body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList .broker-listing-head > div:nth-child(6){
	white-space: nowrap;
	word-break: keep-all;
}

/* PATCH 4.069: 같은 브라우저의 조회수 중복 증가 방지 시간을 3초로 조정한다. */
body.realjeju-side-nav-enabled.admin-page-open{
	--realjeju-management-tab-title-offset: 0px;
}

body.realjeju-side-nav-enabled.operator-page-open,
body.realjeju-side-nav-enabled.my-suite-page-open{
	--realjeju-management-tab-title-offset: 101px;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-admin-tabs,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-operator-tabs,
body.realjeju-side-nav-enabled.my-suite-page-open .global-topbar-my-suite-tabs{
	left: calc(var(--realjeju-topbar-page-title-left) + var(--realjeju-management-tab-title-offset, 101px)) !important;
	right: var(--realjeju-management-page-gap, 28px) !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: calc(100vw - var(--realjeju-topbar-page-title-left) - 129px) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: nowrap !important;
	gap: 6px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	scrollbar-width: none !important;
	transform: translateY(-50%) !important;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-admin-tabs::-webkit-scrollbar,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-operator-tabs::-webkit-scrollbar,
body.realjeju-side-nav-enabled.my-suite-page-open .global-topbar-my-suite-tabs::-webkit-scrollbar{
	display: none !important;
	width: 0 !important;
	height: 0 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .global-topbar-admin-tabs .admin-page-tab,
body.realjeju-side-nav-enabled.operator-page-open .global-topbar-operator-tabs .admin-page-tab,
body.realjeju-side-nav-enabled.my-suite-page-open .global-topbar-my-suite-tabs .my-suite-tab{
	flex: 0 0 auto !important;
	white-space: nowrap !important;
}

/* PATCH 4.137: 프로필 오른쪽에 알림/메일/전체메뉴 아이콘을 배치하고 고객센터는 전체메뉴로 이동한다. */
.global-topbar-right{
	overflow: visible !important;
}

.global-topbar-icon-btn{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	min-width: 34px;
	min-height: 34px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #202124;
	box-shadow: none;
	cursor: pointer;
	line-height: 1;
	transition: background-color .14s ease, color .14s ease;
}

.global-topbar-icon-btn i{
	display: block;
	font-size: 21px;
	line-height: 1;
	color: inherit;
}

.global-topbar-more-btn i{
	font-size: 22px;
}

.global-topbar-more-btn i{
	display: none;
}

.topbar-nine-dot-grid{
	display: grid;
	grid-template-columns: repeat(3, 4px);
	grid-template-rows: repeat(3, 4px);
	gap: 3px;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	aspect-ratio: 1 / 1;
}

.topbar-nine-dot-grid span{
	display: block;
	width: 4px;
	height: 4px;
	border-radius: 0;
	background: currentColor;
}

.global-topbar-icon-btn:hover,
.global-topbar-icon-btn:focus-visible,
.global-topbar-icon-btn[aria-expanded="true"]{
	background: #f3f4f6;
	color: #111827;
	outline: none;
}

.global-topbar-more-menu{
	position: absolute;
	right: 0;
	top: calc(100% + 12px);
	z-index: 2147483100;
	display: none;
	width: 218px;
	padding: 8px;
	border: 1px solid rgba(226, 232, 240, 0.9);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.16);
	box-sizing: border-box;
}

.global-topbar-more-menu.open{
	display: block;
}

.global-more-menu-item{
	appearance: none;
	display: flex;
	align-items: center;
	width: 100%;
	height: 36px;
	padding: 0 12px;
	border: 0;
	border-radius: 9px;
	background: transparent;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
	text-align: left;
	cursor: pointer;
	white-space: nowrap;
}

.global-more-menu-item:hover,
.global-more-menu-item:focus-visible{
	background: #f3f4f6;
	color: #111827;
	outline: none;
}

.global-more-menu-divider{
	height: 1px;
	margin: 6px 4px;
	background: #edf1f5;
}

/* PATCH 4.133: 상단 네비 활성색은 리얼제주 파랑으로 고정하고, 네이버 지도처럼 버튼 간격을 촘촘하게 맞춘다. */
:root{
	--topbar-text-hover-color: #2563eb;
	--nav-active-color: #2563eb;
	--topbar-menu-gap: 30px;
}

.global-topbar .topbar-menu-item.active,
.global-topbar .topbar-menu-item.active:hover,
body.my-suite-page-open .global-topbar .topbar-menu-item.active,
body.my-suite-page-open .global-topbar .topbar-menu-item.active:hover{
	color: #2563eb !important;
}

.global-category-menu{
	gap: 16px !important;
	left: 50vw !important;
	transform: translateX(-50%) !important;
	width: max-content !important;
	min-width: max-content !important;
	max-width: none !important;
	overflow: visible !important;
}

.global-category-item{
	gap: 6px !important;
	padding: 0 5px !important;
	letter-spacing: 0 !important;
	font-size: 14px !important;
}

.global-category-item.is-active[data-global-category="realestate"] i{
	color: #2563eb !important;
}

@media (max-width: 1280px)
{
	.global-category-menu{
		gap: 16px !important;
	}

	.global-category-item{
		gap: 6px !important;
		padding: 0 5px !important;
		font-size: 14px !important;
	}
}

.global-category-top-filters{
	gap: 6px !important;
}

.global-topbar-menu.has-map-filters .map-filter-scroll-track .map-filter-bar{
	gap: 6px !important;
	column-gap: 6px !important;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown,
.global-topbar-menu.has-map-filters .type-filter-dropdown,
.global-topbar-menu.has-map-filters .deal-filter-dropdown,
.global-topbar-menu.has-map-filters .deal-method-filter-dropdown,
.global-topbar-menu.has-map-filters .price-filter-dropdown,
.global-topbar-menu.has-map-filters .area-filter-dropdown,
.global-topbar-menu.has-map-filters .room-bath-filter-dropdown,
.global-topbar-menu.has-map-filters .floor-direction-filter-dropdown,
.global-topbar-menu.has-map-filters .approval-year-filter-dropdown,
.global-topbar-menu.has-map-filters .extra-condition-filter-dropdown,
.global-topbar-menu.has-map-filters .land-type-filter-dropdown,
.global-topbar-menu.has-map-filters .land-use-zone-filter-dropdown{
	margin-right: 0 !important;
}

body.realjeju-filters-in-topbar .global-topbar-menu.has-map-filters .map-filter-scroll-track .map-filter-bar > *{
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* PATCH 4.144: 전체메뉴 9점은 더 작게, hover 배경 없이, 팝업은 지도 버튼보다 위에 표시한다. */
.global-topbar,
.global-topbar-inner,
.global-topbar-right{
	overflow: visible !important;
	z-index: 2147483640 !important;
}

.global-topbar-more-menu{
	position: fixed !important;
	top: calc(var(--global-topbar-height, 56px) + 8px) !important;
	right: var(--map-side-tools-right, 16px) !important;
	z-index: 2147483647 !important;
}

.global-topbar-icon-btn:hover,
.global-topbar-icon-btn:focus-visible,
.global-topbar-icon-btn[aria-expanded="true"]{
	background: transparent !important;
	box-shadow: none !important;
}

.topbar-nine-dot-grid{
	grid-template-columns: repeat(3, 4px) !important;
	grid-template-rows: repeat(3, 4px) !important;
	gap: 2px !important;
	width: 16px !important;
	height: 16px !important;
}

.topbar-nine-dot-grid span{
	width: 4px !important;
	height: 4px !important;
	border-radius: 0 !important;
}

/* PATCH 4.174: Broker home topbar search always uses listing search, never presale search. */
body.broker-home-page-open:not(.admin-page-open) #adminListingTopbarSearch{
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

body.broker-home-page-open:not(.admin-page-open) #adminListingTopbarSearchInput::placeholder{
  color: inherit;
}

body.broker-home-page-open:not(.admin-page-open) #presaleTopbarSearch,
body.broker-home-page-open:not(.admin-page-open) #mySuiteFavoritesTopbarSearch,
body.broker-home-page-open:not(.admin-page-open) #subAddressSearch{
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* PATCH 4.174: Match global category filter button spacing to real-estate home filterbar. */
#topbarMenu.global-topbar-menu.has-map-filters,
#topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-shell,
#topbarMenu.global-topbar-menu.has-map-filters .map-filter-scroll-track,
#topbarMenu.global-topbar-menu.has-map-filters .map-filter-bar,
#topbarMenu.global-topbar-menu.has-map-filters .map-filter-bar.global-category-filter-mode,
#topbarMenu.global-topbar-menu.has-map-filters .global-category-top-filters{
  gap: 6px !important;
  column-gap: 6px !important;
}

#topbarMenu.global-topbar-menu.has-map-filters .map-filter-bar > *,
#topbarMenu.global-topbar-menu.has-map-filters .global-category-top-filters > *{
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* PATCH 4.279: workspace detail roadview stays above the global topbar without a right shadow. */

body.roadview-detail-left-open.admin-page-open .roadview-overlay.detail-left-roadview,
body.roadview-detail-left-open.admin-page-open .roadview-overlay.detail-left-roadview.open,
body.roadview-detail-left-open.broker-home-page-open .roadview-overlay.detail-left-roadview,
body.roadview-detail-left-open.broker-home-page-open .roadview-overlay.detail-left-roadview.open,
body.roadview-detail-left-open.my-suite-page-open .roadview-overlay.detail-left-roadview,
body.roadview-detail-left-open.my-suite-page-open .roadview-overlay.detail-left-roadview.open{
  position: fixed !important;
  top: 0 !important;
  right: var(--rj-detail-panel-width, 420px) !important;
  bottom: 0 !important;
  left: 0 !important;
  width: auto !important;
  max-width: none !important;
  box-shadow: none !important;
  filter: none !important;
  z-index: 2147483647 !important;
  pointer-events: auto !important;
}

body.roadview-detail-left-open.admin-page-open .roadview-overlay.detail-left-roadview::after,
body.roadview-detail-left-open.broker-home-page-open .roadview-overlay.detail-left-roadview::after,
body.roadview-detail-left-open.my-suite-page-open .roadview-overlay.detail-left-roadview::after{
  display: none !important;
  content: none !important;
  background: transparent !important;
  opacity: 0 !important;
}

body.roadview-detail-left-open.admin-page-open .roadview-overlay.detail-left-roadview .roadview-close-btn,
body.roadview-detail-left-open.admin-page-open .roadview-overlay.detail-left-roadview .roadview-fullscreen-btn,
body.roadview-detail-left-open.broker-home-page-open .roadview-overlay.detail-left-roadview .roadview-close-btn,
body.roadview-detail-left-open.broker-home-page-open .roadview-overlay.detail-left-roadview .roadview-fullscreen-btn,
body.roadview-detail-left-open.my-suite-page-open .roadview-overlay.detail-left-roadview .roadview-close-btn,
body.roadview-detail-left-open.my-suite-page-open .roadview-overlay.detail-left-roadview .roadview-fullscreen-btn{
  z-index: 2147483647 !important;
  pointer-events: auto !important;
}


/* PATCH 4.377: REALJEJU 첫 화면 메인 랜딩 */
body.main-landing-page-open{
	background: #f5f8fb;
	overflow: auto;
	overflow-x: hidden;
}

body.main-landing-page-open .realjeju-side-nav,
body.main-landing-page-open .sub-topbar,
body.main-landing-page-open .sidebar,
body.main-landing-page-open .map-wrap,
body.main-landing-page-open .part-time-page-panel,
body.main-landing-page-open .global-category-side-panel,
body.main-landing-page-open .global-topbar-menu{
	display: none !important;
}

body.main-landing-page-open #globalCategoryMenu .global-category-item.is-active{
	color: inherit;
	background: transparent;
	box-shadow: none;
}

body.main-landing-page-open #topbarMenu,
body.main-landing-page-open #topbarMenu.global-topbar-menu,
body.main-landing-page-open #topbarMenu .extra-filter-dropdown,
body.main-landing-page-open #topbarMenu .topbar-menu-item{
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.main-landing-page{
	display: none;
	position: fixed;
	inset: var(--global-topbar-height, 65px) 0 0 0;
	z-index: 120;
	overflow: auto;
	overflow-x: hidden;
	background: linear-gradient(180deg, rgba(248, 251, 255, 0.96) 0%, rgba(243, 247, 251, 1) 100%);
}

body.main-landing-page-open .main-landing-page{
	display: block;
}

.main-landing-inner{
	width: min(1180px, calc(100vw - 64px));
	margin: 0 auto;
	padding: 54px 0 48px;
}

.main-landing-hero{
	display: grid;
	grid-template-columns: minmax(0, 1fr) 440px;
	gap: 56px;
	align-items: center;
	min-height: 430px;
}

.main-landing-copy{
	min-width: 0;
}

.main-landing-kicker{
	margin: 0 0 14px;
	color: #2563eb;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0;
}

.main-landing-title{
	margin: 0;
	color: #101827;
	font-size: 40px;
	line-height: 1.18;
	font-weight: 700;
	letter-spacing: 0;
}

.main-landing-desc{
	margin: 18px 0 0;
	color: #5c6675;
	font-size: 18px;
	line-height: 1.55;
	font-weight: 500;
	letter-spacing: 0;
}

.main-landing-search{
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr) 88px;
	align-items: center;
	gap: 12px;
	width: min(620px, 100%);
	height: 66px;
	margin-top: 34px;
	padding: 0 8px 0 22px;
	border: 1px solid #dfe7f1;
	border-radius: 16px;
	background: #ffffff;
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.08);
}



.main-landing-search input{
	width: 100%;
	min-width: 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: #111827;
	font-size: 19px;
	font-weight: 600;
	letter-spacing: 0;
}

.main-landing-search input::placeholder{
	color: #9aa4b2;
	font-weight: 600;
}

.main-landing-search button,
.main-landing-primary,
.main-landing-secondary{
	height: 48px;
	border-radius: 14px;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	cursor: pointer;
	white-space: nowrap;
}

.main-landing-search button,
.main-landing-primary{
	border: 1px solid #2563eb;
	background: #2563eb;
	color: #ffffff;
}



.main-landing-actions{
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 18px;
}

.main-landing-actions button{
	min-width: 132px;
	padding: 0 18px;
}

.main-landing-visual{
	min-width: 0;
}

.main-landing-map-card{
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border: 1px solid #d9e4f1;
	border-radius: 16px;
	background:
		radial-gradient(circle at 72% 18%, rgba(255, 255, 255, 0.92) 0 10%, transparent 28%),
		linear-gradient(135deg, rgba(255,255,255,0.98), rgba(244,249,253,0.98)),
		repeating-linear-gradient(24deg, transparent 0 35px, rgba(203, 213, 225, 0.26) 36px, transparent 38px),
		repeating-linear-gradient(112deg, transparent 0 50px, rgba(203, 213, 225, 0.24) 51px, transparent 53px);
	box-shadow: 0 26px 56px rgba(15, 23, 42, 0.14);
}

.main-landing-map-card::before{
	content: "";
	position: absolute;
	left: -17%;
	bottom: -12%;
	width: 66%;
	height: 76%;
	border: 24px solid rgba(82, 174, 205, 0.28);
	border-top-color: transparent;
	border-right-color: transparent;
	border-radius: 46% 54% 42% 58%;
	transform: rotate(-18deg);
}

.main-landing-map-card::after{
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(255,255,255,0.56), transparent 28%, transparent 72%, rgba(255,255,255,0.48)),
		linear-gradient(180deg, rgba(255,255,255,0.38), transparent 36%, rgba(255,255,255,0.42));
	pointer-events: none;
}

.main-landing-map-toolbar{
	position: absolute;
	z-index: 5;
	top: 18px;
	left: 18px;
	right: 18px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.main-landing-map-toolbar span{
	display: inline-flex;
	align-items: center;
	gap: 7px;
	height: 38px;
	padding: 0 15px;
	border: 1px solid rgba(203, 213, 225, 0.78);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.88);
	color: #111827;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.10);
	backdrop-filter: blur(8px);
}

.main-landing-map-toolbar i{
	color: #5b7bea;
	font-size: 14px;
}

.main-landing-map-water{
	position: absolute;
	z-index: 1;
	right: -22%;
	top: 17%;
	width: 62%;
	height: 70%;
	border-left: 26px solid rgba(103, 196, 224, 0.26);
	border-radius: 52% 0 0 48%;
	transform: rotate(11deg);
}

.main-landing-map-road{
	position: absolute;
	z-index: 2;
	display: block;
	height: 12px;
	border-radius: 999px;
	background: rgba(245, 211, 86, 0.72);
	box-shadow:
		inset 0 0 0 1px rgba(214, 180, 64, 0.26),
		0 0 0 4px rgba(255, 255, 255, 0.54);
}

.main-landing-map-road.road-a{
	width: 78%;
	left: 12%;
	top: 34%;
	transform: rotate(23deg);
}

.main-landing-map-road.road-b{
	width: 64%;
	right: -8%;
	top: 66%;
	transform: rotate(-32deg);
}

.main-landing-map-road.road-c{
	width: 52%;
	left: -8%;
	top: 58%;
	transform: rotate(4deg);
}

.main-landing-map-road.road-d{
	width: 46%;
	right: 8%;
	top: 43%;
	transform: rotate(87deg);
	opacity: 0.62;
}

.main-landing-map-pin{
	position: absolute;
	z-index: 4;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	border: 4px solid rgba(255, 255, 255, 0.86);
	background: rgba(29, 78, 216, 0.74);
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	text-shadow: 0 1px 2px rgba(0,0,0,0.22);
	box-shadow: 0 10px 22px rgba(29, 78, 216, 0.24);
}

.main-landing-map-pin.pin-a{
	left: 52%;
	top: 25%;
}

.main-landing-map-pin.pin-b{
	left: 24%;
	top: 53%;
}

.main-landing-map-pin.pin-c{
	right: 18%;
	bottom: 29%;
}

.main-landing-map-label{
	position: absolute;
	z-index: 3;
	color: #3b4655;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0;
	text-shadow: 0 1px 0 rgba(255,255,255,0.88);
}

.main-landing-map-label.label-a{
	left: 34%;
	top: 19%;
}

.main-landing-map-label.label-b{
	left: 15%;
	bottom: 25%;
}

.main-landing-map-label.label-c{
	right: 16%;
	top: 52%;
}

.main-landing-map-dot{
	position: absolute;
	z-index: 3;
	width: 24px;
	height: 24px;
	border: 3px solid rgba(255, 255, 255, 0.90);
	border-radius: 50%;
	background: #f97316;
	box-shadow: 0 8px 16px rgba(15, 23, 42, 0.16);
}

.main-landing-map-dot.dot-a{
	left: 21%;
	top: 31%;
}

.main-landing-map-dot.dot-b{
	right: 27%;
	top: 35%;
	background: #10b981;
}

.main-landing-map-dot.dot-c{
	left: 43%;
	bottom: 18%;
	background: #64748b;
}

.main-landing-map-dot.dot-d{
	right: 13%;
	bottom: 33%;
	background: #f59e0b;
}

.main-landing-map-listing{
	position: absolute;
	z-index: 5;
	left: 24px;
	right: 24px;
	bottom: 24px;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 6px 10px;
	padding: 16px 18px;
	border: 1px solid rgba(218, 226, 235, 0.86);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 18px 34px rgba(15, 23, 42, 0.14);
	backdrop-filter: blur(10px);
}

.main-landing-map-listing-badge{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 26px;
	padding: 0 10px;
	border-radius: 999px;
	background: #eef4ff;
	color: #2563eb;
	font-size: 13px;
	font-weight: 700;
}

.main-landing-map-listing strong{
	min-width: 0;
	color: #111827;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.main-landing-map-listing > span:last-child{
	grid-column: 2;
	color: #ef4444;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0;
}

.main-landing-map-zoom{
	position: absolute;
	z-index: 5;
	right: 18px;
	top: 72px;
	display: grid;
	overflow: hidden;
	width: 38px;
	border: 1px solid rgba(203, 213, 225, 0.78);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.90);
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.10);
}

.main-landing-map-zoom span{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 36px;
	color: #111827;
	font-size: 20px;
	font-weight: 700;
}

.main-landing-map-zoom span + span{
	border-top: 1px solid #e5edf6;
}





.main-landing-simple-card{
	position: relative;
	display: grid;
	align-content: start;
	min-height: 118px;
	padding: 20px 22px;
	overflow: hidden;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	background: #ffffff;
	text-align: left;
	cursor: pointer;
}





.main-landing-simple-title{
	color: #111827;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.main-landing-simple-desc{
	margin-top: 10px;
	color: #8a94a3;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: 0;
}

.main-landing-simple-card i{
	position: absolute;
	right: 20px;
	bottom: 20px;
	color: #2563eb;
	font-size: 30px;
	opacity: 0.72;
}

.main-landing-simple-banner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 150px;
	padding: 26px 28px;
	border: 1px solid #2563eb;
	border-radius: 16px;
	background: #2563eb;
	color: #ffffff;
	text-align: left;
	cursor: pointer;
}

.main-landing-simple-banner span{
	display: grid;
	gap: 10px;
	min-width: 0;
}

.main-landing-simple-banner strong{
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.main-landing-simple-banner em{
	color: rgba(255, 255, 255, 0.84);
	font-size: 15px;
	font-style: normal;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: 0;
}

.main-landing-simple-banner i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.16);
	font-size: 17px;
}

.main-landing-ad-inquiry{
	display: grid;
	justify-items: center;
	gap: 28px;
	margin-top: 28px;
	padding: 58px 36px 52px;
	border-radius: 16px;
	background: #0f3b66;
	color: #ffffff;
	text-align: center;
}

.main-landing-ad-inquiry h2{
	margin: 0;
	color: #ffffff;
	font-size: 44px;
	font-weight: 800;
	line-height: 1.36;
	letter-spacing: 0;
}

.main-landing-ad-inquiry a{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: min(560px, 100%);
	min-height: 64px;
	padding: 0 28px;
	border-radius: 16px;
	background: #ff6a00;
	color: #ffffff;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0;
	text-decoration: none;
}

.main-landing-ad-inquiry p{
	margin: -10px 0 0;
	color: rgba(255, 255, 255, 0.92);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0;
}

.main-landing-category-row{
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 12px;
	margin-top: 22px;
}

.main-landing-category{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 56px;
	border: 1px solid #dfe7f1;
	border-radius: 16px;
	background: #ffffff;
	color: #687281;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0;
	cursor: pointer;
}

.main-landing-category.is-active,
.main-landing-category:hover{
	color: #2563eb;
	border-color: #bcd0ff;
	background: #f8fbff;
}

.main-landing-preview-row{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin-top: 24px;
}

.main-landing-preview{
	display: grid;
	gap: 8px;
	min-height: 108px;
	padding: 20px 22px;
	border: 1px solid #dfe7f1;
	border-radius: 16px;
	background: #ffffff;
	text-align: left;
	cursor: pointer;
}

.main-landing-preview span{
	color: #2563eb;
	font-size: 14px;
	font-weight: 700;
}

.main-landing-preview strong{
	color: #111827;
	font-size: 18px;
	line-height: 1.36;
	font-weight: 700;
	letter-spacing: 0;
}

.main-landing-footer{
	--realjeju-footer-top-gap: 45px;
	--realjeju-footer-bottom-gap: 45px;
	margin-top: 38px;
	padding: 24px 0 0;
	color: #7b8491;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0;
}

.main-landing-footer-line{
	width: 100%;
	height: 1px;
	margin-bottom: 22px;
	background: #dfe7f1;
}

.main-landing-footer-name{
	margin-bottom: 8px;
	color: #4b5563;
	font-size: 13px;
	font-weight: 700;
}

.main-landing-footer-info{
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	margin-top: 2px;
}

.main-landing-footer-links{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 8px;
	margin-top: 12px;
	color: #8a93a0;
}

.main-landing-footer-link{
	padding: 0;
	border: 0;
	background: transparent;
	color: #687281;
	font: inherit;
	font-weight: 600;
	letter-spacing: 0;
	cursor: pointer;
}

.main-landing-footer-copy{
	margin-top: 12px;
	color: #9aa3af;
	font-size: 12px;
	font-weight: 600;
}

@media (max-width: 1024px)
{
	.main-landing-inner{
		width: min(760px, calc(100vw - 40px));
		padding-top: 36px;
	}

	.main-landing-hero{
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.main-landing-visual{
		max-width: 420px;
	}

	.main-landing-category-row{
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.main-landing-simple-section{
		grid-template-columns: 1fr;
	}

	.main-landing-simple-grid{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.main-landing-simple-card.is-large,
.main-landing-simple-card.is-wide{
		grid-column: span 1;
	}

	.main-landing-preview-row{
		grid-template-columns: 1fr;
	}

	.main-landing-footer-info{
		display: grid;
		gap: 2px;
	}
}

@media (max-width: 640px)
{
	.main-landing-inner{
		width: min(100% - 28px, 520px);
		padding: 28px 0 36px;
	}

	.main-landing-title{
		font-size: 30px;
	}

	.main-landing-desc{
		font-size: 16px;
	}

	.main-landing-search{
		grid-template-columns: 24px minmax(0, 1fr);
		height: auto;
		min-height: 60px;
		padding: 0 18px;
	}

	.main-landing-search button{
		grid-column: 1 / -1;
		width: 100%;
		margin-bottom: 10px;
	}

	.main-landing-actions{
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	.main-landing-category-row{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.main-landing-simple-grid{
		grid-template-columns: 1fr;
	}

	.main-landing-simple-card,
.main-landing-simple-card.is-large,
.main-landing-simple-card.is-wide,
.main-landing-simple-banner{
		min-height: 124px;
	}

	.main-landing-ad-inquiry{
		gap: 22px;
		padding: 42px 20px 38px;
	}

	.main-landing-ad-inquiry h2{
		font-size: 28px;
	}

	.main-landing-ad-inquiry a{
		min-height: 56px;
		font-size: 18px;
	}

	.main-landing-ad-inquiry p{
		margin-top: -8px;
		font-size: 15px;
	}

}

/* PATCH 4.377: 메인 랜딩의 곡률을 영역별로 다르게 정리한다. */
body.main-landing-page-open,
body.main-landing-page-open .main-landing-page{
	background: #f5f5f5;
}

body.main-landing-page-open .global-topbar{
	background: #fff;
	box-shadow: none;
	border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.main-landing-inner{
	width: min(1120px, calc(100vw - 64px));
	padding: 70px 0 54px;
}

.main-landing-hero{
	display: block;
	min-height: 0;
	margin: 0 0 28px;
}

.main-landing-copy{
	display: grid;
	justify-items: center;
	max-width: none;
}

.main-landing-kicker,
.main-landing-title,
.main-landing-desc,
.main-landing-visual{
	display: none;
}

.main-landing-search{
	width: min(720px, 100%);
	height: 60px;
	margin: 0 auto;
	grid-template-columns: 28px minmax(0, 1fr);
	gap: 12px;
	padding: 0 28px;
	border: 1px solid rgba(15, 23, 42, 0.08);
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
}

.main-landing-search i{
	font-size: 23px;
	color: #111827;
}

.main-landing-search input{
	font-size: 17px;
	font-weight: 600;
	color: #111827;
}

.main-landing-search input::placeholder{
	color: #9aa3af;
}

.main-landing-search button{
	display: none;
}

.main-landing-actions{
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 18px;
}

.main-landing-actions button,
.main-landing-primary,
.main-landing-secondary{
	width: 154px;
	height: 46px;
	min-height: 46px;
	padding: 0 18px;
	border-radius: 8px;
	font-size: 15px;
	font-weight: 700;
	box-shadow: none;
}

.main-landing-primary{
	background: #111827;
	color: #fff;
}

.main-landing-secondary{
	border: 1px solid #d9e1eb;
	background: #fff;
	color: #111827;
}

.main-landing-simple-section{
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(320px, 0.78fr);
	grid-template-rows: minmax(350px, auto);
	gap: 18px;
	align-items: stretch;
	margin-top: 0;
}

.main-landing-simple-local{
	grid-column: 1 / -1;
	grid-row: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 118px;
	padding: 28px 34px;
	border: 0;
	border-radius: 18px;
	background: #2f70ff;
	color: #fff;
	box-shadow: none;
	text-align: left;
	cursor: pointer;
}

.main-landing-simple-local span{
	display: grid;
	gap: 8px;
}

.main-landing-simple-local strong{
	font-size: 23px;
	font-weight: 700;
	line-height: 1.25;
}

.main-landing-simple-local em{
	font-size: 14px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.86);
}

.main-landing-simple-local i{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.18);
	font-size: 25px;
	flex: 0 0 auto;
}

.main-landing-simple-grid{
	grid-column: 1;
	grid-row: 1;
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 18px;
}

.main-landing-simple-card{
	min-height: 172px;
	padding: 28px 30px;
	border: 1px solid rgba(15, 23, 42, 0.07);
	border-radius: 8px;
	background: #fff;
	box-shadow: none;
	color: #111827;
}

.main-landing-simple-card.is-large{
	grid-column: span 3;
	min-height: 182px;
}

.main-landing-simple-card.is-wide{
	grid-column: span 2;
	min-height: 170px;
}

.main-landing-simple-title{
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 0;
}

.main-landing-simple-desc{
	margin-top: 14px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.72;
	color: #8a8f98;
}

.main-landing-simple-card i{
	right: 30px;
	bottom: 28px;
	font-size: 44px;
	color: #5f87ff;
	opacity: 0.78;
}

.main-landing-simple-banner{
	grid-column: 2;
	grid-row: 1;
	position: relative;
	display: grid;
	align-content: center;
	gap: 18px;
	min-height: 100%;
	padding: 34px;
	border: 0;
	border-radius: 18px;
	background: #2f70ff;
	color: #fff;
	box-shadow: none;
	text-align: left;
	overflow: hidden;
}

.main-landing-simple-banner::after{
	content: "";
	position: absolute;
	right: -44px;
	bottom: -68px;
	width: 210px;
	height: 210px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
}

.main-landing-simple-banner span{
	position: relative;
	z-index: 1;
	display: grid;
	gap: 9px;
}

.main-landing-simple-banner strong{
	font-size: 25px;
	font-weight: 700;
	line-height: 1.28;
}

.main-landing-simple-banner em{
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.86);
}

.main-landing-simple-banner small{
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 42px;
	padding: 0 18px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.18);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
}

.main-landing-bottom-ad{
	display: block;
	margin-top: 18px;
	padding: 0;
	background: transparent;
	color: #111827;
	text-align: center;
}

.main-landing-bottom-ad div{
	display: grid;
	justify-items: center;
	gap: 6px;
	min-width: 0;
}

.main-landing-bottom-ad div > strong{
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0;
}

.main-landing-bottom-ad span{
	color: #111827;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.45;
}

.main-landing-bottom-ad-bold{
	font: inherit;
	font-weight: 700;
	color: inherit;
	letter-spacing: 0;
}

.main-landing-preview-row{
	display: none;
}

.main-landing-footer{
	margin-top: 58px;
}

@media (max-width: 1180px)
{
	.main-landing-simple-section{
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}

	.main-landing-simple-grid,
.main-landing-simple-banner{
		grid-column: 1;
		grid-row: auto;
	}
}

@media (max-width: 760px)
{
	.main-landing-inner{
		width: min(100% - 28px, 520px);
		padding: 34px 0 42px;
	}

	.main-landing-search{
		height: 56px;
		padding: 0 20px;
	}

	.main-landing-actions{
		width: 100%;
	}

	.main-landing-actions button,
.main-landing-primary,
.main-landing-secondary{
		width: 50%;
		min-width: 0;
	}

	.main-landing-simple-grid{
		grid-template-columns: 1fr;
	}

	.main-landing-simple-card,
.main-landing-simple-card.is-large,
.main-landing-simple-card.is-wide{
		grid-column: 1;
		min-height: 138px;
	}

	.main-landing-simple-banner,
.main-landing-simple-local{
		min-height: 132px;
	}

	.main-landing-bottom-ad{
		display: block;
		padding: 0;
	}
}

/* PATCH 4.624: responsive frameless account launcher and one-column icon/text menu. */
body.topbar-account-launcher-visible .global-topbar-right{
	gap: 8px;
}

#globalTopbarMoreBtn.account-launcher-button[hidden]{
	display: none !important;
}

body.topbar-account-launcher-visible #globalTopbarMoreBtn.account-launcher-button:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	align-items: center;
	justify-content: center;
	width: 34px !important;
	min-width: 34px !important;
	max-width: 34px !important;
	height: 34px !important;
	min-height: 34px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #111827 !important;
	box-shadow: none !important;
	outline: none !important;
	flex: 0 0 34px !important;
	cursor: pointer;
}

body.topbar-account-launcher-visible #globalTopbarMoreBtn.account-launcher-button:hover,
body.topbar-account-launcher-visible #globalTopbarMoreBtn.account-launcher-button:focus-visible,
body.topbar-account-launcher-visible #globalTopbarMoreBtn.account-launcher-button[aria-expanded="true"]{
	border-color: transparent !important;
	background: transparent !important;
	color: #111827 !important;
	outline: none !important;
}

#globalTopbarMoreBtn.account-launcher-button .topbar-nine-dot-grid{
	display: grid !important;
	grid-template-columns: repeat(3, 4px) !important;
	grid-template-rows: repeat(3, 4px) !important;
	gap: 3px !important;
	width: 18px;
	height: 18px;
}

#globalTopbarMoreBtn.account-launcher-button .topbar-nine-dot-grid > span{
	width: 4px !important;
	height: 4px !important;
	border-radius: 0 !important;
	background: currentColor !important;
}

body.topbar-account-launcher-visible #globalTopbarMoreMenu.account-launcher-menu.open{
	position: absolute !important;
	top: calc(100% + 8px) !important;
	right: 0 !important;
	left: auto !important;
	z-index: 2147483647 !important;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	width: 248px !important;
	padding: 10px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 6px !important;
	background: #ffffff !important;
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.12) !important;
	box-sizing: border-box;
}

body:has(#globalTopbarMoreMenu.account-launcher-menu.open) .global-topbar{
	z-index: 2147483647 !important;
}

body:has(#globalTopbarMoreMenu.account-launcher-menu.open) > .education-facility-filter-panel.open,
body:has(#globalTopbarMoreMenu.account-launcher-menu.open) > #mapTypePopover.open{
	z-index: 2147483646 !important;
}

.account-launcher-grid{
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0;
}

.account-launcher-item,
.account-launcher-logout{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 9px;
	min-width: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0;
	text-align: left;
	box-shadow: none;
	cursor: pointer;
	box-sizing: border-box;
}

.account-launcher-item{
	width: 100%;
	height: 44px;
	min-height: 44px;
	padding: 0 12px;
}

.account-launcher-item i,
.account-launcher-logout i{
	flex: 0 0 16px;
	width: 16px;
	color: #6b7280;
	font-size: 15px;
	line-height: 1;
	text-align: center;
}

.account-launcher-item span,
.account-launcher-logout span{
	min-width: 0;
}

.account-launcher-item:hover,
.account-launcher-item:focus-visible,
.account-launcher-logout:hover,
.account-launcher-logout:focus-visible{
	border-color: transparent;
	background: transparent;
	color: #111827;
	outline: none;
}

.account-launcher-item:hover i,
.account-launcher-item:focus-visible i,
.account-launcher-logout:hover i,
.account-launcher-logout:focus-visible i{
	color: #111827;
}

.account-launcher-divider{
	height: 1px;
	margin: 12px 0;
	background: #edf0f3;
}

.account-launcher-logout{
	width: 100%;
	height: 42px;
	min-height: 42px;
	padding: 0 12px;
	border-color: transparent;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-account-profile{
	gap: 8px;
}

.global-topbar-right #detailAuthTrigger.logged-in .topbar-account-display-name{
	display: block;
	max-width: 180px;
	overflow: hidden;
	color: #374151;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (min-width: 761px)
{
	.realjeju-side-account-wrap,
.realjeju-side-account-wrap + .realjeju-side-nav-line{
		display: none !important;
	}

	.realjeju-side-account-arrow,
.realjeju-side-account-menu{
		display: none !important;
	}
}

@media (max-width: 760px)
{
	body.topbar-account-launcher-visible #globalTopbarMoreBtn.account-launcher-button,
body.topbar-account-launcher-visible #globalTopbarMoreBtn.account-launcher-button:not([hidden]),
body.topbar-account-launcher-visible #globalTopbarMoreMenu.account-launcher-menu,
body.topbar-account-launcher-visible #globalTopbarMoreMenu.account-launcher-menu.open{
		display: none !important;
	}

	body.topbar-account-launcher-visible .realjeju-side-account-arrow{
		display: inline-flex !important;
	}

	body.topbar-account-launcher-visible .realjeju-side-account-menu.open{
		display: block !important;
	}

	.global-topbar-right #detailAuthTrigger.logged-in .topbar-account-display-name{
		max-width: 112px;
	}
}

/* PATCH 4.607: show plain login and signup links at the landing-page top right. */
.main-landing-auth-links{
	display: none;
}

body:is(
	.main-landing-page-open,
	[data-global-category="realestate"],
	[data-global-category="local-business"],
	[data-global-category="part-time"],
	[data-global-category="used-market"],
	[data-global-category="car"],
	[data-global-category="meetup"]
) #detailAuthTrigger[data-auth-state="logged-out"]{
	display: none !important;
}

.global-topbar-right .main-landing-auth-links:not([hidden]),
body:is(
	.main-landing-page-open,
	[data-global-category="realestate"],
	[data-global-category="local-business"],
	[data-global-category="part-time"],
	[data-global-category="used-market"],
	[data-global-category="car"],
	[data-global-category="meetup"]
) .main-landing-auth-links:not([hidden]){
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0;
	height: 34px;
	min-height: 34px;
	padding: 0 10px;
	border: 1px solid #e1e6ee;
	border-radius: 6px;
	background: #ffffff;
	box-sizing: border-box;
	box-shadow: none;
	min-width: max-content;
	white-space: nowrap;
}

.main-landing-auth-links[hidden]{
	display: none !important;
}

.main-landing-auth-link{
	min-width: 0;
	height: 32px;
	min-height: 32px;
	padding: 0 14px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	cursor: pointer;
}

.main-landing-auth-link:hover,
.main-landing-auth-link:focus-visible{
	color: #2563eb;
}

.main-landing-auth-link:focus-visible{
	outline: 2px solid rgba(37, 99, 235, 0.45);
	outline-offset: 3px;
}

.main-landing-auth-separator{
	display: inline-block;
	width: 1px;
	height: 18px;
	overflow: hidden;
	background: #e1e6ee;
	color: transparent;
	font-size: 0;
	line-height: 0;
}

@media (max-width: 760px)
{
	body.main-landing-page-open #globalCategoryMenu{
		display: none !important;
	}

	body.main-landing-page-open .global-topbar-right{
		right: 20px !important;
	}
}

/* PATCH 4.377: 메인 첫 화면은 우측 스크롤바를 숨기고 검색창을 중앙에 고정한다. */
html:has(body.main-landing-page-open),
body.main-landing-page-open{
	scrollbar-width: none;
}

html:has(body.main-landing-page-open)::-webkit-scrollbar,
body.main-landing-page-open::-webkit-scrollbar,
body.main-landing-page-open .main-landing-page::-webkit-scrollbar{
	width: 0;
	height: 0;
	display: none;
}

/* 하위 라우트는 문서 스크롤을 유지하고 브라우저 스크롤바만 감춘다. */
html.realjeju-hide-page-scrollbar,
html.realjeju-hide-page-scrollbar body{
	scrollbar-width: none;
	-ms-overflow-style: none;
}

html.realjeju-hide-page-scrollbar::-webkit-scrollbar,
html.realjeju-hide-page-scrollbar body::-webkit-scrollbar{
	width: 0;
	height: 0;
	display: none;
}

body.main-landing-page-open .main-landing-copy{
	justify-items: center;
}

body.main-landing-page-open .main-landing-search{
	justify-self: center;
	margin-left: auto;
	margin-right: auto;
}

/* PATCH 4.377: 메인/약관 하단 레이아웃 최종 규칙. 이 아래에 같은 선택자를 다시 덮지 않는다. */
body.realjeju-side-nav-enabled{
	--realjeju-aligned-page-left: calc(var(--realjeju-side-nav-width, 168px) + var(--realjeju-management-page-gap, 32px));
	--realjeju-aligned-page-right: var(--realjeju-aligned-page-left);
	--realjeju-aligned-page-width: calc(100vw - var(--realjeju-aligned-page-left) - var(--realjeju-aligned-page-right));
	--realjeju-main-page-width: min(1120px, calc(100vw - 64px));
	--realjeju-main-page-edge: max(32px, calc((100vw - var(--realjeju-main-page-width)) / 2));
}

.terms-full-main-head,
#termsFullContent,
.terms-full-body .terms-full-main-footer{
	box-sizing: border-box;
	width: var(--realjeju-aligned-page-width);
	max-width: var(--realjeju-aligned-page-width);
	margin-left: var(--realjeju-aligned-page-left);
	margin-right: var(--realjeju-aligned-page-right);
}

body.main-landing-page-open .main-landing-inner{
	width: var(--realjeju-main-page-width);
	max-width: var(--realjeju-main-page-width);
	margin-left: auto;
	margin-right: auto;
	padding-top: 70px;
	padding-bottom: 0;
}



body.main-landing-page-open{
	background: #fff;
}

body.main-landing-page-open .main-landing-hero{
	margin-bottom: 70px;
}

body.main-landing-page-open .main-landing-footer{
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

body.main-landing-page-open .main-landing-bottom-ad{
	width: 100vw;
	max-width: none;
	margin-top: 80px;
	margin-right: calc(50% - 50vw);
	margin-bottom: 0;
	margin-left: calc(50% - 50vw);
	padding: 44px var(--realjeju-main-page-edge);
	border-top: 1px solid #e1e5eb;
	border-bottom: 0;
	border-radius: 0;
	background: #f1f4f8;
	box-sizing: border-box;
}

body.main-landing-page-open .main-landing-footer{
	--realjeju-footer-top-gap: 30px;
	--realjeju-footer-bottom-gap: 40px;
	margin-top: 0;
	margin-bottom: 0;
	padding: var(--realjeju-footer-top-gap, 30px) var(--realjeju-main-page-edge) var(--realjeju-footer-bottom-gap, 40px);
	background: #fff;
	box-sizing: border-box;
}

body.main-landing-page-open .main-landing-footer::after{
	content: none;
	display: none;
	height: 0;
}

body.main-landing-page-open .main-landing-footer-line{
	display: none;
	margin-top: 0;
}

.terms-full-body{
	--terms-full-content-width: var(--realjeju-aligned-page-width);
}

.terms-full-body .terms-full-main-footer{
	padding-left: 0;
	padding-right: 0;
}

@media (max-width: 760px)
{
	body.realjeju-side-nav-enabled{
		--realjeju-aligned-page-left: 24px;
		--realjeju-aligned-page-right: 24px;
	}

	body.main-landing-page-open .main-landing-inner{
		width: min(100% - 28px, 520px);
		padding-top: 34px;
	}

	body.main-landing-page-open .main-landing-hero{
		margin-bottom: 34px;
	}

	body.main-landing-page-open .main-landing-bottom-ad{
		margin-top: 48px;
		margin-bottom: 0;
		padding: 36px 24px;
	}

	body.main-landing-page-open .main-landing-footer{
		padding: var(--realjeju-footer-top-gap, 32px) 24px var(--realjeju-footer-bottom-gap, 46px);
	}
}

/* 약관 푸터는 메인 랜딩 푸터 원래 규격을 공통으로 쓴다. */
.terms-full-footer-shell{
	width: 100vw;
	max-width: none;
	margin-top: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-top: 18px;
	background: #ffffff;
	box-sizing: border-box;
}

.terms-full-footer-shell > .terms-full-main-footer{
	--realjeju-footer-top-gap: 30px;
	--realjeju-footer-bottom-gap: 40px;
	width: 100%;
	max-width: none;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: 0;
	margin-right: 0;
	padding: var(--realjeju-footer-top-gap, 30px) var(--realjeju-main-page-edge) var(--realjeju-footer-bottom-gap, 40px);
	background: #ffffff;
	box-sizing: border-box;
}

.terms-full-footer-shell > .terms-full-main-footer .main-landing-footer-line{
	display: none;
}

@media (max-width: 760px)
{
	.terms-full-footer-shell{
		width: 100vw;
		max-width: none;
		margin-top: 0;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		padding-top: 14px;
	}

	.terms-full-footer-shell > .terms-full-main-footer{
		--realjeju-footer-top-gap: 30px;
		--realjeju-footer-bottom-gap: 40px;
		width: 100%;
		max-width: none;
		margin-top: 0;
		margin-left: 0;
		margin-right: 0;
		padding: var(--realjeju-footer-top-gap, 30px) 24px var(--realjeju-footer-bottom-gap, 40px);
	}
}

/* 알바 푸터는 AD 박스 하단-선, 선-푸터 제목 간격을 같은 40px로 맞춘다. */
body.part-time-page-open{
	--realjeju-main-page-width: min(1120px, calc(100vw - 64px));
	--realjeju-main-page-edge: max(32px, calc((100vw - var(--realjeju-main-page-width)) / 2));
	--realjeju-footer-bottom-gap: 60px;
	--part-time-footer-line-gap: 40px;
	--part-time-footer-top-gap: 40px;
}

body.part-time-page-open .part-time-page-inner{
	width: var(--realjeju-main-page-width);
	max-width: var(--realjeju-main-page-width);
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 0;
}

body.part-time-page-open .part-time-page-footer{
	width: 100vw;
	max-width: none;
	margin-top: var(--part-time-footer-top-gap);
	margin-bottom: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 0 var(--realjeju-main-page-edge) var(--realjeju-footer-bottom-gap, 45px);
	background: #fff;
	box-sizing: border-box;
}



@media (max-width: 760px)
{
	body.part-time-page-open .part-time-page-footer{
		width: 100vw;
		max-width: none;
		padding: 0 24px var(--realjeju-footer-bottom-gap, 45px);
	}

	body.part-time-page-open .part-time-page-footer .main-landing-footer-line{
		width: 100vw;
		margin-right: -24px;
		margin-left: -24px;
	}
}

/* PATCH 4.428: 기준점별 하단 푸터 규격 */
body.main-landing-page-open,
body.terms-full-body,
.terms-full-footer-shell,
body.part-time-page-open{
	--realjeju-common-footer-top-gap: 40px;
	--realjeju-common-footer-bottom-gap: 60px;
	--realjeju-footer-top-gap: var(--realjeju-common-footer-top-gap);
	--realjeju-footer-bottom-gap: var(--realjeju-common-footer-bottom-gap);
}

body.main-landing-page-open .main-landing-footer,
.terms-full-footer-shell > .terms-full-main-footer,
body.part-time-page-open .part-time-page-footer{
	margin-top: 0;
	margin-bottom: 0;
	padding-top: var(--realjeju-common-footer-top-gap);
	padding-bottom: var(--realjeju-common-footer-bottom-gap);
	background: #fff;
	box-sizing: border-box;
}

body.main-landing-page-open .main-landing-footer,
body.part-time-page-open .part-time-page-footer,
.terms-full-footer-shell{
	width: 100vw;
	max-width: none;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

body.main-landing-page-open .main-landing-footer,
body.part-time-page-open .part-time-page-footer{
	padding-left: var(--realjeju-main-page-edge);
	padding-right: var(--realjeju-main-page-edge);
}

.terms-full-footer-shell{
	margin-top: 0;
	padding-top: 0;
	background: #fff;
	box-sizing: border-box;
}

.terms-full-footer-shell > .terms-full-main-footer{
	width: 100%;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	padding-left: var(--realjeju-main-page-edge);
	padding-right: var(--realjeju-main-page-edge);
}

body.main-landing-page-open .main-landing-footer-line,
.terms-full-footer-shell > .terms-full-main-footer .main-landing-footer-line,
body.part-time-page-open .part-time-page-footer .main-landing-footer-line{
	display: none;
}

body.main-landing-page-open .main-landing-bottom-ad{
	margin-bottom: 0;
}

.terms-full-footer-shell{
	padding-top: 0;
}

body.part-time-page-open .part-time-page-footer{
	margin-top: var(--part-time-footer-top-gap);
	padding-top: 0;
}

body.part-time-page-open .part-time-page-footer .main-landing-footer-line{
	display: block;
	width: 100vw;
	height: 1px;
	margin-top: 0;
	margin-right: calc(-1 * var(--realjeju-main-page-edge));
	margin-bottom: var(--part-time-footer-line-gap);
	margin-left: calc(-1 * var(--realjeju-main-page-edge));
	background: #dfe7f1;
}

@media (max-width: 760px)
{
	body.main-landing-page-open .main-landing-footer,
.terms-full-footer-shell > .terms-full-main-footer,
body.part-time-page-open .part-time-page-footer{
		padding: var(--realjeju-common-footer-top-gap) 24px var(--realjeju-common-footer-bottom-gap);
	}

	body.part-time-page-open .part-time-page-footer{
		padding-top: 0;
	}

	body.part-time-page-open .part-time-page-footer .main-landing-footer-line{
		margin-right: -24px;
		margin-left: -24px;
	}
}

.company-full-page{
	position: fixed;
	inset: 0;
	z-index: 10020;
	display: none;
	background: #f5f5f5;
	color: #111827;
	letter-spacing: 0;
}

.company-full-page.open{
	display: block;
}

html:has(.company-full-page.open),
body:has(.company-full-page.open),
.company-full-page.open,
.company-full-page.open .company-full-body{
	scrollbar-width: none;
}

html:has(.company-full-page.open)::-webkit-scrollbar,
body:has(.company-full-page.open)::-webkit-scrollbar,
.company-full-page.open::-webkit-scrollbar,
.company-full-page.open .company-full-body::-webkit-scrollbar{
	width: 0;
	height: 0;
	display: none;
}

.company-full-header{
	position: sticky;
	top: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: var(--global-topbar-height, 65px);
	padding: 0 28px;
	border-bottom: 1px solid rgba(15, 23, 42, 0.08);
	background: #fff;
	box-sizing: border-box;
}

.company-full-title{
	color: #1f2937;
	font-size: 16px;
	font-weight: 600;
}

.company-full-close{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #111827;
	font-size: 26px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
}

.company-full-close:hover{
	background: #f1f5f9;
}

.company-full-body{
	--company-full-content-width: var(--realjeju-main-page-width, min(1120px, calc(100vw - 64px)));
	height: calc(100vh - var(--global-topbar-height, 65px));
	overflow: auto;
	overflow-x: hidden;
	background: #f5f5f5;
}

.company-full-hero,
.company-full-section{
	box-sizing: border-box;
	width: var(--company-full-content-width);
	max-width: var(--company-full-content-width);
	inline-size: var(--company-full-content-width);
	max-inline-size: var(--company-full-content-width);
	margin-left: auto;
	margin-right: auto;
	overflow-x: clip;
}

.company-full-hero{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.78fr);
	gap: 34px;
	align-items: center;
	padding: 64px 0 38px;
}

.company-full-hero-copy{
	min-width: 0;
}

.company-full-kicker{
	margin: 0 0 12px;
	color: #2563eb;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .02em;
}

.company-full-main-title{
	max-width: 760px;
	margin: 0;
	color: #1f2937;
	font-size: 32px;
	font-weight: 600;
	line-height: 1.35;
}

.company-full-lead{
	max-width: 720px;
	margin: 18px 0 0;
	color: #64748b;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.78;
}

.company-full-hero-visual{
	margin: 0;
	min-width: 0;
}

.company-full-hero-visual img{
	display: block;
	width: 100%;
	height: auto;
	border-radius: 18px;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
}

.company-full-section{
	margin-top: 24px;
}

.company-full-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.company-full-card{
	position: relative;
	min-height: 184px;
	padding: 24px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #fff;
	box-sizing: border-box;
}

.company-full-card-icon{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin: 0 12px 0 0;
	border-radius: 12px;
	background: #f1f6ff;
	color: #2563eb;
	font-size: 18px;
	vertical-align: middle;
}

.company-full-card-label{
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 0;
	color: #111827;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.15;
	vertical-align: middle;
}

.company-full-card h2,
.company-full-split h2{
	margin: 18px 0 0;
	color: #1f2937;
	font-size: 19px;
	font-weight: 600;
	line-height: 1.42;
}

.company-full-card p,
.company-full-split p{
	margin: 12px 0 0;
	color: #6b7280;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.72;
}

.company-full-split{
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr);
	gap: 20px;
	align-items: center;
	padding: 28px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	background: #fff;
}

.company-full-split h2{
	margin-top: 0;
}

.company-full-split > div:first-child{
	transform: translateY(-8px);
}

.company-full-split > div:first-child > p{
	margin-top: 18px;
}

.company-full-info-list{
	display: grid;
	gap: 0;
	border-top: 1px solid #edf2f7;
}

.company-full-info-list p{
	display: grid;
	grid-template-columns: 150px minmax(0, 1fr);
	gap: 16px;
	margin: 0;
	padding: 13px 0;
	border-bottom: 1px solid #edf2f7;
}

.company-full-info-list strong{
	color: #475569;
	font-size: 13px;
	font-weight: 600;
}

.company-full-info-list span{
	min-width: 0;
	color: #1f2937;
	font-size: 14px;
	font-weight: 400;
}

.company-full-note{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 22px;
	margin-top: 64px;
	padding: 0;
	box-sizing: border-box;
	text-align: center;
}

.company-full-note p{
	margin: 0;
	color: #1f2937;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.42;
}

.company-full-home-link{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: #2563eb;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
}

.company-full-note + .company-full-split{
	margin-top: 64px;
}

.company-full-contact{
	display: block;
	margin-top: 28px;
	padding: 28px 0;
	border-top: 0;
	background: transparent;
	text-align: left;
}

.company-full-contact h2{
	margin: 0;
	color: #1f2937;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
}

.company-full-contact p{
	margin: 8px 0 0;
	color: #64748b;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
}

.company-full-contact a{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 14px;
	padding: 0;
	background: transparent;
	color: #2563eb;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none;
	white-space: nowrap;
}

.company-full-footer-shell{
	width: 100vw;
	max-width: none;
	margin-top: 28px;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-top: 0;
	background: #fff;
	box-sizing: border-box;
}

.company-full-footer-shell > .company-full-main-footer{
	width: 100%;
	max-width: none;
	margin: 0;
	padding: var(--realjeju-common-footer-top-gap, 40px) var(--realjeju-main-page-edge) var(--realjeju-common-footer-bottom-gap, 60px);
	background: #fff;
	box-sizing: border-box;
}

.company-full-footer-shell > .company-full-main-footer .main-landing-footer-line{
	display: none;
}

@media (max-width: 1024px)
{
	.company-full-grid,
.company-full-split{
		grid-template-columns: 1fr;
	}

	.company-full-hero{
		grid-template-columns: 1fr;
		gap: 26px;
	}

	.company-full-hero-visual{
		max-width: 560px;
	}
}

@media (max-width: 760px)
{
	.company-full-header{
		padding: 0 18px;
	}

	.company-full-hero,
.company-full-section{
		width: min(100% - 28px, 520px);
		max-width: min(100% - 28px, 520px);
		margin-left: auto;
		margin-right: auto;
	}

	.company-full-hero{
		padding: 38px 0 24px;
	}

	.company-full-main-title{
		font-size: 26px;
	}

	.company-full-lead{
		font-size: 15px;
	}

	.company-full-card,
.company-full-split{
		padding: 22px;
	}

	.company-full-note{
		margin-top: 48px;
	}

	.company-full-note p{
		font-size: 22px;
		line-height: 1.42;
	}

	.company-full-home-link{
		font-size: 16px;
	}

	.company-full-contact{
		text-align: left;
	}

	.company-full-card-icon{
		width: 38px;
		height: 38px;
		border-radius: 11px;
		font-size: 16px;
	}

	.company-full-info-list p{
		grid-template-columns: 1fr;
		gap: 5px;
	}

	.company-full-footer-shell > .company-full-main-footer{
		padding: var(--realjeju-common-footer-top-gap, 40px) 24px var(--realjeju-common-footer-bottom-gap, 60px);
	}
}

/* Match development selection outlines and layer colors. */
.development-facility-filter-option[data-development-layer="admin-boundary"]{
	--development-option-accent: #ef4444;
}

.development-facility-filter-option[data-development-layer="factory-restriction"]{
	--development-option-accent: #c2410c;
}

.development-facility-filter-option[data-development-layer="cultural-heritage-protection"]{
	--development-option-accent: #047857;
}

.development-facility-filter-option[data-development-layer="livestock-breeding-restriction"]{
	--development-option-accent: #ea580c;
}

.development-facility-filter-option[data-national-land-plan-layer="urban-area"]{
	--development-option-accent: #b91c1c;
}

.development-facility-filter-option[data-national-land-plan-layer="conservation-green"]{
	--development-option-accent: #15803d;
}

.development-facility-filter-option[data-national-land-plan-layer="production-green"]{
	--development-option-accent: #4d7c0f;
}

.development-facility-filter-option[data-national-land-plan-layer="natural-green"]{
	--development-option-accent: #0e7490;
}

.development-facility-filter-option[data-national-land-plan-layer="management-area"]{
	--development-option-accent: #4f46e5;
}

.development-facility-filter-option[data-national-land-plan-layer="absolute-conservation"]{
	--development-option-accent: #7e22ce;
}

.development-facility-filter-panel .development-facility-filter-option{
	transition: background-color 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.development-facility-filter-panel .development-facility-filter-option:not(.active){
	border-color: transparent;
	background: #f4f5f7;
	color: #8d9094;
}

.development-facility-filter-panel .development-facility-filter-option:not(.active) > i{
	color: #8d9094;
}

.development-facility-filter-panel .development-facility-filter-option:not(.active) > span{
	color: #8d9094;
}

.development-facility-filter-panel .development-facility-filter-option:not(.active):hover{
	border-color: #d7dbe0;
	background: #eceef1;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.07);
}

.development-facility-filter-panel .development-facility-filter-option.active{
	border-color: var(--development-option-accent);
	background: #ffffff;
	color: #111827;
	box-shadow: 0 2px 7px rgba(15, 23, 42, 0.12);
}

.development-facility-filter-panel .development-facility-filter-option.active > i{
	color: var(--development-option-accent);
}

.education-facility-filter-panel.development-facility-filter-panel .education-facility-filter-option.development-facility-filter-option.active > span:not(.education-facility-filter-school-mark){
	color: #111827 !important;
}

/* PATCH 4.604: keep everyday controls quiet and reserve heavy weights for hierarchy. */
.global-category-item,
.realjeju-side-nav-item,
.main-landing-search button,
.main-landing-primary,
.main-landing-secondary,
.map-tool-btn{
	font-weight: 600 !important;
}

.global-category-item.is-active,
.realjeju-side-nav-item:hover,
.realjeju-side-nav-item.active,
.realjeju-side-nav-item.is-open,
.map-tool-btn.active,
.map-tool-btn[aria-pressed="true"]{
	font-weight: var(--realjeju-active-control-weight, 700) !important;
}

.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active:not(.open) .extra-filter-trigger,
.global-topbar-menu.has-map-filters .extra-filter-dropdown.has-active:not(.open) .extra-filter-trigger span,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger,
.global-topbar-menu.has-map-filters .type-filter-dropdown.has-active:not(.open) .type-filter-trigger span,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger,
.global-topbar-menu.has-map-filters .deal-filter-dropdown.has-active:not(.open) .deal-filter-trigger span{
	font-weight: 700 !important;
}

.main-landing-title,
.main-landing-simple-banner strong{
	font-weight: 800 !important;
}



.fa-solid,
.fas{
	font-weight: 900 !important;
}

/* PATCH 4.606: landing service cards use lightweight photos; all copy stays as HTML text. */
.main-landing-simple-card{
	isolation: isolate;
	border-color: #e1e7ef;
	background: #ffffff;
	color: #ffffff;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.main-landing-simple-card::before,
.main-landing-simple-card::after{
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
}

.main-landing-simple-card::before{
	z-index: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	filter: brightness(1.04) saturate(0.94) contrast(0.96);
	transition: filter 160ms ease;
}

.main-landing-simple-card::after{
	z-index: 1;
	background: linear-gradient(90deg, rgba(8, 15, 28, 0.58) 0%, rgba(8, 15, 28, 0.36) 52%, rgba(8, 15, 28, 0.14) 100%);
	transition: opacity 180ms ease;
}

.main-landing-simple-card > *{
	position: relative;
	z-index: 2;
}

.main-landing-simple-card .main-landing-simple-title{
	color: #ffffff;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.32);
}

.main-landing-simple-card .main-landing-simple-desc{
	color: rgba(255, 255, 255, 0.92);
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.28);
}

.main-landing-simple-card i{
	z-index: 2;
	color: #ffffff;
	font-size: 36px;
	opacity: 0.96;
	filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.28));
}

.main-landing-simple-card[data-main-landing-action="map"]::before{
	background-image: url("../img/landingpage_1.jpg?v=4608");
	background-position: center 58%;
}

.main-landing-simple-card[data-main-landing-category="part-time"]::before{
	background-image: url("../img/landingpage_2.jpg?v=4608");
	background-position: 62% center;
}

.main-landing-simple-card[data-main-landing-category="local-business"]::before{
	background-image: url("../img/landingpage_3.jpg?v=4608");
	background-position: 58% center;
}

.main-landing-simple-card[data-main-landing-category="car"]::before{
	background-image: url("../img/landingpage_4.jpg?v=4608");
	background-position: 62% center;
}

.main-landing-simple-card[data-main-landing-action="notice"]::before{
	background-image: url("../img/landingpage_5.jpg?v=6a4ba786-20260718-4824");
	background-position: center;
	filter: saturate(0.82) contrast(0.92);
}

.main-landing-simple-card[data-main-landing-action="notice"]::after{
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.76) 58%, rgba(255, 255, 255, 0.38) 100%);
}

.main-landing-simple-card[data-main-landing-action="notice"] .main-landing-simple-title{
	color: #111827;
	text-shadow: none;
}

.main-landing-simple-card[data-main-landing-action="notice"] .main-landing-simple-desc{
	color: #4b5563;
	text-shadow: none;
}

.main-landing-simple-card[data-main-landing-action="notice"] i{
	color: #2563eb;
	filter: none;
}

.main-landing-simple-card:hover{
	border-color: #cbd5e1;
	box-shadow: 0 7px 18px rgba(15, 23, 42, 0.08);
}

.main-landing-simple-card:hover::before,
.main-landing-simple-card:focus-visible::before{
	filter: brightness(1.2) saturate(1.04) contrast(1);
}

.main-landing-simple-card:hover::after,
.main-landing-simple-card:focus-visible::after{
	opacity: 0.42;
}

.main-landing-simple-card[data-main-landing-action="notice"]:hover::after,
.main-landing-simple-card[data-main-landing-action="notice"]:focus-visible::after{
	opacity: 0.58;
}

.main-landing-simple-card:focus-visible{
	outline: 2px solid #2563eb;
	outline-offset: 2px;
}

@media (max-width: 760px)
{
	.main-landing-simple-card,
.main-landing-simple-card.is-large,
.main-landing-simple-card.is-wide{
		padding: 24px 26px;
	}

	.main-landing-simple-card i{
		right: 26px;
		bottom: 24px;
		font-size: 32px;
	}
}

body.realjeju-side-nav-enabled.main-landing-page-open .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"]{
	display: none !important;
}

/* PATCH 4.615: solid brand-blue map callout without decorative circles. */
.main-landing-simple-banner{
	isolation: isolate;
	border: 1px solid #2563eb;
	border-radius: 8px;
	background: #2563eb;
	color: #ffffff;
	box-shadow: none;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.main-landing-simple-banner::after{
	display: none;
}

.main-landing-simple-banner span{
	max-width: 270px;
}

.main-landing-simple-banner strong{
	color: #ffffff;
}

.main-landing-simple-banner em{
	color: rgba(255, 255, 255, 0.86);
}

.main-landing-simple-banner small{
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.14);
	color: #ffffff;
	transition: background-color 160ms ease, border-color 160ms ease;
}

.main-landing-simple-banner i{
	position: absolute;
	right: 28px;
	bottom: 28px;
	z-index: 0;
	display: block;
	width: auto;
	height: auto;
	border-radius: 0;
	background: transparent;
	color: #ffffff;
	font-size: 82px;
	opacity: 0.28;
	pointer-events: none;
	transition: color 160ms ease, opacity 160ms ease;
}

.main-landing-simple-banner:hover{
	border-color: #1d4ed8;
	background: #1d4ed8;
	box-shadow: 0 7px 18px rgba(37, 99, 235, 0.18);
}

.main-landing-simple-banner:hover small{
	border-color: rgba(255, 255, 255, 0.38);
	background: rgba(255, 255, 255, 0.22);
}

.main-landing-simple-banner:hover i{
	color: #ffffff;
	opacity: 0.42;
}

.main-landing-simple-banner:focus-visible{
	outline: 2px solid #2563eb;
	outline-offset: 2px;
}

@media (max-width: 1180px)
{
	.main-landing-simple-banner{
		min-height: 210px;
	}
}

@media (max-width: 760px)
{
	.main-landing-simple-banner{
		min-height: 200px;
		padding: 26px 24px;
		gap: 14px;
	}

	.main-landing-simple-banner span{
		max-width: 100%;
	}

	.main-landing-simple-banner strong{
		font-size: 20px;
		white-space: nowrap;
	}

	.main-landing-simple-banner em{
		font-size: 14px;
	}

	.main-landing-simple-banner i{
		right: 22px;
		bottom: 20px;
		font-size: 58px;
		opacity: 0.24;
	}
}

/* PATCH 4.611: landing account shortcuts are redundant inside auth screens. */
body.auth-page-open .main-landing-auth-links{
	display: none !important;
}

/* PATCH 4.615: compact latest-notice preview between services and the ad band. */
.main-landing-notice-preview{
	margin-top: 64px;
}

.main-landing-notice-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding-bottom: 16px;
	border-bottom: 1px solid #e5e7eb;
}

.main-landing-notice-head h2{
	margin: 0;
	color: #111827;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
}

.main-landing-notice-more{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-width: 0;
	min-height: 32px;
	padding: 4px 0;
	border: 0;
	background: transparent;
	color: #6b7280;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
}

.main-landing-notice-more i{
	font-size: 12px;
}

.main-landing-notice-more:hover{
	color: #2563eb;
}

.main-landing-notice-more:focus-visible,
.main-landing-notice-row:focus-visible{
	outline: 2px solid #2563eb;
	outline-offset: 2px;
}

.main-landing-notice-list{
	display: grid;
	align-content: start;
	min-height: 144px;
	padding-top: 10px;
}

.main-landing-notice-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 28px;
	min-height: 48px;
	padding: 8px 0;
	border: 0;
	background: transparent;
	color: #111827;
	text-align: left;
	cursor: pointer;
}

.main-landing-notice-row-title{
	min-width: 0;
	overflow: hidden;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.main-landing-notice-row time{
	color: #8a8f98;
	font-size: 15px;
	font-weight: 500;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.main-landing-notice-row:hover .main-landing-notice-row-title{
	color: #2563eb;
}

.main-landing-notice-empty{
	display: flex;
	align-items: center;
	min-height: 144px;
	color: #8a8f98;
	font-size: 15px;
	font-weight: 500;
}

body.main-landing-page-open .main-landing-bottom-ad{
	margin-top: 56px;
}

@media (max-width: 760px)
{
	.main-landing-notice-preview{
		margin-top: 48px;
	}

	.main-landing-notice-head{
		padding-bottom: 13px;
	}

	

	.main-landing-notice-list{
		min-height: 144px;
		padding-top: 8px;
	}

	.main-landing-notice-row{
		gap: 12px;
		min-height: 48px;
		padding: 8px 0;
	}

	

	.main-landing-notice-row time{
		font-size: 13px;
	}

	.main-landing-notice-empty{
		min-height: 144px;
		font-size: 14px;
	}

	body.main-landing-page-open .main-landing-bottom-ad{
		margin-top: 48px;
	}
}

/* PATCH 4.616: soft-gray landing body below the white global navigation. */
body.main-landing-page-open .main-landing-page{
	background: #f7f8fa;
}

.main-landing-notice-head h2{
	font-size: 21px;
}

.main-landing-notice-row-title{
	font-size: 15px;
}

body.realjeju-side-nav-enabled.notice-page-open .notice-page-panel{
	left: var(--realjeju-side-nav-width, 168px);
}

body.notice-page-open .notice-page-panel{
	scrollbar-gutter: stable both-edges;
}

body.notice-page-open .notice-page-inner{
	width: min(900px, calc(100% - 64px));
	max-width: none;
	margin-right: auto;
	margin-left: auto;
}

body:is(
	.main-landing-page-open,
	[data-global-category="realestate"],
	[data-global-category="local-business"],
	[data-global-category="part-time"],
	[data-global-category="used-market"],
	[data-global-category="car"],
	[data-global-category="meetup"]
) .main-landing-auth-links:not([hidden]){
	height: 34px;
	gap: 0;
	border: 1px solid #edf0f3;
	border-radius: 4px;
	background: #ffffff;
	box-shadow: none;
	box-sizing: border-box;
	overflow: hidden;
}

body:is(
	.main-landing-page-open,
	[data-global-category="realestate"],
	[data-global-category="local-business"],
	[data-global-category="part-time"],
	[data-global-category="used-market"],
	[data-global-category="car"],
	[data-global-category="meetup"]
) .main-landing-auth-link{
	height: 32px;
	padding: 0 12px;
}

body:is(
	.main-landing-page-open,
	[data-global-category="realestate"],
	[data-global-category="local-business"],
	[data-global-category="part-time"],
	[data-global-category="used-market"],
	[data-global-category="car"],
	[data-global-category="meetup"]
) .main-landing-auth-separator{
	width: 1px;
	height: 18px;
	background: #edf0f3;
	color: transparent;
	font-size: 0;
}

body:is(
	.main-landing-page-open,
	[data-global-category="realestate"],
	[data-global-category="local-business"],
	[data-global-category="part-time"],
	[data-global-category="used-market"],
	[data-global-category="car"],
	[data-global-category="meetup"]
) .main-landing-auth-link:focus-visible{
	outline-offset: -2px;
}

@media (max-width: 760px)
{
	body.notice-page-open .realjeju-side-nav,
body.notice-page-open #globalCategoryMenu{
		display: none !important;
	}

	body.realjeju-side-nav-enabled.notice-page-open .notice-page-panel{
		left: 0;
	}

	body.notice-page-open .notice-page-inner{
		width: 100%;
	}

	.main-landing-notice-head h2{
		font-size: 21px;
	}

	.main-landing-notice-row-title{
		font-size: 15px;
	}
}

/* PATCH 4.621: the shared login group replaces the logged-out version trigger on real-estate and community homes. */
body[data-global-category="realestate"].realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"],
body[data-global-category="local-business"].realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"],
body[data-global-category="part-time"].realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"],
body[data-global-category="used-market"].realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"],
body[data-global-category="car"].realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"],
body[data-global-category="meetup"].realjeju-side-nav-enabled .global-topbar-right #detailAuthTrigger.version-only[data-auth-state="logged-out"]{
	display: none !important;
}

/* PATCH 4.620: account pages replace the landing and sit beside the shared desktop side navigation. */
@media (min-width: 761px)
{
	

	
}

@media (max-width: 760px)
{
	

	
}

/* PATCH 4.645: use equal SVG bounds for chat, bell, and nine-dot icons. */
#globalTopbarChatBtn.topbar-chat-button[hidden],
#globalTopbarNotificationBtn.topbar-notification-button[hidden]{
	display: none !important;
}

body.topbar-account-launcher-visible #globalTopbarChatBtn.topbar-chat-button:not([hidden]),
body.topbar-account-launcher-visible #globalTopbarNotificationBtn.topbar-notification-button:not([hidden]){
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	align-items: center;
	justify-content: center;
	width: 34px !important;
	min-width: 34px !important;
	max-width: 34px !important;
	height: 34px !important;
	min-height: 34px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #111827 !important;
	box-shadow: none !important;
	outline: none !important;
	flex: 0 0 34px !important;
	cursor: pointer;
}

body.topbar-account-launcher-visible #globalTopbarChatBtn.topbar-chat-button:hover,
body.topbar-account-launcher-visible #globalTopbarChatBtn.topbar-chat-button:focus-visible,
body.topbar-account-launcher-visible #globalTopbarChatBtn.topbar-chat-button[aria-expanded="true"],
body.topbar-account-launcher-visible #globalTopbarNotificationBtn.topbar-notification-button:hover,
body.topbar-account-launcher-visible #globalTopbarNotificationBtn.topbar-notification-button:focus-visible,
body.topbar-account-launcher-visible #globalTopbarNotificationBtn.topbar-notification-button[aria-expanded="true"]{
	border-color: transparent !important;
	background: transparent !important;
	color: #111827 !important;
	box-shadow: none !important;
	outline: none !important;
}





#globalTopbarChatBtn .topbar-custom-chat,
#globalTopbarNotificationBtn .topbar-custom-bell{
	display: block;
	width: 24px;
	height: 24px;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

#globalTopbarChatBtn .topbar-custom-chat circle{
	fill: currentColor;
	stroke: none;
}

.topbar-notification-menu{
	position: absolute;
	top: calc(100% + 8px);
	right: 42px;
	z-index: 2147483647;
	display: none;
	width: 260px;
	padding: 0;
	border: 1px solid #e5e7eb;
	border-radius: 6px;
	background: #ffffff;
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.12);
	box-sizing: border-box;
}

.topbar-notification-menu.open{
	display: block;
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

#globalTopbarChatMenu{
	right: 84px;
}

#globalTopbarNotificationMenu{
	right: 42px;
}

.topbar-notification-title{
	height: 44px;
	display: flex;
	align-items: center;
	padding: 0 16px;
	border-bottom: 1px solid #edf0f3;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
	font-weight: 650;
	line-height: 1;
	letter-spacing: 0;
}

.topbar-notification-empty{
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 104px;
	padding: 20px 16px;
	color: #7b8490;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0;
	text-align: center;
	box-sizing: border-box;
}

body:has(#globalTopbarChatMenu.open) .global-topbar,
body:has(#globalTopbarNotificationMenu.open) .global-topbar{
	z-index: 2147483647 !important;
}

body:has(#globalTopbarChatMenu.open) > .education-facility-filter-panel.open,
body:has(#globalTopbarChatMenu.open) > #mapTypePopover.open,
body:has(#globalTopbarNotificationMenu.open) > .education-facility-filter-panel.open,
body:has(#globalTopbarNotificationMenu.open) > #mapTypePopover.open{
	z-index: 2147483646 !important;
}

@media (max-width: 760px)
{
	body.topbar-account-launcher-visible #globalTopbarChatBtn.topbar-chat-button,
body.topbar-account-launcher-visible #globalTopbarChatBtn.topbar-chat-button:not([hidden]),
body.topbar-account-launcher-visible #globalTopbarChatMenu.topbar-notification-menu,
body.topbar-account-launcher-visible #globalTopbarChatMenu.topbar-notification-menu.open,
body.topbar-account-launcher-visible #globalTopbarNotificationBtn.topbar-notification-button,
body.topbar-account-launcher-visible #globalTopbarNotificationBtn.topbar-notification-button:not([hidden]),
body.topbar-account-launcher-visible #globalTopbarNotificationMenu.topbar-notification-menu,
body.topbar-account-launcher-visible #globalTopbarNotificationMenu.topbar-notification-menu.open{
		display: none !important;
	}
}

@media (min-width: 761px)
{
body .global-topbar .global-topbar-right{
		position: absolute !important;
		top: 50% !important;
		right: 18px !important;
		bottom: auto !important;
		left: auto !important;
		transform: translateY(-50%) !important;
		display: inline-flex;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 8px;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
		height: 34px !important;
		min-height: 34px !important;
		max-height: 34px !important;
		margin: 0 !important;
		padding: 0 !important;
		box-sizing: border-box !important;
		flex: 0 0 auto !important;
	}

	body .global-topbar .global-topbar-right > #detailAuthTrigger,
body .global-topbar .global-topbar-right > #globalTopbarChatBtn,
body .global-topbar .global-topbar-right > #globalTopbarNotificationBtn,
body .global-topbar .global-topbar-right > #globalTopbarMoreBtn{
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		align-self: center !important;
	}

	body .global-topbar .global-topbar-right > #detailAuthTrigger.logged-in,
body .global-topbar .global-topbar-right > #detailAuthTrigger.logged-in .topbar-account-profile{
		height: 34px !important;
		min-height: 34px !important;
		max-height: 34px !important;
	}

	body .global-topbar .global-topbar-right > #detailAuthTrigger.logged-in .topbar-profile-image,
body .global-topbar .global-topbar-right > #detailAuthTrigger.logged-in .topbar-profile-fallback{
		width: 30px !important;
		min-width: 30px !important;
		max-width: 30px !important;
		height: 30px !important;
		min-height: 30px !important;
		max-height: 30px !important;
		flex: 0 0 30px !important;
	}
}

body.global-detail-surface-open .global-topbar .global-topbar-right,
body .global-topbar .global-topbar-right[hidden]{
	display: none;
}

/* PATCH 4.653: use one frameless account-page layout for profile and broker-office flows. */
@media (min-width: 761px)
{
	

	

	

	

	

	

	

	

	

	#myInfoPageEditProfileBtn,
#brokerOfficePageEditBtn{
		width: auto !important;
		min-width: 76px !important;
		height: 44px !important;
		min-height: 44px !important;
		padding: 0 20px !important;
		border: 1px solid #dbe3ec !important;
		border-radius: 999px !important;
		background: #ffffff !important;
		color: #374151 !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		box-shadow: none !important;
	}

	#myInfoPageEditProfileBtn:hover,
#myInfoPageEditProfileBtn:focus-visible,
#brokerOfficePageEditBtn:hover,
#brokerOfficePageEditBtn:focus-visible{
		border-color: #cbd5e1 !important;
		background: #f8fafc !important;
		color: #111827 !important;
	}
}

/* PATCH 4.654: exact compact buttons, full-width account pages, and the shared footer. */
@media (min-width: 761px)
{
	

	

	

	#myInfoPagePasswordChangeBtn,
#myInfoPageEditProfileBtn,
#profileEditPageSaveBtn,
#profileEditPageCloseBtn,
#brokerOfficePageEditBtn,
#brokerOfficePageCloseBtn,
#brokerOfficeEditPageSaveBtn,
#brokerOfficeEditPageCloseBtn{
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: max-content !important;
		min-width: 0 !important;
		max-width: none !important;
		height: 44px !important;
		min-height: 44px !important;
		padding: 0 14px !important;
		border: 1px solid #dbe3ec !important;
		border-radius: 999px !important;
		background: #ffffff !important;
		color: #374151 !important;
		font-size: 14px !important;
		font-weight: 600 !important;
		line-height: 1 !important;
		box-shadow: none !important;
		flex: 0 0 auto !important;
	}

	#myInfoPagePasswordChangeBtn:hover,
#myInfoPagePasswordChangeBtn:focus-visible,
#myInfoPageEditProfileBtn:hover,
#myInfoPageEditProfileBtn:focus-visible,
#profileEditPageSaveBtn:hover,
#profileEditPageSaveBtn:focus-visible,
#profileEditPageCloseBtn:hover,
#profileEditPageCloseBtn:focus-visible,
#brokerOfficePageEditBtn:hover,
#brokerOfficePageEditBtn:focus-visible,
#brokerOfficePageCloseBtn:hover,
#brokerOfficePageCloseBtn:focus-visible,
#brokerOfficeEditPageSaveBtn:hover,
#brokerOfficeEditPageSaveBtn:focus-visible,
#brokerOfficeEditPageCloseBtn:hover,
#brokerOfficeEditPageCloseBtn:focus-visible{
		border-color: #cbd5e1 !important;
		background: #f8fafc !important;
		color: #111827 !important;
	}

	

	
}







#globalTopbarMoreBtn.account-launcher-button .topbar-nine-dot-grid{
	grid-template-columns: repeat(3, 4.8px) !important;
	grid-template-rows: repeat(3, 4.8px) !important;
	gap: 2.5px !important;
	width: 19.4px !important;
	height: 19.4px !important;
}

#globalTopbarMoreBtn.account-launcher-button .topbar-nine-dot-grid > span{
	width: 4.8px !important;
	height: 4.8px !important;
}

/* PATCH 4.656: restore compact account actions and landing-equivalent footer spacing. */
#myInfoPagePasswordChangeBtn,
#myInfoPageEditProfileBtn,
#profileEditPageSaveBtn,
#profileEditPageCloseBtn,
#brokerOfficePageEditBtn,
#brokerOfficePageCloseBtn,
#brokerOfficeEditPageSaveBtn,
#brokerOfficeEditPageCloseBtn{
	height: 36px !important;
	min-height: 36px !important;
	max-height: 36px !important;
	padding: 0 12px !important;
}





/* Keep the shipped wordmark weight consistent across desktop systems. */
.global-brand .brand-name{
	font-family: "SUITLocal", sans-serif;
	font-weight: 900 !important;
	letter-spacing: -1px;
	font-synthesis: none;
	text-shadow: none;
	-webkit-text-stroke: 0.25px currentColor;
	paint-order: stroke fill;
}

/* 4.680 account pages: one shared layout, isolated from the map workspace. */
:root{
	--account-page-detail-width: 680px;
	--account-page-wide-width: min(1120px, calc(100vw - 64px));
	--account-page-inquiry-width: var(--account-page-detail-width);
	--account-page-edge: max(32px, calc((100vw - var(--account-page-wide-width)) / 2));
	--account-page-top-gap: 32px;
	--account-page-head-gap: 28px;
	--account-page-bottom-gap: 40px;
	--account-footer-top-gap: 40px;
	--account-footer-bottom-gap: 60px;
	--account-page-surface: #f5f6f8;
	--account-page-line: #dfe5ec;
	--account-page-text: #111827;
	--account-page-muted: #667085;
	--account-field-inline: 16px;
}

body.realjeju-standalone-page-transition-cover{
	background: var(--account-page-surface, #f5f6f8);
}

body.realjeju-standalone-page-transition-cover::before{
	content: "";
	position: fixed;
	left: 0;
	right: 0;
	top: var(--global-topbar-height, 65px);
	bottom: 0;
	z-index: 2147482500;
	display: block;
	background: var(--account-page-surface, #f5f6f8);
	pointer-events: none;
}

.account-page-panel{
	position: relative;
	inset: auto;
	z-index: auto;
	display: none;
	width: 100%;
	min-height: calc(100vh - var(--global-topbar-height, 65px));
	overflow: visible;
	padding-top: 0;
	background: #ffffff;
	box-sizing: border-box;
	color: var(--account-page-text);
}

.account-page-panel::-webkit-scrollbar,
body.account-inquiries-page-open #mySuitePanel::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

.account-page-panel[aria-hidden="false"]{
	display: block;
}

.account-page-panel[aria-hidden="true"]{
	display: none;
}

body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #topbarMenu.global-topbar-menu.has-map-filters,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #mapSideTools,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .map-zoom-group,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #currentLocationBtn{
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.account-page-inner{
	width: 100%;
	margin: 0;
	padding: var(--account-page-top-gap) 0 var(--account-page-bottom-gap);
	background: var(--account-page-surface);
	box-sizing: border-box;
}

.account-page-head{
	width: min(var(--account-page-detail-width), calc(100vw - 48px));
	margin: 0 auto;
	box-sizing: border-box;
}

.myinfo-page-title{
	margin: 0;
	color: var(--account-page-text);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
}

.myinfo-page-desc,
.my-suite-content-desc{
	margin: 7px 0 0;
	color: var(--account-page-muted);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: 0;
}

.account-page-card{
	width: min(var(--account-page-detail-width), calc(100vw - 48px));
	margin: var(--account-page-head-gap) auto 0;
	padding: 38px 40px;
	border: 1px solid var(--account-page-line);
	border-radius: 0;
	background: #ffffff;
	box-sizing: border-box;
	box-shadow: none;
}

.account-page-card[data-broker-office-info-mode="empty"]{
	padding-top: 38px;
	padding-bottom: 38px;
}

.broker-office-empty-state{
	display: flex;
	min-height: 168px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	text-align: center;
}

.broker-office-empty-state .my-suite-profile-loading{
	margin: 0 0 22px;
	padding: 0;
}

.broker-office-empty-state .my-suite-profile-desc{
	margin: 0;
}

.broker-office-empty-state .myinfo-page-actions{
	margin-top: 30px;
}

.myinfo-page-photo-box{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 88px;
	height: 88px;
	margin: 0 auto 30px;
	border: 1px solid #d8e0e9;
	border-radius: 50%;
	overflow: hidden;
	background: #ffffff;
	box-sizing: border-box;
}

.myinfo-page-photo{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.myinfo-page-row{
	display: grid;
	grid-template-columns: 156px minmax(0, 1fr);
	column-gap: 24px;
	align-items: center;
	min-height: 62px;
	border-bottom: 0;
	box-sizing: border-box;
}

.myinfo-page-label{
	color: #344054;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0;
}

.myinfo-page-value{
	display: flex;
	align-items: center;
	min-width: 0;
	min-height: 46px;
	padding: 0 16px;
	border: 1px solid #dce3eb;
	background: #f7f9fb;
	box-sizing: border-box;
	color: var(--account-page-text);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0;
	word-break: break-word;
}

.profile-suite-input,
.broker-office-edit-address-input{
	width: 100%;
	height: 46px;
	min-width: 0;
	padding: 0 var(--account-field-inline);
	border: 1px solid #d2dae4;
	border-radius: 0;
	background: #ffffff;
	box-sizing: border-box;
	color: var(--account-page-text);
	font: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
	letter-spacing: 0;
}

select.profile-suite-input{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-left: var(--account-field-inline);
	padding-right: 40px;
	text-indent: 0;
}

.profile-suite-member-row{
	position: relative;
}

.profile-suite-member-row::after{
	content: "\f078";
	position: absolute;
	top: 50%;
	right: var(--account-field-inline);
	transform: translateY(-50%);
	color: #111827;
	font-family: "Font Awesome 6 Free";
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	pointer-events: none;
}

.profile-suite-input[readonly],
.profile-suite-input[aria-readonly="true"]{
	background: #f2f4f7;
	color: #667085;
}

.agency-public-id-row{
	align-items: start;
	min-height: 82px;
	padding: 8px 0;
}

.agency-public-id-row > .myinfo-page-label{
	padding-top: 13px;
}

.agency-public-id-field{
	min-width: 0;
}

.agency-public-id-control{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
	min-width: 0;
}

.agency-public-id-input{
	text-transform: lowercase;
}

.agency-public-id-check-btn{
	height: 46px;
	padding: 0 16px;
	border: 1px solid #cbd5e1;
	border-radius: 4px;
	background: #ffffff;
	color: #1f2937;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	white-space: nowrap;
	cursor: pointer;
}

.agency-public-id-check-btn:hover{
	border-color: #2563eb;
	color: #2563eb;
}

.agency-public-id-check-btn:disabled{
	border-color: #dce3eb;
	background: #f2f4f7;
	color: #98a2b3;
	cursor: default;
}

.agency-public-id-meta{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 12px;
	min-width: 0;
	min-height: 0;
	margin-top: 6px;
	font-size: 12px;
	line-height: 1.4;
	letter-spacing: 0;
}

.agency-public-id-help{
	margin: 8px 0 0;
	color: #667085;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: 0;
}

.agency-public-id-status{
	flex: 0 0 auto;
	color: #667085;
}

.agency-public-id-status:empty{
	display: none;
}

.agency-public-id-meta:has(.agency-public-id-status:empty){
	display: none;
}

.agency-public-id-status[data-state="available"],
.agency-public-id-status[data-state="locked"]{
	color: #08783e;
	font-weight: 600;
}

.agency-public-id-status[data-state="unavailable"],
.agency-public-id-status[data-state="invalid"],
.agency-public-id-status[data-state="error"]{
	color: #d92d20;
	font-weight: 600;
}

.agency-public-id-preview{
	min-width: 0;
	overflow: hidden;
	color: #2563eb;
	text-align: right;
	text-decoration: none;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#brokerOfficeApplyForm .agency-public-id-row{
	min-height: 82px;
}

#brokerOfficeApplyForm .agency-public-id-field{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	grid-template-areas:
		"control check"
		"help help"
		"meta meta";
	column-gap: 12px;
	row-gap: 6px;
	align-items: center;
}

#brokerOfficeApplyForm .agency-public-id-control{
	display: contents;
}

#brokerOfficeApplyForm .agency-public-id-input{
	grid-area: control;
	width: 100%;
}

#brokerOfficeApplyForm .agency-public-id-check-btn{
	grid-area: check;
	align-self: start;
	height: 46px;
	padding: 0 16px;
	border-radius: 4px;
	font-size: 14px;
	line-height: normal;
}

#brokerOfficeApplyForm .agency-public-id-help{
	grid-area: help;
	margin: 0;
}

#brokerOfficeApplyForm .agency-public-id-meta{
	grid-area: meta;
	min-height: 0;
	margin-top: 0;
}

#brokerOfficeApplyForm .broker-apply-actions{
	align-items: center;
	margin-top: 24px;
}

#brokerOfficeApplyForm .broker-apply-actions .myinfo-page-primary,
#brokerOfficeApplyForm .broker-apply-actions .myinfo-page-secondary{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 36px;
	margin: 0;
	padding: 0 14px;
	box-sizing: border-box;
	line-height: 1;
	vertical-align: middle;
}

#brokerOfficeApplyForm .broker-apply-actions .broker-apply-submit{
	margin-top: 0;
}

.agency-public-id-display a:hover{
	text-decoration: underline;
}

.agency-public-id-display a{
	min-width: 0;
	overflow: hidden;
	color: #2563eb;
	text-decoration: none;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.broker-office-edit-address-wrap .broker-office-edit-address-input,
.broker-office-edit-address-wrap .broker-office-edit-address-input[readonly]{
	padding-left: 52px;
	background: #ffffff;
	color: var(--account-page-text);
}

.profile-suite-photo-row{
	min-height: 112px;
}

.profile-suite-photo-row .myinfo-page-photo-box{
	width: 84px;
	height: 84px;
	margin: 0;
}

.profile-suite-photo-control{
	display: flex;
	align-items: center;
	gap: 18px;
}

.profile-suite-photo-btn{
	height: 36px;
	padding: 0 14px;
	border: 1px solid #d5dee9;
	border-radius: 18px;
	background: #ffffff;
	color: #344054;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	cursor: pointer;
}

.profile-suite-consent{
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 24px;
	color: #667085;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0;
}

.profile-suite-consent input{
	width: 18px;
	height: 18px;
	margin: 0;
	flex: 0 0 18px;
}

.myinfo-page-actions{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 32px;
}

.myinfo-page-primary,
.myinfo-page-secondary{
	width: auto;
	height: 36px;
	min-width: 0;
	padding: 0 14px;
	border: 1px solid #d5dee9;
	border-radius: 18px;
	background: #ffffff;
	box-sizing: border-box;
	color: #344054;
	font-size: 14px;
	font-weight: 600;
	line-height: 34px;
	letter-spacing: 0;
	white-space: nowrap;
	cursor: pointer;
}

.myinfo-page-danger-zone{
	display: flex;
	align-items: center;
	width: min(var(--account-page-detail-width), calc(100vw - 48px));
	margin: 24px auto 0;
	padding: 0;
	border: 0;
	color: #98a2b3;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0;
}

.myinfo-page-danger-mark{
	margin-right: 6px;
}

.myinfo-page-danger-link{
	padding: 0;
	border: 0;
	background: transparent;
	color: #98a2b3;
	font: inherit;
	text-decoration: underline;
	cursor: pointer;
}

.myinfo-page-danger-desc{
	margin-left: 5px;
}

.account-page-common-footer{
	width: 100%;
	max-width: none;
	height: auto;
	min-height: 0;
	flex: 0 0 auto;
	margin: 0;
	padding: var(--account-footer-top-gap) var(--account-page-edge) var(--account-footer-bottom-gap);
	border-top: 1px solid #e5e9ef;
	background: #ffffff;
	box-sizing: border-box;
	color: #5f6368;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0;
}

.account-page-common-footer .main-landing-footer-line{
	display: none;
}

.account-page-common-footer .main-landing-footer-name{
	color: #34383d;
}

.account-page-common-footer .myinfo-company-nav,
.account-page-common-footer .myinfo-company-links{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0;
	margin: 0 0 4px;
	padding: 0;
}

.account-page-common-footer .myinfo-company-link,
.account-page-common-footer .main-landing-footer-link{
	-webkit-appearance: none;
	appearance: none;
	width: auto;
	height: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #4f545a;
	box-shadow: none;
	font: inherit;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: 0;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}

.account-page-common-footer .myinfo-company-link.is-strong{
	font-weight: 600;
}

.account-page-common-footer .myinfo-company-separator,
.account-page-common-footer .myinfo-company-nav > span,
.account-page-common-footer .myinfo-company-links > span{
	margin: 0 6px;
	color: #8b929a;
	font-size: 12px;
	line-height: 1.7;
}

.account-page-common-footer .main-landing-footer-copy{
	color: #6f757c;
}

.payment-page-inner .account-page-head,
.payment-account-card{
	width: var(--account-page-wide-width);
	max-width: var(--account-page-wide-width);
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.payment-account-card{
	margin-top: var(--account-page-head-gap);
	padding: 28px;
	border: 1px solid var(--account-page-line);
	background: #ffffff;
}

.payment-account-card > .payment-tabs{
	margin: 0 0 24px;
}

.payment-account-card > .payment-tab-panel{
	width: 100%;
	max-width: none;
	margin: 0;
	box-sizing: border-box;
}

body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .realjeju-side-nav,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .sidebar,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .resizer,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .map-wrap,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .sub-topbar{
	display: none;
}

body.realjeju-side-nav-enabled:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .app{
	padding-left: 0;
}

body.account-inquiries-page-open #mySuitePanel{
	position: relative;
	inset: auto;
	z-index: auto;
	display: block;
	width: 100%;
	min-height: calc(100vh - var(--global-topbar-height, 65px));
	overflow: visible;
	padding: 0;
	background: #ffffff;
	box-sizing: border-box;
}

body.account-inquiries-page-open #mySuitePanel[aria-hidden="true"]{
	display: none;
}

body.account-inquiries-page-open #mySuitePanel > .my-suite-inner{
	width: 100%;
	max-width: none;
	min-height: 0;
	margin: 0;
	padding: 0;
	background: #ffffff;
	box-sizing: border-box;
}

body.account-inquiries-page-open #mySuiteContent{
	width: 100%;
	margin: 0;
	padding: var(--account-page-top-gap) 0 var(--account-page-bottom-gap);
	background: var(--account-page-surface);
	box-sizing: border-box;
}

body.account-inquiries-page-open .my-suite-inquiry-head,
body.account-inquiries-page-open .my-suite-inquiry-list,
body.account-inquiries-page-open .my-suite-inquiry-empty,
body.account-inquiries-page-open .my-suite-inquiry-empty-text,
body.account-inquiries-page-open .my-suite-inquiry-bottom-actions,
body.account-inquiries-page-open .my-suite-inquiry-form,
body.account-inquiries-page-open .my-suite-profile-loading{
	width: min(var(--account-page-inquiry-width), calc(100vw - 48px));
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

body.account-inquiries-page-open .my-suite-inquiry-list,
body.account-inquiries-page-open .my-suite-inquiry-form{
	margin-top: var(--account-page-head-gap);
	border: 1px solid var(--account-page-line);
	border-radius: 0;
	background: #ffffff;
	box-shadow: none;
}

body.account-inquiries-page-open .my-suite-inquiry-list{
	padding: 10px;
}

body.account-inquiries-page-open .my-suite-inquiry-head{
	margin-top: 0;
	margin-bottom: 0;
}

body.account-inquiries-page-open .my-suite-inquiry-empty,
body.account-inquiries-page-open .my-suite-inquiry-empty-text,
body.account-inquiries-page-open .my-suite-profile-loading{
	margin-top: var(--account-page-head-gap);
	border: 1px solid var(--account-page-line);
	background: #ffffff;
}

body.account-inquiries-page-open .my-suite-inquiry-item{
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.account-inquiries-page-open .my-suite-inquiry-item:last-child{
	border-bottom: 0;
}

body.account-inquiries-page-open .my-suite-inquiry-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	min-height: 52px;
	padding: 0 20px;
}

body.account-inquiries-page-open .my-suite-inquiry-main{
	display: grid;
	grid-template-columns: 108px minmax(0, 1fr) 82px;
	align-items: center;
	gap: 18px;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
	cursor: pointer;
}

body.account-inquiries-page-open .my-suite-inquiry-date,
body.account-inquiries-page-open .my-suite-inquiry-title{
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0;
}

body.account-inquiries-page-open .my-suite-inquiry-state,
body.account-inquiries-page-open .my-suite-inquiry-delete{
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0;
}

body.account-inquiries-page-open .my-suite-inquiry-bottom-actions{
	display: flex;
	justify-content: flex-end;
	margin-top: 24px;
	padding: 0;
}

body.account-inquiries-page-open .my-suite-inquiry-primary,
body.account-inquiries-page-open .my-suite-inquiry-secondary{
	width: auto;
	height: 36px;
	padding: 0 14px;
	border: 1px solid #d5dee9;
	border-radius: 18px;
	background: #ffffff;
	color: #344054;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
}

body.account-inquiries-page-open .my-suite-company-footer{
	width: 100%;
	max-width: none;
	margin: 0;
	padding: var(--account-footer-top-gap) var(--account-page-edge) var(--account-footer-bottom-gap);
	border-top: 1px solid #e5e9ef;
	background: #ffffff;
	box-sizing: border-box;
}

body.account-inquiries-page-open .my-suite-company-footer::before{
	display: none;
}

body.realjeju-document-page-open{
	min-height: 100vh;
	overflow-x: hidden;
	overflow-y: auto;
	background: #ffffff;
}

body.realjeju-document-page-open .global-topbar{
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	transform: translateZ(0);
	transition: none;
}

body.realjeju-document-page-open .app{
	display: none;
}

@media (max-width: 760px){
	:root{
		--account-page-wide-width: calc(100vw - 32px);
		--account-page-edge: 24px;
		--account-page-top-gap: 24px;
		--account-page-head-gap: 20px;
		--account-page-bottom-gap: 32px;
		--account-footer-top-gap: 32px;
		--account-footer-bottom-gap: 44px;
	}

	.account-page-head,
	.account-page-card,
	.myinfo-page-danger-zone,
	body.account-inquiries-page-open .my-suite-inquiry-head,
	body.account-inquiries-page-open .my-suite-inquiry-list,
	body.account-inquiries-page-open .my-suite-inquiry-empty,
	body.account-inquiries-page-open .my-suite-inquiry-empty-text,
	body.account-inquiries-page-open .my-suite-inquiry-bottom-actions,
	body.account-inquiries-page-open .my-suite-inquiry-form,
	body.account-inquiries-page-open .my-suite-profile-loading{
		width: calc(100vw - 32px);
	}

	.account-page-card{
		padding: 28px 22px;
	}

	.payment-account-card{
		width: calc(100vw - 32px);
		max-width: none;
		padding: 22px 16px;
	}

	.myinfo-page-title{
		font-size: 23px;
	}

	.myinfo-page-row{
		grid-template-columns: 112px minmax(0, 1fr);
		column-gap: 14px;
	}

	.myinfo-page-label,
	.myinfo-page-value,
	.profile-suite-input{
		font-size: 14px;
	}

	.agency-public-id-control{
		grid-template-columns: minmax(0, 1fr);
	}

	.agency-public-id-check-btn{
		width: 100%;
	}

	.agency-public-id-meta{
		align-items: flex-start;
		flex-direction: column;
		gap: 3px;
	}

	#brokerOfficeApplyForm .agency-public-id-field{
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			"control"
			"check"
			"help"
			"meta";
	}

	#brokerOfficeApplyForm .agency-public-id-check-btn{
		justify-self: end;
		width: auto;
	}

	.agency-public-id-preview{
		max-width: 100%;
		text-align: left;
	}

	body.account-inquiries-page-open .my-suite-inquiry-main{
		grid-template-columns: 78px minmax(0, 1fr);
		gap: 10px;
	}

body.account-inquiries-page-open .my-suite-inquiry-state{
		grid-column: 2;
	}
}

.main-landing-footer{
	color: #5f6368 !important;
}

.main-landing-footer .main-landing-footer-name{
	color: #34383d !important;
}

.main-landing-footer .main-landing-footer-link{
	color: #4f545a !important;
}

.main-landing-footer .main-landing-footer-copy{
	color: #6f757c !important;
}


#mySuitePanel{
	scrollbar-width: none;
	-ms-overflow-style: none;
}

#mySuitePanel::-webkit-scrollbar{
	display: none;
	width: 0;
	height: 0;
}

.account-launcher-item,
.account-launcher-logout{
	font-size: 15px;
	font-weight: 500;
}

/* PATCH 4.748: left-align every map region count card, including city labels. */
.property-region-count-label,
.property-region-count-label.is-city,
.property-region-count-label.is-province,
.property-region-count-label.is-district{
	align-items: flex-start !important;
	text-align: left !important;
}

.property-region-count-label strong,
.property-region-count-label span{
	width: 100% !important;
	text-align: left !important;
}

/* PATCH 4.748: temporarily hide used-market and meetup from the top category nav. */
#globalCategoryMenu .global-category-item[data-global-category="used-market"],
#globalCategoryMenu .global-category-item[data-global-category="meetup"]{
	display: none !important;
}

/* PATCH 4.783: use a sub-pixel divider between the top navigation and the map. */
.global-topbar{
	border-bottom: 0;
	background-image: linear-gradient(to bottom, transparent calc(100% - 0.3px), rgba(229, 231, 235, 0.82) calc(100% - 0.3px));
	background-repeat: no-repeat;
	background-size: 100% 100%;
	box-shadow: none;
}

.sub-topbar{
	border-bottom: 0;
	background-image: linear-gradient(to bottom, transparent calc(100% - 0.3px), rgba(229, 231, 235, 0.82) calc(100% - 0.3px));
	background-repeat: no-repeat;
	background-size: 100% 100%;
	box-shadow: none;
}

/* PATCH 4.783: account pages scroll the top navigation away with the page content. */
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) .global-topbar{
	position: relative;
	top: auto;
}

/* PATCH 4.825: every scrolling document page uses the shared topbar geometry. */
body.realjeju-document-page-open #topbarMenu.global-topbar-menu.has-map-filters{
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	height: 100% !important;
	transform: none !important;
	pointer-events: none !important;
	z-index: 2147482990 !important;
}

/* PATCH 4.834: scrolling pages keep the same shared category navigation and stacking order. */
body.realjeju-document-page-open #globalCategoryMenu.global-category-menu{
	position: absolute !important;
	top: calc((var(--global-topbar-height, 65px) - 38px) / 2) !important;
	left: 50% !important;
	right: auto !important;
	transform: translateX(-50%) !important;
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #globalCategoryMenu .global-category-item,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #globalCategoryMenu .global-category-item.is-active{
	background: transparent !important;
	color: #8b8f96 !important;
	box-shadow: none !important;
}

body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #globalCategoryMenu .global-category-item i,
body:is(.myinfo-page-open, .profile-edit-page-open, .broker-office-info-page-open, .broker-office-apply-page-open, .broker-office-edit-page-open, .payment-page-open, .account-inquiries-page-open) #globalCategoryMenu .global-category-item.is-active i{
	color: #96999f !important;
}

/* PATCH 4.783: common local-business recent card for brokers, tax offices, legal offices, and future 업체 types. */
.local-business-recent-card-layer{
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 2147482600;
	width: min(var(--sidebar-list-width, 430px), calc(100% - 32px));
	pointer-events: none;
}

.local-business-recent-card-layer[hidden],
body:not([data-global-category="local-business"]) .local-business-recent-card-layer{
	display: none !important;
}

/* PATCH 4.783: local-business roadview covers the map/card layer instead of sitting behind it. */
body[data-global-category="local-business"]:is(.roadview-split-open, .roadview-detail-left-open) .local-business-recent-card-layer{
	display: none !important;
}

body[data-global-category="local-business"].roadview-split-open .roadview-overlay,
body[data-global-category="local-business"].roadview-split-open .roadview-overlay.open,
body[data-global-category="local-business"].roadview-detail-left-open .roadview-overlay.detail-left-roadview,
body[data-global-category="local-business"].roadview-detail-left-open .roadview-overlay.detail-left-roadview.open{
	position: fixed !important;
	top: var(--global-topbar-height, 65px) !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	z-index: 2147483647 !important;
	pointer-events: auto !important;
	transform: translateX(0) scale(1) !important;
}

body[data-global-category="local-business"].roadview-detail-left-open .roadview-overlay.detail-left-roadview::after{
	display: none !important;
}

/* PATCH 4.809: 관심부동산ㆍ관리자 매물관리ㆍ중개사 홈이 같은 앞쪽 열과 30px 간격을 사용한다. */
:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
){
	--broker-list-front-gap: 30px;
	--broker-list-type-col: 64px;
	--broker-list-status-col: 44px;
	--broker-list-date-col: 74px;
	--broker-list-no-value-col: 74px;
	--broker-list-view-col: 44px;
	--broker-list-title-min: 300px;
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row){
	grid-template-columns:
		var(--broker-list-photo-col)
		36px
		var(--broker-list-type-col)
		var(--broker-list-front-gap)
		var(--broker-list-status-col)
		var(--broker-list-front-gap)
		var(--broker-list-date-col)
		var(--broker-list-front-gap)
		var(--broker-list-no-value-col)
		var(--broker-list-front-gap)
		var(--broker-list-view-col)
		var(--broker-list-front-gap)
		minmax(var(--broker-list-title-min), 1fr)
		var(--broker-list-title-area-gap)
		var(--broker-list-area-col)
		var(--broker-list-area-price-gap)
		var(--broker-list-price-col)
		var(--broker-list-price-edit-gap)
		var(--broker-list-edit-col)
		var(--broker-list-button-gap)
		var(--broker-list-copy-col)
		var(--broker-list-button-gap)
		var(--broker-list-menu-col);
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(1){ grid-column: 1; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(2){ grid-column: 3; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(3){ grid-column: 5; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(4){ grid-column: 7; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > :is(div:nth-child(2), div:nth-child(3), div:nth-child(4)){
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding-left: 0;
	padding-right: 0;
	text-align: center;
	white-space: nowrap;
	word-break: keep-all;
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-id-views-head, .broker-listing-no-views){
	display: contents;
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-id-views-head, .broker-listing-no-views) > span:first-child{
	grid-column: 9;
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-id-views-head, .broker-listing-no-views) > span:last-child{
	grid-column: 11;
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-id-views-head, .broker-listing-no-views) > span{
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	text-align: center;
}

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(6){ grid-column: 13; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(7){ grid-column: 15; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(8){ grid-column: 17; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(9){ grid-column: 19; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(10){ grid-column: 21; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) :is(.broker-listing-head, .broker-listing-row) > div:nth-child(11){ grid-column: 23; }

:is(
	body.realjeju-side-nav-enabled.broker-home-page-open #brokerListingsList,
	body.realjeju-side-nav-enabled.admin-page-open .admin-listings-list,
	body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-favorites-list
) .broker-listing-head > div:nth-child(6){
	justify-self: start;
	text-align: left;
}

/* PATCH 4.809: 세 관리 화면의 한 줄 로고와 콘텐츠 끝 여백을 같은 값으로 사용한다. */
.realjeju-management-mini-footer{
	margin-top: 0;
	padding-top: 0;
	padding-bottom: 48px;
	background: #ffffff;
	text-align: center;
}

.realjeju-management-mini-footer::before,
.realjeju-management-mini-copy::before{
	display: none;
	content: none;
}

.realjeju-management-mini-footer .broker-home-company-inner{
	padding-top: 0;
	padding-bottom: 0;
}

.realjeju-management-mini-copy{
	margin: 72px 0 0;
	padding: 0;
	color: #9ca3af;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
	text-align: center;
}

/* PATCH 4.902: 페이지 번호 다음에 화면별 래퍼 여백이나 flex 자동 여백이 끼지 않게 한다. */
body.realjeju-side-nav-enabled.admin-page-open .admin-page-tab-panel[data-admin-tab-panel="listings"].active{
	margin-bottom: 0 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-panel > .realjeju-management-mini-footer,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-inner > .realjeju-management-mini-footer,
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .realjeju-management-mini-footer{
	margin-top: 0 !important;
}

body.realjeju-side-nav-enabled.admin-page-open .admin-page-panel > .realjeju-management-mini-footer .realjeju-management-mini-copy,
body.realjeju-side-nav-enabled.my-suite-page-open .my-suite-inner > .realjeju-management-mini-footer .realjeju-management-mini-copy{
	margin-top: 72px !important;
}

/* PATCH 4.906: 중개사 홈은 매물관리와 향후 계약관리 모두 목록/페이지 번호 다음부터 로고까지 같은 72px을 사용한다. */
body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .realjeju-management-mini-footer{
	padding-top: var(--broker-home-pagination-logo-gap);
}

body.realjeju-side-nav-enabled.broker-home-page-open .broker-home-panel > .realjeju-management-mini-footer .realjeju-management-mini-copy{
	margin-top: 0;
}

.local-business-recent-card{
	pointer-events: auto;
	box-sizing: border-box;
	width: 100%;
	padding: 0;
	border: 0;
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 12px 34px rgba(15, 23, 42, 0.14), 0 3px 10px rgba(15, 23, 42, 0.08);
	overflow: hidden;
}

.local-business-recent-card .sidebar-list-header{
	flex: 0 0 var(--rj-panel-header-height, 56px);
	min-height: var(--rj-panel-header-height, 56px);
}

.local-business-recent-card .sidebar-list-agent-card{
	border-bottom: 0.5px solid #e5e7eb;
}

.local-business-recent-card .sidebar-list-agent-card:last-child{
	margin-bottom: 0;
}

.local-business-recent-card-top{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: var(--rj-panel-header-height, 56px);
	padding: 0 14px 0 16px;
	border-bottom: 0.5px solid #f1f3f6;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.98);
}

.local-business-recent-card-title{
	color: #111827;
	font-family: var(--font-ui);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	white-space: nowrap;
	text-align: left;
	margin-right: 92px;
}

.local-business-recent-card-top-actions{
	position: absolute;
	right: 52px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.local-business-recent-card-share,
.local-business-recent-card-close{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #111827;
	font-size: 26px;
	font-weight: 600;
	line-height: 1;
	box-shadow: none;
	cursor: pointer;
}

.local-business-recent-card-share{
	position: relative;
}

.local-business-recent-card-close{
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
}

.local-business-recent-card-share i,
.local-business-recent-card-close i{
	display: none;
}

.local-business-recent-card-share::before{
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	width: 24px;
	height: 24px;
	border: 0;
	border-radius: 0;
	background: currentColor;
	transform: translate(-50%, -50%);
	-webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'/%3E%3Cpath%20d='M12%203v13'/%3E%3Cpath%20d='m7%208%205-5%205%205'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='1.8'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M21%2015v4a2%202%200%200%201-2%202H5a2%202%200%200%201-2-2v-4'/%3E%3Cpath%20d='M12%203v13'/%3E%3Cpath%20d='m7%208%205-5%205%205'/%3E%3C/svg%3E") center / contain no-repeat;
}

.local-business-recent-card-close::before,
.local-business-recent-card-close::after{
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	width: 24px;
	height: 2px;
	border-radius: 999px;
	background: currentColor;
	transform-origin: center;
}

.local-business-recent-card-close::before{
	transform: translate(-50%, -50%) rotate(45deg);
}

.local-business-recent-card-close::after{
	transform: translate(-50%, -50%) rotate(-45deg);
}

.local-business-recent-card-share:hover,
.local-business-recent-card-share:focus-visible,
.local-business-recent-card-close:hover,
.local-business-recent-card-close:focus-visible{
	background: transparent;
	color: #111827;
	box-shadow: none;
	outline: none;
}

.local-business-recent-card-body{
	display: flex;
	align-items: flex-start;
	gap: 20px;
	padding: var(--rj-detail-card-padding-top, 18px) var(--rj-detail-card-padding-right, 18px) var(--rj-detail-card-padding-right, 18px) var(--rj-detail-card-padding-left, 18px);
	box-sizing: border-box;
}

.local-business-recent-card-avatar{
	flex: 0 0 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #f1f5f9;
	color: #64748b;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	overflow: hidden;
}

.local-business-recent-card-avatar img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.local-business-recent-card-main{
	flex: 1 1 auto;
	min-width: 0;
}

.local-business-recent-card-name-row{
	display: flex;
	align-items: baseline;
	gap: 8px;
	min-width: 0;
	margin-bottom: 4px;
}

.local-business-recent-card-name{
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.local-business-recent-card-role{
	flex: 0 0 auto;
	color: #64748b;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
}

.local-business-recent-card-line{
	margin-top: 2px;
	color: #64748b;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.local-business-recent-card-actions{
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	flex-wrap: wrap;
}

.local-business-recent-card-action{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	height: 34px;
	padding: 0 11px;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	box-shadow: none;
	white-space: nowrap;
}

.local-business-recent-card-action.listing{
	border-color: #bfd4ff;
	color: #2563eb;
}

.local-business-recent-card-action:hover,
.local-business-recent-card-action:focus-visible{
	background: #f8fafc;
	outline: none;
}

.local-business-recent-card-action i{
	font-size: 12px;
	line-height: 1;
}

/* PATCH 4.835: presale reuses the canonical property-filter geometry. */
.presale-map-filter-bar{
	display: none;
	align-items: center;
	gap: 6px;
	width: max-content;
	min-width: max-content;
}

body.presale-page-open .map-filter-bar > :not(.map-region-filter-dropdown):not(.presale-map-filter-bar){
	display: none;
}

body.presale-page-open #topbarMenu.global-topbar-menu.has-map-filters .map-filter-bar > .presale-map-filter-bar{
	display: flex;
}

.presale-map-filter-bar .presale-filter-dropdown{
	margin: 0;
}

.presale-filter-menu,
body > .map-filter-floating-menu.presale-filter-menu{
	box-sizing: border-box;
	width: 420px;
	min-width: 420px;
	max-width: min(420px, calc(100vw - 48px));
	max-height: calc(100vh - 112px);
	padding: 22px 24px 24px;
	gap: 16px;
	overflow: auto;
	border: 0;
	border-radius: 20px;
	background: rgba(255,255,255,0.98);
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.14);
	color: #111827;
	font-family: var(--font-ui);
}

.presale-filter-menu-title{
	display: block;
	margin: 0 0 22px;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
}

.presale-filter-section + .presale-filter-section{
	margin-top: 26px;
}

.presale-filter-section h3{
	margin: 0 0 14px;
	color: #374151;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0;
}

.presale-filter-option-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.presale-filter-option{
	appearance: none;
	-webkit-appearance: none;
	font-family: var(--font-ui);
	letter-spacing: 0;
	cursor: pointer;
}

.presale-filter-tile{
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 8px;
	border: 1.25px solid transparent;
	border-radius: 6px;
	background: #f3f4f6;
	color: #73777d;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.1;
	text-align: center;
}

.presale-filter-tile.active{
	border-color: #111827;
	background: #ffffff;
	color: #111827;
	font-weight: 700;
}

.presale-filter-chip-grid{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
}

.presale-filter-chip{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 42px;
	padding: 8px 15px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: #f3f4f6;
	color: #777d87;
	font-size: 14px;
	font-weight: 650;
	line-height: 1;
	white-space: nowrap;
}

.presale-filter-chip i{
	color: #a3a8b0;
	font-size: 12px;
}

.presale-filter-chip.active{
	border-color: #111827;
	background: #ffffff;
	color: #111827;
	font-weight: 750;
}

.presale-filter-chip.active i{
	color: #111827;
}

.presale-filter-menu-status .presale-filter-chip-grid,
.presale-filter-menu-form .presale-filter-chip-grid,
.presale-filter-menu-conditions .presale-filter-chip-grid{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: stretch;
	gap: 8px;
}

.presale-filter-menu-status .presale-filter-chip,
.presale-filter-menu-form .presale-filter-chip,
.presale-filter-menu-conditions .presale-filter-chip{
	width: 100%;
	min-height: 36px;
	padding: 0 8px;
	border: 1.25px solid transparent;
	border-radius: 6px;
	background: #f3f4f6;
	color: #73777d;
	font-family: var(--font-ui);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.1;
	letter-spacing: 0;
	text-align: center;
	white-space: normal;
	box-sizing: border-box;
}

.presale-filter-menu-status .presale-filter-chip.active,
.presale-filter-menu-form .presale-filter-chip.active,
.presale-filter-menu-conditions .presale-filter-chip.active{
	border-color: #111827;
	background: #ffffff;
	color: #111827;
	font-weight: 700;
}

.presale-range-summary-row{
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 34px;
	margin-bottom: 20px;
}

.presale-range-summary-row > strong{
	color: #1764ff;
	font-size: 17px;
	font-weight: 750;
	line-height: 1.25;
}

.presale-range-manual-toggle,
.presale-area-unit-toggle{
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	min-width: 34px;
	height: 34px;
	padding: 0 10px;
	border: 1px solid #d8dde5;
	border-radius: 8px;
	background: #ffffff;
	color: #4b5563;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

.presale-range-manual-toggle{
	padding: 0;
	border-color: transparent;
	background: transparent;
	font-size: 16px;
}

.presale-dual-range{
	position: relative;
	height: 30px;
	margin: 0;
}

.presale-range-track{
	position: absolute;
	top: 14px;
	left: 0;
	right: 0;
	height: 4px;
	border-radius: 999px;
	background: #dfe3e7;
}

.presale-range-fill{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: inherit;
	background: #1764ff;
}

.presale-dual-range input[type="range"]{
	appearance: none;
	-webkit-appearance: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 30px;
	margin: 0;
	background: transparent;
	pointer-events: none;
}

.presale-dual-range input[type="range"]::-webkit-slider-runnable-track{
	height: 30px;
	background: transparent;
}

.presale-dual-range input[type="range"]::-webkit-slider-thumb{
	appearance: none;
	-webkit-appearance: none;
	width: 26px;
	height: 26px;
	margin-top: 2px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 7px rgba(15, 23, 42, 0.14);
	pointer-events: auto;
	cursor: grab;
}

.presale-dual-range input[type="range"]::-moz-range-track{
	height: 30px;
	background: transparent;
}

.presale-dual-range input[type="range"]::-moz-range-thumb{
	width: 26px;
	height: 26px;
	border: 1.4px solid #1764ff;
	border-radius: 50%;
	background: #ffffff;
	box-shadow: 0 2px 7px rgba(15, 23, 42, 0.14);
	pointer-events: auto;
	cursor: grab;
}

.presale-range-ticks{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
	margin-top: 2px;
	color: #4b5563;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
}

.presale-range-manual-row{
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
	align-items: end;
	gap: 10px;
	margin-top: 20px;
	padding-top: 16px;
	border-top: 1px solid #e5e7eb;
}

.presale-range-manual-row[hidden]{
	display: none;
}

.presale-range-manual-row label{
	display: grid;
	gap: 6px;
	color: #6b7280;
	font-size: 12px;
	font-weight: 650;
}

.presale-range-manual-row input{
	box-sizing: border-box;
	width: 100%;
	height: 38px;
	padding: 0 10px;
	border: 1px solid #d8dde5;
	border-radius: 7px;
	background: #ffffff;
	color: #111827;
	font-family: var(--font-ui);
	font-size: 14px;
}

.presale-range-manual-row button{
	height: 38px;
	padding: 0 15px;
	border: 0;
	border-radius: 7px;
	background: #111827;
	color: #ffffff;
	font-family: var(--font-ui);
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

@media (max-width: 760px){
	.presale-filter-option-grid{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.presale-range-ticks{
		font-size: 11px;
	}
}
