.member-manager { --mm-border:#d8d9d4; --mm-muted:#565c57; color:#222822; }
.mm-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:8px 0 24px; }
.mm-heading h2 { margin:0 0 8px; font-family:"Besley",Georgia,serif; font-size:30px; }
.mm-heading p { margin:0; color:var(--mm-muted); max-width:65ch; }
.mm-workspace { display:grid; grid-template-columns:minmax(300px,0.85fr) minmax(420px,1.15fr); gap:24px; align-items:start; }
.mm-results,.mm-editor { background:#fff; border:1px solid var(--mm-border); border-radius:12px; min-width:0; overflow:hidden; }
.mm-results form { display:flex; padding:18px 18px 8px; gap:8px; }
.mm-results form label { flex:1; min-width:0; }
.mm-results input,.mm-field input { width:100%; min-height:44px; border:1px solid #aaaFA9; border-radius:6px; padding:10px 12px; font:inherit; color:#222822; background:#fff; }
.mm-results input:focus,.mm-field input:focus { outline:2px solid #1d5c4f; outline-offset:2px; }
.mm-result-count { padding:4px 20px 14px; color:var(--mm-muted); font-size:13px; }
.mm-member-list { max-height:610px; overflow:auto; }
.mm-member-list>button { display:flex; align-items:center; width:100%; border:0; border-top:1px solid #e7e8e4; text-align:left; padding:16px; gap:12px; background:#fff; color:inherit; cursor:pointer; font:inherit; }
.mm-member-list>button:hover { background:#f7f8f5; }
.mm-member-list>button[aria-pressed="true"] { background:#eef5ef; box-shadow:inset 4px 0 #1d5c4f; }
.mm-member-list>button:focus-visible { outline:2px solid #1d5c4f; outline-offset:-3px; }
.mm-initials { display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:#f3ecd6; color:#544523; font-weight:700; flex-shrink:0; }
.mm-identity { display:grid; gap:4px; min-width:0; flex:1; overflow-wrap:anywhere; }
.mm-identity>span,.mm-identity small { color:var(--mm-muted); font-size:13px; }
.mm-record-kind { font-size:11px; color:#536451; border:1px solid #dbe2d8; border-radius:4px; padding:3px 6px; }
.mm-results>footer,.mm-editor form footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 18px; border-top:1px solid var(--mm-border); }
.mm-results>footer>span,.mm-editor form footer>span { color:var(--mm-muted); font-size:12px; }
.mm-results>footer>div { display:flex; gap:6px; }
.mm-results>footer .button { padding:8px 12px; }
.mm-editor>header { padding:24px 24px 16px; }
.mm-editor h3 { font-size:24px; margin:0 0 8px; font-family:"Besley",Georgia,serif; overflow-wrap:anywhere; }
.mm-editor p { font-size:14px; line-height:1.6; color:var(--mm-muted); margin:0; }
.mm-editor fieldset { border:0; margin:0; padding:0; min-width:0; }
.mm-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px 16px; padding:8px 24px 20px; }
.mm-field { display:grid; gap:7px; font-size:14px; min-width:0; }
.mm-field>span { font-weight:600; }
.mm-editor .mm-email-help { margin:0 24px 20px; font-size:13px; }
.mm-email-confirm { margin:0 24px 20px; display:flex; gap:10px; align-items:flex-start; font-size:13px; line-height:1.6; padding:14px; background:#fff6db; border-radius:6px; }
.mm-email-confirm[hidden] { display:none; }
.mm-email-confirm input { margin-top:5px; flex-shrink:0; width:18px; height:18px; }
.mm-activation { padding:20px 24px; background:#f4f7f3; border-top:1px solid var(--mm-border); display:flex; gap:16px; align-items:center; justify-content:space-between; }
.mm-activation>div { min-width:0; overflow-wrap:anywhere; }
.mm-activation strong { display:block; margin-bottom:5px; }
.mm-activation .button { flex-shrink:0; }
.mm-idle { padding:70px 40px; text-align:center; }
.mm-idle>span { display:block; font-size:44px; color:#1d5c4f; margin-bottom:18px; }
.mm-idle small { display:block; margin-top:24px; color:var(--mm-muted); }
.mm-empty { padding:32px 24px; }
.mm-empty h3 { font-size:18px; }
.mm-error,.mm-notice,.mm-request-active { padding:16px 20px; margin:0 0 20px; border-radius:8px; line-height:1.6; }
.mm-error { background:#fff0ed; border:1px solid #e5b6ac; color:#762719; }
.mm-notice { background:#edf6ed; color:#205430; border:1px solid #bad6bc; }
.mm-request-active { background:#fff5d6; }
.mm-request-active .button { margin-left:16px; }
.mm-requests { margin-bottom:24px; border:1px solid #d8c78f; background:#fffaf0; border-radius:10px; padding:18px 22px; }
.mm-requests summary { font-weight:700; cursor:pointer; }
.mm-requests>p { font-size:14px; color:var(--mm-muted); }
.mm-requests article { display:flex; gap:20px; justify-content:space-between; align-items:center; padding:16px 0; border-top:1px solid #e7ddbf; }
.mm-requests article>div:first-child { display:grid; gap:5px; overflow-wrap:anywhere; min-width:0; }
.mm-requests article>div:last-child { display:flex; gap:8px; flex-shrink:0; }
.mm-requests small { color:var(--mm-muted); }
.mm-match { background:#fff5d6; border-top:1px solid #e7ddbf; border-bottom:1px solid #e7ddbf; padding:20px 24px; margin-bottom:16px; overflow-wrap:anywhere; }
.mm-match p { margin:8px 0; }
.mm-back { display:none; }
[data-member-match-form]>p { font-size:14px; line-height:1.6; }
[data-member-match-form]>[role="alert"] { color:#9e2f21; }
@media(max-width:1050px){.mm-workspace{grid-template-columns:minmax(250px,.8fr) minmax(330px,1fr);gap:16px}.mm-activation{display:block}.mm-activation .button{margin-top:12px}.mm-record-kind{display:none}}
@media(max-width:760px){
 .page-shell:has(.member-manager) .section-nav{display:flex;flex-direction:row;overflow-x:auto;position:static;gap:8px;max-width:100%;padding:10px;margin-bottom:6px}
 .page-shell:has(.member-manager) .section-nav-label{display:none}
 .page-shell:has(.member-manager) .section-nav .section-link{flex:0 0 auto;white-space:nowrap;width:auto}
 .mm-heading{align-items:flex-start;gap:12px}.mm-heading h2{font-size:25px}.mm-heading p{font-size:14px}.mm-heading>.button{white-space:nowrap}
 .mm-workspace{display:block}.mm-workspace:not(.has-selection) .mm-editor{display:none}.mm-workspace.has-selection .mm-results{display:none}
 .mm-back{display:inline-flex;margin-bottom:18px}.mm-member-list{max-height:none}.mm-fields{padding:8px 18px 20px;gap:16px;grid-template-columns:1fr}
 .mm-editor>header,.mm-activation,.mm-match{padding:20px 18px}.mm-requests{padding:16px}.mm-requests article{display:block}.mm-requests article>div:last-child{margin-top:14px}
 .mm-heading>.button{font-size:13px;padding:10px}.mm-idle{display:none}
}
