
#view-members{background:var(--content-bg,var(--sage-75))}
/* Sara 2026-09-14: keep the different look, but centre it — it was pinned left
   with a field of white space to its right. */
.mb-wrap{padding:0 0 60px;max-width:none;margin:0;width:100%;box-sizing:border-box}
/* Sara 2026-09-15: the white band was wider than the content under it. The wrap now
   carries the frame's side margins (PHI_PAGES people/members), so the band and the body
   are one width, and the band is a card with its own radius. */
/* Sara 2026-09-19: the heading used to sit in a box of its own, so the title and the
   row of tabs were inset from every card below them and the gap underneath was bigger
   than the gaps between the cards. The heading is now part of the page, on the same
   left edge as the columns, with the standard gap under it. */
.mb-head{background:transparent;border:0;border-radius:0;padding:0;position:static;box-sizing:border-box}
.mb-head-top{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.mb-head-top h2{margin:0;font-size:19px;font-weight:800;color:var(--text,var(--emerald-825))}
.mb-head-top .lede{color:var(--muted,var(--emerald-500));font-size:12.5px}
.mb-subtabs{display:flex;gap:5px;margin-top:13px;flex-wrap:wrap}
.mb-subtabs button{border:1px solid var(--border,var(--emerald-250));background:var(--white);color:var(--muted,var(--emerald-500));border-radius:16px 16px 0 0;border-bottom:none;padding:8px 15px;font-size:12.5px;font-weight:600;position:relative;top:1px;font-family:inherit}
.mb-subtabs button:hover{color:var(--text,var(--emerald-825))}
.mb-subtabs button.on{background:var(--blue,var(--emerald-750));color:var(--white);border-color:var(--blue,var(--emerald-750))}
.mb-body{padding:13px 0 0;max-width:none;display:block;align-items:start}
.mb-main{min-width:0}
.mb-rail{position:sticky;top:170px;background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:12px;padding:12px 12px 10px;box-sizing:border-box;max-height:calc(100vh - 190px);overflow:auto}
.mb-rail-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.mb-rail-h h4{margin:0;font-size:13.5px;font-weight:800;color:var(--text)}
.mb-count{font-size:11px;color:var(--muted,var(--emerald-500));background:var(--grey-50);border-radius:20px;padding:1px 8px;font-weight:700;margin-left:4px}
.mb-rail-new{padding:5px 10px;font-size:12px;border-radius:8px}
.mb-rail-search{margin-bottom:8px;padding:6px 10px}.mb-rail-search input{font-size:12.5px}
.mb-rail-chips{margin-bottom:8px}.mb-rail-chips .mb-fchip{padding:3px 9px;font-size:11px}
.mb-rail-row{display:flex;align-items:center;gap:9px;padding:8px 8px;border-radius:9px;cursor:pointer;border:1px solid transparent}
.mb-rail-row:hover{background:var(--grey-50)}.mb-rail-row.on{background:var(--sage-50);border-color:#bcd9c8}
.mb-rail-t{flex:1;min-width:0}.mb-rail-t .nm{font-weight:700;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb-rail-t .sub{font-size:11px;color:var(--muted,var(--emerald-500));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mb-rail .mb-av{width:30px;height:30px;font-size:11px}.mb-av-img{object-fit:cover;border-radius:50%;flex-shrink:0}
@media (max-width:1100px){.mb-body{grid-template-columns:1fr}.mb-rail{position:static;max-height:none}}
/* concierge: message history + documents, one template for every member (2026-09-15) */
.mb-kpis4{grid-template-columns:repeat(4,1fr)}
.mb-conc{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:13px;align-items:start}
.mb-conc-side .mb-slab{margin-bottom:13px}
.mb-conc h4 .mb-mini{font-weight:600;margin-left:8px}
.mb-thread{max-height:640px;overflow:auto;padding:4px 6px 4px 0;display:flex;flex-direction:column;gap:6px}
.mb-day{align-self:center;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,var(--emerald-500));background:var(--grey-50);border-radius:20px;padding:2px 10px;margin:8px 0 2px}
.mb-msg{display:flex;flex-direction:column;max-width:78%}.mb-msg.in{align-self:flex-start;align-items:flex-start}.mb-msg.out{align-self:flex-end;align-items:flex-end}
.mb-bub{font-size:13px;line-height:1.45;padding:8px 12px;border-radius:14px;white-space:pre-wrap;word-break:break-word}
.mb-msg.in .mb-bub{background:var(--grey-50);color:var(--text);border-bottom-left-radius:4px}
.mb-msg.out .mb-bub{background:var(--plum-650);color:var(--white);border-bottom-right-radius:4px}
.mb-subj{font-weight:700;margin-bottom:4px;opacity:.9}
.mb-msg-meta{font-size:10.5px;color:var(--muted,var(--emerald-500));margin:2px 6px 0}
.mb-row a.nm{color:var(--blue,var(--emerald-750));text-decoration:none}.mb-row a.nm:hover{text-decoration:underline}
@media (max-width:1000px){.mb-conc{grid-template-columns:1fr}.mb-kpis4{grid-template-columns:repeat(2,1fr)}}
.mb-view{display:none}.mb-view.on{display:block}
.mb-bar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.mb-search{flex:1;min-width:200px;display:flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:9px;padding:8px 12px}
.mb-search input{border:none;background:transparent;outline:none;font-family:inherit;font-size:13.5px;color:var(--text);width:100%}
.mb-chips{display:flex;gap:6px;flex-wrap:wrap}
.mb-fchip{border:1px solid var(--border,var(--emerald-250));background:var(--white);color:var(--muted,var(--emerald-500));border-radius:20px;padding:6px 13px;font-size:12.5px;font-weight:600;font-family:inherit}
.mb-fchip.on{background:var(--blue,var(--emerald-750));color:var(--white);border-color:var(--blue,var(--emerald-750))}
.mb-btn{border:none;border-radius:9px;padding:9px 15px;font-size:13px;font-weight:700;font-family:inherit;background:var(--blue,var(--emerald-750));color:var(--white)}
.mb-card{background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:12px;overflow:hidden}
table.mb-t{width:100%;border-collapse:collapse;font-size:13px}
table.mb-t th{text-align:left;padding:11px 14px;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,var(--emerald-500));border-bottom:1px solid var(--border,var(--emerald-250));background:var(--grey-50);font-weight:700}
table.mb-t td{padding:11px 14px;border-bottom:1px solid var(--sage-50);vertical-align:middle;color:var(--text,var(--emerald-825))}
table.mb-t tr:last-child td{border-bottom:none}
table.mb-t tbody tr{cursor:pointer}
table.mb-t tbody tr:hover{background:var(--grey-50)}
.mb-cell{display:flex;align-items:center;gap:10px}
.mb-av{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--white);font-weight:700;font-size:12px}
.mb-cell .nm{font-weight:600}.mb-cell .sub{font-size:11.5px;color:var(--muted,var(--emerald-500))}
.mb-tag{font-size:10.5px;font-weight:700;padding:2.5px 9px;border-radius:20px;white-space:nowrap;display:inline-block}
.mb-tag.good{background:var(--sage-100);color:var(--emerald-540)}.mb-tag.info{background:var(--grey-150);color:#2f6d8f}
.mb-tag.warn{background:#f6e9d4;color:var(--amber-475)}.mb-tag.mute{background:var(--grey-75);color:var(--emerald-500)}
.mb-tag.sample{background:var(--grey-80);color:var(--plum-650)}
.mb-mini{font-size:12px;color:var(--muted,var(--emerald-500))}
.mb-back{border:1px solid var(--border,var(--emerald-250));background:var(--white);color:var(--muted,var(--emerald-500));border-radius:8px;padding:6px 12px;font-size:12.5px;font-weight:600;font-family:inherit;margin-bottom:14px}
.mb-profile{display:flex;align-items:center;gap:14px;background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:12px;padding:16px 18px;margin-bottom:14px}
.mb-profile .big{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--terra,var(--emerald-550)),var(--blue,var(--emerald-750)));color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px}
.mb-profile h3{margin:0;font-size:19px;font-weight:800;color:var(--text)}
.mb-profile .meta{color:var(--muted,var(--emerald-500));font-size:12.5px;margin-top:2px}
.mb-profile .right{margin-left:auto;display:flex;gap:8px;align-items:center}
.mb-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:13px}
.mb-kpi{background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:11px;padding:12px 13px}
.mb-kpi b{font-size:16px;font-weight:800;display:block;line-height:1.2;color:var(--text)}
.mb-kpi span{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,var(--emerald-500));display:block;margin-top:6px}
.mb-grid2{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:stretch}.mb-grid2>.mb-slab{box-sizing:border-box}
.mb-slab{background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:12px;padding:15px 17px;border-top:3px solid var(--accent,var(--terra,var(--emerald-550)))}
.mb-slab h4{margin:0 0 10px;font-size:13.5px;font-weight:700;color:var(--text)}
.mb-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--sage-50);font-size:13px}
.mb-row:last-child{border-bottom:none}.mb-row .nm{font-weight:600;color:var(--text)}
.mb-note{background:var(--grey-50);border:1px dashed var(--border,var(--emerald-250));border-radius:10px;padding:12px 14px;font-size:12.5px;color:var(--muted,var(--emerald-500))}
.mb-note b{color:var(--text)}
.mb-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mb-form label{font-size:11.5px;font-weight:700;color:var(--muted,var(--emerald-500));display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:.03em}
.mb-form input,.mb-form select{width:100%;box-sizing:border-box;border:1px solid var(--border,var(--emerald-250));border-radius:8px;padding:8px 10px;font-size:13.5px;font-family:inherit;background:var(--white);color:var(--text)}
.mb-form .full{grid-column:1/3}
.mb-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.mb-actions .ghost{background:var(--white);border:1px solid var(--border,var(--emerald-250));color:var(--muted,var(--emerald-500));border-radius:8px;padding:9px 15px;font-weight:600;font-family:inherit;font-size:13px}
@media (max-width:900px){.mb-kpis{grid-template-columns:repeat(2,1fr)}.mb-grid2,.mb-form{grid-template-columns:1fr}.mb-form .full{grid-column:auto}}
/* member record additions 2026-09-15: diagnostics graph, member type, entitlements, program boxes */
.mb-top{display:grid;grid-template-columns:minmax(300px,1fr) minmax(360px,1.15fr);gap:13px;margin-bottom:13px;align-items:stretch}
.mb-top .mb-profile.mb-card2{margin-bottom:0;padding:0;display:grid;grid-template-columns:minmax(150px,42%) 1fr;gap:0;align-items:stretch;overflow:hidden}
.mb-photo{background:var(--sage-75);border-radius:11px 0 0 11px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:220px}
.mb-photo img{width:100%;height:100%;object-fit:cover;display:block}
.mb-photo-none span{font-size:44px;font-weight:800;color:var(--white);background:linear-gradient(135deg,var(--terra,var(--emerald-550)),var(--blue,var(--emerald-750)));width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.mb-top .mb-profile .mb-who{display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:16px 18px;min-width:0}
.mb-top .mb-profile h3{font-size:21px}
.mb-job{font-size:13.5px;font-weight:600;color:var(--text);margin-top:2px}
.mb-contact{display:flex;flex-direction:column;gap:2px;margin-top:8px;font-size:13px}.mb-contact a{color:var(--blue,var(--emerald-750));text-decoration:none}.mb-contact a:hover{text-decoration:underline}
.mb-top .mb-profile .right{margin-left:0;align-self:flex-end}
.mb-diag{background:var(--white);border:1px solid var(--border,var(--emerald-250));border-radius:12px;padding:12px 15px 10px;border-top:3px solid var(--blue,var(--emerald-750))}
.mb-diag-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.mb-diag-h h4{margin:0;font-size:13.5px;font-weight:700;color:var(--text)}
.mb-dtabs{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0 4px}.mb-dtab{font:inherit;font-size:11.5px;font-weight:700;border:1px solid var(--border,var(--emerald-250));background:var(--white);color:var(--muted,var(--emerald-500));border-radius:20px;padding:3px 10px;cursor:pointer}
.mb-dtab.on{background:var(--blue,var(--emerald-750));border-color:var(--blue,var(--emerald-750));color:var(--white)}.mb-dtab i{font-style:normal;opacity:.7;font-weight:600}.mb-dtab.add{margin-left:auto;border-style:dashed}
.mb-svg{width:100%;height:150px;display:block}.mb-box .mb-svg{height:130px}
.mb-cap{margin-top:4px}.mb-good{color:var(--emerald-540);font-weight:700}.mb-warn{color:var(--amber-475);font-weight:700}
.mb-empty{font-size:12.5px;color:var(--muted,var(--emerald-500));padding:8px 0}
.mb-tier{margin-bottom:13px}.mb-tier h4 .mb-mini{font-weight:600;margin-left:8px}
.mb-ents{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mb-ent{background:var(--grey-50);border:1px solid var(--sage-125);border-radius:10px;padding:11px 12px}
.mb-ent b{font-size:22px;font-weight:800;color:var(--text);display:block;line-height:1.1}.mb-ent b .mb-ent-word{font-size:15px;font-weight:800}.mb-ent span{font-size:12.5px;font-weight:700;color:var(--text);display:block;margin-top:4px}.mb-ent em{font-style:normal;font-size:11px;color:var(--muted,var(--emerald-500));display:block;margin-top:2px}.mb-ent i{font-style:normal;font-size:11px;color:var(--muted,var(--emerald-500));display:block}
.mb-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:13px;align-items:stretch}.mb-grid4 .mb-box{display:flex;flex-direction:column;box-sizing:border-box;min-width:0}.mb-grid4 .mb-box .mb-inline{margin-top:auto}.mb-box h4{display:flex;justify-content:space-between;align-items:center}
.mb-add{font:inherit;font-size:11px;font-weight:700;border:1px dashed var(--border,var(--emerald-250));background:var(--white);color:var(--muted,var(--emerald-500));border-radius:20px;padding:2px 9px;cursor:pointer}
.mb-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px;font-size:12px}.mb-lg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px;vertical-align:middle}
.mb-inline{margin-top:10px;border-top:1px dashed var(--sage-125);padding-top:10px}.mb-inline .mb-form{grid-template-columns:1fr 1fr}
@media (max-width:1200px){.mb-grid4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.mb-top{grid-template-columns:1fr}.mb-ents{grid-template-columns:repeat(2,1fr)}.mb-grid4{grid-template-columns:1fr}}


