@charset "utf-8";

/* ===== 11.이음마켓 — Figma 1055:5041 (blue 액센트, meet-place 미러) ===== */
/* 이음마켓 전용 blue 토큰 (전역 teal 토큰은 건드리지 않음) */
.em-wrap, .ed-wrap, .ew-wrap, .en-wrap {
	--em-blue: #2563EB;    /* azure/53 Royal Blue — primary / FAB / active 밑줄·테두리 */
	--em-blue-d: #1D4ED8;  /* azure/48 Cerulean — 링크·가격·강조 텍스트 */
	--em-blue-t: #EFF6FF;  /* grey/97-3 Zumthor — active chip/badge/category 라이트 틴트 */
	--em-blue-b: #BFDBFE;  /* azure/87 French Pass — promo 테두리 */
	--em-blue-b2: #DBEAFE; /* grey/93-2 — promo 그라데이션 끝 */
}
.churchro.dark-mode .em-wrap, .churchro.dark-mode .ed-wrap,
.churchro.dark-mode .ew-wrap, .churchro.dark-mode .en-wrap {
	--em-blue: #3B82F6;
	--em-blue-d: #60A5FA;
	--em-blue-t: #16243B;
	--em-blue-b: #1E3A5F;
	--em-blue-b2: #14253F;
}

.em-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}

/* 헤더 */
.em-head {position:sticky; top:0; z-index:20; background:var(--card);}
.em-bar {display:flex; align-items:center; gap:15px; padding:21px 27px 23px; border-bottom:1.92px solid var(--line);}
.em-back, .em-filterbtn {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:69px; height:69px; border-radius:19px;}
.em-back img, .em-filterbtn img {width:38px; height:38px;}
.em-search {flex:1; min-width:0; display:flex; align-items:center; gap:16px; padding:19px 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:42px;}
.em-search img {width:31px; height:31px;}
.em-search input {flex:1; min-width:0; border:0; background:transparent; font-size:23px; color:var(--ink);}
.em-search input::placeholder {color:var(--sub);}

