.encounter3-site .fh-church-logo { width:58px; height:58px; flex:none; object-fit:contain; }
.fh-brand-name { font-family:Georgia,"Times New Roman",serif; }
.fh-brand-name small { font-family:"Segoe UI",Arial,sans-serif; }
.encounter3-site .fmc-welcome h2 { font-family:Georgia,"Times New Roman",serif; font-weight:400; font-size:42px; margin-bottom:0; overflow-wrap:anywhere; }
.fh-profile-card { position:relative; }
.fmc-card-save { position:absolute; right:12px; top:12px; z-index:2; }
.fmc-action { margin:0; }
body.encounter3-site .fmc-favourite, body.encounter3-site .fmc-delete { display:inline-flex; align-items:center; justify-content:center; padding:0; width:44px; height:44px; min-height:44px; border:1px solid var(--fm-border); border-radius:6px; background:#fff; color:var(--fm-green); box-shadow:0 2px 8px #20332f12; }
body.encounter3-site .fmc-favourite:hover, body.encounter3-site .fmc-delete:hover { color:var(--fm-coral-dark); background:#fff3f1; border-color:var(--fm-coral); }
body.encounter3-site .fmc-favourite[aria-pressed="true"] { background:var(--fm-coral); color:var(--fm-on-accent,#fff); border-color:var(--fm-coral); }
.fmc-favourite[aria-pressed="true"] svg { fill:currentColor; }
.fmc-profile-save { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.fmc-profile-save span { font-size:14px; color:var(--fm-muted); }
.fh-results-toolbar { flex-wrap:wrap; gap:16px; align-items:flex-start; }
.fh-results-count { order:-1; }
.fmc-save-search { max-width:100%; width:290px; }
.fmc-save-search summary { cursor:pointer; color:var(--fm-green); display:flex; align-items:center; justify-content:flex-end; gap:8px; min-height:44px; font-weight:600; }
.fmc-save-search[open] { border:1px solid var(--fm-border); border-radius:6px; padding:16px; background:var(--fm-cloud); }
.fmc-save-search .fmc-action { display:grid; gap:12px; margin-top:12px; }
.fmc-save-search input { width:100%; min-width:0; }
.fmc-save-search label { display:grid; gap:6px; font-size:14px; }
.fmc-welcome { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-bottom:32px; }
.fmc-tabs { display:flex; flex-wrap:wrap; border-bottom:1px solid var(--fm-border); gap:0 24px; }
.fmc-tabs a { padding:16px 0; border-bottom:3px solid transparent; color:var(--fm-muted); font-weight:600; font-size:15px; }
.fmc-tabs a[aria-current="page"] { color:var(--fm-green); border-bottom-color:var(--fm-coral); }
.fmc-tabs a:hover { color:var(--fm-green); }
.encounter3-site .fmc-tabs a, .encounter3-site .fmc-stats a { text-decoration:none; }
.fmc-panel { padding:32px 0; min-height:330px; }
.fmc-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--fm-border); padding-bottom:32px; gap:24px; }
.fmc-stats a { display:grid; grid-template-columns:1fr 24px; gap:8px; border-right:1px solid var(--fm-border); padding-right:20px; }
.fmc-stats a:last-child { border-right:0; }
.fmc-stats strong { grid-column:1 / -1; font-size:40px; line-height:1.2; font-family:Georgia,"Times New Roman",serif; font-weight:400; color:var(--fm-green); }
.fmc-stats a:nth-child(2) strong { color:var(--fm-blue); }
.fmc-stats a:nth-child(3) strong { color:var(--fm-coral-dark); }
.fmc-stats a:nth-child(4) strong { color:#8a6810; }
.fmc-stats span { font-size:14px; }
.fmc-overview-columns { display:grid; grid-template-columns:1fr 1fr; gap:64px; padding-top:40px; }
.fmc-my-profile { border-right:1px solid var(--fm-border); padding-right:40px; }
.fmc-profile-summary { display:flex; gap:20px; align-items:center; margin:24px 0; }
.encounter3-site .fmc-profile-summary img { width:96px; height:116px; object-fit:cover; border-radius:6px; }
.fmc-profile-summary h4 { font-size:22px; margin:0 0 8px; }
.fmc-profile-summary p { margin-bottom:8px; color:var(--fm-muted); }
.fmc-support { margin-top:32px; padding-top:24px; border-top:1px solid var(--fm-border); }
.fmc-support h4 { margin:0 0 10px; }
.fmc-support a { display:inline-flex; align-items:center; gap:10px; }
.fmc-account-footer { border-top:1px solid var(--fm-border); padding-top:20px; text-align:right; font-size:14px; }
.fmc-notice { border-left:3px solid var(--fm-green); background:var(--fm-mint); padding:14px 18px; }
.fmc-empty { grid-column:1 / -1; padding:48px 0; text-align:center; color:var(--fm-muted); }
.fmc-empty h4 { font-size:24px; color:var(--fm-ink); margin:0 0 16px; }
.fmc-empty a { color:var(--fm-green); text-decoration:underline; }
.fmc-search-row, .fmc-sent-row { display:flex; flex-wrap:wrap; align-items:center; gap:16px; border-bottom:1px solid var(--fm-border); padding:24px 0; }
.fmc-search-row > div:first-child, .fmc-sent-row > div:first-child { flex:1; min-width:180px; }
.fmc-search-row h4, .fmc-sent-row h4 { font-size:20px; margin:0 0 8px; overflow-wrap:anywhere; }
.fmc-search-row p, .fmc-sent-row time { color:var(--fm-muted); font-size:14px; margin:0; }
.fmc-status { background:var(--fm-mint); color:var(--fm-green); padding:6px 10px; font-size:13px; }
.fmc-reply { width:100%; padding:16px; background:var(--fm-cloud); margin:0; }
.fmc-unavailable { padding:24px; border:1px solid var(--fm-border); border-radius:6px; }
.fmc-profile-overview { display:grid; gap:32px; }
.fmc-profile-overview-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding-bottom:24px; border-bottom:1px solid var(--fm-border); }
.fmc-profile-overview-header h3, .fmc-profile-overview-section h4 { margin:0; }
.fmc-profile-overview-header p { margin:8px 0 0; color:var(--fm-muted); }
.fmc-profile-overview-identity { display:flex; align-items:center; gap:20px; }
.encounter3-site .fmc-profile-overview-identity img { width:110px; height:132px; object-fit:cover; border-radius:6px; }
.fmc-profile-overview-identity h4 { margin:0 0 10px; font-size:24px; }
.fmc-profile-overview-section { padding-top:28px; border-top:1px solid var(--fm-border); }
.fmc-profile-overview-section h4 { font-size:20px; margin-bottom:16px; }
.fmc-profile-overview-section dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 32px; margin:0; }
.fmc-profile-overview-section dl > div { min-width:0; }
.fmc-profile-overview-section dt { color:var(--fm-muted); font-size:13px; font-weight:700; margin-bottom:5px; }
.fmc-profile-overview-section dd { margin:0; overflow-wrap:anywhere; }
.fmc-profile-overview-section dd p { margin:0; }
.fmc-profile-photo-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.encounter3-site .fmc-profile-photo-grid img { width:100%; aspect-ratio:1 / 1; object-fit:cover; border-radius:6px; }
.fmc-login { max-width:640px; padding:48px 0; }
.fmc-login > a { margin-right:20px; }
.fmc-panel .fmm-received-interests { max-width:none; }
.fmc-panel .fmm-received-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,1fr); gap:16px 36px; border:0; border-bottom:1px solid var(--fm-border); border-radius:0; background:transparent; box-shadow:none; padding:28px 0; margin:0; }
.fmc-panel .fmm-received-card-header { grid-column:1; display:flex; align-items:flex-start; gap:16px; }
.fmc-panel .fmm-received-card-header strong { font-size:22px; }
.fmc-panel .fmm-received-card-header a { display:block; font-size:14px; margin-top:6px; color:var(--fm-green); }
.fmc-panel .fmm-received-card > p { grid-column:1; margin:0; overflow-wrap:anywhere; }
.fmc-panel .fmm-response-form { grid-column:2; grid-row:1 / span 5; padding:0; border:0; margin:0; }
.fmc-panel .fmm-response-form label { display:grid; gap:8px; }
.fmc-panel .fmm-response-form textarea { width:100%; min-height:120px; resize:vertical; }
.fmc-panel .fmm-response-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:12px; }
.fmc-panel .fmm-response-actions { justify-content:flex-start; }
.fmc-panel .fmm-pagination { display:flex; gap:12px; margin-top:24px; }
.fmc-panel .fmm-pagination .page-numbers { display:inline-flex; justify-content:center; align-items:center; min-width:44px; min-height:44px; padding:8px; border:1px solid var(--fm-border); }
.fmc-panel .fmm-pagination .current { background:var(--fm-green); color:var(--fm-on-primary,#fff); }
.fmc-panel .fmm-score { background:var(--fm-mint); color:var(--fm-green); border-radius:4px; padding:6px 8px; white-space:nowrap; font-size:13px; }
.encounter3-site .fmc-panel .fmm-button-secondary { background:#fff; border:1px solid var(--fm-border); color:var(--fm-muted); }
@media (max-width:820px) {
 .fmc-welcome { align-items:flex-start; flex-direction:column; gap:20px; }
 .encounter3-site .fmc-welcome h2 { font-size:34px; }
 .fmc-tabs { gap:0 20px; }
 .fmc-tabs a { font-size:14px; padding:12px 0; }
 .fmc-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
 .fmc-stats a:nth-child(2) { border-right:0; }
 .fmc-overview-columns { grid-template-columns:1fr; gap:32px; }
 .fmc-my-profile { border-right:0; border-bottom:1px solid var(--fm-border); padding:0 0 32px; }
 .fmc-profile-overview-header { flex-direction:column; }
 .fmc-profile-overview-section dl { grid-template-columns:1fr; gap:16px; }
 .fmc-profile-photo-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .fmc-panel .fmm-received-card { display:block; }
 .fmc-panel .fmm-received-card > p { margin:16px 0; }
 .fmc-panel .fmm-response-form { margin-top:20px; }
 .fmc-panel .fmm-received-card-header { flex-wrap:wrap; }
 .fmc-card-save { top:8px; right:8px; }
 .fmc-save-search { width:100%; }
 .fmc-save-search summary { justify-content:flex-start; }
 .fmc-panel .fmc-favourites { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:380px) {
 .fmc-panel .fmc-favourites { grid-template-columns:1fr; }
 .fh-brand-name { font-size:17px; }
}
