@charset "utf-8";

/* ===== 02.교회매매(목록) — Figma 1003:15596 ===== */
.cs-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}

/* 헤더 (sticky): 뒤로 + 검색 + 브레드크럼 + 탭 + 필터 */
.cs-head {position:sticky; top:0; z-index:20; background:var(--card);}
.cs-bar {display:flex; align-items:center; gap:14px; padding:17px 22px; border-bottom:1.92px solid var(--line);}
.cs-back {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:58px; height:58px;}
.cs-back img {width:32px; height:32px;}
.cs-search {flex:1; display:flex; align-items:center; gap:16px; height:74px; padding:0 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:42px;}
.cs-search img {width:31px; height:31px;}
.cs-search input {flex:1; min-width:0; border:0; background:transparent; font-size:25px; color:var(--ink);}
.cs-search input::placeholder {color:#6B7280;}

/* 필터 (pill) — Figma 1003:15619 */
.cs-filters {display:flex; flex-wrap:nowrap; gap:11.52px; padding:15px 27px 21px; border-bottom:1.92px solid var(--line); overflow-x:auto; scrollbar-width:none;}
.cs-filters::-webkit-scrollbar {display:none;}
.cs-dd {position:relative; flex:0 0 auto;}
.cs-fil {flex:0 0 auto; display:flex; align-items:center; gap:6px; padding:11px 23px; border:1.92px solid var(--line); border-radius:38px; background:var(--card); color:#6B7280; font-size:21px; font-weight:500; white-space:nowrap;}
.cs-fil .lbl {white-space:nowrap; font-size:inherit;}
.cs-fil img {width:21px; height:21px; transition:transform .2s ease;}
.cs-dd.open .cs-fil img {transform:rotate(180deg);}
.cs-fil.on {border-color:#2563EB; color:#2563EB; background:var(--mint);}
/* 전국 = 핀 아이콘(왼쪽) */
.cs-fil-region::before {content:''; flex:0 0 auto; width:21px; height:21px; background:url('/asset/images/church-sale/fil-pin.svg') center/contain no-repeat;}
.churchro.dark-mode .cs-fil.on {color:#93C5FD; border-color:#93C5FD;}

/* 드롭다운 메뉴 */
.cs-dd-menu {position:absolute; top:64px; left:0; z-index:30; min-width:220px; max-height:0; overflow:hidden; opacity:0; background:var(--card); border-radius:16px; box-shadow:0 18px 44px rgba(15,23,42,.18); transition:opacity .15s ease;}
.cs-dd.open .cs-dd-menu {max-height:560px; overflow-y:auto; opacity:1; padding:10px; border:1.92px solid var(--line);}
.cs-dd-menu li {padding:16px 20px; border-radius:10px; font-size:22px; color:var(--body); cursor:pointer; white-space:nowrap;}
.cs-dd-menu li.on {background:var(--mint); color:#2563EB; font-weight:700;}

/* 브레드크럼 — Figma 1003:15640 */
.cs-crumb {display:flex; align-items:center; gap:11px; padding:15px 27px 13px; border-bottom:1.92px solid var(--line); font-size:23px; font-weight:700; color:#6B7280;}
.cs-crumb img {width:25px; height:25px;}

/* 카테고리 탭 — Figma 1003:15645 (활성=파랑+파란 밑줄, 게시판 종류가 늘어나면 좌우 화살표로 스크롤) */
.cs-tabswrap {position:relative;}
.cs-tabs {display:flex; gap:0; padding:0 27px; overflow-x:auto; scrollbar-width:none; border-bottom:3.84px solid var(--line);}
.cs-tabs::-webkit-scrollbar {display:none;}
.cs-tab {flex:0 0 auto; position:relative; padding:21px 23px; background:none; color:#94A3B8; font-size:23px; font-weight:500; white-space:nowrap;}
.cs-tab.on {color:#2563EB; font-weight:700;}
.cs-tab.on::after {content:''; position:absolute; left:0; right:0; bottom:-3.84px; height:3.84px; border-radius:3px 3px 0 0; background:#2563EB;}
.cs-tabarrow {position:absolute; top:0; bottom:3.84px; width:46px; z-index:5; display:flex; align-items:center; justify-content:center; border:0; cursor:pointer; padding:0;}
.cs-tabarrow img {width:16px; height:16px;}
.cs-tabarrow.prev {left:0; background:linear-gradient(to right, var(--card) 55%, transparent);}
.cs-tabarrow.next {right:0; background:linear-gradient(to left, var(--card) 55%, transparent);}

/* ===== 추천 매물 (Figma 1003:15663) ===== */
.cs-rec {padding:24px 22px 8px;}
.cs-grid {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:19px;}
.cs-rec-card {position:relative; display:flex; flex-direction:column; padding:1.92px; background:var(--card); border:1.92px solid var(--line); border-radius:19px; overflow:hidden; box-shadow:0 1.92px 15.36px rgba(0,0,0,.07);}
/* 사진/그린 영역 */
.cs-rec-thumb {position:relative; height:230px; border-radius:17px 17px 0 0; overflow:hidden;}
.cs-rec-thumb.is-photo {background:linear-gradient(135deg, #93C5FD, #3B82F6);}
.cs-rec-thumb.is-green {display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg, #2DD4BF, #0F766E);}
.cs-rec-img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.cs-rec-ic {width:96px; height:96px; opacity:.92;}
/* 좌상단 추천 배지 */
.cs-rec-badge {position:absolute; top:15px; left:15px; z-index:3; display:flex; align-items:center; gap:6px; padding:4px 15px; border-radius:10px; background:#D97706; color:#fff; font-size:19px; font-weight:700;}
.cs-rec-badge img {width:19px; height:19px;}
/* 우상단 하트 */
.cs-rec-heart {position:absolute; top:12px; right:15px; z-index:4; display:flex; align-items:center; justify-content:center; width:54px; height:54px; border-radius:27px; background:rgba(255,255,255,.9);}
.cs-rec-heart img {width:27px; height:27px;}
/* 좌하단 가격 (반투명 검정 박스, 흰 글씨) */
.cs-rec-price {position:absolute; left:15px; bottom:17px; z-index:3; padding:6px 15px; border-radius:11px; background:rgba(0,0,0,.65); color:#fff; font-size:23px; font-weight:700;}
/* 우하단 구분 칩 (카드 기준) */
.cs-rec-kind {position:absolute; right:14px; bottom:17px; z-index:5; padding:4px 14px; border-radius:10px; font-size:19px; font-weight:600;}
/* 정보 영역 */
.cs-rec-info {display:flex; flex-direction:column; gap:6px; padding:13px 19px 19px;}
.cs-rec-title {font-size:23px; font-weight:600; color:var(--ink); line-height:31px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.cs-rec-loc {display:flex; align-items:center; gap:8px; font-size:19px; color:var(--sub);}
.cs-rec-loc img {width:19px; height:19px;}
.cs-rec-spec {display:flex; gap:15px; padding-right:80px;}
.cs-rec-s {display:flex; align-items:center; gap:6px; font-size:19px; color:var(--sub);}
.cs-rec-s img {width:19px; height:19px;}

/* 추천/매물 구분 칩 색상 */
.k-sale {background:var(--mint); color:#1D4ED8;}
.k-rent {background:var(--cream); color:#14532D;}
.k-lease {background:var(--mint); color:#0F766E;}
.churchro.dark-mode .k-sale {color:#93C5FD;}
.churchro.dark-mode .k-rent {color:#86EFAC;}
.churchro.dark-mode .k-lease {color:#5EEAD4;}

/* 다크 프로모 배너 (Figma 1003:15730) */
.cs-promo {display:flex; flex-direction:column; gap:5.76px; margin:19px 0; padding:27px 31px; border:1.92px solid var(--line); border-radius:19px; background:linear-gradient(136deg, #1B2E4B 0%, #243752 100%);}
.cs-promo-title {font-size:21px; font-weight:400; color:rgba(255,255,255,.6);}
.cs-promo-desc {font-size:27px; font-weight:700; color:#fff; line-height:37.6px;}
.cs-promo-tel {font-size:25px; font-weight:600; color:#93C5FD;}

/* ===== 전체 매물 ===== */
.cs-body {flex:1; padding:16px 22px 170px;}
.cs-lhead {display:flex; align-items:baseline; justify-content:space-between; margin-bottom:18px;}
.cs-lhead .l {font-size:28px; font-weight:700; color:var(--ink);}
.cs-lhead .l b {color:var(--teal);}
.cs-lhead .c {font-size:21px; color:var(--sub);}
.cs-list {display:flex; flex-direction:column; gap:18px;}
.cs-item {display:flex; gap:19px; align-items:flex-start; padding:25px; background:var(--card); border:1.92px solid var(--line); border-radius:19px; box-shadow:0 1.92px 7.68px rgba(0,0,0,.07);}
.cs-thumb {flex:0 0 138px; width:138px; height:138px; border-radius:15px; overflow:hidden;}
.cs-thumb-img {width:100%; height:100%; object-fit:cover; display:block;}
.t1 {background:linear-gradient(135deg, #DCFCE7, #93C5FD);}
.t2 {background:linear-gradient(135deg, #DBEAFE, #C7D2FE);}
.t3 {background:linear-gradient(135deg, #FEF3C7, #FDE68A);}
.t4 {background:linear-gradient(135deg, #FCE7F3, #FBCFE8);}
.t5 {background:linear-gradient(135deg, #EDE9FE, #DDD6FE);}
.t6 {background:linear-gradient(135deg, #CCFBF1, #99F6E4);}
.t7 {background:linear-gradient(135deg, #FFE4E6, #FECACA);}
.t8 {background:linear-gradient(135deg, #E0E7FF, #C7D2FE);}
.cs-ibody {flex:1; min-width:0; display:flex; flex-direction:column; gap:6px;}
.cs-tags {display:flex; flex-wrap:wrap; gap:10px; align-items:center;}
.cs-tag {padding:5px 17px; border-radius:38px; font-size:21px; font-weight:600;}
.t-new {background:var(--mint); color:#DC2626;}
.cs-ititle {font-size:25px; font-weight:600; color:var(--ink); line-height:1.35; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.cs-iloc {display:flex; align-items:center; gap:6px; font-size:21px; color:var(--sub);}
.cs-iloc img {width:21px; height:21px;}
.cs-irow {display:flex; align-items:center; justify-content:space-between; margin-top:2px;}
.cs-price {font-size:25px; font-weight:800;}
.cs-price.k-sale {background:none; color:#2563EB;}
.cs-price.k-lease {background:none; color:#0F766E;}
.cs-price.k-rent {background:none; color:#14532D;}
.churchro.dark-mode .cs-price.k-sale {color:#93C5FD;}
.cs-date {font-size:19px; color:var(--sub);}
.cs-bm {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:44px; align-self:stretch;}
.cs-bm img {width:29px; height:29px;}

/* 페이지네이션 */
.cs-page {display:flex; align-items:center; justify-content:center; gap:8px; padding:38px 0 6px;}
.cs-page .pg {display:flex; align-items:center; justify-content:center; min-width:62px; height:62px; padding:0 16px; border:1.85px solid var(--line); border-radius:14px; background:var(--card); color:var(--body); font-size:22px; font-weight:500;}
.cs-page .pg.on {background:var(--teal); border-color:var(--teal); color:#fff; font-weight:700;}
.cs-page .pg img {width:24px; height:24px;}
.cs-page .dots {padding:0 5px; color:var(--sub); font-size:24px;}

/* 글쓰기 FAB (Figma 1003:15831 — 네이비 원형, footer 위) */
.cs-write {position:fixed; right:27px; bottom:135px; z-index:35; display:flex; align-items:center; justify-content:center; width:92px; height:92px; border-radius:50%; background:#1B2E4B; box-shadow:0 8px 16px rgba(27,46,75,.4);}
.cs-write img {width:42px; height:42px;}

/* 하단 탭바 (기존 작업물과 동일하게 fixed) */
.cs-nav {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:40; width:720px; max-width:100%; display:flex; align-items:center; justify-content:space-between; padding:20px 40px; background:var(--card); border-top:1.85px solid var(--line);}
.cs-nav .tab {display:flex; flex-direction:column; align-items:center; gap:5.8px; color:var(--sub); font-size:19.2px;}
.cs-nav .tab img {width:42px; height:42px;}
.cs-nav .tab.on {color:var(--teal);}
.cs-nav .tab-fab {position:relative; align-self:stretch; width:96px;}
.cs-nav .tab-fab .fab {position:absolute; left:50%; top:0; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:linear-gradient(135deg, #0D9488, #1E3A5F); border:5px solid var(--card); box-shadow:0 10px 24px rgba(13,148,136,0.4);}
.cs-nav .tab-fab .fab img {width:48px; height:48px;}

@media (hover:hover) and (pointer:fine) {
	.cs-item:hover, .cs-rec-card:hover {background:var(--snow);}
}

/* ===================== 02.교회매매(상세) ===================== */
.cd-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}

/* 사진 갤러리 */
.cd-photo {position:relative; height:422px; background:linear-gradient(160deg, #2D5282 0%, #1B2E4B 100%); overflow:hidden;}
.cd-photo-img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.cd-photo-top {position:absolute; left:0; right:0; top:0; display:flex; align-items:center; justify-content:space-between; padding:23px 27px;}
.cd-gacts {display:flex; gap:11.5px;}
.cd-gbtn {display:flex; align-items:center; justify-content:center; width:69px; height:69px; border-radius:19px; background:rgba(0,0,0,.4);}
.cd-gbtn img {width:38px; height:38px;}
.cd-gall {position:absolute; left:23px; bottom:18px; display:flex; align-items:center; gap:8px; padding:8px 19px; border-radius:38px; background:rgba(0,0,0,.55); color:#fff; font-size:21px; font-weight:700;}
.cd-gall img {width:23px; height:23px;}
.cd-gcount {position:absolute; right:25px; bottom:19px; padding:6px 19px; border-radius:38px; background:rgba(0,0,0,.55); color:#fff; font-size:21px; font-weight:600;}
.cd-garrow {position:absolute; top:50%; transform:translateY(-50%); display:flex; align-items:center; justify-content:center; width:54px; height:54px; border-radius:27px; background:rgba(255,255,255,.8);}
.cd-garrow img {width:27px; height:27px;}
.cd-garrow.l {left:19px;}
.cd-garrow.r {right:19px;}

/* 제목 */
.cd-titlesec {display:flex; flex-direction:column; gap:14px; padding:27px 27px 21px; background:var(--card); border-bottom:1.92px solid var(--line);}
.cd-tags {display:flex; gap:11.5px;}
.cd-tag {padding:6px 17px; border-radius:38px; font-size:21px; font-weight:600;}
.cd-tag.t-sale {background:var(--mint); color:#1D4ED8;}
.cd-tag.t-rec {background:#FEF3C7; color:#92400E;}
.cd-title {font-size:32px; font-weight:700; color:var(--ink); line-height:45px;}
.cd-num {display:flex; align-items:center; gap:11.5px; padding:11px 19px; border-radius:11.5px; background:var(--snow);}
.cd-num .k {font-size:21px; color:var(--sub);}
.cd-num .v {font-size:22px; font-weight:700; color:#6B7280;}
.cd-copy {display:flex; align-items:center; gap:5.76px; margin-left:auto; color:#2563EB; font-size:21px;}
.cd-copy img {width:23px; height:23px;}

/* 가격 3열 */
.cd-price {display:grid; grid-template-columns:repeat(3, 1fr); padding:23px 27px 25px; background:var(--card); border-bottom:1.92px solid var(--line);}
.cd-pcol {display:flex; flex-direction:column; align-items:center; gap:5.76px; padding:8px 0;}
.cd-pcol.bd {border-left:1.92px solid var(--line);}
.cd-pcol .k {font-size:19px; color:var(--sub);}
.cd-pcol .v {display:flex; flex-direction:column; align-items:center; font-size:25px; font-weight:700; color:var(--ink);}
.cd-pcol .v.blue {color:#2563EB;}
.cd-pcol .v small {font-size:19px; font-weight:400; color:var(--sub);}

/* 관심/공유/저장 */
.cd-acts {display:flex; gap:11.5px; padding:15px 27px 21px; background:var(--card); border-bottom:1.92px solid var(--line);}
.cd-act {flex:1; display:flex; align-items:center; justify-content:center; gap:9.6px; padding:17px 13px; border:1.92px solid var(--line); border-radius:15px; background:var(--card); color:#6B7280; font-size:21px; font-weight:600;}
.cd-act img {width:27px; height:27px;}
.cd-act.heart.on {background:var(--mint); border-color:#EF4444; color:#EF4444;}

/* 본문 */
.cd-body {flex:1; padding-bottom:290px;}

/* 정보 테이블 */
.cd-table {margin:24px 27px 0; border:1.92px solid var(--line); border-radius:19px; overflow:hidden;}
.cd-trow {display:flex; border-bottom:1.92px solid var(--line);}
.cd-trow:last-child {border-bottom:0;}
.cd-tk {flex:0 0 auto; min-width:115px; display:flex; align-items:center; padding:17px 24px; background:var(--mint); color:#2563EB; font-size:23px; font-weight:600;}
.cd-tv {flex:1; padding:17px 23px; font-size:23px; color:var(--ink); line-height:34px;}
.cd-tv.price {font-weight:700; color:#2563EB;}

/* 섹션 헤더 */
.cd-sech {display:flex; align-items:center; gap:11.5px; padding:27px 27px 15px;}
.cd-sech img {width:28px; height:28px;}
.cd-sech h2 {font-size:25px; font-weight:700; color:var(--ink);}

/* 상세 설명 */
.cd-desc {display:flex; flex-direction:column; gap:24px; padding:0 27px 30px;}
.cd-desc-item {display:flex; flex-direction:column; gap:10px;}
.cd-desc-h {display:flex; align-items:center; gap:10px;}
.cd-desc-h img {width:25px; height:25px;}
.cd-desc-h b {font-size:23px; font-weight:700; color:#1B2E4B;}
.cd-desc-item p {margin:0; font-size:24px; color:var(--ink); line-height:40px;}

/* 매물 장점 */
.cd-merits {padding:0 27px;}
.cd-merits li {display:flex; align-items:center; gap:11.5px; padding:9px 0; border-bottom:1.92px solid var(--line); font-size:23px; color:#6B7280;}
.cd-merits li:last-child {border-bottom:0;}
.cd-merits li img {flex:0 0 auto; width:27px; height:27px;}

/* 동영상 (유튜브) */
.cd-video {margin:18px 20px; height:383px; border-radius:14px; overflow:hidden; background:#000;}
.cd-video iframe {width:100%; height:100%; border:0; display:block;}

/* 지도 (구글지도) */
.cd-map {position:relative; margin:0 27px; height:280px; border:1.92px solid var(--line); border-radius:19px; overflow:hidden; background:#E8F4F8;}
.cd-map iframe {width:100%; height:100%; border:0; display:block;}
.cd-mapopen {position:absolute; z-index:2; right:30px; bottom:16px; display:flex; align-items:center; gap:7.68px; padding:10px 19px; border-radius:38px; background:#1B2E4B; color:#fff; font-size:19px; font-weight:700;}
.cd-mapopen img {width:21px; height:21px;}

/* 연락처 */
.cd-contact {margin:24px 27px 0; padding:25px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px;}
.cd-crow {display:flex; align-items:center; gap:15px; padding:8px 0;}
.cd-crow.bd {border-top:1.92px solid var(--line); padding-top:17px;}
.cd-ck {flex:0 0 auto; min-width:80px; font-size:21px; font-weight:600; color:var(--sub);}
.cd-cv {flex:1; min-width:0; font-size:23px; color:var(--ink);}
.cd-cbtn {flex:0 0 auto; display:flex; align-items:center; gap:7.68px; padding:10px 19px; border-radius:11.5px; background:var(--mint); color:#2563EB; font-size:21px; font-weight:700;}
.cd-cbtn img {width:23px; height:23px;}

/* 허위매물 신고 */
.cd-report {display:flex; align-items:center; justify-content:center; gap:9.6px; width:calc(100% - 54px); margin:16px 27px 0; padding:17px; border:1.92px solid var(--line); border-radius:15px; background:var(--card); color:var(--sub); font-size:21px;}
.cd-report img {width:25px; height:25px;}

/* 하단 고정: 액션바 + 탭바 */
.cd-bottom {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:40; width:720px; max-width:100%;}
.cd-actionbar {display:flex; align-items:center; gap:15px; padding:25px 27px 20px; background:var(--card); border-top:1.92px solid var(--line);}
.cd-bar-email {display:flex; flex-direction:column; align-items:center; gap:4px;}
.cd-bar-email .ic {display:flex; align-items:center; justify-content:center; width:84px; height:84px; border:1.92px solid var(--line); border-radius:19px; background:var(--card);}
.cd-bar-email .ic img {width:34px; height:34px;}
.cd-bar-email .lb {font-size:17px; color:var(--sub);}
.cd-bar-call, .cd-bar-chat {flex:1; display:flex; align-items:center; justify-content:center; gap:11.5px; padding:23px; border-radius:19px; color:#fff; font-size:26px; font-weight:700;}
.cd-bar-call img, .cd-bar-chat img {width:30px; height:30px;}
.cd-bar-call {background:#059669;}
.cd-bar-chat {background:#1B2E4B;}
.cd-nav {display:flex; align-items:center; justify-content:space-between; padding:18px 40px; background:var(--card); border-top:1.85px solid var(--line);}
.cd-nav .tab {display:flex; flex-direction:column; align-items:center; gap:5.8px; color:var(--sub); font-size:19.2px;}
.cd-nav .tab img {width:42px; height:42px;}
.cd-nav .tab.on {color:var(--teal);}
.cd-nav .tab-fab {position:relative; align-self:stretch; width:96px;}
.cd-nav .tab-fab .fab {position:absolute; left:50%; top:0; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:linear-gradient(135deg, #0D9488, #1E3A5F); border:5px solid var(--card); box-shadow:0 10px 24px rgba(13,148,136,0.4);}
.cd-nav .tab-fab .fab img {width:48px; height:48px;}

/* a:link{color:inherit}(base.css) 보다 우선 — 링크형 버튼 글씨색 */
.cd-wrap a.cd-cbtn {color:#2563EB;}
.cd-wrap a.cd-mapopen,
.cd-wrap a.cd-bar-call {color:#fff;}

/* ===================== 02.교회매매(등록완료) ===================== */
.dn-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}
.dn-body {flex:1; display:flex; flex-direction:column; align-items:center; padding:77px 46px 46px;}
.dn-circle {display:flex; align-items:center; justify-content:center; width:192px; height:192px; margin-bottom:46px; border:5.76px solid #A7F3D0; border-radius:50%; background:var(--mint);}
.dn-circle img {width:92px; height:92px;}
.dn-title {font-size:42px; font-weight:700; color:var(--ink); text-align:center; margin-bottom:15px;}
.dn-sub {font-size:25px; color:#6B7280; text-align:center; line-height:40px; margin-bottom:46px;}
.dn-card {width:100%; padding:29px 33px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px; margin-bottom:46px;}
.dn-card-h {display:flex; align-items:center; gap:9.6px; margin-bottom:23px;}
.dn-card-h img {width:25px; height:25px;}
.dn-card-h b {font-size:23px; font-weight:700; color:#6B7280;}
.dn-proc {display:flex; align-items:center; gap:15px; padding:8px 0; font-size:23px; color:#6B7280;}
.dn-proc img {flex:0 0 auto; width:25px; height:25px;}
.dn-proc.avg span {font-size:23px; font-weight:600; color:#2563EB;}
.dn-btns {display:flex; flex-direction:column; gap:15px; width:100%; margin-bottom:31px;}
.dn-btns .dn-btn {display:flex; align-items:center; justify-content:center; border-radius:19px; text-align:center;}
.dn-btns .dn-btn.primary {padding:27px; background:#1B2E4B; color:#fff; font-size:27px; font-weight:700;}
.dn-btns .dn-btn:not(.primary) {padding:25px; background:var(--card); border:1.92px solid var(--line); color:#6B7280; font-size:25px; font-weight:600;}
.dn-notice {display:flex; align-items:center; gap:13px; width:100%; padding:21px 27px; background:var(--cream); border:1.92px solid #FED7AA; border-radius:15px;}
.dn-notice img {flex:0 0 auto; width:25px; height:25px;}
.dn-notice p {font-size:21px; color:#92400E; line-height:32px;}
.dn-nav {display:flex; align-items:center; justify-content:space-between; padding:18px 40px; background:var(--card); border-top:1.85px solid var(--line);}
.dn-nav .tab {display:flex; flex-direction:column; align-items:center; gap:5.8px; color:var(--sub); font-size:19.2px;}
.dn-nav .tab img {width:42px; height:42px;}
.dn-nav .tab.on {color:var(--teal);}
.dn-nav .tab-fab {position:relative; align-self:stretch; width:96px;}
.dn-nav .tab-fab .fab {position:absolute; left:50%; top:0; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:linear-gradient(135deg, #0D9488, #1E3A5F); border:5px solid var(--card); box-shadow:0 10px 24px rgba(13,148,136,0.4);}
.dn-nav .tab-fab .fab img {width:48px; height:48px;}

/* ===================== 02.교회매매(등록) ===================== */
.wf-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}
.wf-temp {flex:0 0 auto; padding:9px 18px; font-size:22px; font-weight:600; color:#2563EB;}

.wf-body {flex:1; display:flex; flex-direction:column; gap:21px; padding:21px 27px 40px;}

/* 섹션 카드 */
.wf-card {display:flex; flex-direction:column; gap:15px; padding:29px; background:var(--card); border:1.92px solid var(--line); border-radius:19px;}
.wf-sech {display:flex; align-items:center; gap:9px;}
.wf-sech img {width:27px; height:27px;}
.wf-sech b {font-size:25px; font-weight:700; color:var(--ink);}
.wf-sech i {color:#EF4444; font-size:25px; font-weight:700; font-style:normal;}
.wf-sech small {font-size:20px; color:var(--sub);}

/* 입력/셀렉트 공통 */
.wf-input {width:100%; padding:20px 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:14px; font-size:24px; color:var(--ink);}
.wf-input::placeholder {color:var(--sub);}
.wf-select {width:100%; appearance:none; -webkit-appearance:none; padding:20px 60px 20px 28px; background:var(--snow) url('/asset/images/common/chevron.svg') no-repeat; background-position:right 22px center; background-size:27px 27px; border:1.92px solid var(--line); border-radius:14px; font-size:24px; color:var(--ink); font-family:inherit;}
.wf-select.sm {padding:18px 44px 18px 18px; background-position:right 12px center; background-size:25px 25px; font-size:23px;}

/* 필드 라벨 */
.wf-field {display:flex; flex-direction:column; gap:11px;}
.wf-field > span {font-size:23px; font-weight:500; color:#6B7280;}

/* 주소 */
.wf-row {display:flex; gap:12px;}
.wf-row .wf-input {flex:1;}

.wf-map {height:200px; border:1.92px solid var(--line); border-radius:14px; overflow:hidden;}
.wf-map iframe {width:100%; height:100%; border:0; display:block;}

/* 다중 컬럼 */
.wf-grid3 {display:grid; grid-template-columns:repeat(3, 1fr); gap:12px;}
.wf-grid2 {display:grid; grid-template-columns:repeat(2, 1fr); gap:12px;}

/* 단위 입력 (만원) */
.wf-inwrap {position:relative; display:flex; align-items:center;}
.wf-inwrap input {width:100%; padding:20px 70px 20px 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:14px; font-size:24px; color:var(--ink);}
.wf-inwrap input::placeholder {color:var(--sub);}
.wf-inwrap em {position:absolute; right:24px; font-size:22px; font-style:normal; color:var(--sub);}
.wf-inwrap .pre {position:absolute; left:20px; width:31px; height:31px; z-index:1;}
.wf-inwrap .pre + input {padding-left:64px;}

/* 면적 안내 */
.wf-note {display:flex; align-items:center; gap:11px; padding:16px 20px; background:var(--mint); border-radius:14px; font-size:21px; color:#2563EB;}
.wf-note img {flex:0 0 auto; width:25px; height:25px;}

/* 텍스트영역 */
.wf-textarea {width:100%; min-height:330px; padding:27px 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:14px; font-size:24px; line-height:36px; color:var(--ink); resize:vertical; font-family:inherit;}
.wf-textarea::placeholder {color:var(--sub);}
.wf-count {text-align:right; font-size:20px; color:var(--sub);}

/* 매물영상 미리보기 */
.wf-vpreview {height:340px; border-radius:14px; overflow:hidden; background:#1A1A2E;}
.wf-vpreview iframe {width:100%; height:100%; border:0; display:block;}
.wf-vpreview .ph {display:flex; align-items:center; justify-content:center; gap:12px; width:100%; height:100%; color:#94A3B8; font-size:22px;}
.wf-vpreview .play {display:flex; align-items:center; justify-content:center; width:54px; height:54px; border-radius:50%; background:rgba(255,255,255,.15); color:#fff; font-size:24px; padding-left:4px;}

/* 사진 */
.wf-photos {display:flex; flex-wrap:wrap; gap:15px;}
.wf-photo-item {position:relative; width:130px; height:130px; border-radius:14px; overflow:hidden;}
.wf-photo-item .cover {width:100%; height:100%; object-fit:cover; display:block;}
.wf-photo-x {position:absolute; top:6px; right:6px; display:flex; align-items:center; justify-content:center; width:35px; height:35px; border-radius:50%; background:rgba(15,23,42,.6); color:#fff; font-size:28px; line-height:1;}
.wf-photo-add {display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; width:130px; height:130px; border:2px dashed var(--mute); border-radius:14px; background:var(--snow); color:var(--sub); font-size:22px;}
.wf-photo-add img {width:38px; height:38px;}
.wf-photo-count {font-size:23px; color:var(--body);}
.wf-note2 {font-size:21px; color:var(--sub);}

/* 연락처/이메일 */
.wf-phone {display:grid; grid-template-columns:1fr 1.3fr 1.3fr; gap:12px; align-items:center;}
.wf-email {display:flex; align-items:center; gap:12px;}
.wf-email .wf-input {flex:1; min-width:0;}
.wf-email .at {flex:0 0 auto; font-size:26px; color:var(--sub); font-style:normal;}
.wf-email .wf-select {flex:1; min-width:0;}

/* 등록 신청하기 */
.wf-submit {display:flex; align-items:center; justify-content:center; margin-top:4px; padding:28px; background:#1B2E4B; border-radius:19px; color:#fff; font-size:27px; font-weight:700;}

/* 사진 톤 (placeholder) */
.wf-photo-item.g1 {background:linear-gradient(135deg, #DCFCE7, #93C5FD);}
.wf-photo-item.g6 {background:linear-gradient(135deg, #CCFBF1, #99F6E4);}

/* 하단 탭바 */
.wf-nav {display:flex; align-items:center; justify-content:space-between; padding:18px 40px; background:var(--card); border-top:1.85px solid var(--line);}
.wf-nav .tab {display:flex; flex-direction:column; align-items:center; gap:5.8px; color:var(--sub); font-size:19.2px;}
.wf-nav .tab img {width:42px; height:42px;}
.wf-nav .tab.on {color:var(--teal);}
.wf-nav .tab-fab {position:relative; align-self:stretch; width:96px;}
.wf-nav .tab-fab .fab {position:absolute; left:50%; top:0; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:linear-gradient(135deg, #0D9488, #1E3A5F); border:5px solid var(--card); box-shadow:0 10px 24px rgba(13,148,136,0.4);}
.wf-nav .tab-fab .fab img {width:48px; height:48px;}

/* a:link 덮어쓰기 — 링크형 버튼 */
.wf-wrap a.wf-submit {color:#fff;}
.dn-body .dn-btns a.dn-btn.primary {color:#fff;}
.dn-body .dn-btns a.dn-btn:not(.primary) {color:#6B7280;}

/* 필터 드롭다운 클립 방지 */
.cs-filters:has(.cs-dd.open){overflow:visible;}