/* 필터 (pill) — 전국 active=blue */
.em-filters {display:flex; flex-wrap:nowrap; gap:11.52px; padding:15px 27px; border-bottom:1.92px solid var(--line); overflow-x:auto; scrollbar-width:none;}
.em-filters::-webkit-scrollbar {display:none;}
.em-dd {position:relative; flex:0 0 auto;}
.em-fil {flex:0 0 auto; display:flex; align-items:center; gap:6px; padding:11.52px 23px; border:1.92px solid var(--line); border-radius:38px; background:var(--card); color:#475569; font-size:21px; font-weight:500; white-space:nowrap;}
.em-fil .lbl {white-space:nowrap; font-size:inherit;}
.em-fil img {width:21px; height:21px; transition:transform .2s ease;}
.em-dd.open .em-fil img {transform:rotate(180deg);}
.em-fil.on {border-color:var(--em-blue); color:var(--em-blue-d); background:var(--em-blue-t); font-weight:700;}

.em-dd-menu {position:absolute; top:64px; left:0; z-index:30; min-width:200px; 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;}
.em-dd.open .em-dd-menu {max-height:560px; overflow-y:auto; opacity:1; padding:10px; border:1.92px solid var(--line);}
.em-dd-menu li {padding:16px 20px; border-radius:10px; font-size:22px; color:var(--body); cursor:pointer; white-space:nowrap;}
.em-dd-menu li.on {background:var(--em-blue-t); color:var(--em-blue-d); font-weight:700;}

/* 거래유형 탭 (active=blue 밑줄) */
.em-tabs {display:flex; gap:0; padding:0 27px; overflow-x:auto; scrollbar-width:none; border-bottom:3.84px solid var(--line);}
.em-tabs::-webkit-scrollbar {display:none;}
.em-tab {flex:0 0 auto; position:relative; padding:19px 23px; background:none; color:#94A3B8; font-size:21px; font-weight:500; white-space:nowrap;}
.em-tab.on {color:var(--em-blue); font-weight:700;}
.em-tab.on::after {content:''; position:absolute; left:0; right:0; bottom:-3.84px; height:3.84px; border-radius:3px 3px 0 0; background:var(--em-blue);}

/* 카테고리 (이모지 썸네일) */
.em-cats {display:flex; gap:15px; padding:19px 27px 25px; border-bottom:1.92px solid var(--line); overflow-x:auto; scrollbar-width:none; background:var(--card);}
.em-cats::-webkit-scrollbar {display:none;}
.em-cat {flex:0 0 auto; display:flex; flex-direction:column; align-items:center; gap:7.68px;}
.em-cat-ic {display:flex; align-items:center; justify-content:center; width:84px; height:84px; border:1.92px solid var(--line); border-radius:23px; background:var(--snow); font-size:34px;}
.em-cat.on .em-cat-ic {border-color:var(--em-blue); background:var(--em-blue-t);}
.em-cat-lbl {font-size:19px; font-weight:600; color:#475569; white-space:nowrap;}
.em-cat.on .em-cat-lbl {color:var(--em-blue-d);}

/* 나눔 간증 프로모 배너 */
.em-promo {display:flex; align-items:center; gap:19px; margin:24px 27px; padding:25px 28px; border:1.92px solid var(--em-blue-b); border-radius:19px; background:linear-gradient(135deg, var(--em-blue-t) 0%, var(--em-blue-b2) 100%);}
.churchro.dark-mode .em-promo {background:linear-gradient(135deg, var(--em-blue-t) 0%, #1B2A45 100%);}
.em-promo-ic {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:69px; height:69px; border:3.84px solid var(--em-blue-b); border-radius:35px; background:var(--em-blue-t); font-size:30px;}
.em-promo-body {flex:1; min-width:0; display:flex; flex-direction:column; gap:2px;}
.em-promo-title {font-size:23px; font-weight:700; color:var(--em-blue-d); line-height:1.3;}
.em-promo-desc {font-size:21px; color:var(--sub);}
.em-promo-arrow {flex:0 0 auto; width:31px; height:31px; color:var(--em-blue-d); font-size:31px; line-height:1;}

/* 목록 */
.em-body {flex:1; padding:0 0 200px;}
/* 카운트 라인 — 숫자를 라벨보다 크게 (라벨 23px/600, 숫자 29px/800 blue) */
.em-lhead {display:flex; align-items:baseline; gap:8px; padding:11.52px 27px 7.68px;}
.em-lhead .l {font-size:23px; font-weight:600; color:#475569;}
.em-lhead b {font-size:29px; font-weight:800; color:var(--em-blue-d);}
.em-listwrap {display:flex; flex-direction:column; background:var(--card);}
.em-item {display:flex; gap:23px; align-items:flex-start; padding:27px; border-bottom:1.92px solid var(--line);}
.em-thumb {position:relative; flex:0 0 169px; width:169px; height:169px; display:flex; align-items:center; justify-content:center; border:1.92px solid var(--line); border-radius:19px; background:var(--snow); overflow:hidden;}
.em-thumb-img {width:100%; height:100%; object-fit:cover; display:block;}
.em-badge {position:absolute; left:10px; top:10px; padding:4px 12px; border-radius:8px; color:#fff; font-size:17px; font-weight:700; z-index:1;}
.em-badge.b-share {background:#D97706;}
.em-badge.b-sale {background:var(--em-blue);}
.em-badge.b-need {background:#DC2626;}
.em-badge.b-rent {background:#7C3AED;}
.em-badge.b-swap {background:#0EA5E9;}
.em-ibody {flex:1; min-width:0; display:flex; flex-direction:column; gap:6px;}
.em-tags {display:flex; flex-wrap:wrap; gap:7.68px; align-items:center; margin-bottom:2px;}
.em-tag {padding:4px 15px; border-radius:38px; font-size:19px; font-weight:600; background:var(--em-blue-t); color:var(--em-blue-d);}
.em-tag.t-new {background:#F0FDF4; color:#14532D;}
.churchro.dark-mode .em-tag.t-new {background:#16241B; color:#86EFAC;}
.em-ititle {font-size:25px; font-weight:600; color:var(--ink); line-height:1.4; overflow:hidden; white-space:nowrap; text-overflow:ellipsis;}
.em-iloc {display:flex; align-items:center; gap:7.68px; font-size:21px; color:var(--sub);}
.em-iloc img {width:21px; height:21px;}
.em-price {margin-top:2px; font-size:27px; font-weight:700; color:var(--em-blue-d);}
.em-price.is-share {color:#D97706;}
.em-price.is-need {color:#DC2626;}
.em-irow {display:flex; align-items:center; justify-content:space-between; margin-top:6px;}
.em-cond {font-size:19px; color:var(--sub); min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis;}
.em-counts {flex:0 0 auto; display:flex; gap:15px; align-items:center;}
.em-count {display:flex; align-items:center; gap:6px; font-size:19px; color:var(--sub);}
.em-count img {width:23px; height:23px;}
.em-count.like.on {color:#DC2626;}

/* 나눔 간증 캐러셀 */
.em-stories {padding:23px 27px 0;}
.em-stories-h {display:flex; align-items:center; justify-content:space-between; margin-bottom:15px;}
.em-stories-h .l {display:flex; align-items:center; gap:7.68px; font-size:23px; font-weight:700; color:#475569;}
.em-stories-h .l img {width:25px; height:25px;}
.em-stories-h .more {font-size:21px; font-weight:600; color:var(--em-blue);}
.em-stories-row {display:flex; gap:15px; overflow-x:auto; scrollbar-width:none; padding-bottom:4px;}
.em-stories-row::-webkit-scrollbar {display:none;}
.em-story {flex:0 0 326px; display:flex; flex-direction:column; gap:15px; padding:21px; background:var(--card); border:1.92px solid var(--line); border-radius:19px; box-shadow:0 1.92px 5.76px rgba(15,23,42,.06);}
.em-story-text {font-size:21px; color:#475569; line-height:31px;}
.em-story-who {display:flex; align-items:center; gap:9.6px;}
.em-story-av {display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:19px; background:var(--em-blue-t); color:var(--em-blue-d); font-size:17px; font-weight:700;}
.em-story-name {font-size:19px; font-weight:600; color:var(--sub);}

/* 글쓰기 FAB (blue) */
.em-write {position:fixed; right:27px; bottom:155px; z-index:35; display:flex; align-items:center; justify-content:center; width:100px; height:100px; border-radius:50%; background:var(--em-blue); box-shadow:0 8px 16px rgba(37,99,235,.5);}
.em-write img {width:42px; height:42px;}

@media (hover:hover) and (pointer:fine) {
	.em-item:hover, .em-story:hover {background:var(--snow);}
}

/* ===================== 11.이음마켓(상세) — Figma 1055:5410 ===================== */
.ed-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}
.ed-photo {position:relative; height:480px; display:flex; align-items:center; justify-content:center; background:linear-gradient(160deg, var(--em-blue-t) 0%, var(--em-blue-b2) 100%); overflow:hidden;}
.churchro.dark-mode .ed-photo {background:linear-gradient(160deg, var(--em-blue-t) 0%, #1B2A45 100%);}
.ed-photo-img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.ed-gbadge, .ed-gcount, .ed-gacts, .ed-gdots {z-index:2;}
/* 헤더 컨트롤 (뒤로 / 관심·공유) */
.ed-gacts {position:absolute; left:0; right:0; top:24px; display:flex; align-items:center; justify-content:space-between; padding:0 24px;}
.ed-gacts-r {display:flex; gap:11.5px;}
.ed-gbtn {display:flex; align-items:center; justify-content:center; width:65px; height:65px; border-radius:33px; background:rgba(0,0,0,.35);}
.ed-gbtn img {width:31px; height:31px;}
/* 무료나눔 배지 — 좌측 라운드 탭 */
.ed-gbadge {position:absolute; left:0; top:88px; padding:7px 23px 7px 19px; border-radius:0 38px 38px 0; background:#D97706; color:#fff; font-size:21px; font-weight:700;}
/* 페이지 점 */
.ed-gdots {position:absolute; left:50%; transform:translateX(-50%); bottom:19px; display:flex; gap:7.68px; align-items:center;}
.ed-gdot {width:11.5px; height:11.5px; border-radius:6px; background:rgba(255,255,255,.5); cursor:pointer;}
.ed-gdot.on {width:30px; background:#fff;}
.ed-gcount {position:absolute; right:25px; bottom:21px; padding:4px 15px; border-radius:19px; background:rgba(0,0,0,.5); color:#fff; font-size:19px; font-weight:600;}

/* 판매자 헤더 */
.ed-seller {display:flex; align-items:center; gap:15px; padding:23px 27px; background:var(--card); border-bottom:1.92px solid var(--line);}
.ed-seller-av {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:77px; height:77px; border-radius:39px; background:linear-gradient(135deg, var(--em-blue-t) 0%, var(--em-blue-b) 100%); color:var(--em-blue-d); font-size:27px; font-weight:800;}
.ed-seller-info {flex:1; min-width:0; display:flex; flex-direction:column; gap:2px;}
.ed-seller-top {display:flex; align-items:center; gap:7.68px;}
.ed-seller-name {font-size:25px; font-weight:700; color:var(--ink);}
.ed-seller-cert {display:flex; align-items:center; gap:5.76px; padding:5px 15px; border:1.92px solid #FCD34D; border-radius:38px; background:linear-gradient(134deg, #FEF3C7 0%, #FDE68A 100%); color:#92400E; font-size:19px; font-weight:700;}
.ed-seller-cert img {width:19px; height:19px;}
.churchro.dark-mode .ed-seller-cert {background:#2A2410; color:#FCD34D;}
.ed-seller-sub {font-size:21px; color:var(--sub);}
.ed-seller-btns {flex:0 0 auto; display:flex; gap:9.6px;}
.ed-seller-btn {padding:11.5px 21px; border:1.92px solid var(--line); border-radius:15px; background:var(--card); color:#475569; font-size:21px; font-weight:600;}

/* 제목/유형/메타 */
.ed-titlesec {display:flex; flex-direction:column; gap:11.5px; padding:27px 27px 19px; background:var(--card);}
.ed-title {font-size:32px; font-weight:700; color:var(--ink); line-height:45px;}
.ed-type {font-size:42px; font-weight:800; color:#D97706;}
.ed-meta {display:flex; flex-wrap:wrap; gap:7px 19px;}
.ed-meta span {display:flex; align-items:center; gap:5.76px; font-size:21px; color:var(--sub);}
.ed-meta img {width:21px; height:21px;}
.ed-chips {display:flex; flex-wrap:wrap; gap:9.6px; padding:19px 27px 25px; background:var(--card); border-bottom:1.92px solid var(--line);}
.ed-chip {padding:4px 15px; border-radius:38px; font-size:19px; font-weight:600;}
.ed-chip.c-free {background:#FEF3C7; color:#92400E;}
.ed-chip.c-new {background:#F0FDF4; color:#14532D;}
.ed-chip.c-rec {background:#FFF7ED; color:#9A3412;}
.ed-chip.c-ship {background:var(--em-blue-t); color:var(--em-blue-d);}
.ed-chip.c-av {background:#F5F3FF; color:#5B21B6;}
.churchro.dark-mode .ed-chip.c-free {background:#2A2410; color:#FCD34D;}
.churchro.dark-mode .ed-chip.c-new {background:#16241B; color:#86EFAC;}
.churchro.dark-mode .ed-chip.c-rec {background:#2A1D10; color:#FDBA74;}
.churchro.dark-mode .ed-chip.c-av {background:#1E1733; color:#C4B5FD;}

/* 4열 통계 */
.ed-stat {display:grid; grid-template-columns:repeat(4, 1fr); padding:19px 27px; background:var(--card); border-bottom:1.92px solid var(--line);}
.ed-scol {display:flex; flex-direction:column; align-items:center; gap:6px; padding:0 8px;}
.ed-scol.bd {border-left:1.92px solid var(--line);}
.ed-scol .k {font-size:19px; color:var(--sub);}
.ed-scol .v {font-size:23px; font-weight:700; color:var(--ink);}
.ed-scol .v.blue {color:var(--em-blue-d);}
.ed-scol .v.amber {color:#D97706;}

/* 액션 */
.ed-acts {display:flex; gap:11.5px; padding:15px 27px 21px; background:var(--card); border-bottom:1.92px solid var(--line);}
.ed-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:#475569; font-size:21px; font-weight:600;}
.ed-act img {width:27px; height:27px;}
.ed-act.like {background:#FEF2F2; border-color:#DC2626; color:#DC2626;}
.churchro.dark-mode .ed-act.like {background:#2A1414;}

.ed-body {flex:1; padding-bottom:300px; background:var(--card);}
.ed-sech {display:flex; align-items:center; gap:11.5px; padding:27px 27px 15px;}
.ed-sech img {width:28px; height:28px;}
.ed-sech .emo {font-size:26px;}
.ed-sech h2 {font-size:25px; font-weight:700; color:var(--ink);}
.ed-desc {padding:0 27px;}
.ed-desc p {margin:0; font-size:23px; color:var(--ink); line-height:41px; white-space:pre-line;}

/* 교회 연결 매칭 카드 */
.ed-match {margin:4px 27px 0; padding:25px 28px; border:1.92px solid var(--em-blue-b); border-radius:19px; background:linear-gradient(137deg, var(--em-blue-t) 0%, #F0FDFA 100%);}
.churchro.dark-mode .ed-match {background:linear-gradient(137deg, var(--em-blue-t) 0%, #14253F 100%);}
.ed-match-h {display:flex; align-items:center; gap:9.6px; font-size:23px; font-weight:700; color:var(--em-blue-d); margin-bottom:11px;}
.ed-match-h img {flex:0 0 auto; width:25px; height:25px;}
.ed-match li {display:flex; align-items:center; gap:11.5px; padding:6px 0; font-size:21px; color:#475569;}
.ed-match li img {flex:0 0 auto; width:23px; height:23px;}

/* 위치 */
.ed-map {position:relative; margin:0 27px; height:200px; border:1.92px solid var(--em-blue-b); border-radius:19px; overflow:hidden; background:var(--em-blue-t);}
.ed-map iframe {width:100%; height:100%; border:0; display:block;}
.ed-map-pin {position:absolute; z-index:2; left:50%; top:50%; transform:translate(-50%,-50%); display:flex; flex-direction:column; align-items:center; gap:7.68px; pointer-events:none; white-space:nowrap;}
.ed-map-pin img {width:50px; height:50px;}
.ed-map-pin b {padding:1.92px 13px; border-radius:7.68px; background:var(--card); font-size:19px; font-weight:600; color:var(--em-blue-d);}
.ed-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:var(--em-blue-d); color:#fff; font-size:19px; font-weight:700;}
.ed-mapopen img {width:21px; height:21px;}

/* 나눔 간증 카드 */
.ed-testi {margin:4px 27px 0; padding:25px 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px;}
.ed-testi-h {display:flex; align-items:center; gap:11.5px; margin-bottom:11.5px; font-size:21px; font-weight:700; color:#D97706;}
.ed-testi-h .emo {font-size:26px;}
.ed-testi-q {font-size:23px; color:#475569; line-height:37px; margin-bottom:11.5px;}
.ed-testi-by {font-size:21px; color:var(--sub);}

/* 회색 푸터 영역 (안내 + 신고) */
.ed-cfooter {margin-top:27px; padding:27px; display:flex; flex-direction:column; gap:15px; background:var(--snow); border-top:1.92px solid var(--line);}
.ed-notice {display:flex; align-items:flex-start; gap:11.5px; padding:21px 23px; background:var(--card); border:1.92px solid var(--line); border-radius:15px;}
.ed-notice img {flex:0 0 auto; width:25px; height:25px; margin-top:2px;}
.ed-notice p {margin:0; font-size:19px; color:var(--sub); line-height:31px;}
.ed-report {display:flex; align-items:center; justify-content:center; gap:9.6px; padding:17px; border:1.92px solid var(--line); border-radius:15px; background:var(--card); color:var(--sub); font-size:21px;}
.ed-report img {width:25px; height:25px;}

/* 하단 고정 CTA */
.ed-bottom {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:40; width:720px; max-width:100%;}
.ed-actionbar {display:flex; align-items:center; gap:15px; padding:23px 27px 20px; background:var(--card); border-top:1.92px solid var(--line);}
.ed-bar-like {display:flex; flex-direction:column; align-items:center; gap:4px; flex:0 0 auto;}
.ed-bar-like .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);}
.ed-bar-like .ic img {width:34px; height:34px;}
.ed-bar-like .lb {font-size:17px; color:var(--sub);}
.ed-bar-chat, .ed-bar-cta {display:flex; align-items:center; justify-content:center; gap:11.5px; padding:23px; border-radius:19px; color:#fff; font-size:26px; font-weight:700;}
.ed-bar-chat img, .ed-bar-cta img {width:30px; height:30px;}
.ed-bar-chat {flex:0 0 auto; min-width:200px; background:#1E3A5F;}
.ed-bar-cta {flex:1; background:linear-gradient(135deg, var(--em-blue-d) 0%, #3B82F6 100%);}

/* ===================== 11.이음마켓(등록) — Figma 1055:5629 ===================== */
.ew-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}
.ew-head {position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:12px; padding:21px 27px 23px; background:var(--card); border-bottom:1.92px solid var(--line);}
.ew-back {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:54px; height:54px;}
.ew-back img {width:38px; height:38px;}
.ew-head h1 {flex:1; font-size:30px; font-weight:700; color:var(--ink);}
.ew-temp {flex:0 0 auto; padding:9px 18px; border-radius:12px; background:var(--em-blue-t); font-size:21px; font-weight:600; color:var(--em-blue-d);}
.ew-body {flex:1; display:flex; flex-direction:column; gap:21px; padding:21px 27px 200px;}
.ew-card {display:flex; flex-direction:column; gap:15px; padding:29px; background:var(--card); border:1.92px solid var(--line); border-radius:19px;}
.ew-sech {display:flex; align-items:center; gap:9px;}
.ew-sech b {font-size:25px; font-weight:700; color:var(--ink);}
.ew-sech i {color:#DC2626; font-size:25px; font-weight:700; font-style:normal;}
.ew-sech small {font-size:21px; color:var(--sub);}
.ew-input {width:100%; padding:20px 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:14px; font-size:24px; color:var(--ink);}
.ew-input::placeholder {color:var(--sub);}
.ew-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;}
.ew-count {text-align:right; font-size:21px; color:var(--sub);}
.ew-note {padding:17px 23px; background:var(--em-blue-t); border:1.92px solid var(--em-blue-b); border-radius:14px; font-size:21px; color:var(--em-blue-d); line-height:31px;}

/* 거래방식 그리드 (3x2 이모지) */
.ew-tgrid {display:grid; grid-template-columns:repeat(3, 1fr); gap:13px;}
.ew-tchip {display:flex; flex-direction:column; align-items:center; gap:7.68px; padding:21px 8px; border:1.92px solid var(--line); border-radius:19px; background:var(--snow); color:#475569; font-size:21px; font-weight:600;}
.ew-tchip .emo {font-size:35px;}
.ew-tchip.on {border-color:var(--em-blue); background:var(--em-blue-t); color:var(--em-blue-d);}

/* 상태/거래방식 칩 그리드 (2열) */
.ew-grid2 {display:grid; grid-template-columns:repeat(2, 1fr); gap:11.5px;}
.ew-opt {display:flex; align-items:center; justify-content:center; padding:17px 13px; border:1.92px solid var(--line); border-radius:15px; background:var(--snow); color:#475569; font-size:22px; font-weight:600;}
.ew-opt.span {grid-column:1 / -1;}
.ew-opt.on {border-color:var(--em-blue); background:var(--em-blue-t); color:var(--em-blue-d);}

/* 거래 가능 방식 (아이콘 칩 2열) — Figma 1055:5758 */
.ew-mgrid {display:grid; grid-template-columns:repeat(2, 1fr); gap:11.5px;}
.ew-mchip {display:flex; align-items:center; gap:13px; padding:17px 21px; border:1.92px solid var(--line); border-radius:15px; background:var(--snow); color:#475569; font-size:22px; font-weight:600;}
.ew-mchip.on {border-color:var(--em-blue); background:var(--em-blue-t); color:var(--em-blue-d);}
.ew-mchip-ic {flex:0 0 auto; width:27px; height:27px; background-color:#94A3B8; -webkit-mask:center/contain no-repeat; mask:center/contain no-repeat;}
.ew-mchip.on .ew-mchip-ic {background-color:var(--em-blue);}

/* 가격 */
.ew-pricerow {display:flex; gap:12px; align-items:stretch;}
.ew-inwrap {position:relative; flex:1; display:flex; align-items:center;}
.ew-inwrap input {width:100%; height:70px; padding:0 60px 0 28px; background:var(--snow); border:1.92px solid var(--line); border-radius:14px; font-size:24px; color:var(--ink);}
.ew-inwrap em {position:absolute; right:24px; font-size:22px; font-style:normal; color:var(--sub);}
.ew-free {flex:0 0 auto; display:flex; align-items:center; justify-content:center; padding:0 23px; height:70px; border:1.92px solid #FCD34D; border-radius:14px; background:var(--cream); color:#D97706; font-size:22px; font-weight:700;}
.ew-free.on {background:#FEF3C7;}
.churchro.dark-mode .ew-free {background:#2A2410; color:#FCD34D;}
.ew-checks {display:flex; flex-wrap:wrap; gap:11.5px;}
.ew-check {padding:13px 23px; border:1.92px solid var(--line); border-radius:38px; background:var(--snow); color:#475569; font-size:21px; font-weight:600;}
.ew-check.on {border-color:var(--em-blue); background:var(--em-blue-t); color:var(--em-blue-d);}

/* 교회 특화 태그 칩 */
.ew-tags {display:flex; flex-wrap:wrap; gap:11.5px;}
.ew-tagchip {padding:13px 23px; border:1.92px solid var(--line); border-radius:38px; background:var(--snow); color:#475569; font-size:21px; font-weight:600;}
.ew-tagchip.on {border-color:var(--em-blue); background:var(--em-blue-t); color:var(--em-blue-d); font-weight:700;}

/* 주소 */
.ew-row {display:flex; gap:12px;}
.ew-row .ew-input {flex:1;}
.ew-addr-btn {flex:0 0 auto; padding:0 27px; background:var(--em-blue); border-radius:14px; color:#fff; font-size:23px; font-weight:700;}
.ew-map {height:200px; border:1.92px solid var(--line); border-radius:14px; overflow:hidden;}
.ew-map iframe {width:100%; height:100%; border:0; display:block;}

.ew-textarea {width:100%; min-height:280px; 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;}
.ew-textarea::placeholder {color:var(--sub);}

.ew-photos {display:flex; flex-wrap:wrap; gap:15px;}
.ew-photo-item {position:relative; width:130px; height:130px; border-radius:14px; overflow:hidden; display:flex; align-items:center; justify-content:center; background:var(--em-blue-t); font-size:54px;}
.ew-photo-item .cover {width:100%; height:100%; object-fit:cover; display:block;}
.ew-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;}
.ew-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;}
.ew-photo-add img {width:38px; height:38px;}
.ew-photo-count {font-size:21px; font-weight:600; color:var(--em-blue-d);}
.ew-note2 {font-size:20px; color:var(--sub);}

.ew-submit {display:flex; align-items:center; justify-content:center; margin-top:4px; padding:27px; background:var(--em-blue); border-radius:19px; color:#fff; font-size:28px; font-weight:700;}

/* ===================== 11.이음마켓(완료) — Figma 1055:5875 ===================== */
.en-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}
.en-head {position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:15px; padding:21px 27px 23px; background:var(--card); border-bottom:1.92px solid var(--line);}
.en-back {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:69px; height:69px;}
.en-back img {width:38px; height:38px;}
.en-head h1 {font-size:30px; font-weight:700; color:var(--ink);}
.en-body {flex:1; display:flex; flex-direction:column; align-items:center; padding:77px 46px 60px;}
.en-circle {display:flex; align-items:center; justify-content:center; width:184px; height:184px; margin-bottom:42px; border:5.76px solid var(--em-blue); border-radius:50%; background:var(--em-blue-t);}
.en-circle img {width:88px; height:88px;}
.en-title {font-size:40px; font-weight:700; color:var(--ink); text-align:center; margin-bottom:15px;}
.en-sub {font-size:25px; color:#475569; text-align:center; line-height:40px; margin-bottom:38px;}
.en-pills {display:flex; flex-wrap:wrap; gap:15px; justify-content:center; margin-bottom:38px;}
.en-pill {padding:9.6px 27px; border-radius:38px; font-size:23px; font-weight:600;}
.en-pill.market {background:var(--em-blue-t); color:var(--em-blue-d);}
.en-pill.done {background:#F0FDF4; color:#14532D;}
.churchro.dark-mode .en-pill.done {background:#16241B; color:#86EFAC;}
.en-card {width:100%; padding:29px 33px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px; margin-bottom:31px;}
.en-card-h {display:flex; align-items:center; gap:9.6px; margin-bottom:23px;}
.en-card-h img {width:25px; height:25px;}
.en-card-h b {font-size:23px; font-weight:700; color:var(--em-blue-d);}
.en-proc {display:flex; align-items:center; gap:15px; padding:8px 0; font-size:23px; color:#475569;}
.en-proc img {flex:0 0 auto; width:25px; height:25px;}
.en-proc.avg span {font-size:23px; font-weight:600; color:var(--em-blue-d);}
.en-tip {width:100%; padding:29px 33px; background:var(--em-blue-t); border:1.92px solid var(--em-blue-b); border-radius:19px; margin-bottom:31px;}
.en-tip-h {display:flex; align-items:center; gap:9.6px; margin-bottom:14px; font-size:23px; font-weight:700; color:var(--em-blue-d);}
.en-tip-h img {width:25px; height:25px;}
.en-tip p {margin:0; font-size:21px; color:var(--em-blue-d); line-height:36px;}
.en-btns {display:flex; flex-direction:column; gap:15px; width:100%; margin-bottom:31px;}
.en-btns .en-btn {display:flex; align-items:center; justify-content:center; border-radius:19px; text-align:center;}
.en-btns .en-btn.primary {padding:27px; background:var(--em-blue); color:#fff; font-size:27px; font-weight:700;}
.en-btns .en-btn:not(.primary) {padding:25px; background:var(--card); border:1.92px solid var(--line); color:#475569; font-size:25px; font-weight:600;}
.en-notice {display:flex; align-items:center; gap:13px; width:100%; padding:21px 27px; background:var(--cream); border:1.92px solid #FED7AA; border-radius:15px;}
.en-notice img {flex:0 0 auto; width:25px; height:25px;}
.en-notice p {font-size:21px; color:#92400E; line-height:32px;}
.churchro.dark-mode .en-notice p {color:#FCD34D;}

/* 하단 탭바 (공통, meet-place 미러) */
.em-nav, .ed-nav, .ew-nav, .en-nav, .ead-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:18px 40px; background:var(--card); border-top:1.85px solid var(--line);}
.ed-nav, .ew-nav, .en-nav {position:static; transform:none; width:100%;}
.em-nav .tab, .ed-nav .tab, .ew-nav .tab, .en-nav .tab, .ead-nav .tab {display:flex; flex-direction:column; align-items:center; gap:5.8px; color:var(--sub); font-size:19.2px;}
.em-nav .tab img, .ed-nav .tab img, .ew-nav .tab img, .en-nav .tab img, .ead-nav .tab img {width:42px; height:42px;}
.em-nav .tab.on, .ed-nav .tab.on, .ew-nav .tab.on, .en-nav .tab.on, .ead-nav .tab.on {color:var(--teal);}
.em-nav .tab-fab, .ed-nav .tab-fab, .ew-nav .tab-fab, .en-nav .tab-fab, .ead-nav .tab-fab {position:relative; align-self:stretch; width:96px;}
.em-nav .tab-fab .fab, .ed-nav .tab-fab .fab, .ew-nav .tab-fab .fab, .en-nav .tab-fab .fab, .ead-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);}
.em-nav .tab-fab .fab img, .ed-nav .tab-fab .fab img, .ew-nav .tab-fab .fab img, .en-nav .tab-fab .fab img, .ead-nav .tab-fab .fab img {width:48px; height:48px;}
.ed-bottom .ed-nav, .ed-bottom .ed-nav {position:static;}

/* a:link 덮어쓰기 — 링크형 버튼 */
.ed-wrap a.ed-mapopen, .ed-wrap a.ed-bar-cta {color:#fff;}
.ew-wrap a.ew-submit {color:#fff;}
.en-btns a.en-btn.primary {color:#fff;}
.en-btns a.en-btn:not(.primary) {color:#475569;}
.em-wrap a.em-write, .em-wrap a.em-item, .em-wrap a.em-story {color:inherit;}

/* 완료 푸터 고정 */
.en-nav {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:40; width:720px; max-width:100%;}
.en-body {padding-bottom:170px;}

/* 등록 푸터 고정 */
.ew-nav {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:40; width:720px; max-width:100%;}

/* ===================== 11.이음마켓(나눔 신청 시트) — Figma 1119:20087 (BLUE 액센트) ===================== */
/* blue 토큰 (ea-/ead- 전용 — 신청 플로우 새 wrapper) */
.ea-overlay, .ead-wrap, .ea-dlg-back {
	--em-blue: #2563EB; --em-blue-d: #1D4ED8; --em-blue-t: #EFF6FF; --em-blue-b: #BFDBFE; --em-blue-b2: #DBEAFE;
}
.churchro.dark-mode .ea-overlay, .churchro.dark-mode .ead-wrap, .churchro.dark-mode .ea-dlg-back {
	--em-blue: #3B82F6; --em-blue-d: #60A5FA; --em-blue-t: #16243B; --em-blue-b: #1E3A5F; --em-blue-b2: #14253F;
}

/* 틴트 백드롭 위에 바텀시트 (fixed, 상단 60px 딤 여백) */
.ea-overlay {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:50; width:720px; max-width:100%; height:100%; display:flex; flex-direction:column; justify-content:flex-end; background:rgba(15,23,42,.45);}
.ea-sheet {display:flex; flex-direction:column; max-height:calc(100% - 60px); background:var(--card); border-radius:42px 42px 0 0; box-shadow:0 -7.68px 30.72px rgba(0,0,0,.18); overflow:hidden;}
.ea-grip {display:flex; align-items:center; justify-content:center; padding:21px 0 6px;}
.ea-grip span {width:77px; height:8px; border-radius:8px; background:#CBD5E1;}

.ea-head {display:flex; align-items:flex-start; justify-content:space-between; gap:15px; padding:8px 35px 27px; border-bottom:1.92px solid var(--line);}
.ea-head-tx {display:flex; flex-direction:column; gap:4px;}
.ea-head-tx b {font-size:33px; font-weight:800; color:var(--ink);}
.ea-head-tx span {font-size:21px; color:var(--sub);}
.ea-close {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:61px; height:61px; border:1.92px solid var(--line); border-radius:31px; background:var(--snow);}
.ea-close img {width:27px; height:27px;}

.ea-body {flex:1; overflow-y:auto; padding:27px 35px 46px;}

/* 물품 요약 카드 */
.ea-post {display:flex; gap:19px; align-items:flex-start; padding:23px 27px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px;}
.ea-post-emoji {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:99.84px; height:99.84px; border:1.92px solid var(--em-blue-b); border-radius:17.28px; background:linear-gradient(135deg, var(--em-blue-b2) 0%, var(--em-blue-t) 100%); font-size:46px;}
.ea-post-info {flex:1; min-width:0; display:flex; flex-direction:column; gap:6px;}
.ea-post-title {font-size:23px; font-weight:700; color:var(--ink); line-height:32px;}
.ea-post-meta {display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; font-size:21px; color:var(--sub);}
.ea-post-meta span {font-size:inherit;}
.ea-post-tags {display:flex; flex-wrap:wrap; gap:8px; padding-top:2px;}
.ea-ptag {padding:2px 14px; border-radius:38px; font-size:19px; font-weight:700; background:#F3F4F6; color:#374151;}
.churchro.dark-mode .ea-ptag {color:#CBD5E1; background:#1E293B;}
.ea-ptag.give {background:#FEF3C7; color:#92400E;}
.ea-ptag.new {background:#F0FDF4; color:#14532D;}
.churchro.dark-mode .ea-ptag.give {background:#2A2410; color:#FCD34D;}
.churchro.dark-mode .ea-ptag.new {background:#16241B; color:#86EFAC;}

/* 섹션 라벨 (blue) */
.ea-sec {display:flex; align-items:center; gap:9.6px; margin:27px 0 13px;}
.ea-sec img {width:25px; height:25px;}
.ea-sec b {font-size:21px; font-weight:700; color:var(--em-blue-d);}
.ea-sec .ea-req {color:#DC2626; font-size:21px; font-weight:700; font-style:normal;}
.ea-sec small {font-size:19px; color:var(--sub);}

/* 카드 (프로필) */
.ea-card {padding:23px 27px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px;}
.ea-card-top {display:flex; align-items:center; justify-content:space-between; margin-bottom:13px;}
.ea-tagchip {padding:4px 14px; border-radius:38px; font-size:19px; font-weight:700; background:var(--line); color:var(--sub);}
.ea-loaded {display:flex; align-items:center; gap:6px; padding:6px 16px; border:1.92px solid var(--em-blue-b); border-radius:38px; background:var(--em-blue-t); color:var(--em-blue-d); font-size:19px; font-weight:600;}
.ea-loaded img {width:19px; height:19px;}
.ea-prof {display:flex; align-items:center; gap:17px; padding-top:4px;}
.ea-prof-av {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:73px; height:73px; border-radius:50%; background:var(--em-blue); color:#fff; font-size:27px; font-weight:800;}
.ea-prof-tx {display:flex; flex-direction:column; gap:4px; min-width:0;}
.ea-prof-tx b {font-size:25px; font-weight:700; color:var(--ink);}
.ea-prof-tx em {font-size:21px; font-style:normal; color:var(--sub);}
.ea-prof-badges {display:flex; flex-wrap:wrap; gap:9.6px; margin-top:15px;}
.ea-badge {padding:6px 17px; border:1.92px solid var(--line); border-radius:38px; background:var(--card); color:#475569; font-size:19px; font-weight:600;}
.ea-editbtn {display:flex; align-items:center; gap:6px; margin-top:16px; color:var(--em-blue); font-size:21px; font-weight:600;}
.ea-editbtn img {width:23px; height:23px;}

/* 수령 방식 (라디오 카드 2x2) */
.ea-grid2 {display:grid; grid-template-columns:repeat(2, 1fr); gap:15px;}
.ea-rcard {position:relative; display:flex; flex-direction:column; align-items:center; gap:11.5px; padding:25px 17px; border:1.92px solid var(--line); border-radius:19px; background:var(--card); text-align:center;}
.ea-rcard.on {border-color:var(--em-blue); background:var(--em-blue-t);}
.ea-rcard-ic {display:flex; align-items:center; justify-content:center; width:76.8px; height:76.8px; border-radius:19px; background:var(--snow); font-size:34.5px;}
.ea-rcard.on .ea-rcard-ic {background:var(--em-blue-b2);}
.ea-rcard-ic.t-blue {background:var(--em-blue-t);}
.ea-rcard-ic.t-zumthor {background:#EFF6FF;}
.ea-rcard-ic.t-mint {background:#F0FDFA;}
.ea-rcard-ic.t-green {background:#F0FDF4;}
.ea-rcard-title {font-size:23px; font-weight:700; color:var(--ink);}
.ea-rcard.on .ea-rcard-title {color:var(--em-blue-d);}
.ea-rcard-sub {font-size:19px; font-style:normal; color:var(--sub);}
.ea-radio {width:30.72px; height:30.72px; border:3.84px solid var(--line); border-radius:16px; background:var(--card);}
.ea-rcard.on .ea-radio {border-color:var(--em-blue); background:radial-gradient(circle, var(--em-blue) 0 30%, #fff 38%);}

/* 택배비 부담 (3열) */
.ea-grid3 {display:grid; grid-template-columns:repeat(3, 1fr); gap:15px;}
.ea-fee {display:flex; flex-direction:column; align-items:center; gap:3.84px; padding:17px 12px; border:1.92px solid var(--line); border-radius:19px; background:var(--card); text-align:center;}
.ea-fee.on {border-color:var(--em-blue); background:var(--em-blue-t);}
.ea-fee b {font-size:23px; font-weight:700; color:var(--ink);}
.ea-fee.on b {color:var(--em-blue-d);}
.ea-fee em {font-size:19px; font-style:normal; color:var(--sub);}

/* 사용 목적 (선택 칩) */
.ea-chips {display:flex; flex-wrap:wrap; gap:11.5px;}
.ea-chip {padding:13px 21px; border:1.92px solid var(--line); border-radius:38px; background:var(--card); color:#475569; font-size:21px; font-weight:600;}
.ea-chip.on {border-color:var(--em-blue); background:var(--em-blue); color:#fff;}

/* 나눔 조건 확인 (제공자 안내) — blue 카드 */
.ea-cond {margin:27px 0 13px; padding:21.12px 24.96px; background:var(--em-blue-t); border:1.92px solid var(--em-blue-b); border-radius:19.2px;}
.ea-cond-h {display:flex; align-items:center; gap:9.6px; margin-bottom:11.5px;}
.ea-cond-h img {width:25px; height:25px;}
.ea-cond-h b {font-size:21px; font-weight:700; color:var(--em-blue-d);}
.ea-cond-list {list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:5.4px;}
.ea-cond-list li {position:relative; padding-left:30px; font-size:21px; line-height:31.7px; color:var(--em-blue-d);}
.ea-cond-list li::before {content:'✓'; position:absolute; left:4px; top:0; font-weight:700; color:var(--em-blue-d);}

/* 신청 메시지 */
.ea-msgchips {display:flex; flex-wrap:wrap; gap:11.5px; margin-bottom:13px;}
.ea-msgchip {padding:9.6px 21px; border:1.92px solid var(--em-blue-b); border-radius:38px; background:var(--em-blue-t); color:var(--em-blue-d); font-size:21px; font-weight:600;}
.ea-textarea {width:100%; min-height:175px; padding:21px 27px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px; font-size:24px; line-height:42px; color:var(--ink); resize:vertical; font-family:inherit;}
.ea-count {margin-top:4px; text-align:right; font-size:21px; color:var(--sub);}

/* 제출 버튼 (blue gradient) */
.ea-submit {display:flex; align-items:center; justify-content:center; gap:15px; width:100%; margin-top:21px; padding:27px; border-radius:19px; background:linear-gradient(136deg, var(--em-blue-d) 0%, #3B82F6 100%); color:#fff; font-size:28px; font-weight:700;}
.ea-submit img {width:34.56px; height:34.56px;}

/* 발송 확인 다이얼로그 — Figma 1119:20372 */
.ea-dlg-back {position:fixed; left:50%; bottom:0; transform:translateX(-50%); z-index:60; width:720px; max-width:100%; display:flex; flex-direction:column; justify-content:flex-end; height:100%; background:rgba(15,23,42,.55);}
.ea-dlg {display:flex; flex-direction:column; align-items:center; padding:38.4px 38.4px 53.76px; background:var(--card); border-radius:42px 42px 0 0; box-shadow:0 -7.68px 30.72px rgba(0,0,0,.22); max-height:calc(100% - 60px); overflow-y:auto;}
.ea-dlg .ea-grip {align-self:stretch; margin:-38.4px -38.4px 0;}
.ea-dlg-circle {display:flex; align-items:center; justify-content:center; width:107.52px; height:107.52px; margin-top:15.36px; border:3.84px solid var(--em-blue-b); border-radius:53.76px; background:var(--em-blue-t);}
.ea-dlg-circle img {width:49.92px; height:49.92px;}
.ea-dlg-title {margin:15.36px 0 0; font-size:30.72px; font-weight:800; color:var(--ink); text-align:center;}
.ea-dlg-sub {margin:11.52px 0 0; font-size:23px; color:#475569; text-align:center; line-height:37px;}
.ea-dlg-card {width:100%; margin-top:21px; padding:12px 27px 25px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px;}
.ea-dlg-row {display:flex; gap:15px; align-items:flex-start; padding:9.6px 0; border-top:1.92px solid var(--line);}
.ea-dlg-row:first-child {border-top:0;}
.ea-dlg-row .k {flex:0 0 auto; min-width:92px; font-size:23px; font-weight:600; color:var(--sub);}
.ea-dlg-row .v {flex:1; min-width:0; font-size:23px; color:var(--ink); line-height:34.5px; word-break:break-all;}
.ea-dlg-row .v.blue {color:var(--em-blue-d); font-weight:700;}
.ea-dlg-row .v.sm {font-size:21px; color:#475569; line-height:32px;}
.ea-dlg-btns {display:flex; flex-direction:column; gap:15px; width:100%; margin-top:34px;}
.ea-dlg-send {display:flex; align-items:center; justify-content:center; gap:11.52px; padding:25px; border-radius:19px; background:linear-gradient(137deg, var(--em-blue-d) 0%, #3B82F6 100%); color:#fff; font-size:27px; font-weight:700;}
.ea-dlg-send img {width:30.72px; height:30.72px;}
.ea-dlg-edit {padding:23px; border:1.92px solid var(--line); border-radius:19px; background:var(--card); color:#475569; font-size:25px; font-weight:600;}

/* ===================== 11.이음마켓(나눔 신청 완료) — Figma 1119:20434 (BLUE 액센트) ===================== */
.ead-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}
.ead-head {position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between; padding:30px 27px; background:var(--card); border-bottom:1.92px solid var(--line);}
.ead-head h1 {font-size:28px; font-weight:700; color:var(--ink);}
.ead-close {display:flex; align-items:center; justify-content:center; width:69px; height:69px;}
.ead-close img {width:38px; height:38px;}
.ead-body {flex:1; display:flex; flex-direction:column; align-items:center; padding:61px 46px 170px;}
.ead-circle {display:flex; align-items:center; justify-content:center; width:172.8px; height:172.8px; margin-bottom:34.56px; border:5.76px solid var(--em-blue-b); border-radius:86px; background:var(--em-blue-t);}
.ead-circle img {width:84.48px; height:84.48px;}
.ead-title {font-size:40px; font-weight:800; color:var(--ink); text-align:center; margin-bottom:11.52px;}
.ead-sub {font-size:25px; color:#475569; text-align:center; line-height:41px; margin-bottom:31px;}
.ead-sub span {font-size:inherit;}

/* 알림 발송 카드 (blue) */
.ead-status {display:flex; align-items:center; gap:17px; width:100%; padding:23px 27px; margin-bottom:30px; background:var(--em-blue-t); border:1.92px solid var(--em-blue-b); border-radius:19px;}
.ead-status-ic {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:69px; height:69px; border-radius:17px; background:var(--em-blue);}
.ead-status-ic img {width:34.56px; height:34.56px;}
.ead-status-tx {display:flex; flex-direction:column; gap:3.84px; text-align:left; align-items:flex-start; flex:1; min-width:0;}
.ead-status-tx b {font-size:23px; font-weight:700; color:var(--em-blue-d);}
.ead-status-tx em {font-size:21px; font-style:normal; color:var(--em-blue);}

/* 신청 내역 / 다음 단계 카드 */
.ead-card {width:100%; padding:28.8px; margin-bottom:27px; background:var(--snow); border:1.92px solid var(--line); border-radius:19px;}
.ead-card.ead-card-steps {background:var(--card);}
.ead-card-h {display:flex; align-items:center; gap:9.6px; margin-bottom:8px;}
.ead-card-h img {width:25px; height:25px;}
.ead-card-h b {font-size:23px; font-weight:700; color:var(--em-blue-d);}
.ead-detail {display:flex; align-items:center; gap:15.36px; padding:13px 0; border-top:1.92px solid var(--line); font-size:25px; color:#475569;}
.ead-detail:nth-of-type(2) {border-top:0; padding-top:20px;}
.ead-detail img {flex:0 0 auto; width:26.88px; height:26.88px;}
.ead-detail span, .ead-detail strong {font-size:inherit;}
.ead-detail .warn {color:var(--em-blue-d); font-weight:700;}

.ead-step {display:flex; align-items:flex-start; gap:19px; padding:15px 0 13px; border-top:1.92px solid var(--line);}
.ead-step:nth-of-type(2) {border-top:0; padding-top:32px;}
.ead-step-n {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:42.24px; height:42.24px; margin-top:2px; border-radius:21px; background:var(--em-blue); color:#fff; font-size:19px; font-weight:700;}
.ead-step-tx {display:flex; flex-direction:column; gap:4px; min-width:0;}
.ead-step-tx b {font-size:23px; font-weight:700; color:var(--ink);}
.ead-step-tx em {font-size:21px; font-style:normal; color:var(--sub); line-height:32px;}

.ead-btns {display:flex; flex-direction:column; gap:15px; width:100%;}
.ead-btn {display:flex; align-items:center; justify-content:center; gap:11.52px; border-radius:19px; text-align:center;}
.ead-btn.primary {padding:25px; background:linear-gradient(137deg, var(--em-blue-d) 0%, #3B82F6 100%); color:#fff; font-size:27px; font-weight:700;}
.ead-btn.primary img {width:30.72px; height:30.72px;}
.ead-btn:not(.primary) {padding:23px; background:var(--card); border:1.92px solid var(--line); color:#475569; font-size:25px; font-weight:600;}

/* a:link 덮어쓰기 — 링크형 버튼 */
.ead-btns a.ead-btn.primary {color:#fff;}
.ead-btns a.ead-btn:not(.primary) {color:#475569;}

/* 필터 드롭다운 열렸을 때 잘림 방지 */
.em-filters:has(.em-dd.open) {overflow:visible;}

/* ============================================================
   나눔 간증 이야기 (feed) — Figma 1055:5978 / 필요해요 — 1055:6164
   ============================================================ */

/* 공통 헤더 바 (back + 타이틀 [+ 우측 버튼]) */
.es-bar {display:flex; align-items:center; gap:15px; padding:21px 27px 23px; border-bottom:1.92px solid var(--line);}
.es-title {flex:1; min-width:0; font-size:30.72px; font-weight:700; color:var(--ink);}
.nd-add img {width:38.4px; height:38.4px;}

/* 공통 필터 칩 */
.es-chips {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;}
.es-chips::-webkit-scrollbar {display:none;}
.es-chip {flex:0 0 auto; padding:11.52px 23px; border:1.92px solid var(--line); border-radius:38px; background:var(--card); color:#475569; font-size:21px; font-weight:500; white-space:nowrap;}
.es-chip.on {border-color:var(--em-blue); background:var(--em-blue-t); color:var(--em-blue-d); font-weight:700;}

/* ── 간증 이야기 본문 ── */
.es-body {flex:1; padding:0 0 200px;}

/* 통계 헤더 */
.es-stats {padding:27px; border-bottom:1.92px solid var(--line); background:linear-gradient(135deg, var(--em-blue-t) 0%, #F0FDFA 100%);}
.churchro.dark-mode .es-stats {background:linear-gradient(135deg, var(--em-blue-t) 0%, #14253F 100%);}
.es-stats-t {font-size:23px; font-weight:700; color:var(--em-blue-d); margin-bottom:11.52px;}
.es-stats-row {display:flex; gap:30px;}
.es-stat {flex:1; display:flex; flex-direction:column; align-items:center; gap:2px;}
.es-stat-n {font-size:38.4px; font-weight:800; line-height:1.1;}
.es-stat-n.blue {color:var(--em-blue-d);}
.es-stat-n.orange {color:#D97706;}
.es-stat-n.teal {color:#0F766E;}
.es-stat-n.green {color:#16A34A;}
.es-stat-l {font-size:19.2px; color:var(--sub); text-align:center;}

/* 간증 카드 */
.es-cards {display:flex; flex-direction:column; gap:19.2px; padding:42px 54px 0;}
.es-card {display:flex; flex-direction:column; background:var(--card); border:1.92px solid var(--line); border-radius:19px; box-shadow:0 1.92px 11.52px rgba(15,23,42,.06); overflow:hidden;}

.es-card-head {display:flex; align-items:center; gap:15px; padding:23px 27px 25px; border-bottom:1.92px solid var(--line); background:linear-gradient(136deg, #FFFBEB 0%, #FEF9C3 100%);}
.churchro.dark-mode .es-card-head {background:linear-gradient(136deg, #2A2410 0%, #332B0E 100%);}
.es-card-emoji {flex:0 0 auto; font-size:38.4px; line-height:1;}
.es-card-htext {flex:1; min-width:0; display:flex; flex-direction:column;}
.es-card-church {font-size:23px; font-weight:700; color:#D97706;}
.es-card-sub {font-size:21px; color:var(--sub);}
.es-cert {flex:0 0 auto; display:flex; align-items:center; gap:6px; padding:6px 15px; border:1.92px solid #FCD34D; border-radius:19px; background:#FEF3C7; color:#92400E; font-size:19.2px; font-weight:700;}
.es-cert img {width:19.2px; height:19.2px;}

.es-card-body {display:flex; flex-direction:column; gap:10px; padding:23px 27px 38px;}
.es-item {display:flex; align-items:center; gap:11.52px;}
.es-item-tile {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:84.48px; height:84.48px; border-radius:11.52px; background:var(--em-blue-t); font-size:34.56px; overflow:hidden;}
.es-item-tile .cover {width:100%; height:100%; object-fit:cover; display:block;}
.es-item-text {display:flex; flex-direction:column; min-width:0;}
.es-item-name {font-size:21px; font-weight:600; color:#475569;}
.es-item-sub {font-size:19.2px; color:var(--sub);}
.es-quote {font-size:23px; font-weight:350; color:var(--ink); line-height:39px;}

.es-card-foot {display:flex; align-items:center; justify-content:space-between; padding:17px 27px 15px; border-top:1.92px solid var(--line); background:var(--snow);}
.es-foot-stats {display:flex; gap:23px;}
.es-foot-stat {display:flex; align-items:center; gap:7.68px; font-size:21px; color:var(--sub);}
.es-foot-stat img {width:24.96px; height:24.96px;}
.es-foot-date {font-size:19.2px; color:var(--sub);}

/* a:link 덮어쓰기 (간증 페이지 링크형) */
.es-wrap a.em-back {color:inherit;}
.es-wrap a.es-card {color:inherit;}

/* ── 필요해요 본문 ── */
.nd-body {flex:1; padding:0 0 200px;}

/* 인트로 배너 */
.nd-banner {display:flex; align-items:center; gap:15px; margin:23px 27px 0; padding:25px 29px; border:1.92px solid #FECACA; border-radius:19px; background:linear-gradient(136deg, #FEF2F2 0%, #FFF5F5 100%);}
.churchro.dark-mode .nd-banner {background:linear-gradient(136deg, #2A1818 0%, #2E1A1A 100%);}
.nd-banner-ic {flex:0 0 auto; font-size:42.24px; line-height:1;}
.nd-banner-text {flex:1; min-width:0; display:flex; flex-direction:column; gap:2px;}
.nd-banner-title {font-size:23px; font-weight:700; color:#DC2626;}
.nd-banner-desc {font-size:21px; color:var(--sub);}

/* 요청 건수 */
.nd-count {padding:15px 27px 8px; font-size:21px; font-weight:700; color:#475569;}
.nd-count b {font-size:21px; font-weight:700; color:#DC2626;}

/* 요청 카드 */
.nd-cards {display:flex; flex-direction:column; gap:19.2px; padding:0 27px;}
.nd-card {display:flex; flex-direction:column; gap:15px; padding:25px 29px; background:var(--card); border:1.92px solid var(--line); border-radius:19px; box-shadow:0 1.92px 5.76px rgba(15,23,42,.06);}

.nd-card-head {display:flex; align-items:flex-start; gap:15px;}
.nd-tile {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:76.8px; height:76.8px; border-radius:19px; background:#FEF2F2; font-size:34.56px;}
.churchro.dark-mode .nd-tile {background:#2A1818;}
.nd-htext {flex:1; min-width:0; display:flex; flex-direction:column; gap:3.84px;}
.nd-title {font-size:24.96px; font-weight:700; color:var(--ink);}
.nd-meta {font-size:21px; color:var(--sub);}

.nd-desc {padding:15px 19px; background:var(--snow); border-radius:15px; font-size:21px; color:#475569; line-height:31.68px;}

.nd-tags {display:flex; flex-wrap:wrap; gap:9.6px;}
.nd-tag {display:flex; align-items:center; padding:4px 15px; border-radius:38px; font-size:19.2px; font-weight:600; white-space:nowrap;}
.nd-tag.t-warn {background:#FFF7ED; color:#9A3412;}
.nd-tag.t-danger {background:#FEF2F2; color:#DC2626;}
.nd-tag.t-ok {background:#F0FDF4; color:#14532D;}
.nd-tag.t-teal {background:#F0FDFA; color:#0F766E;}
.nd-tag.t-blue {background:var(--em-blue-t); color:var(--em-blue-d);}
.nd-tag.t-gold {background:#FFFBEB; color:#92400E;}
.churchro.dark-mode .nd-tag.t-warn {background:#2A200F;}
.churchro.dark-mode .nd-tag.t-danger {background:#2A1818;}
.churchro.dark-mode .nd-tag.t-ok {background:#142A18;}
.churchro.dark-mode .nd-tag.t-teal {background:#0F2622;}
.churchro.dark-mode .nd-tag.t-gold {background:#2A2410;}

.nd-card-foot {display:flex; align-items:center; justify-content:space-between;}
.nd-foot-stat {font-size:19.2px; color:var(--sub);}
.nd-help {flex:0 0 auto; padding:11.52px 27px; border-radius:15px; background:linear-gradient(135deg, #DC2626 0%, #EF4444 100%); color:#fff; font-size:21px; font-weight:700;}

/* 더보기 */
.nd-more-wrap {display:flex; justify-content:center; padding:27px;}
.nd-more {padding:21px 48px; border:1.92px solid var(--line); border-radius:38px; background:var(--card); color:#475569; font-size:23px; font-weight:600;}

/* FAB */
.nd-fab {position:fixed; right:27px; bottom:155px; z-index:35; display:flex; align-items:center; justify-content:center; width:100px; height:100px; border-radius:50%; background:#DC2626; box-shadow:0 8px 16px rgba(220,38,38,.5);}
.nd-fab img {width:42.24px; height:42.24px;}
.nd-wrap a.em-back, .nd-wrap a.nd-fab {color:inherit;}

/* ============================================================
   거래방식별 버튼 가이드 — Figma 1119:20564 (blue wrapper / 거래방식별 색상)
   ============================================================ */
.eg-wrap {display:flex; flex-direction:column; min-height:100%; background:var(--snow);}

/* 헤더 — Figma 1119:20571 (흰 배경 → 다크 back 아이콘) */
.eg-head {position:sticky; top:0; z-index:20; display:flex; align-items:center; gap:15px; padding:21px 27px 23px; background:var(--card); border-bottom:1.92px solid var(--line);}
.eg-back {flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:69px; height:69px; border-radius:19px;}
.eg-back img {width:38.4px; height:38.4px;}
.eg-title {flex:1; min-width:0; font-size:28.8px; font-weight:700; color:var(--ink);}

/* 본문 (고정 푸터 가림 방지 padding-bottom) */
.eg-body {flex:1; padding:0 0 200px;}

/* 거래방식별 행 — Figma 1119:20578 ~ 20687 */
.eg-row {display:flex; flex-direction:column; border-bottom:1.92px solid var(--line);}

/* 행 헤더 (칩 + 상세화면 CTA 라벨) — 회색 배경 */
.eg-rowhead {display:flex; align-items:center; gap:15px; padding:19px 27px 15px; background:var(--snow);}
.eg-chip {flex:0 0 auto; padding:5.76px 19px; border-radius:38px; font-size:21px; font-weight:700; white-space:nowrap;}
.eg-ctalabel {font-size:23px; font-weight:700; color:#475569; white-space:nowrap;}

/* 샘플 미니 카드 — 썸네일 + 정보 + 우측 액션 — 흰 배경 */
.eg-card {display:flex; align-items:center; gap:19.2px; padding:19px 27px; background:var(--card);}
.eg-thumb {position:relative; flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:138px; height:138px; border:1.92px solid var(--line); border-radius:17.28px; background:var(--snow); overflow:hidden;}
.eg-thumb-emoji {font-size:53.76px; line-height:1;}
.eg-thumb .cover {width:100%; height:100%; object-fit:cover; display:block;}
.eg-thumb-badge {position:absolute; left:0; top:7.68px; padding:1.92px 15px 1.92px 11.52px; border-radius:0 19px 19px 0; color:#fff; font-size:17.28px; font-weight:700; white-space:nowrap;}

.eg-info {flex:1; min-width:0; display:flex; flex-direction:column; gap:5.76px;}
.eg-info-title {font-size:24.96px; font-weight:600; color:var(--ink); overflow:hidden; white-space:nowrap; text-overflow:ellipsis;}
.eg-info-price {font-size:26.88px; font-weight:800;}
.eg-info-meta {font-size:19.2px; color:#94A3B8;}

/* 우측 액션 버튼 (primary CTA + 채팅) */
.eg-acts {flex:0 0 auto; display:flex; flex-direction:column; gap:9.6px; min-width:169px;}
.eg-cta {display:flex; align-items:center; justify-content:center; gap:7.68px; padding:15px 26px; border-radius:15.36px; color:#fff; font-size:23px; font-weight:700; white-space:nowrap;}
.eg-cta img {width:24.96px; height:24.96px;}
.eg-chatbtn {display:flex; align-items:center; justify-content:center; gap:5.76px; padding:13px 50px; border:1.92px solid var(--line); border-radius:15.36px; background:var(--card); color:#475569; font-size:21px; font-weight:600; white-space:nowrap;}
.eg-chatbtn img {width:23.04px; height:23.04px;}

/* 거래방식별 색상 (칩 / 배지 / 가격 / CTA gradient) */
.eg-row.t-give .eg-chip {background:#FEF3C7; color:#92400E;}
.eg-row.t-give .eg-thumb-badge {background:#D97706;}
.eg-row.t-give .eg-info-price {color:#D97706;}
.eg-row.t-give .eg-cta {background:linear-gradient(137deg, #D97706 0%, #F59E0B 100%);}

.eg-row.t-sale .eg-chip {background:var(--em-blue-t); color:var(--em-blue-d);}
.eg-row.t-sale .eg-thumb-badge {background:var(--em-blue-d);}
.eg-row.t-sale .eg-info-price {color:var(--em-blue-d);}
.eg-row.t-sale .eg-cta {background:linear-gradient(137deg, var(--em-blue-d) 0%, #3B82F6 100%);}

.eg-row.t-swap .eg-chip {background:#F5F3FF; color:#5B21B6;}
.eg-row.t-swap .eg-thumb-badge {background:#7C3AED;}
.eg-row.t-swap .eg-info-price {color:#7C3AED;}
.eg-row.t-swap .eg-cta {background:linear-gradient(137deg, #5B21B6 0%, #7C3AED 100%);}

.eg-row.t-rent .eg-chip {background:#F0FDFA; color:#0F766E;}
.eg-row.t-rent .eg-thumb-badge {background:#0F766E;}
.eg-row.t-rent .eg-info-price {color:#0F766E;}
.eg-row.t-rent .eg-cta {background:linear-gradient(137deg, #0F766E 0%, #0D9488 100%);}

.eg-row.t-need .eg-chip {background:#FEF2F2; color:#DC2626;}
.eg-row.t-need .eg-thumb-badge {background:#DC2626;}
.eg-row.t-need .eg-info-price {color:#DC2626;}
.eg-row.t-need .eg-cta {background:linear-gradient(137deg, #DC2626 0%, #EF4444 100%);}
.eg-row.t-need .eg-thumb {background:#FEF2F2;}
.churchro.dark-mode .eg-row.t-need .eg-thumb {background:#2A1818;}

/* 다크모드 칩 틴트 보정 */
.churchro.dark-mode .eg-row.t-give .eg-chip {background:#2A2410; color:#FCD34D;}
.churchro.dark-mode .eg-row.t-swap .eg-chip {background:#1E1733; color:#C4B5FD;}
.churchro.dark-mode .eg-row.t-rent .eg-chip {background:#0F2622; color:#5EEAD4;}
.churchro.dark-mode .eg-row.t-need .eg-chip {background:#2A1818; color:#FCA5A5;}

/* a:link 덮어쓰기 */
.eg-wrap a.eg-back {color:inherit;}
