/* 교인관리 (church/) */
.chc-toolbar { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 10px; }
.chc-toolbar input[type=text], .chc-toolbar select { padding: 4px 6px; border: 1px solid #bbb; border-radius: 3px; }
.chc-head-btn { float: right; font-size: 13px; }

.chc-list { width: 100%; border-collapse: collapse; font-size: 13px; }
.chc-list th { background: #f3f1ec; border-bottom: 2px solid #910505; padding: 6px 4px; text-align: center; white-space: nowrap; font-weight: normal; }
.chc-list th.sort { cursor: pointer; }
.chc-list td { border-bottom: 1px solid #e5e2da; padding: 4px; text-align: center; vertical-align: middle; }
.chc-list td.l { text-align: left; }
.chc-list tr.chc-row:hover td { background: #faf7f0; cursor: pointer; }
.chc-list tr.sel td { background: #fff3dc; }
.chc-wrap { overflow-x: auto; }

.chc-thumb { display: inline-block; width: 40px; height: 48px; object-fit: cover; border-radius: 3px; background: #eee; vertical-align: middle; }
.chc-big { display: inline-block; width: 150px; height: 180px; object-fit: cover; border: 1px solid #ccc; border-radius: 4px; background: #eee; }
.chc-nophoto { text-align: center; color: #bbb; }
.chc-thumb.chc-nophoto { line-height: 48px; font-size: 20px; }
.chc-big.chc-nophoto { line-height: 180px; font-size: 70px; }

.chc-form { border-collapse: collapse; width: 100%; max-width: 900px; font-size: 13px; }
.chc-form th { width: 130px; background: #f3f1ec; text-align: left; padding: 6px 10px; font-weight: normal; border-bottom: 1px solid #e5e2da; vertical-align: middle; }
.chc-form td { padding: 6px 10px; border-bottom: 1px solid #e5e2da; }
.chc-form input[type=text], .chc-form input[type=email], .chc-form input[type=date],
.chc-form input[type=tel], .chc-form input[type=number], .chc-form select, .chc-form textarea { padding: 4px 6px; border: 1px solid #bbb; border-radius: 3px; max-width: 100%; }
.chc-form textarea { width: 100%; height: 60px; }

.chc-section { font-size: 15px; font-weight: bold; color: #910505; margin: 18px 0 8px; border-bottom: 2px solid #910505; padding-bottom: 4px; }
.chc-section .button { font-weight: normal; float: right; margin-top: -4px; }
.chc-cols { display: flex; flex-wrap: wrap; gap: 20px; }
.chc-cols > div { flex: 1 1 400px; min-width: 0; }
.chc-card { background: #faf9f6; border: 1px solid #e5e2da; border-radius: 6px; padding: 12px; }
.chc-muted { color: #888; font-size: 12px; }
.req { color: brown; }
.chc-role { display: inline-block; font-size: 11px; padding: 0 5px; border-radius: 3px; background: #910505; color: #fff; font-weight: normal; }
.chc-status { display: inline-block; font-size: 11px; padding: 0 5px; border-radius: 3px; background: #888; color: #fff; font-weight: normal; }
.chc-hide { display: none; }

#fam_result { margin-top: 6px; max-height: 260px; overflow-y: auto; }
#fam_result div { padding: 5px 8px; border-bottom: 1px solid #eee; cursor: pointer; }
#fam_result div:hover { background: #fff3dc; }
