/* 모시는집 · B 탐색 구조 + C 사진 표현 · 0910-design1 */
:root{
  --ground:#F5F5EF;--surface:#FFFFFF;--surface-2:#F2F4EF;--surface-3:#E7EBE4;
  --ink:#20382E;--ink-2:#43584D;--muted:#65756B;--faint:#748276;
  --line:#E1E6DE;--line-strong:#CBD4C7;--brand:#285B45;--brand-2:#357157;--brand-soft:#EAF0E5;
  --r-btn:14px;--r-card:18px;--r-chip:999px;--r-sheet:25px;--r-img:13px;
  --sans:Pretendard,"Noto Sans KR",-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --serif:"Noto Serif KR",Georgia,serif;
}
.brandbar{height:68px;min-height:68px;border-bottom:1px solid var(--line);background:var(--surface);}
.brandbar .logo{display:flex;align-items:center;gap:7px;font-size:21px;letter-spacing:-.8px;font-weight:750;}
.brandbar .acts{gap:12px;}.brandbar .acts button{min-width:36px;min-height:40px;display:grid;place-items:center;}
.tabbar{border-top:1px solid var(--line);background:var(--surface);padding-top:9px;}
.tabbar button{color:var(--muted);}.tabbar button.on{color:var(--brand);}
.care-home .body{background:#FAFAF6;}.care-intro{padding:28px 24px 23px;background:var(--surface);}
.care-eyebrow{font-size:11px;font-weight:650;letter-spacing:.12em;color:var(--brand);margin:0 0 11px;}
.care-intro h1{font-size:31px;font-weight:700;line-height:1.35;letter-spacing:-1.3px;margin:0 0 12px;}
.care-lead{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 22px;}
.care-search{display:flex;align-items:center;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface);box-shadow:0 3px 9px #20382e04;}
.care-search button{display:flex;align-items:center;gap:9px;padding:15px;font-size:14px;font-weight:600;min-height:54px;}
.care-search button:first-child{flex:1;min-width:0;}.care-search button:first-child span{flex:1;text-align:left;overflow-wrap:anywhere;}
.care-search button:last-child{border-left:1px solid var(--line);padding:12px;}
.care-search svg{width:19px;height:19px;flex-shrink:0;}
.care-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:19px 0 11px;}
.care-types button{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid var(--line);border-radius:15px;padding:16px 3px;background:var(--surface);}
.care-types button:hover{background:var(--brand-soft);border-color:var(--line-strong);}
.care-type-icon{display:grid;place-items:center;width:36px;height:32px;color:var(--brand);margin-bottom:3px;}
.care-types b{font-size:14px;font-weight:650;}.care-types button>span:last-child{font-size:11px;color:var(--muted);}
.care-text-link{font-size:12px;display:flex;gap:3px;align-items:center;justify-content:center;width:100%;color:var(--muted);min-height:35px;}
.care-text-link svg{width:13px;height:13px;}
.care-editorial{position:relative;margin:0 0 7px;}.care-editorial>img{width:100%;height:235px;object-fit:cover;display:block;}
.care-image-caption{position:absolute;right:14px;top:16px;color:#fff;background:#20382ebd;border-radius:4px;padding:3px 6px;font-size:10px;}
.care-editorial-copy{position:relative;margin:-25px 24px 0;padding:26px 24px;background:#F1F0E7;border-radius:3px;}
.care-editorial h2{font-family:var(--serif);font-size:25px;line-height:1.6;font-weight:500;letter-spacing:-1px;margin:0 0 17px;}
.care-editorial-copy button{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:650;min-height:32px;}
.care-editorial-copy button svg{width:15px;}
.care-section,.care-guide{padding:29px 24px;}.care-section .sechead{align-items:center;margin-bottom:18px;}
.care-section .sechead h3,.care-guide h3{font-size:21px;letter-spacing:-.6px;font-weight:700;}
.care-section .sechead .care-eyebrow{margin-bottom:5px;}.care-section .more{font-size:12px;}
.care-featured .fc{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;padding:0;margin-bottom:18px;position:relative;}
.care-featured .fc .thumb{grid-column:1/-1;grid-row:1;width:100%;height:210px;border:0;border-radius:0;margin:0;}
.care-featured .fc .fi{grid-column:1/-1;grid-row:2;padding:18px 19px 5px;}
.care-featured .fc .fn{font-size:20px;font-weight:700;line-height:1.55;}.care-featured .fc .fm{margin-top:6px;}
.care-featured .fc .fright{grid-column:1/-1;grid-row:3;text-align:left;padding:10px 19px 19px;display:flex;align-items:baseline;gap:7px;}
.care-featured .fc .fright b{font-size:24px;}.care-featured .fc .fright i{font-size:12px;color:var(--muted);}
.care-featured .fc .fadd{position:absolute;right:12px;top:12px;background:var(--surface);border-radius:50%;width:38px;height:38px;border:1px solid var(--line);}
.care-guide{background:var(--surface);}.care-guide>button{width:100%;display:flex;align-items:center;text-align:left;gap:15px;padding:20px 0;border-bottom:1px solid var(--line);}
.care-guide>button>span:first-child{color:var(--brand);}.care-guide>button>span:nth-child(2){flex:1;}
.care-guide b{display:block;font-size:14px;font-weight:650;}.care-guide small{display:block;color:var(--muted);font-size:12px;margin-top:4px;}
.care-trust{display:flex;align-items:center;gap:13px;width:100%;padding:26px 24px;text-align:left;background:var(--brand-soft);font-size:12px;color:var(--ink-2);}
.care-trust span{flex:1;}.care-trust b{font-weight:600;}.care-trust svg{flex-shrink:0;color:var(--brand);}
.care-empty{padding:20px 0;}.care-empty p{font-size:14px;}
/* 탐색: 검색 조건을 유지하는 목록·지도 전환 */
.browse-switch{display:flex;gap:3px;padding:4px;background:var(--surface-2);border-radius:12px;margin:10px 0 0;}
.browse-switch button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:9px;padding:9px;font-size:13px;color:var(--muted);min-height:39px;}
.browse-switch button.on{background:var(--surface);color:var(--brand);box-shadow:0 2px 5px #20382e0b;font-weight:650;}
.browse-switch button:disabled{opacity:.5;cursor:default;}.browse-switch svg{width:16px;height:16px;}
.browse-head{padding:19px 20px 12px;background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0;}
.browse-head h1{font-size:24px;letter-spacing:-.8px;margin:0 0 15px;line-height:1.35;}
.browse-head .search{border-radius:13px;box-shadow:none;border:1px solid var(--line-strong);height:49px;}
.browse-head .kindbar{margin:13px 0 0;padding:0;}.browse-head .sortbar{padding:12px 0 0;border:0;}
.browse-results{background:#FAFAF6;padding:0 20px 24px!important;}
.browse-count{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--muted);padding:20px 0 4px;}
.browse-count b{color:var(--ink);font-weight:650;}
.browse-results .fc{display:grid;grid-template-columns:100px minmax(0,1fr) 30px;grid-template-rows:auto auto;align-items:start;gap:5px 13px;padding:21px 0;}
.browse-results .fc .thumb{grid-column:1;grid-row:1/3;width:100px;height:130px;border:0;border-radius:13px;margin:0;}
.browse-results .fc .fi{grid-column:2;grid-row:1;min-width:0;}.browse-results .fc .fn{font-size:17px;line-height:1.5;}
.browse-results .fc .fright{grid-column:2;grid-row:2;text-align:left;padding:6px 0 0;}.browse-results .fc .fright b{font-size:22px;}
.browse-results .fc .fright i{font-size:11px;color:var(--muted);}.browse-results .fc .fadd{grid-column:3;grid-row:1;margin:0;width:30px;min-height:36px;}
.browse-results .fm2{font-size:11px;line-height:1.7;}.browse-results .fm{font-size:12px;}
.topbar .browse-switch{pointer-events:auto;}.scr.maps .topbar{padding-top:12px;}.sheet.dock{border-radius:24px 24px 0 0;}
/* Map controls use measured header space, including short screens and an open tray. */
.map-stage>.topbar>.browse-switch{margin:0 0 12px;}
.map-stage>.sheet.dock{min-height:min(270px,calc(100% - var(--map-head-height,240px) - 12px));max-height:calc(100% - var(--map-head-height,240px) - 12px);}
.map-stage.map-controls-tight .mapctl{display:none;}
.map-stage.map-controls-hidden .mapgps,.map-stage.map-controls-hidden .researchbtn,.map-stage.map-prompt-hidden .geoask{display:none;}
.map-stage>.geoask{bottom:calc(var(--sheettop,60px) + 12px)!important;max-height:calc(var(--map-free-height,250px) - 24px);overflow-y:auto;}
.map-stage:has(.map-unavailable)>.sheet.dock{display:none;}
.map-stage>.map-unavailable{inset:var(--map-head-height,240px) 0 0;padding:18px 20px;overflow:auto;align-items:flex-start;}
.map-stage>.map-unavailable>div{margin:auto;flex-shrink:0;width:100%;}
.tray .tdots .photo-empty>span{display:none;}.tray .tdots .photo-empty{width:100%;height:100%;gap:0;}.tray .tdots .photo-empty>svg{width:17px;height:17px;}
/* 등록 사진만 시설 이미지로 사용. 실패한 사진도 명시적인 빈 상태로 복귀. */
.ph.photo-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;background:#EDF0E9!important;color:var(--muted);}
.ph.photo-empty::before,.ph.photo-empty::after{display:none!important;}
.ph.photo-empty>span{font-family:var(--sans);font-size:11px!important;color:var(--muted)!important;font-weight:400;position:static!important;transform:none!important;}
.ph.photo-empty>svg{width:25px;height:25px;color:#A0AE9C;}.ph.photo-empty.hero>svg{width:37px;height:37px;}
.ph.photo-empty.hero>span{font-size:13px!important;}
.care-detail .hero{height:280px;}.care-detail .hero .ph{height:100%;}.care-detail .hero .tag{font-size:11px;border-radius:6px;}
.care-detail .sec{padding:24px;background:var(--surface);}.care-detail .sec>.fn{font-size:25px!important;line-height:1.45;letter-spacing:-.8px;}
.care-detail .srcbar{font-size:11px;line-height:1.7;padding:13px 24px;}.care-detail .addrlink{border-radius:12px;background:var(--surface-2);padding:13px;gap:10px;}
.care-detail .kindline{margin:10px 0 14px;}.care-detail .kv.tot{background:var(--brand-soft);border:0;border-radius:13px;margin-top:12px;padding:17px 14px;}
.care-detail .sec+.sec{border-top:8px solid #F6F7F2;}.care-detail .lbl{font-size:16px;font-weight:700;letter-spacing:-.3px;}
.care-detail .gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.care-detail .gallery-grid a:first-child{grid-column:1/-1;}
.care-detail .gallery-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:13px;}
.map-unavailable{position:absolute;inset:0;background:var(--surface-2);display:flex;align-items:center;justify-content:center;padding:230px 24px 115px;}
.map-unavailable>div{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px;max-width:360px;}
.map-unavailable b{font-size:16px;}.map-unavailable p{font-size:13px;color:var(--muted);margin:10px 0 17px;line-height:1.7;}
@media(max-width:360px){
  .care-intro,.care-section,.care-guide{padding-left:20px;padding-right:20px;}.care-intro h1{font-size:27px;}
  .care-lead{font-size:12px;}.care-types{gap:6px;}.care-types b{font-size:13px;}.care-types button>span:last-child{font-size:10px;}
  .care-editorial-copy{margin-left:20px;margin-right:20px;padding:23px 20px;}.care-editorial h2{font-size:23px;}
  .browse-head{padding-left:16px;padding-right:16px;}.browse-results{padding-left:16px!important;padding-right:16px!important;}
  .browse-results .fc{grid-template-columns:82px minmax(0,1fr) 28px;gap:4px 10px;}.browse-results .fc .thumb{width:82px;height:119px;}
  .browse-results .fc .fn{font-size:15px;}.browse-results .fc .fright b{font-size:20px;}.care-detail .hero{height:230px;}
}