/* ── The member list on the left (Sara 2026-09-19) ────────────────────────── */
/* It is the page's own left column now, not a panel beside the open member. */
.phi-rail-mb{width:300px;}
.phi-rail-mb .mb-rail{position:static;background:transparent;border:0;border-radius:0;padding:0;max-height:none;overflow:visible;}
.phi-rail-mb .mb-rail-list{max-height:none;}
body.phi-dark .phi-rail-mb .mb-rail{background:transparent!important;border:0!important;}
.mb-shell .mb-wrap{min-width:0;}
/* the heading is part of the page on every theme */
body.phi-dark .mb-head{background:transparent!important;border:0!important;}
.mb-head-top h2{font-size:30px;line-height:1.15;}
.mb-subtabs{margin-top:11px;margin-bottom:0;}
.mb-subtabs button{border-radius:14px;border-bottom:1px solid var(--border,var(--emerald-250));top:0;}
body.phi-dark .mb-subtabs button{border-bottom-color:var(--color-border);}
@media (max-width:1100px){ .phi-rail-mb{width:240px;} }

/* the frame keeps a tall heading bar on pages whose title sits alone; here the
   tabs already fill it, so the spare height below them is dropped and the gap to
   the first card is the same gap the cards use between themselves */
#view-members .mb-head.phi-p-head{min-height:0!important;}
.phi-rail-mb .mb-rail-row{padding:7px 6px;gap:8px;}
.phi-rail-mb .mb-rail-t .sub{display:flex;align-items:center;gap:5px;}
.phi-rail-mb .mb-rail-t .sub .mb-tag{flex:none;}
.phi-rail-mb .mb-tag{font-size:10px;padding:1px 6px;}
