/* 2026-11-03 공통 셸: 최상단 바와 자료실을 매물 검토(F2) 기준으로 통일. 데이터·핸들러는 그대로. */

/* ── 1. 최상단 바: 모든 탭에서 매물 검토와 같은 모양 ── */
#appWrap .topbar{height:56px;min-height:56px;padding:0 32px 0 200px;gap:0;background:#fff;border-bottom:1px solid #e7edf5;box-shadow:none;color:#172338;font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em}
#appWrap .topbar .logo{display:none}
#appWrap .topbar .rv-v2-brand{display:none!important}
#appWrap .caring-brand{position:absolute;left:0;top:0;z-index:2;width:176px;height:56px;box-sizing:border-box;padding:8px 24px 2px;background:#14243a;color:#fff;display:flex;flex-direction:column;justify-content:flex-start;font-family:'Noto Sans KR','Segoe UI',sans-serif}
#appWrap .caring-brand strong{flex-shrink:0;font-size:20px;line-height:23px;font-weight:900;letter-spacing:-.07em}
#appWrap .caring-brand span{flex-shrink:0;margin-top:6px;font-size:11px;line-height:15px;color:#91a6c2;letter-spacing:0}
#appWrap .main-tabs{display:flex;align-self:stretch;height:100%;align-items:stretch;gap:30px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#appWrap .main-tabs>.main-tab{order:0!important;position:relative;height:100%;padding:0 3px;border:0;border-radius:0;background:transparent;box-shadow:none;color:#6b7890;font-family:'Noto Sans KR',sans-serif;font-size:14px;font-weight:500;letter-spacing:normal}
#appWrap .main-tabs>.main-tab:hover{color:#172338}
#appWrap .main-tabs>.main-tab.active{border:0;background:transparent;color:#1b64da;font-weight:700}
#appWrap .main-tabs:not([data-caring-motion])>.main-tab.active::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:#3182f6;border-radius:3px}
#appWrap .main-tabs[data-caring-motion]>.main-tab.active::after{content:none}
#appWrap .main-tabs>.caring-tab-motion-indicator{height:3px;background:#3182f6}
#appWrap #myInfoBtn,#appWrap #memberMgmtBtn{background:#fff!important;border:0!important;box-shadow:none!important;color:#6b7684!important}
#appWrap #myInfoBtn:hover,#appWrap #memberMgmtBtn:hover{background:#f3f6fb!important;color:#172338!important}
#appWrap #memberMgmtBtn svg{stroke:#6b7684}
@media (max-width:850px){#appWrap .topbar{padding-left:145px}#appWrap .caring-brand{width:132px;padding-left:12px}}

/* ── 2. 자료실: 좌측 메뉴를 매물 검토의 남색 레일로 ── */
#tabResources .contracts-shell{background:#f3f6fb;color:#172338;font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em}
#tabResources .contracts-nav{display:flex;flex-direction:column;gap:5px;width:176px;flex:0 0 176px;box-sizing:border-box;padding:20px 14px 32px;background:#14243a;border:0}
#tabResources .contracts-nav-title{display:block;margin:0 13px 12px;padding:0;color:#8fa4bf;font-size:11px;font-weight:400;letter-spacing:0}
#tabResources .contracts-nav-btn{position:relative;display:flex;align-items:center;gap:10px;width:100%;height:46px;min-height:46px;padding:0 13px;border:0;border-radius:9px;background:transparent;box-shadow:none;color:#b9c9de;font:500 14px 'Noto Sans KR',sans-serif;text-align:left;white-space:nowrap;transition:transform 140ms cubic-bezier(.2,.8,.2,1),background-color 140ms,color 140ms}
#tabResources .contracts-nav-btn svg{flex:none;width:17px;height:17px}
#tabResources .contracts-nav-btn:not(.is-active):hover{transform:translateX(3px);background:#22384f;color:#e2edfb}
#tabResources .contracts-nav-btn.is-active{background:#234572;border:0;box-shadow:none;color:#fff;font-weight:700}
#tabResources .contracts-nav-btn.is-active::before{content:"";position:absolute;left:0;top:13px;width:3px;height:20px;background:#7eb5ff;border-radius:2px}
#tabResources .contracts-nav-btn:focus-visible{outline:2px solid #8dbdff;outline-offset:2px}

/* ── 3. 부동산 계약 정보 ── */
#tabResources .contracts-main{box-sizing:border-box;padding:18px 24px 20px;background:#f3f6fb}
#tabResources .contracts-main::before{content:none}
#tabResources .contracts-head{padding:0 0 14px}
#tabResources .contracts-title h2,#tabResources .contracts-library .rv-panel-head h2{margin:0;color:#172338;font-size:27px;line-height:36px;font-weight:700;letter-spacing:-.055em}
#tabResources .contracts-title p,#tabResources .contracts-library .rv-panel-head p{margin:4px 0 0;color:#74839b;font-size:13px;line-height:19px;font-weight:400}
#tabResources .contracts-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 18px;padding:10px 16px;background:#fff;border-radius:12px}
#tabResources .contracts-kpi{min-height:0;padding:7px 12px;border:0;border-radius:8px;background:transparent;box-shadow:none;transform:none;font-family:'Noto Sans KR',sans-serif;transition:background-color 140ms}
#tabResources .contracts-kpi+.contracts-kpi{position:relative}
#tabResources .contracts-kpi+.contracts-kpi::before{content:"";position:absolute;left:-3px;top:10px;bottom:10px;width:1px;background:#eef2f7}
#tabResources .contracts-kpi:hover{background:#f5f8fc;box-shadow:none;transform:none}
#tabResources .contracts-kpi.is-active{background:#edf4ff;box-shadow:inset 0 0 0 1px #a9c9f5}
#tabResources .contracts-kpi-label{margin:0 0 2px;color:#728096;font-size:12px;line-height:17px;font-weight:400}
#tabResources .contracts-kpi-value{font-size:24px;line-height:29px;font-weight:700;letter-spacing:-.05em;color:#1d2c42}
#tabResources .contracts-kpi-unit{margin-left:4px;color:#8b95a1;font-size:12px;font-weight:400}
#tabResources .contracts-kpi-sub{margin-top:2px;color:#9aa6b8;font-size:11px}
#tabResources .contracts-kpi.k6 .contracts-kpi-value{color:#1b64da}
#tabResources .contracts-kpi.k3 .contracts-kpi-value{color:#c27a12}
#tabResources .contracts-kpi.k1 .contracts-kpi-value{color:#e0662b}
#tabResources .contracts-kpi.k0 .contracts-kpi-value{color:#e5484d}
#tabResources .contracts-toolbar{gap:8px;padding:0;background:transparent;border:0}
#tabResources .contracts-sheet-tabs{gap:2px;padding:3px;background:#e8eef6;border-radius:8px}
#tabResources .contracts-sheet-tabs>.caring-tab-motion-indicator{display:none}
#tabResources .contracts-sheet-btn{height:30px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#63758e;font:400 13px 'Noto Sans KR',sans-serif;transition:background-color 140ms,color 140ms}
#tabResources .contracts-sheet-btn:hover{color:#172338;border:0}
#tabResources .contracts-sheet-btn.is-active{background:#fff;color:#1b64da;font-weight:700;box-shadow:0 1px 2px rgba(20,36,58,.08)}
#tabResources .contracts-add-row-btn{display:inline-flex;align-items:center;height:36px;padding:0 14px;border:0;border-radius:8px;background:#1b64da;color:#fff;font:700 13px 'Noto Sans KR',sans-serif}
#tabResources .contracts-add-row-btn[hidden]{display:none}
#tabResources .contracts-add-row-btn:hover{background:#1957c2;border:0}
#tabResources .contracts-search{box-sizing:border-box;width:240px;height:36px;padding:0 12px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#172338;font:400 13px 'Noto Sans KR',sans-serif}
#tabResources .contracts-search::placeholder{color:#9aa6b8}
#tabResources .contracts-search:focus{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#tabResources .contracts-refresh{height:36px;padding:0 12px;border:0;border-radius:8px;background:#e8eef6;color:#41536c;font:500 13px 'Noto Sans KR',sans-serif}
#tabResources .contracts-refresh:hover{background:#dde5f0;color:#172338}
#tabResources .contracts-status{min-height:0;padding:12px 2px 8px;color:#74839b;font-size:12px}
#tabResources .contracts-status.is-ok{color:#2f7d5c}
#tabResources .contracts-status.is-error{color:#d14343}
#tabResources .contracts-table-frame{max-width:100%;margin:0}
#tabResources .contracts-table-card{border:1px solid #e6edf6;border-radius:12px 12px 0 0;background:#fff;box-shadow:none}
#tabResources .contracts-horizontal-scroll{border-color:#e6edf6;background:#f3f6fb;border-radius:0 0 12px 12px;scrollbar-color:#9aa6b8 #eef2f7}
#tabResources .contracts-horizontal-scroll::-webkit-scrollbar-track{background:#eef2f7}
#tabResources .contracts-horizontal-scroll::-webkit-scrollbar-thumb{background:#9aa6b8;border-color:#eef2f7}
#tabResources .contracts-scroll-hint{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.8) 42%,rgba(255,255,255,.98) 82%,#fff);box-shadow:none}
#tabResources .contracts-table th{padding:13px 10px;border-right:1px solid #eef2f7;border-bottom:1px solid #e6edf6;background:#fafbfd;color:#74839a;font-size:12px;font-weight:500}
#tabResources .contracts-table th:hover{color:#1b64da;background:#f5f8fc}
#tabResources .contracts-filter-header{padding:0!important}
#tabResources .contracts-filter-trigger{min-height:44px;padding:12px 10px}
#tabResources .contracts-filter-trigger:hover{color:#1b64da;background:#f5f8fc}
#tabResources .contracts-filter-header.is-filtered{background:#edf4ff;color:#174fb0}
#tabResources .contracts-filter-header.is-open .contracts-filter-arrow,#tabResources .contracts-filter-header.is-filtered .contracts-filter-arrow{color:#1b64da}
#tabResources .contracts-filter-arrow{color:#8b95a1}
#tabResources .contracts-sort{color:#8fb6f0}
#tabResources .contracts-drag-hint{color:#b3c6dd}
#tabResources .contracts-draggable-header.is-drag-over-before{box-shadow:inset 3px 0 #1b64da}
#tabResources .contracts-draggable-header.is-drag-over-after{box-shadow:inset -3px 0 #1b64da}
#tabResources .contracts-filter-menu{border-color:#dfe6ef;border-radius:10px;box-shadow:0 16px 36px rgba(20,36,58,.16);color:#172338}
#tabResources .contracts-filter-options{border-color:#eef2f7}
#tabResources .contracts-filter-option{color:#344761;font-size:12px;font-weight:400}
#tabResources .contracts-filter-option:hover{background:#f5f8fc;color:#174fb0}
#tabResources .contracts-filter-option input{accent-color:#1b64da}
#tabResources .contracts-filter-all{color:#172338;font-weight:700}
#tabResources .contracts-filter-clear{border-color:#c8dbf7;background:#edf4ff;color:#1b64da;font:700 12px 'Noto Sans KR',sans-serif}
#tabResources .contracts-filter-clear:hover{background:#e1ecfd}
#tabResources .contracts-filter-clear:disabled{border-color:#eef2f7;background:#fafbfd;color:#9aa6b8}
#tabResources .contracts-table td{padding:9px 10px;border-right:1px solid #f3f6fa;border-bottom:1px solid #eef2f7;color:#344761;font-size:12px}
#tabResources .contracts-table td:first-child{color:#9aa6b8;background:#fbfcfe;font-weight:500}
#tabResources .contracts-table tr:hover td{background:#f7faff}
#tabResources .contracts-table tr:hover td:first-child{background:#f1f6fd}
#tabResources .contracts-table tr.is-expired td{background:#fff8f8}
#tabResources .contracts-table tr.is-expired:hover td{background:#fff1f1}
#tabResources .contracts-table tr.is-selected td{background:#edf4ff!important;box-shadow:inset 0 1px 0 #a9c9f5,inset 0 -1px 0 #a9c9f5}
#tabResources .contracts-table tr.is-selected td:first-child{color:#1b64da;background:#e1ecfd!important;box-shadow:inset 3px 0 0 #1b64da,inset 0 1px 0 #a9c9f5,inset 0 -1px 0 #a9c9f5}
#tabResources .contracts-owner-chip{font-weight:700}
#tabResources .contracts-cell[contenteditable="true"]:hover{box-shadow:inset 0 0 0 1px #c8dbf7}
#tabResources .contracts-cell[contenteditable="true"]:focus{background:#f5f9ff!important;box-shadow:inset 0 0 0 2px #3182f6}
#tabResources .contracts-file-link{color:#1b64da}
#tabResources .contracts-file-drop{outline-color:#3182f6;background:#f5f9ff!important}
#tabResources .contracts-empty,#tabResources .contracts-loading{color:#74839b}
#tabResources .contracts-spinner{border-color:#c8dbf7;border-top-color:#1b64da}
.contracts-upload-dropzone{border-color:#a9c9f5;background:#f7faff;color:#74839b}
.contracts-upload-dropzone strong{color:#1b64da}
.contracts-upload-dropzone:hover,.contracts-upload-dropzone:focus-visible,.contracts-upload-dropzone.is-dragging{border-color:#1b64da;background:#edf4ff}

/* ── 4. 자료 보관함 ── */
#tabResources .contracts-library{box-sizing:border-box;padding:18px 24px 20px;background:#f3f6fb}
#tabResources .contracts-library .rv-panel{max-width:none;width:100%;margin:0;background:transparent;border:0;box-shadow:none}
#tabResources .contracts-library .rv-panel-head{padding:0 0 18px;border:0;background:transparent}
#tabResources .contracts-library .rv-panel-body{padding:0!important;background:transparent}
#tabResources .contracts-library .rv-material-section{margin:0;padding:0;border:0;background:transparent}
#tabResources .resource-split{gap:20px}
#tabResources .resource-lane{min-height:360px;box-sizing:border-box;padding:16px;border:1px solid #e6edf6;border-radius:12px;background:#fff}
#tabResources .resource-lane.is-over{border-color:#1b64da;box-shadow:inset 0 0 0 2px rgba(27,100,218,.1)}
#tabResources .resource-lane-head{margin-bottom:14px;color:#172338;font-size:16px}
#tabResources .resource-lane-head strong{font-size:16px;font-weight:700;letter-spacing:-.04em}
#tabResources .resource-lane-head span{color:#74839b;font-size:12px}
#tabResources .resource-card{border:1px solid #e6edf6;border-radius:10px;background:#fff;box-shadow:none;transition:border-color 140ms,box-shadow 140ms}
#tabResources .resource-card:hover{border-color:#a9c9f5;box-shadow:0 6px 16px rgba(20,36,58,.08)}
#tabResources .resource-card-thumb{background:#f3f6fb}
#tabResources .resource-card-thumb-text{color:#344761;font-size:13px;font-weight:600}
#tabResources .resource-card-edit{border:0;border-radius:6px;background:rgba(20,36,58,.86);font-size:11px;font-weight:600}
#tabResources .resource-add-card{border:1px dashed #c5d2e3;border-radius:10px;background:#fff;color:#74839b;font-size:13px;font-weight:500}
#tabResources .resource-add-card:hover{border-color:#1b64da;color:#1b64da;background:#f5f9ff}
#tabResources .resource-file-list{gap:0;margin-top:6px}
#tabResources .resource-file-row{border:0;border-bottom:1px solid #eef2f7;border-radius:0;background:transparent}
#tabResources .resource-file-row:last-child{border-bottom:0}
#tabResources .resource-file-row:hover{background:#f7faff}
#tabResources .resource-file-row .rv-attachment-name{color:#344761;font-size:13px}
#tabResources .resource-file-row .rv-attachment-type{padding:2px 6px;border-radius:4px;background:#f3f6fb;color:#74839b;font-size:10px;font-weight:600}
@media (max-width:850px){#tabResources .contracts-nav{width:132px;flex-basis:132px;padding-inline:7px}#tabResources .contracts-nav-btn{padding-inline:6px;font-size:12px}#tabResources .contracts-main,#tabResources .contracts-library{padding:16px 14px}}
@media (prefers-reduced-motion:reduce){#tabResources .contracts-nav-btn{transition:none}#tabResources .contracts-nav-btn:hover{transform:none}}

/* ── 5. MAP 탭 (2026-11-03): 매물 검토 F2 톤으로 목록·칩·컨트롤·상세 패널 통일. 지도 마커 디자인은 그대로 ── */
#tabMap{font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em}
#tabMap .map-ico{flex:none;display:block}
/* 좌측 목록 */
#tabMap .sidebar{background:#f3f6fb;border-right:1px solid #e6edf6}
#tabMap .sidebar-header{gap:10px;padding:18px 16px 14px;background:#f3f6fb;border-bottom:1px solid #e6edf6}
#tabMap .filter-tabs{gap:2px;padding:3px;background:#e8eef6;border-radius:8px}
#tabMap .filter-tab{height:30px;padding:0 6px;border-radius:6px;color:#63758e;font-size:13px;font-weight:400}
#tabMap .filter-tab:hover{color:#172338}
#tabMap .filter-tab.active{background:#fff;color:#1b64da;font-weight:700;box-shadow:0 1px 2px rgba(20,36,58,.08)}
#tabMap .search-box input{box-sizing:border-box;height:36px;padding:0 12px 0 34px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#172338;font-size:13px}
#tabMap .search-box input::placeholder{color:#9aa6b8}
#tabMap .search-box input:focus{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#tabMap .search-icon{left:11px;display:flex;color:#8b95a1}
#tabMap .site-list{padding:12px 12px 8px}
#tabMap .site-card{margin-bottom:8px;padding:14px 16px;border:1px solid #e6edf6;border-radius:12px;background:#fff;box-shadow:none;transition:border-color 140ms,background-color 140ms,transform 140ms}
#tabMap .site-card::before{content:none}
#tabMap .site-card:hover{border-color:#c8dbf7;background:#fff;transform:translateX(2px)}
#tabMap .site-card.selected{border-color:#a9c9f5;background:#edf4ff;box-shadow:inset 3px 0 0 #1b64da}
#tabMap .card-top{margin-bottom:6px}
#tabMap .card-name{color:#172338;font-size:15px;font-weight:700;line-height:1.35;letter-spacing:-.04em}
#tabMap .site-card .badge{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600}
#tabMap .site-card .badge.maintenance{background:#fdecec;color:#d03b3f}
#tabMap .site-card .badge.done{background:#e6f6ef;color:#12805a}
#tabMap .site-card .badge.construction{background:#edf4ff;color:#1b64da}
#tabMap .site-card .badge.takeover{background:#fdf1e3;color:#b8650f}
#tabMap .card-addr{display:flex;align-items:flex-start;gap:5px;margin-bottom:6px;color:#74839b;font-size:12px;line-height:17px}
#tabMap .card-addr .map-ico{margin-top:2px;color:#9aa6b8}
#tabMap .date-badge{gap:5px;margin:2px 0 6px;padding:3px 8px;border:0;border-radius:6px;background:#fdecec;color:#d03b3f;font-size:11px;font-weight:600}
#tabMap .card-meta{margin-top:2px}
#tabMap .meta-item{gap:5px;color:#74839b;font-size:12px}
#tabMap .meta-item .map-ico{color:#9aa6b8}
#tabMap .site-list::-webkit-scrollbar-thumb{background:#c5d2e3}
/* 운영중 급여종류 보조 필터 */
#tabMap .pay-subfilter{gap:6px;padding:5px 8px;border:1px solid #e6edf6;border-radius:8px;background:#fff;box-shadow:none}
#tabMap .pay-subfilter-sidebar{padding:6px 8px}
#tabMap .pay-subfilter-label{color:#74839b;font-size:11px;font-weight:500}
#tabMap .pay-subpill{border-color:#dfe6ef;color:#63758e;font-size:12px;font-weight:500}
#tabMap .pay-subpill.is-on{border-color:#a9c9f5;background:#edf4ff;color:#1b64da}
#tabMap .pay-subpill.is-on .pay-check{border-color:#1b64da;background:#1b64da}
/* 하단 매물 리스트(시트 링크) 카드 */
#tabMap .listing-card{margin:8px 12px 12px;padding:14px 16px;border:1px solid #e6edf6;border-radius:12px;background:#fff}
#tabMap .listing-card:hover{border-color:#c8dbf7;background:#fff}
#tabMap .listing-card-title{color:#172338;font-size:14px;font-weight:700}
#tabMap .listing-card-desc,#tabMap .listing-card-empty{color:#74839b;font-size:12px}
#tabMap .listing-card-link{border:0;border-radius:6px;background:#e8eef6;color:#41536c;font-size:12px}
#tabMap .listing-card-link:hover{background:#dde5f0;color:#172338}
/* 지도 위 상태 칩 · 지점 추가 · 검색 */
#tabMap .stat-chip{height:32px;box-sizing:border-box;padding:0 12px;border:1px solid #e6edf6;border-radius:8px;background:#fff;color:#63758e;font-size:12px;font-weight:500;opacity:1;box-shadow:0 1px 3px rgba(20,36,58,.08);transform:none}
#tabMap .stat-chip:hover{color:#172338;border-color:#c5d2e3;transform:none}
#tabMap .stat-chip.active{transform:none;font-weight:700;box-shadow:0 1px 3px rgba(20,36,58,.08)}
#tabMap .stat-chip.red.active{background:#fdecec;border-color:#f3b8b9;color:#d03b3f}
#tabMap .stat-chip.green.active{background:#e6f6ef;border-color:#9fdcc0;color:#12805a}
#tabMap .stat-chip.blue.active{background:#edf4ff;border-color:#a9c9f5;color:#1b64da}
#tabMap .stat-chip.orange.active{background:#fdf1e3;border-color:#f1c890;color:#b8650f}
#tabMap .stat-dot.dot-red{background:#e5484d}
#tabMap .stat-dot.dot-green{background:#12a272}
#tabMap .stat-dot.dot-blue{background:#1b64da}
#tabMap .stat-dot.dot-orange{background:#d9822b}
#tabMap #btnAddInMap{display:inline-flex;align-items:center;height:32px;margin-left:4px;padding:0 14px;border:0;border-radius:8px;background:#1b64da;color:#fff;font-size:13px;font-weight:700;box-shadow:0 1px 3px rgba(20,36,58,.12);transform:none}
#tabMap #btnAddInMap:hover{background:#1957c2}
#tabMap .map-search-inner{height:36px;padding:0 6px 0 14px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;box-shadow:0 1px 3px rgba(20,36,58,.08)}
#tabMap .map-search-inner:focus-within{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#tabMap .map-search-inp{color:#172338;font-size:13px}
#tabMap .map-search-inp::placeholder{color:#9aa6b8}
#tabMap .map-search-btn{display:flex;align-items:center;justify-content:center;padding:5px;border-radius:6px;color:#74839b}
#tabMap .map-search-btn:hover{color:#1b64da;background:#edf4ff}
#tabMap .map-search-results{border:1px solid #dfe6ef;border-radius:10px;box-shadow:0 16px 36px rgba(20,36,58,.16)}
#tabMap .map-search-item:hover{background:#f5f8fc}
#tabMap .map-admin-result .map-search-item-addr{color:#1b64da}
/* 줌 · 반경 · 거리 */
#tabMap .custom-zoom{border-color:#dfe6ef;border-radius:8px;box-shadow:0 1px 3px rgba(20,36,58,.1)}
#tabMap .cz-btn{color:#41536c}
#tabMap .cz-btn:hover{background:#f5f8fc;color:#172338}
#tabMap .cz-btn.cz-plus{border-bottom-color:#eef2f7}
#tabMap .mmt-btn{gap:2px;border-color:#dfe6ef;border-radius:8px;color:#41536c;box-shadow:0 1px 3px rgba(20,36,58,.1)}
#tabMap .mmt-btn:hover{background:#f5f8fc;color:#172338;border-color:#c5d2e3}
#tabMap .mmt-btn.active{background:#edf4ff;color:#1b64da;border-color:#a9c9f5}
#tabMap .mmt-icon{display:flex;margin:0}
#tabMap .mmt-icon svg{width:14px;height:14px}
#tabMap .mmt-label{font-size:10px;font-weight:500;letter-spacing:-.02em}
#tabMap .mm-hint{background:rgba(20,36,58,.92)}
#tabMap .mm-result{border-radius:10px;box-shadow:0 8px 24px rgba(20,36,58,.18);color:#172338}
#tabMap .mm-lbl{color:#74839b}
#tabMap .mm-val{color:#172338}
#tabMap .mm-clear{border-color:#dfe6ef;background:#fff;color:#41536c}
#tabMap .mm-clear:hover{background:#f5f8fc}
/* 첫 진입 종류 선택 카드 */
#tabMap .map-empty-card{border-radius:14px;background:rgba(255,255,255,.94);border-color:#e6edf6;box-shadow:0 18px 48px rgba(20,36,58,.16)}
#tabMap .map-empty-eyebrow{color:#1b64da;letter-spacing:.08em;font-weight:700}
#tabMap .map-empty-title{color:#172338;font-size:18px;font-weight:700;letter-spacing:-.05em}
#tabMap .map-empty-sub{color:#74839b;font-size:13px}
#tabMap .map-empty-opt{border-color:#e6edf6;border-radius:10px;color:#172338;font-size:13px;font-weight:500}
#tabMap .map-empty-opt b{color:#172338;font-weight:700}
#tabMap .map-empty-opt:hover{border-color:#a9c9f5;background:#f7faff;box-shadow:none;transform:none}
#tabMap .map-empty-all{color:#1b64da;font-size:13px}
#tabMap .map-empty-all:hover{background:#edf4ff}
/* 우측 지점 상세 패널 */
#tabMap .detail-panel{border:1px solid #e6edf6;border-radius:12px;box-shadow:0 12px 32px rgba(20,36,58,.16);color:#172338}
#tabMap .detail-close{background:#f3f6fb;color:#74839b;border-radius:8px}
#tabMap .detail-close:hover{background:#e8eef6;color:#172338}
#tabMap .detail-name{color:#172338;font-size:20px;font-weight:700;letter-spacing:-.05em}
#tabMap .detail-addr{color:#74839b}
#tabMap .detail-row,#tabMap .detail-memo{background:#f7f9fc}
#tabMap .dp-tabs{border-bottom-color:#e6edf6}
#tabMap .dp-tab{color:#74839b;font-size:12px;font-weight:500}
#tabMap .dp-tab.active{color:#1b64da;border-bottom-color:#1b64da;font-weight:700}
#tabMap .dp-tabs[data-caring-motion]>.dp-tab.active{border-bottom-color:transparent}
#tabMap .dp-sec-title{color:#74839b}
#tabMap .dp-lbl{color:#74839b;font-size:12px}
#tabMap .dp-inp{border-color:#dfe6ef;background:#fff;color:#172338}
#tabMap .dp-inp:focus{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#tabMap .dp-inp-auto{background:#edf4ff;border-color:#c8dbf7;color:#1b64da}
#tabMap .dp-save-btn{background:#1b64da;border-radius:8px}
#tabMap .dp-save-btn:hover{background:#1957c2}
#tabMap .detail-panel .btn-roadview,#tabMap .detail-panel .btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 12px;border-radius:8px;font-size:13px}
#tabMap .detail-panel .btn-roadview{border:0;background:#e8eef6;color:#41536c;font-weight:500}
#tabMap .detail-panel .btn-roadview:hover{background:#dde5f0;color:#172338}
#tabMap .detail-panel .btn-primary{border:0;background:#1b64da;color:#fff;font-weight:700}
#tabMap .detail-panel .btn-primary:hover{background:#1957c2}
#tabMap .detail-panel .btn-outline{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 12px;border-radius:8px;background:#fff;font-size:13px}
/* 자세히 보기 모달 · 로드뷰: 보라 → 파랑 */
.sd-btn-road{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#e8eef6;color:#41536c}
.sd-btn-road:hover{background:#dde5f0}
.sd-btn-save{background:#1b64da}
.sd-btn-save:hover{background:#1957c2}
.sd-field-inp:focus,.sd-field-sel:focus,.sd-field-ta:focus{border-color:#1b64da}
.sdp-thumb.on{border-color:#1b64da}
.sdp-thumb:hover{border-color:#a9c9f5}
.sdp-upload:hover{border-color:#1b64da;background:#edf4ff}
.sdp-upload-fill{background:#1b64da}
#tabMap .btn-roadview-close{border-radius:8px}

/* ── 6. 진행상황 탭 (2026-11-03): 매물 검토 F2 톤. 간트 의미 색·집 아이콘 연출·저장 로직은 그대로 ── */
#tabProgress{font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em}
#tabProgress .progress-view{padding:18px 24px 32px;background:#f3f6fb;color:#172338}
#tabProgress .progress-title{margin:30px 0 12px;color:#172338;font-size:18px;font-weight:700;letter-spacing:-.05em}
#tabProgress .progress-title:first-child{margin-top:4px}
/* 요약 카드 */
#tabProgress .dash-stats{gap:12px;margin-bottom:0}
#tabProgress .dash-stat-card{padding:16px 20px;border:0;border-radius:12px;background:#fff;box-shadow:none;transform:none}
#tabProgress .dash-stat-card:hover{box-shadow:none;transform:none}
#tabProgress .dash-stat-label{margin-bottom:8px;color:#728096;font-size:13px;font-weight:400;letter-spacing:-.02em}
#tabProgress .dash-stat-val{margin-bottom:8px;font-size:28px;font-weight:700;letter-spacing:-.05em}
#tabProgress .dash-stat-val.pink{color:#1d2c42;-webkit-text-fill-color:#1d2c42}
#tabProgress .dash-stat-card:nth-child(2) .dash-stat-val.pink,#tabProgress .dash-stat-card:nth-child(3) .dash-stat-val.pink{color:#1b64da;-webkit-text-fill-color:#1b64da}
#tabProgress .dash-stat-unit,#tabProgress .dash-stat-val.pink .dash-stat-unit{color:#8b95a1;-webkit-text-fill-color:#8b95a1;font-size:13px}
#tabProgress .dash-stat-sub,#tabProgress .goal-bar-label{color:#74839b;font-size:12px}
#tabProgress .goal-input{color:#1b64da;border-bottom-color:#1b64da;font-size:28px}
#tabProgress .goal-bar-bg{height:6px;background:#eef2f7;border-radius:3px}
#tabProgress .goal-bar-fg{background:#3182f6;box-shadow:none}
/* 타임라인 · 지역 지도 · 지점 표 카드 */
#tabProgress .dash-timeline-map-row{gap:12px!important}
#tabProgress .gantt-wrap{padding:16px 20px;border:1px solid #e6edf6;border-radius:12px;background:#fff;box-shadow:none}
#tabProgress .gantt-leg{color:#74839b}
#tabProgress .gantt-th,#tabProgress .gantt-th-name,#tabProgress .gantt-th-region,#tabProgress .gantt-th-paytype{color:#74839a;font-size:12px;font-weight:500}
#tabProgress .gantt-th,#tabProgress .gantt-td{border-left-color:#eef2f7}
#tabProgress .gantt-row{border-top-color:#eef2f7}
#tabProgress .gantt-row:hover{background:rgba(27,100,218,.04)}
#tabProgress .gantt-row:hover .gantt-td-name{color:#1b64da}
#tabProgress .gantt-row:hover .gantt-td{border-left-color:rgba(27,100,218,.15)}
#tabProgress .gantt-td-name{color:#344761}
#tabProgress .gantt-td-region{color:#74839b}
#tabProgress #progressMapPanel{border:1px solid #e6edf6!important;border-radius:12px!important;background:#fff!important;box-shadow:none}
#tabProgress .progress-map-title{padding:14px 16px 12px!important;color:#172338!important;font-size:14px!important;border-bottom-color:#eef2f7!important}
#tabProgress .dash-table-wrap{border:1px solid #e6edf6;border-radius:12px;background:#fff;box-shadow:none}
#tabProgress .dash-table th{padding:13px 18px;background:#fafbfd;border-bottom-color:#e6edf6;color:#74839a;font-size:12px;font-weight:500}
#tabProgress .dash-table .tr-main td{border-bottom-color:#eef2f7;color:#344761}
#tabProgress .dash-table .tr-main:hover td{background:#f7faff}
#tabProgress .dash-table .tr-main.open td{background:#edf4ff}
#tabProgress .dash-table .tr-detail td{border-bottom-color:#eef2f7}
#tabProgress .dash-name-cell{color:#172338;font-size:15px;font-weight:700;letter-spacing:-.04em}
#tabProgress .dash-chevron.open{color:#1b64da}
#tabProgress .dash-mini-track{background:#eef2f7}
#tabProgress .dash-mini-fill{background:#3182f6;box-shadow:none}
#tabProgress .dash-mini-pct{color:#74839b}
#tabProgress .dash-dday-bold.far{color:#172338}
#tabProgress .dash-dday-date{color:#8b95a1}
/* 선택 드롭다운·상태 뱃지 */
#tabProgress .dash-sel{padding:5px 10px;border-radius:6px;font-size:12px;font-weight:600}
#tabProgress .ds-done,#tabProgress .db-done{background:#e6f6ef!important;border-color:#9fdcc0!important;color:#12805a!important}
#tabProgress .ds-ongoing,#tabProgress .db-ongoing{background:#fdf1e3!important;border-color:#f1c890!important;color:#b8650f!important}
#tabProgress .ds-pending,#tabProgress .db-pending{background:#f3f6fb!important;border-color:#dfe6ef!important;color:#74839b!important}
#tabProgress .ds-pay-visit{background:#edf4ff!important;border-color:#c8dbf7!important;color:#1b64da!important}
#tabProgress .ds-pay-day{background:#e6f6f4!important;border-color:#a6dcd6!important;color:#0f7f78!important}
#tabProgress .dash-badge{padding:4px 10px;border-radius:6px}
/* 펼친 상세 · 예비 지점 추가 */
#tabProgress .dash-detail-card{background:#fafbfd;border-top-color:#eef2f7}
#tabProgress .dash-detail-name{color:#172338;font-size:18px;letter-spacing:-.05em}
#tabProgress .dash-open-badge{border-radius:8px;background:#1b64da}
#tabProgress .dash-edit-memo{border-color:#dfe6ef;border-radius:8px}
#tabProgress .dash-edit-memo:focus,#tabProgress .dash-inline-inp:focus{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#tabProgress .dash-edit-date:focus{border-bottom-color:#1b64da}
#tabProgress .dash-add-trigger{border-top-color:#e6edf6;color:#74839b}
#tabProgress .dash-add-trigger:hover{background:#f7faff;color:#1b64da}
#tabProgress .dash-add-trigger .dash-add-icon{color:#1b64da}
#tabProgress .dash-inline-form{background:#fafbfd;border-top-color:#eef2f7}
#tabProgress .dash-inline-inp,#tabProgress .dash-inline-sel{border-color:#dfe6ef}
#tabProgress .dash-inline-save{background:#1b64da;border-radius:8px}
#tabProgress .dash-inline-save:hover{background:#1957c2;opacity:1}
#tabProgress .dash-map-hint:hover{color:#1b64da}
#tabProgress #progressMapPanel{min-height:420px}
#tabProgress #progressMapEl{min-height:360px}

/* ── 7. 우선순위 탭 (2026-11-03): 매물 검토 F2 톤. 순서·드래그·리사이즈·저장 로직 그대로 ── */
#tabPriority{font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em}
#tabPriority #priorityView{padding:18px 24px 28px;background:#f3f6fb;color:#172338}
#tabPriority #priorityView::-webkit-scrollbar-thumb{background:#c5d2e3}
#tabPriority #priorityView::-webkit-scrollbar-thumb:hover{background:#9aa6b8}
#tabPriority .pv-page-title{color:#172338;font-size:27px;line-height:36px;font-weight:700;letter-spacing:-.055em}
#tabPriority .pv-type-tabs{gap:2px;padding:3px;border:0!important;border-radius:8px!important;background:#e8eef6}
#tabPriority .pv-type-tab{height:30px;padding:0 12px;border-radius:6px;color:#63758e;font-size:13px}
#tabPriority .pv-type-tab:hover{color:#172338}
#tabPriority .pv-type-tab.pv-on{background:#fff;color:#1b64da;font-weight:700;box-shadow:0 1px 2px rgba(20,36,58,.08)}
#tabPriority .pv-add-btn{display:inline-flex;align-items:center;height:36px;padding:0 14px;border:0;border-radius:8px;background:#1b64da;color:#fff;font:700 13px 'Noto Sans KR',sans-serif;cursor:pointer}
#tabPriority .pv-add-btn:hover{background:#1957c2}
#tabPriority .pv-notice{margin:6px 0 14px!important;padding:7px 12px!important;border:0!important;border-radius:8px!important;background:#fdf1e3!important;color:#b8650f}
#tabPriority .pv-notice-ico{flex:none;color:#d9822b}
#tabPriority #pvNotice1{color:#b8650f;font-size:12px!important}
#tabPriority .pv-foot-hint{color:#9aa6b8!important}
/* 표 카드 */
#tabPriority #pvTableWrap{width:fit-content!important;max-width:100%!important;border:1px solid #e6edf6!important;border-radius:12px!important;background:#fff!important}
#tabPriority #pvTable thead tr{background:#fafbfd!important}
#tabPriority #pvTable thead th{padding:13px 6px!important;border-bottom:1px solid #e6edf6!important;border-right-color:#eef2f7;color:#74839a!important;font-size:12px!important;font-weight:500!important}
#tabPriority .pv-row td{border-bottom-color:#eef2f7;border-right-color:#f3f6fa;color:#344761}
#tabPriority .pv-row:hover td{background:#f7faff}
#tabPriority .pv-row:hover .pv-cell-text{color:#1b64da}
#tabPriority .pv-row.pv-sel td{background:#edf4ff!important}
#tabPriority .pv-row.pv-sel .pv-cell-text{color:#1b64da!important}
#tabPriority .pv-row.pv-dragover td{border-top:2px solid #1b64da!important;background:#f5f9ff}
#tabPriority .pv-drag-handle{color:#b3c6dd}
#tabPriority .pv-rank{color:#344761;font-weight:600}
#tabPriority .pv-rank.top{color:#1b64da;font-size:14px;font-weight:700}
#tabPriority .pv-rank.dim{color:#9aa6b8}
#tabPriority .pv-cell-text{color:#344761}
#tabPriority .pv-cell-clickable:hover{background:#f5f8fc}
#tabPriority .pv-cell-clickable:empty::before{color:#c5d2e3}
#tabPriority .pv-resizer::after{background:#eef2f7}
#tabPriority .pv-resizer:hover::after,#tabPriority .pv-resizer.dragging::after,#tabPriority .pv-th-resizer:hover::after,#tabPriority .pv-th-resizer.dragging::after{background:#1b64da}
/* 드롭다운·칩: 둥근 알약 + 3D 그라데이션 → 매물 검토식 연한 사각 뱃지 */
#tabPriority .pv-status-sel,#tabPriority .pv-hq-sel,#tabPriority .pv-corp-sel{border-radius:6px;box-shadow:none;transform:none;font-size:12px;font-weight:600}
#tabPriority .pv-hq-sel:hover,#tabPriority .pv-corp-sel:hover{box-shadow:none;transform:none;filter:brightness(.97)}
#tabPriority .pv-status-sel.st-매물서치중{background:#edf4ff;border-color:#c8dbf7;color:#1b64da}
#tabPriority .pv-status-sel.st-대기중{background:#fdf1e3;border-color:#f1c890;color:#b8650f}
#tabPriority .pv-status-sel.st-완료{background:#e6f6ef;border-color:#9fdcc0;color:#12805a}
#tabPriority .pv-hq-sel,#tabPriority .pv-corp-sel{background:#f3f6fb;border-color:#dfe6ef;color:#74839b}
#tabPriority .pv-hq-sel.hq-수도권1{background:#edf4ff;border-color:#c8dbf7;color:#1b64da}
#tabPriority .pv-hq-sel.hq-수도권2{background:#e6f6f4;border-color:#a6dcd6;color:#0f7f78}
#tabPriority .pv-hq-sel.hq-수도권3{background:#fdeef4;border-color:#f2bfd4;color:#b03a6a}
#tabPriority .pv-hq-sel.hq-충청{background:#fdf3dc;border-color:#efd08a;color:#a8690a}
#tabPriority .pv-hq-sel.hq-영남{background:#fdecec;border-color:#f3b8b9;color:#c43d41}
#tabPriority .pv-hq-sel.hq-호남{background:#e6f6ef;border-color:#9fdcc0;color:#12805a}
#tabPriority .pv-corp-sel.corp-CCC{background:#e6f6ef;border-color:#9fdcc0;color:#12805a}
#tabPriority .pv-corp-sel.corp-CC{background:#fdf1e3;border-color:#f1c890;color:#b8650f}
#tabPriority .pv-corp-sel.corp-C{background:#fdecec;border-color:#f3b8b9;color:#c43d41}
#tabPriority .pv-sido-sel{border-radius:6px;border-color:#dfe6ef;color:#344761;font-size:12px}
#tabPriority .pv-sido-sel:hover{border-color:#1b64da}
#tabPriority .pv-sel-wrap:hover::after{color:#1b64da}
#tabPriority .pv-tag{padding:3px 9px;border-radius:6px;background:#edf4ff;border-color:#c8dbf7;color:#1b64da;font-size:12px;font-weight:600}
#tabPriority .pv-tag:hover{border-color:#a9c9f5;color:#174fb0;box-shadow:none}
#tabPriority .pv-tag.memo{background:#fdf1e3;border-color:#f1c890;color:#b8650f}
#tabPriority .pv-tag-more{border-radius:6px;background:#edf4ff;border-color:#c8dbf7;color:#1b64da}
#tabPriority .pv-tag-add{border-color:#c5d2e3;color:#74839b}
#tabPriority .pv-tag-add:hover{border-color:#1b64da;color:#1b64da;background:#edf4ff}
#tabPriority .pv-tag-input{border-color:#1b64da;border-radius:6px}
.pv-popover{border-color:#e6edf6;border-radius:12px;box-shadow:0 16px 36px rgba(20,36,58,.16)}
.pv-popover-edit:focus{background:#f7faff;box-shadow:inset 0 0 0 1px #c8dbf7}
.pv-popover-edit{color:#172338}
#tabPriority #pvTable thead th:last-child{overflow:hidden}

/* ── 8. 로그인·회원가입 (2026-11-03 사용자 확인 목업): 매물 검토 F2 톤 ── */
#authOverlay{background:#f3f6fb!important;font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em}
#authOverlay .auth-card{max-width:880px;min-height:500px;border:1px solid #e6edf6;border-radius:16px;box-shadow:0 12px 32px rgba(20,36,58,.08)}
#authOverlay .auth-left{background:#14243a;padding:3.5rem 3rem 2.5rem}
#authOverlay .auth-left::before,#authOverlay .auth-left::after{content:none}
#authOverlay .auth-brand{gap:12px;margin-top:0}
#authOverlay .auth-brand-icon{width:36px;height:36px;border-radius:9px;background:#234572}
#authOverlay .auth-brand-name{color:#fff;font-size:15px;font-weight:800;letter-spacing:-.02em}
#authOverlay .auth-brand-sub{color:#91a6c2;font-size:12px;margin-top:2px}
#authOverlay .auth-headline{color:#fff;font-size:30px;font-weight:700;line-height:1.35;letter-spacing:-.06em}
#authOverlay .auth-headline em{background:none;-webkit-text-fill-color:#7eb5ff;color:#7eb5ff}
#authOverlay .auth-desc{color:#91a6c2;font-size:14px;line-height:1.8}
#authOverlay .auth-right{width:380px;padding:3.5rem 2.5rem 2.5rem}
#authOverlay .auth-form-title{color:#172338;font-size:24px;font-weight:700;letter-spacing:-.05em;margin-bottom:1.25rem}
#authOverlay #signupForm .auth-form-title{margin-bottom:.4rem}
#authOverlay .auth-form-sub{color:#74839b;font-size:13px}
#authOverlay .auth-field{margin-bottom:1rem}
#authOverlay .auth-field label{color:#74839b;font-size:12px;font-weight:500;text-transform:none;letter-spacing:-.02em;margin-bottom:6px}
#authOverlay .auth-field input{height:44px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#172338;font-size:14px}
#authOverlay .auth-field input::placeholder{color:#9aa6b8}
#authOverlay .auth-field input:focus{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#authOverlay .auth-forgot a{color:#74839b;font-size:12px}
#authOverlay .auth-forgot a:hover{color:#1b64da}
#authOverlay .auth-btn{height:46px;border-radius:8px;background:#1b64da;font-size:15px;box-shadow:none;transform:none}
#authOverlay .auth-btn:hover{background:#1957c2;opacity:1;transform:none;box-shadow:none}
#authOverlay .auth-divider-line{background:#eef2f7}
#authOverlay .auth-divider-text{color:#9aa6b8}
#authOverlay .auth-switch{color:#74839b;font-size:13px}
#authOverlay .auth-switch a{color:#1b64da;font-weight:700}
#authOverlay .auth-error{color:#d14343;font-size:12px}

/* ── 9. 자료 이름 더블클릭 수정 (2026-11-03 공통 기준) ── */
[data-rename]{cursor:pointer}
.ca-rename-input{flex:1 1 auto;min-width:0;width:100%;height:30px;box-sizing:border-box;margin:0;padding:0 9px;border:1px solid #1b64da;border-radius:6px;background:#fff;color:#172338;font:400 13px 'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.02em;outline:none;box-shadow:0 0 0 3px rgba(27,100,218,.12)}
.rv-video-card .ca-rename-input{height:28px;font-size:12px}

/* ── 10. 내 정보·멤버 관리 모달 (2026-11-05 사용자 승인 목업): 매물 검토 F2 톤. ID·핸들러·저장 로직 그대로 ── */
.caring-modal-overlay{position:fixed;inset:0;z-index:5000;align-items:center;justify-content:center;background:rgba(20,36,58,.42);font-family:'Noto Sans KR','Segoe UI',sans-serif;letter-spacing:-.035em;color:#172338}
.caring-modal{display:flex;flex-direction:column;box-sizing:border-box;background:#fff;border:1px solid #e6edf6;border-radius:16px;box-shadow:0 12px 32px rgba(20,36,58,.16);overflow:hidden}
.caring-modal *{box-sizing:border-box}
.caring-modal-head{flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 24px 16px}
.caring-modal-head h2{margin:0;color:#172338;font-size:22px;line-height:30px;font-weight:700;letter-spacing:-.055em}
.caring-modal-head p{margin:3px 0 0;color:#74839b;font-size:13px;line-height:19px;font-weight:400}
.caring-modal-x{flex:none;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:#8b95a1;cursor:pointer;transition:background-color 140ms,color 140ms}
.caring-modal-x svg{width:18px;height:18px}
.caring-modal-x:hover{background:#f3f6fb;color:#172338}
.caring-modal-x:focus-visible,.mi-btn:focus-visible,.mbr-seg>button:focus-visible,.mbr-act:focus-visible{outline:2px solid #8dbdff;outline-offset:2px}

/* 내 정보 */
.mi-modal{width:90%;max-width:400px;max-height:90vh;overflow-y:auto}
.mi-profile{display:flex;align-items:center;gap:14px;margin:0 24px;padding:18px;border-radius:12px;background:#14243a;color:#fff}
.mi-avatar{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#234572;color:#cfe2ff;font-size:18px;font-weight:700}
.mi-id{min-width:0}
.mi-id strong{display:block;font-size:19px;line-height:26px;font-weight:700;letter-spacing:-.05em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mi-id span{display:block;margin-top:2px;color:#91a6c2;font-size:12px;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mi-role{flex:none;align-self:flex-start;margin-left:auto;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:0}
.mi-role.is-edit{background:#2b5a96;color:#e2edfb}
.mi-role.is-read{background:#22384f;color:#b9c9de}
.mi-sec-title{margin:22px 24px 4px;color:#172338;font-size:15px;font-weight:700;letter-spacing:-.04em}
.mi-rows{margin:0 24px}
.mi-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;border-bottom:1px solid #eef2f7;font-size:13px}
.mi-row:last-child{border-bottom:0}
.mi-row span{color:#74839b}
.mi-row b{color:#172338;font-weight:500;text-align:right}
.mi-foot{margin-top:10px;padding:16px 24px 22px;border-top:1px solid #eef2f7}
#pwFields{margin-bottom:12px}
#pwFields input{display:block;width:100%;height:42px;margin:0 0 8px;padding:0 12px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#172338;font:400 13px 'Noto Sans KR',sans-serif;outline:none}
#pwFields input::placeholder{color:#9aa6b8}
#pwFields input:focus{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
#pwChangeMsg{margin:2px 0 4px;font-size:12px}
.mi-actions{display:flex;gap:8px}
.mi-btn{display:flex;align-items:center;justify-content:center;height:44px;padding:0 14px;border-radius:8px;font:700 14px 'Noto Sans KR',sans-serif;letter-spacing:-.03em;cursor:pointer;transition:background-color 140ms,border-color 140ms,color 140ms}
.mi-btn.sec{flex:0 0 108px;border:1px solid #dfe6ef;background:#fff;color:#4e5d74;font-weight:500}
.mi-btn.sec:hover{background:#f5f8fc;border-color:#c5d2e3;color:#172338}
.mi-btn.pri{flex:1;border:0;background:#1b64da;color:#fff}
.mi-btn.pri:hover{background:#1957c2}
.mi-btn.pri[data-state="save"]{background:#14243a}
.mi-btn.pri[data-state="save"]:hover{background:#234572}
.mi-btn.pri[data-state="saved"],.mi-btn.pri:disabled{background:#12805a;cursor:default}

/* 멤버 관리 */
.mbr-modal{width:92%;max-width:1200px;max-height:90vh}
.mbr-modal .caring-modal-head{padding:22px 28px 14px}
.mbr-kpis{flex-shrink:0;display:flex;gap:6px;margin:0 28px;padding:8px 16px;border-radius:12px;background:#f7f9fc}
.mbr-kpis:empty{display:none}
.mbr-kpi{position:relative;flex:1;min-width:0;padding:6px 12px}
.mbr-kpi+.mbr-kpi::before{content:"";position:absolute;left:-3px;top:8px;bottom:8px;width:1px;background:#e6edf6}
.mbr-kpi-l{color:#728096;font-size:12px;line-height:17px}
.mbr-kpi-v{color:#1d2c42;font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.05em}
.mbr-kpi-v small{margin-left:3px;color:#8b95a1;font-size:12px;font-weight:400;letter-spacing:0}
.mbr-kpi.is-green .mbr-kpi-v{color:#12805a}
.mbr-kpi.is-blue .mbr-kpi-v{color:#1b64da}
.mbr-kpi.is-orange .mbr-kpi-v{color:#e0662b}
.mbr-toolbar{flex-shrink:0;display:flex;align-items:center;gap:10px;margin:16px 28px 12px}
.mbr-seg{display:flex;gap:2px;padding:3px;border-radius:8px;background:#e8eef6}
.mbr-seg>.caring-tab-motion-indicator{display:none!important}
.mbr-seg>button{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border:0!important;border-radius:6px;background:transparent;color:#63758e;font:500 13px 'Noto Sans KR',sans-serif;letter-spacing:-.03em;cursor:pointer;transition:background-color 140ms,color 140ms}
.mbr-seg>button:hover{color:#172338}
.mbr-seg>button.is-active{background:#fff;color:#1b64da;font-weight:700;box-shadow:0 1px 2px rgba(20,36,58,.08)}
#pendingBadge{align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#e5484d;color:#fff;font-size:11px;font-weight:700;letter-spacing:0}
.mbr-search{display:flex;align-items:center;gap:8px;width:260px;height:36px;margin-left:auto;padding:0 12px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#9aa6b8;cursor:text}
.mbr-search svg{flex:none;width:15px;height:15px}
.mbr-search input{flex:1;min-width:0;height:100%;padding:0;border:0;outline:none;background:transparent;color:#172338;font:400 13px 'Noto Sans KR',sans-serif}
.mbr-search input::placeholder{color:#9aa6b8}
.mbr-search:focus-within{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
.mbr-table-wrap{flex:1;min-height:0;overflow:auto;margin:0 28px 24px;border:1px solid #e6edf6;border-radius:12px}
.mbr-table{width:100%;border-collapse:collapse}
.mbr-table th{position:sticky;top:0;z-index:1;height:40px;padding:0 14px;border-bottom:1px solid #e6edf6;background:#fafbfd;color:#74839a;font-size:12px;font-weight:500;text-align:left;white-space:nowrap}
.mbr-table th.mbr-c-edit,.mbr-table th.mbr-c-act{text-align:center}
.mbr-c-name{width:130px}.mbr-c-role{width:90px}.mbr-c-date{width:120px}.mbr-c-st{width:100px}.mbr-c-edit{width:90px}.mbr-c-act{width:130px}
.mbr-table td{height:48px;padding:0 14px;border-bottom:1px solid #eef2f7;color:#344761;font-size:13px}
.mbr-table tbody tr:last-child td{border-bottom:0}
.mbr-table tbody tr:hover td{background:#f7faff}
.mbr-table td.mbr-center{text-align:center;white-space:nowrap}
.mbr-name{color:#172338!important;font-weight:700;white-space:nowrap}
.mbr-me{margin-left:6px;padding:2px 6px;border-radius:5px;background:#edf4ff;color:#1b64da;font-size:10px;font-style:normal;font-weight:700;vertical-align:1px}
.mbr-email{color:#4e5d74!important}
.mbr-date{color:#74839b!important;white-space:nowrap}
.mbr-row.is-off td{color:#9aa6b8}
.mbr-row.is-off td.mbr-name{color:#8b95a1!important}
.mbr-st{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;white-space:nowrap}
.mbr-st::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.mbr-st.is-on{background:#e6f6ef;color:#12805a}
.mbr-st.is-off{background:#f1f4f8;color:#8b95a1}
.mbr-st.is-wait{background:#fdf1e3;color:#b8650f}
.mbr-check{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;cursor:pointer;vertical-align:middle}
.mbr-check input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.mbr-check span{width:18px;height:18px;border:1.5px solid #c5d2e3;border-radius:5px;background:#fff;transition:background-color 120ms,border-color 120ms}
.mbr-check:hover span{border-color:#1b64da}
.mbr-check input:checked+span{border-color:#1b64da;background:#1b64da url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.mbr-check input:focus-visible+span{outline:2px solid #8dbdff;outline-offset:2px}
.mbr-dash{color:#c5d2e3}
.mbr-act{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid #dfe6ef;border-radius:7px;background:#fff;color:#63758e;font:500 12px 'Noto Sans KR',sans-serif;cursor:pointer;transition:background-color 140ms,border-color 140ms,color 140ms}
.mbr-act+.mbr-act{margin-left:4px}
.mbr-act:hover{border-color:#c5d2e3;background:#f5f8fc;color:#172338}
.mbr-act.is-primary{border-color:#a9c9f5;background:#edf4ff;color:#1b64da;font-weight:700}
.mbr-act.is-primary:hover{border-color:#1b64da}
.mbr-act.is-danger{border-color:#f3b8b9;color:#d03b3f}
.mbr-act.is-danger:hover{background:#fdecec;border-color:#d03b3f;color:#d03b3f}
.mbr-empty{padding:30px;color:#9aa6b8;font-size:13px;text-align:center}
@media (max-width:850px){.mbr-modal .caring-modal-head{padding:18px 16px 12px}.mbr-kpis{margin:0 16px;flex-wrap:wrap}.mbr-kpi{flex:1 1 30%}.mbr-toolbar{margin:12px 16px 10px;flex-wrap:wrap}.mbr-search{width:100%;margin-left:0}.mbr-table-wrap{margin:0 16px 16px}}

/* ── 11. 매물 검토 상단 도구 (2026-11-05 사용자 요청): 검색 · 지역 관리 · 매물 가져오기 · + 추가(매물/지역) ── */
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools{position:relative;z-index:30}
body[data-rv-day-theme="f2"] #tabReview .rv-search-box{display:flex;align-items:center;gap:7px;box-sizing:border-box;width:230px;height:38px;padding:0 10px 0 12px;border:1px solid #dfe6ef;border-radius:8px;background:#fff;color:#9aa6b8;cursor:text;transition:border-color 140ms,box-shadow 140ms}
body[data-rv-day-theme="f2"] #tabReview .rv-search-box svg{flex:none;width:15px;height:15px}
body[data-rv-day-theme="f2"] #tabReview .rv-search-box input{flex:1;min-width:0;height:100%;padding:0;border:0;outline:none;background:transparent;color:#172338;font:400 13px 'Noto Sans KR',sans-serif;letter-spacing:-.03em}
body[data-rv-day-theme="f2"] #tabReview .rv-search-box input::placeholder{color:#9aa6b8}
body[data-rv-day-theme="f2"] #tabReview .rv-search-box:focus-within{border-color:#1b64da;box-shadow:0 0 0 3px rgba(27,100,218,.1)}
body[data-rv-day-theme="f2"] #tabReview .rv-search-box.is-active{border-color:#a9c9f5;background:#f7faff;color:#1b64da}
body[data-rv-day-theme="f2"] #tabReview .rv-search-count{flex:none;padding:2px 7px;border-radius:6px;background:#edf4ff;color:#1b64da;font-size:11px;font-weight:700;letter-spacing:0}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-region-manage-btn{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 13px;border:0;border-radius:8px;background:#e8eef6;color:#41536c;font:500 13px 'Noto Sans KR',sans-serif;cursor:pointer;white-space:nowrap;transition:background-color 140ms,color 140ms}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-region-manage-btn:hover{background:#dbe4f0;color:#172338}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-import-row{height:38px}
body[data-rv-day-theme="f2"] #tabReview .rv-add-menu{position:relative;flex:none}
body[data-rv-day-theme="f2"] #tabReview .rv-add-menu::after{content:"";position:absolute;left:0;right:0;top:100%;height:8px}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-row{height:38px}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-row::after{content:"추가" / ""}
body[data-rv-day-theme="f2"] #tabReview .rv-add-menu-list{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:80;min-width:150px;box-sizing:border-box;padding:6px;border:1px solid #e6edf6;border-radius:10px;background:#fff;box-shadow:0 10px 28px rgba(20,36,58,.14)}
body[data-rv-day-theme="f2"] #tabReview .rv-add-menu:hover .rv-add-menu-list,body[data-rv-day-theme="f2"] #tabReview .rv-add-menu.is-open .rv-add-menu-list,body[data-rv-day-theme="f2"] #tabReview .rv-add-menu:focus-within .rv-add-menu-list{display:block}
body[data-rv-day-theme="f2"] #tabReview .rv-add-menu.is-suppressed .rv-add-menu-list{display:none!important}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-menu-list button{display:flex;align-items:center;width:100%;height:38px;padding:0 12px;border:0;border-radius:7px;background:transparent;color:#344761;font:500 13px 'Noto Sans KR',sans-serif;letter-spacing:-.03em;text-align:left;cursor:pointer;transition:background-color 120ms,color 120ms}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-menu-list button:hover,body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-menu-list button:focus-visible{background:#edf4ff;color:#1b64da;outline:none}
body.caring-readonly #tabReview .rv-add-menu{display:none!important}
/* 2026-11-05 보완: "+ 추가" 아이콘과 글자 사이 간격·가운데 정렬, "최근 본 지역" 뒤 구분선 */
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-menu .rv-add-row{gap:0;padding:0 16px 0 13px}
body[data-rv-day-theme="f2"] #tabReview .rv-v2-headtools .rv-add-menu .rv-add-row::after{margin-left:5px;line-height:20px}
body[data-rv-day-theme="f2"] #tabReview .rv-folder-bar .rv-v2-recent-caption::after{content:"";display:inline-block;width:1px;height:12px;margin:0 2px 0 12px;background:#b8c4d4;vertical-align:-1px}
@media (max-width:1600px){body[data-rv-day-theme="f2"] #tabReview .rv-search-box{width:190px}}
@media (max-width:680px){body[data-rv-day-theme="f2"] #tabReview .rv-search-box{width:100%}}
