@charset "utf-8";
/* [ima] 병의원 검색 · 회원명부 (bbs/ima_hospital.*.php) - 색은 ima-page.css 변수 */
.ima-hp * { box-sizing: border-box; }

/* 검색 */
.ima-hp-search { display: flex; flex-wrap: wrap; margin: 0 -6px 1rem; padding: 1rem .6rem .4rem; background: var(--pg-soft); border: 1px solid var(--pg-line); border-radius: var(--pg-radius); }
.ima-hp-row { width: 33.333%; padding: 0 6px; margin-bottom: .7rem; }
.ima-hp-row.is-wide { width: 100%; }
.ima-hp-row > label, .ima-hp-lb { display: block; margin-bottom: .25rem; color: var(--pg-navy); font-size: 13.5px; font-weight: 700; }
.ima-hp-row select, .ima-hp-row input[type=search] { width: 100%; height: 42px; padding: 0 10px; border: 1px solid #cfd6df; border-radius: 8px; background: #fff; font-size: 15px; }
.ima-hp-kw { display: flex; }
.ima-hp-kw select { flex: 0 0 7.5rem; width: auto; margin-right: 6px; }
.ima-hp-kw input { flex: 1; min-width: 0; }
.ima-hp-chks { display: flex; flex-wrap: wrap; }
.ima-hp-chks label { margin: 0 14px 6px 0; font-size: 14.5px; white-space: nowrap; cursor: pointer; }
.ima-hp-chks input { margin-right: 3px; vertical-align: -1px; }
.ima-hp-btns { width: 100%; display: flex; justify-content: flex-end; padding: 0 6px .6rem; }
.ima-hp-btns .ima-btn, .ima-hp-btns .ima-btn-line { margin-left: 6px; }
.ima-hp-btns.is-center { justify-content: center; margin-top: 1.5rem; padding: 0; }

/* 목록 */
.ima-hp-count { margin: 0 0 .5rem; color: var(--pg-muted); font-size: 14px; }
.ima-hp-count b { color: var(--pg-navy); }
.ima-hp-count span { margin-left: .4rem; font-size: 12.5px; }
.ima-hp-list { border-top: 2px solid var(--pg-navy); }
.ima-hp-list li { display: flex; flex-wrap: wrap; align-items: center; padding: .75rem .5rem; border-bottom: 1px solid var(--pg-line); }
.ima-hp-main { flex: 1 1 260px; min-width: 0; color: var(--pg-text) !important; text-decoration: none !important; }
.ima-hp-main b { display: block; font-size: 16px; color: var(--pg-navy); }
.ima-hp-main span { display: block; color: var(--pg-muted); font-size: 13.5px; }
.ima-hp-main:hover b { text-decoration: underline; }
.ima-hp-sub { flex: 0 1 auto; display: flex; flex-wrap: wrap; align-items: center; font-size: 13.5px; color: var(--pg-muted); }
.ima-hp-sub > * { margin: 2px 0 2px 12px; }
.ima-hp-area { padding: 0 8px; border-radius: 10px; background: var(--pg-soft); color: var(--pg-navy); font-weight: 600; }
.ima-hp-tel { color: var(--pg-navy) !important; white-space: nowrap; }
.ima-hp-addr { max-width: 22rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ima-hp-empty { padding: 3rem 0; text-align: center; color: #999; }

/* 자세히 */
.ima-hp-card { display: flex; align-items: center; margin-bottom: 1rem; }
.ima-hp-photo { flex: 0 0 auto; margin-right: 1rem; }
.ima-hp-photo img, .ima-hp-noimg { display: block; width: 88px; height: 88px; border-radius: 50%; object-fit: cover; border: 1px solid var(--pg-line); }
.ima-hp-noimg { display: flex; align-items: center; justify-content: center; background: var(--pg-soft); color: #9fb0c4; font-size: 44px; }
.ima-hp-head h3 { margin: 0; color: var(--pg-navy); font-size: 22px; font-weight: 800; }
.ima-hp-head p { margin: .2rem 0 0; color: var(--pg-muted); font-size: 15px; }
.ima-hp-info { display: grid; grid-template-columns: 7rem 1fr; margin: 0 0 1.25rem; border-top: 2px solid var(--pg-navy); }
.ima-hp-info dt, .ima-hp-info dd { margin: 0; padding: .65rem .8rem; border-bottom: 1px solid var(--pg-line); font-size: 15px; }
.ima-hp-info dt { background: #fafbfd; color: var(--pg-navy); font-weight: 700; }
.ima-hp-info dd a { color: var(--pg-navy); font-weight: 700; }
.ima-hp-map { position: relative; padding-bottom: 56%; border-radius: var(--pg-radius); overflow: hidden; border: 1px solid var(--pg-line); background: var(--pg-soft); }
.ima-hp-map iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
.ima-hp-maplinks { display: flex; flex-wrap: wrap; justify-content: flex-end; margin-top: .5rem; }
.ima-hp-maplinks a { margin: 0 0 6px 6px; }

@media (max-width: 767.98px) {
	.ima-hp-row { width: 100%; }
	.ima-hp-sub > *:first-child { margin-left: 0; }
	.ima-hp-sub { width: 100%; margin-top: 2px; }
	.ima-hp-info { grid-template-columns: 5.5rem 1fr; }
	.ima-hp-map { padding-bottom: 75%; }
	.ima-hp-btns .ima-btn { flex: 1; justify-content: center; }
}
