/* JAG Pulse · Relationships (Meeting Tracker section) — the Political Capital
   shape: a band of committees across the top, members in a scrolling column on
   the left, the office or the team on the right. The Meeting Tracker's palette
   (white panels on a pale shell, one blue for actions) and exactly THREE status
   colours used for nothing else: green Covered, amber Client gap, grey Not
   covered. Every rule is scoped to #mt-rel-body. */
#page-mt #mt-rel-body {
  --rel-bg: #f6f7fb; --rel-paper: #ffffff; --rel-soft: #f5f6f8; --rel-text: #323338; --rel-muted: #676879; --rel-faint: #9a9cad;
  --rel-line: #d0d4e4; --rel-line-soft: #e6e9ef; --rel-accent: #0073ea; --rel-on: #ffffff; --rel-focus: #0086c0; --rel-ink: #1f2a4a; --rel-gold: #0086c0;
  --rel-known: #00a35c; --rel-known-bg: #dcf5e8; --rel-known-ink: #00663a;
  --rel-gap: #e8a317; --rel-gap-bg: #fff1cf; --rel-gap-ink: #7a4f00;
  --rel-open: #b8bccb; --rel-open-bg: #eef0f4; --rel-open-ink: #5a5d6e;
  --rel-me: #e8f1fd; --rel-me-line: #8bb8f5;
  --rel-space: 12px;
  flex: 1; min-height: 0; display: flex; flex-direction: column; color: var(--rel-text);
  font-family: Figtree, -apple-system, 'Segoe UI', system-ui, Roboto, sans-serif; font-size: 14px; line-height: 1.45; color-scheme: light;
}
#page-mt #mt-rel-body *, #page-mt #mt-rel-body *::before, #page-mt #mt-rel-body *::after { box-sizing: border-box; }
#page-mt #mt-rel-body [hidden] { display: none !important; }
#page-mt #mt-rel-body button, #page-mt #mt-rel-body input, #page-mt #mt-rel-body select { font: inherit; color: inherit; }
#page-mt #mt-rel-body button, #page-mt #mt-rel-body select { cursor: pointer; }
#page-mt #mt-rel-body button:disabled { opacity: .45; cursor: default; }
#page-mt #mt-rel-body :is(button, input, select, [tabindex]):focus-visible { outline: 3px solid var(--rel-focus); outline-offset: 2px; }
#page-mt #mt-rel-body .rel-sr { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

#page-mt #mt-rel-body .rel-wrap { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 10px; padding: var(--rel-space); background: var(--rel-bg); border: 1px solid var(--rel-line-soft); border-radius: 8px; }

#page-mt #mt-rel-body .rel-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 5px 12px; border: 1px solid var(--rel-line); border-radius: 4px; background: var(--rel-paper); font-size: 12.5px; font-weight: 600; white-space: nowrap; }
#page-mt #mt-rel-body .rel-btn:hover:not(:disabled) { box-shadow: inset 0 0 0 1px var(--rel-accent); }
#page-mt #mt-rel-body .rel-btn.active { background: var(--rel-me); border-color: var(--rel-me-line); color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-btn-primary { background: var(--rel-accent); border-color: var(--rel-accent); color: var(--rel-on); }
#page-mt #mt-rel-body .rel-btn-primary:hover:not(:disabled) { box-shadow: none; filter: brightness(.9); }
#page-mt #mt-rel-body .rel-btn-sm { min-height: 26px; padding: 2px 10px; }
#page-mt #mt-rel-body .rel-link { border: 0; background: none; padding: 2px 4px; color: var(--rel-accent); font-size: 12.5px; font-weight: 600; }
#page-mt #mt-rel-body .rel-link:hover:not(:disabled) { text-decoration: underline; }
#page-mt #mt-rel-body .rel-linkwrap { position: relative; }
#page-mt #mt-rel-body .rel-menu { position: absolute; right: 0; top: calc(100% + 6px); z-index: 5; display: grid; min-width: 250px; padding: 6px; background: var(--rel-paper); border: 1px solid var(--rel-line); border-radius: 8px; box-shadow: 0 8px 28px #0002; }
#page-mt #mt-rel-body .rel-menu button { display: grid; gap: 1px; text-align: left; border: 0; background: none; padding: 8px 10px; border-radius: 6px; font-size: 13px; font-weight: 600; }
#page-mt #mt-rel-body .rel-menu button small { color: var(--rel-muted); font-weight: 400; font-size: 12px; }
#page-mt #mt-rel-body .rel-menu button:hover { background: var(--rel-soft); }

/* ── Buttons and notices ────────────────────────────────────────────────────────────── */
#page-mt #mt-rel-body #rel-notice:empty { display: none; }
#page-mt #mt-rel-body #rel-notice { flex: none; display: grid; gap: 6px; }
#page-mt #mt-rel-body .rel-note { margin: 0; padding: 7px 12px; background: var(--rel-paper); border: 1px solid var(--rel-line-soft); border-radius: 6px; color: var(--rel-muted); font-size: 13px; }
#page-mt #mt-rel-body .rel-note-warn { background: #fde3e8; border-color: #f1a3b0; color: #7c1528; }

/* ── "Add relationships": the form card at the top of the section ──────── */
#page-mt #mt-rel-body #rel-quick { flex: none; }
#page-mt #mt-rel-body .rel-qf { display: grid; gap: 10px; padding: 12px 14px 10px; background: var(--rel-paper); border: 1px solid var(--rel-line-soft); border-top: 3px solid var(--rel-accent); border-radius: 8px; }
#page-mt #mt-rel-body .rel-qf-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
#page-mt #mt-rel-body .rel-qf-title { margin: 0; font-size: 16px; font-weight: 700; color: var(--rel-ink); }
#page-mt #mt-rel-body .rel-qf-sub { margin: 2px 0 0; color: var(--rel-muted); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-qf-x { flex: none; width: 28px; height: 28px; border: 0; border-radius: 4px; background: transparent; color: var(--rel-muted); font-size: 16px; line-height: 1; }
#page-mt #mt-rel-body .rel-qf-x:hover { background: var(--rel-soft); color: var(--rel-text); }
#page-mt #mt-rel-body .rel-qf-rows { display: grid; gap: 6px; }
#page-mt #mt-rel-body .rel-qf-row { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px 12px; padding: 8px 10px; border: 1px solid var(--rel-line-soft); border-left: 4px solid var(--rel-line); border-radius: 6px; background: var(--rel-soft); }
#page-mt #mt-rel-body .rel-qf-row.is-ok { border-left-color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-qf-field { display: grid; gap: 3px; min-width: 0; }
#page-mt #mt-rel-body .rel-qf-field > span:first-child { color: var(--rel-muted); font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
#page-mt #mt-rel-body .rel-qf-field input[type="text"] { min-height: 34px; padding: 5px 10px; border: 1px solid var(--rel-line); border-radius: 6px; background: var(--rel-paper); font-size: 13.5px; }
#page-mt #mt-rel-body .rel-qf-field input[type="text"]:focus { outline: none; border-color: var(--rel-accent); box-shadow: 0 0 0 3px #0073ea2a; }
#page-mt #mt-rel-body .rel-qf-field input.is-ok { border-color: var(--rel-known); }
#page-mt #mt-rel-body .rel-qf-field input:disabled { background: var(--rel-soft); color: var(--rel-faint); }
#page-mt #mt-rel-body .rel-qf-member { flex: 1 1 260px; }
#page-mt #mt-rel-body .rel-qf-staff { flex: 1 1 220px; }
#page-mt #mt-rel-body .rel-qf-role { flex: 0 1 200px; }
#page-mt #mt-rel-body .rel-qf-kind { flex: none; }
#page-mt #mt-rel-body .rel-qf-also { flex: none; align-self: stretch; }
#page-mt #mt-rel-body .rel-qf-also .rel-check { min-height: 34px; }
#page-mt #mt-rel-body .rel-qf-also i { color: var(--rel-known-ink); font-style: normal; font-weight: 500; }
#page-mt #mt-rel-body .rel-qf-ok { color: var(--rel-known-ink); font-size: 11.5px; font-weight: 600; }
#page-mt #mt-rel-body .rel-qf-warn { color: var(--rel-gap-ink); font-size: 11.5px; }
#page-mt #mt-rel-body .rel-qf-new { color: var(--rel-accent); font-size: 11.5px; font-weight: 600; }
#page-mt #mt-rel-body .rel-qf-seg { display: inline-flex; gap: 2px; padding: 2px; background: var(--rel-paper); border: 1px solid var(--rel-line); border-radius: 6px; }
#page-mt #mt-rel-body .rel-qf-seg-btn { min-height: 28px; border: 0; background: transparent; color: var(--rel-muted); padding: 2px 12px; border-radius: 4px; font-size: 12.5px; font-weight: 700; }
#page-mt #mt-rel-body .rel-qf-seg-btn.active { background: var(--rel-ink); color: #fff; }
#page-mt #mt-rel-body .rel-qf-already { align-self: center; margin-top: 16px; padding: 1px 8px; border-radius: 999px; background: var(--rel-known-bg); color: var(--rel-known-ink); font-size: 11.5px; font-weight: 700; }
#page-mt #mt-rel-body .rel-qf-del { align-self: center; margin-top: 16px; margin-left: auto; width: 26px; height: 26px; border: 0; border-radius: 4px; background: transparent; color: var(--rel-muted); font-size: 16px; }
#page-mt #mt-rel-body .rel-qf-del:hover:not(:disabled) { background: #fde3e8; color: #b3203a; }
#page-mt #mt-rel-body .rel-qf-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
#page-mt #mt-rel-body .rel-qf-spacer { flex: 1; }
#page-mt #mt-rel-body .rel-qf-hint { color: var(--rel-muted); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-qf-done { color: var(--rel-known-ink); font-size: 13px; font-weight: 700; }

/* ── The band: the six committees in one compact strip ─────────────────── */
#page-mt #mt-rel-body .rel-band { flex: none; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; }
#page-mt #mt-rel-body .rel-tile { display: flex; align-items: center; gap: 8px; min-height: 36px; padding: 4px 10px; background: var(--rel-paper); border: 1px solid var(--rel-line-soft); border-radius: 6px; text-align: left; }
#page-mt #mt-rel-body .rel-tile:hover { border-color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-tile.active { border-color: var(--rel-accent); box-shadow: inset 0 0 0 1px var(--rel-accent); background: var(--rel-me); }
#page-mt #mt-rel-body .rel-tile-k { flex: none; min-width: 42px; font-size: 12.5px; font-weight: 800; letter-spacing: .04em; color: var(--rel-ink); }
#page-mt #mt-rel-body .rel-tile-n { flex: none; font-size: 12px; color: var(--rel-muted); white-space: nowrap; }
#page-mt #mt-rel-body .rel-tile-n b { font-size: 15px; font-weight: 700; color: var(--rel-text); }
#page-mt #mt-rel-body .rel-tile-gap { flex: none; color: var(--rel-gap-ink); font-size: 11px; font-weight: 600; white-space: nowrap; }
#page-mt #mt-rel-body .rel-gbar { display: flex; flex: 1 1 40px; min-width: 24px; height: 6px; border-radius: 3px; overflow: hidden; background: var(--rel-open-bg); }
#page-mt #mt-rel-body .rel-gbar i { display: block; height: 100%; }
#page-mt #mt-rel-body .rel-bg-known { background: var(--rel-known); }
#page-mt #mt-rel-body .rel-bg-gap { background: var(--rel-gap); }

/* ── The two columns ────────────────────────────────────────────────────── */
#page-mt #mt-rel-body .rel-cols { flex: 1; min-height: 0; display: grid; grid-template-columns: minmax(210px, 1fr) minmax(0, 3fr); gap: var(--rel-space); }
#page-mt #mt-rel-body .rel-col { min-width: 0; min-height: 0; display: flex; flex-direction: column; border: 1px solid var(--rel-line-soft); border-radius: 8px; background: var(--rel-paper); overflow: hidden; }
#page-mt #mt-rel-body .rel-col-head { flex: none; display: grid; gap: 8px; padding: 10px var(--rel-space); border-top: 3px solid var(--rel-gold); border-bottom: 1px solid var(--rel-line); background: var(--rel-paper); }
#page-mt #mt-rel-body .rel-col-titles { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
#page-mt #mt-rel-body .rel-col-titles h4 { margin: 0; color: var(--rel-gold); font-size: 16px; font-weight: 700; }
#page-mt #mt-rel-body .rel-col-titles h4 .rel-col-n { margin-left: 8px; font-weight: 500; }
#page-mt #mt-rel-body .rel-col-n { color: var(--rel-muted); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-scroll { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; scrollbar-color: var(--rel-line) transparent; }
#page-mt #mt-rel-body .rel-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
#page-mt #mt-rel-body .rel-search { flex: 1 1 220px; min-width: 0; }
/* The committee filter: the same boxes as Political Capital's */
#page-mt #mt-rel-body .rel-units { position: relative; display: flex; flex: 0 1 auto; min-width: 7em; max-width: 190px; }
#page-mt #mt-rel-body .rel-unit-btn { position: relative; width: 100%; min-height: 32px; padding: 4px 26px 4px 10px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; text-align: left; border: 1px solid var(--rel-line); border-radius: 6px; background: var(--rel-paper); font-size: 13px; font-weight: 600; }
#page-mt #mt-rel-body .rel-unit-btn::after { content: '▾'; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); color: var(--rel-muted); font-size: 11px; }
#page-mt #mt-rel-body .rel-unit-btn.is-on { border-color: var(--rel-accent); color: var(--rel-accent); box-shadow: inset 0 0 0 1px var(--rel-accent); }
#page-mt #mt-rel-body .rel-unit-panel { position: absolute; top: calc(100% + 6px); right: 0; z-index: 12; width: 340px; max-width: calc(100vw - 32px); overflow: auto; overscroll-behavior: contain; padding: 8px 10px; background: var(--rel-paper); border: 1px solid var(--rel-line); border-radius: 8px; box-shadow: 0 10px 30px #0003; }
#page-mt #mt-rel-body .rel-unit-grp + .rel-unit-grp { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--rel-line-soft); }
#page-mt #mt-rel-body .rel-unit-gh { margin: 2px 0 4px; color: var(--rel-muted); font-size: 11.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
#page-mt #mt-rel-body .rel-unit-opt { display: flex; align-items: flex-start; gap: 9px; padding: 5px 6px; border-radius: 5px; color: var(--rel-text); font-size: 12.5px; line-height: 1.35; cursor: pointer; }
#page-mt #mt-rel-body .rel-unit-opt:hover { background: var(--rel-soft); }
#page-mt #mt-rel-body .rel-unit-opt input { flex: none; width: 16px; height: 16px; margin: 1px 0 0; accent-color: var(--rel-accent); cursor: pointer; }
#page-mt #mt-rel-body .rel-unit-txt { display: block; min-width: 0; font-weight: 600; }
#page-mt #mt-rel-body .rel-unit-txt b { margin-left: 2px; color: var(--rel-muted); font-weight: 700; }
#page-mt #mt-rel-body .rel-unit-txt small { display: block; margin-top: 1px; color: var(--rel-muted); font-size: 11.5px; font-weight: 500; }
#page-mt #mt-rel-body .rel-unit-foot { position: sticky; bottom: -8px; display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 8px -10px -8px; padding: 8px 10px; background: var(--rel-paper); border-top: 1px solid var(--rel-line-soft); }
#page-mt #mt-rel-body .rel-gshown { padding: 1px 8px; border-radius: 999px; background: var(--rel-paper); color: var(--rel-muted); font-size: 12px; font-weight: 600; }
#page-mt #mt-rel-body .rel-search input { width: 100%; min-height: 32px; padding: 4px 10px; border: 1px solid var(--rel-line); border-radius: 6px; background: var(--rel-paper); font-size: 13px; }
#page-mt #mt-rel-body .rel-chips { display: flex; flex-wrap: wrap; gap: 5px; }
#page-mt #mt-rel-body .rel-chip-f { display: inline-flex; align-items: center; gap: 5px; min-height: 26px; padding: 2px 10px; border: 1px solid var(--rel-line); border-radius: 999px; background: var(--rel-paper); font-size: 12px; font-weight: 600; }
#page-mt #mt-rel-body .rel-chip-f:hover { border-color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-chip-f.active { background: var(--rel-ink); border-color: var(--rel-ink); color: #fff; }
#page-mt #mt-rel-body .rel-chip-n { opacity: .7; font-weight: 500; }
#page-mt #mt-rel-body .rel-legend { display: inline-flex; flex-wrap: wrap; gap: 4px 12px; margin-left: auto; color: var(--rel-muted); font-size: 11.5px; font-weight: 600; }
#page-mt #mt-rel-body .rel-legend > span { display: inline-flex; align-items: center; gap: 4px; }
#page-mt #mt-rel-body .rel-dot { display: inline-block; flex: none; width: 8px; height: 8px; border-radius: 50%; }
#page-mt #mt-rel-body .rel-dot-known { background: var(--rel-known); }
#page-mt #mt-rel-body .rel-dot-gap { background: var(--rel-gap); }
#page-mt #mt-rel-body .rel-dot-open { background: var(--rel-open); }

/* ── Members: groups of one-line rows ───────────────────────────────────── */
#page-mt #mt-rel-body .rel-group + .rel-group { border-top: 1px solid var(--rel-line); }
#page-mt #mt-rel-body .rel-ghead { position: sticky; top: 0; z-index: 2; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 6px 10px 6px 6px; background: var(--rel-soft); border-bottom: 1px solid var(--rel-line-soft); }
#page-mt #mt-rel-body .rel-gtog { display: inline-flex; align-items: center; gap: 8px; min-width: 0; padding: 2px 4px; border: 0; border-radius: 4px; background: none; text-align: left; }
#page-mt #mt-rel-body .rel-gtog:hover { background: var(--rel-paper); }
#page-mt #mt-rel-body .rel-gtog[data-act="none"] { cursor: default; }
#page-mt #mt-rel-body .rel-gtog[data-act="none"]:hover { background: none; }
#page-mt #mt-rel-body .rel-gcaret { width: 12px; color: var(--rel-muted); font-size: 12px; }
#page-mt #mt-rel-body .rel-gkey { color: var(--rel-ink); font-size: 14px; font-weight: 800; letter-spacing: .01em; }
#page-mt #mt-rel-body .rel-gtitle { color: var(--rel-muted); font-size: 12.5px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#page-mt #mt-rel-body .rel-gstats { margin-left: auto; color: var(--rel-muted); font-size: 12.5px; white-space: nowrap; }
#page-mt #mt-rel-body .rel-gstats b { color: var(--rel-text); }
#page-mt #mt-rel-body .rel-gstat-gap { color: var(--rel-gap-ink); font-weight: 600; }
#page-mt #mt-rel-body .rel-gempty { margin: 0; padding: 12px 14px; color: var(--rel-muted); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-mlist { display: grid; }
#page-mt #mt-rel-body .rel-m { display: grid; grid-template-columns: minmax(0, 1fr) 96px minmax(150px, 230px) 124px 14px; align-items: center; gap: 2px 12px; width: 100%; min-height: 38px; padding: 4px 10px 4px 12px; border: 0; border-bottom: 1px solid var(--rel-line-soft); border-left: 4px solid var(--rel-open); background: var(--rel-paper); text-align: left; }
#page-mt #mt-rel-body .rel-m.is-known { border-left-color: var(--rel-known); }
#page-mt #mt-rel-body .rel-m.is-gap { border-left-color: var(--rel-gap); }
#page-mt #mt-rel-body .rel-m:hover { background: #f7f9fd; }
#page-mt #mt-rel-body .rel-m.is-sel { background: var(--rel-me); box-shadow: inset 0 0 0 1px var(--rel-me-line); }
#page-mt #mt-rel-body .rel-m-main { display: flex; flex-wrap: wrap; align-items: baseline; gap: 1px 7px; min-width: 0; line-height: 1.3; }
#page-mt #mt-rel-body .rel-m-name { font-weight: 650; }
#page-mt #mt-rel-body .rel-m-tag { color: var(--rel-muted); font-size: 12px; white-space: nowrap; }
#page-mt #mt-rel-body .rel-m-seat { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 4px; min-width: 0; color: var(--rel-muted); font-size: 11.5px; }
#page-mt #mt-rel-body .rel-m-cmte { display: flex; align-items: baseline; gap: 4px; min-width: 0; white-space: nowrap; }
#page-mt #mt-rel-body .rel-cmark { display: inline-block; min-width: 44px; padding: 0 6px; border-radius: 4px; background: var(--rel-ink); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .04em; text-align: center; }
#page-mt #mt-rel-body .rel-cmark.is-plain { background: var(--rel-soft); color: var(--rel-muted); font-weight: 700; }
#page-mt #mt-rel-body .rel-cmark-also { color: var(--rel-faint); font-size: 10.5px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; }
#page-mt #mt-rel-body .rel-m-seat b { color: var(--rel-ink); font-weight: 700; }
#page-mt #mt-rel-body .rel-sep { color: var(--rel-faint); }
#page-mt #mt-rel-body .rel-sub { padding: 0 5px; border-radius: 3px; background: var(--rel-soft); border: 1px solid var(--rel-line-soft); font-size: 10.5px; font-weight: 600; white-space: nowrap; }
#page-mt #mt-rel-body .rel-sub.is-lead { background: #e9edf6; border-color: #c9d3ea; color: var(--rel-ink); font-weight: 700; }
#page-mt #mt-rel-body .rel-also { color: var(--rel-faint); }
#page-mt #mt-rel-body .rel-m-who { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 3px; }
#page-mt #mt-rel-body .rel-m-caret { color: var(--rel-faint); font-size: 16px; text-align: center; }
/* Zoomed in: the column is one member */
#page-mt #mt-rel-body .rel-col-members.is-focus .rel-tools { display: none; }
#page-mt #mt-rel-body .rel-focus { display: grid; gap: 12px; padding: 10px var(--rel-space) var(--rel-space); }
#page-mt #mt-rel-body .rel-focus-bar { display: flex; align-items: center; gap: 12px; }
#page-mt #mt-rel-body .rel-back { padding-left: 0; font-size: 13px; }
#page-mt #mt-rel-body .rel-focus-pos { color: var(--rel-muted); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-focus-nav { margin-left: auto; display: inline-flex; gap: 4px; }
#page-mt #mt-rel-body .rel-step { width: 30px; height: 28px; border: 1px solid var(--rel-line); border-radius: 6px; background: var(--rel-paper); color: var(--rel-text); font-size: 16px; line-height: 1; }
#page-mt #mt-rel-body .rel-step:hover:not(:disabled) { border-color: var(--rel-accent); color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-focus-head { display: grid; gap: 6px; padding: 10px 14px; border: 1px solid var(--rel-line-soft); border-left: 5px solid var(--rel-open); border-radius: 8px; background: var(--rel-soft); }
#page-mt #mt-rel-body .rel-focus-head.is-known { border-left-color: var(--rel-known); }
#page-mt #mt-rel-body .rel-focus-head.is-gap { border-left-color: var(--rel-gap); }
#page-mt #mt-rel-body .rel-focus-top { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
#page-mt #mt-rel-body .rel-focus-name { margin: 0; font-size: 19px; font-weight: 700; letter-spacing: -.01em; }
#page-mt #mt-rel-body .rel-focus-tag { color: var(--rel-muted); font-size: 13px; }
#page-mt #mt-rel-body .rel-focus-seats { display: flex; flex-wrap: wrap; gap: 4px; }
#page-mt #mt-rel-body .rel-unit { display: inline-block; padding: 1px 7px; border: 1px solid var(--rel-line); border-radius: 4px; background: var(--rel-paper); font-size: 11.5px; font-weight: 700; white-space: nowrap; }
#page-mt #mt-rel-body .rel-unit.is-lead { background: var(--rel-ink); border-color: var(--rel-ink); color: #fff; }
#page-mt #mt-rel-body .rel-unit.is-subcmte { font-weight: 600; color: var(--rel-muted); }
#page-mt #mt-rel-body .rel-card-k { margin-right: 4px; color: var(--rel-muted); font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
#page-mt #mt-rel-body .rel-pill { display: inline-flex; align-items: center; gap: 5px; padding: 2px 8px 2px 2px; border: 1px solid var(--rel-line-soft); border-radius: 999px; background: var(--rel-paper); font-size: 12.5px; font-weight: 600; white-space: nowrap; }
#page-mt #mt-rel-body .rel-pill.is-me { background: var(--rel-me); border-color: var(--rel-me-line); }
#page-mt #mt-rel-body .rel-pill-n { min-width: 16px; padding: 0 4px; border-radius: 8px; background: var(--rel-soft); color: var(--rel-muted); font-size: 11px; text-align: center; }
#page-mt #mt-rel-body .rel-av { position: relative; display: inline-grid; place-items: center; flex: none; width: 22px; height: 22px; border-radius: 50%; background: #d6e4f8; color: #1c3d70; font-size: 10px; font-weight: 800; letter-spacing: -.02em; }
#page-mt #mt-rel-body .rel-av.is-me { background: var(--rel-accent); color: #fff; }
#page-mt #mt-rel-body .rel-av.is-who { box-shadow: 0 0 0 2px var(--rel-accent); }
#page-mt #mt-rel-body .rel-av i { position: absolute; right: -4px; top: -4px; min-width: 13px; height: 13px; padding: 0 3px; border-radius: 7px; background: var(--rel-ink); color: #fff; font-size: 9px; font-style: normal; line-height: 13px; text-align: center; }
#page-mt #mt-rel-body .rel-av-md { width: 28px; height: 28px; font-size: 11.5px; }
#page-mt #mt-rel-body .rel-av-lg { width: 40px; height: 40px; font-size: 15px; }
#page-mt #mt-rel-body .rel-none { color: var(--rel-faint); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-empty { margin: 0; padding: 24px 16px; color: var(--rel-muted); text-align: center; }

/* ── Our team: a selector that lights up for the selected office ───────── */
/* The names fill the column: each block grows to share the height, never below a comfortable size. */
#page-mt #mt-rel-body .rel-col-team .rel-scroll { display: flex; flex-direction: column; }
#page-mt #mt-rel-body .rel-tm { flex: 1 1 auto; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; width: 100%; min-height: 64px; max-height: 110px; padding: 8px 14px; border: 0; border-bottom: 1px solid var(--rel-line-soft); border-left: 5px solid transparent; background: var(--rel-paper); text-align: left; }
#page-mt #mt-rel-body .rel-tm .rel-av-md { width: 38px; height: 38px; font-size: 14px; }
#page-mt #mt-rel-body .rel-tm.is-me { border-left-color: var(--rel-me-line); }
#page-mt #mt-rel-body .rel-tm:hover { background: #f7f9fd; }
#page-mt #mt-rel-body .rel-tm.is-on { background: var(--rel-me); border-left-color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-tm.is-staff { background: #e8f1fd; border-left-color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-tm.is-direct { background: var(--rel-known-bg); border-left-color: var(--rel-known); }
#page-mt #mt-rel-body .rel-tm.is-direct .rel-av, #page-mt #mt-rel-body .rel-tm.is-direct small { color: var(--rel-known-ink); }
#page-mt #mt-rel-body .rel-tm.is-direct .rel-av { background: #b9ebd0; }
#page-mt #mt-rel-body .rel-tm.is-staff .rel-av { background: #bcd4f5; }
#page-mt #mt-rel-body .rel-tm-name { display: grid; min-width: 0; line-height: 1.25; font-size: 16px; font-weight: 700; }
#page-mt #mt-rel-body .rel-tm-name small { color: var(--rel-muted); font-size: 12.5px; font-weight: 500; }
#page-mt #mt-rel-body .rel-tm-star { color: var(--rel-known); font-size: 20px; }
#page-mt #mt-rel-body .rel-tm-clear { flex: none; display: block; margin: 8px 10px; }
#page-mt #mt-rel-body .rel-you { padding: 0 6px; border-radius: 4px; background: var(--rel-me); color: var(--rel-accent); font-size: 11px; font-weight: 700; vertical-align: 1px; }
#page-mt #mt-rel-body .rel-av-md { width: 28px; height: 28px; font-size: 11.5px; }
#page-mt #mt-rel-body .rel-status { display: inline-flex; align-items: center; gap: 5px; padding: 1px 9px 1px 7px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; }
#page-mt #mt-rel-body .rel-status-known { background: var(--rel-known-bg); color: var(--rel-known-ink); }
#page-mt #mt-rel-body .rel-status-gap { background: var(--rel-gap-bg); color: var(--rel-gap-ink); }
#page-mt #mt-rel-body .rel-status-open { background: var(--rel-open-bg); color: var(--rel-open-ink); }

/* The FY28 campaign: client · request · issue · lobbyist going */
#page-mt #mt-rel-body .rel-camp-t { width: 100%; border-collapse: collapse; font-size: 13px; }
#page-mt #mt-rel-body .rel-camp-t th, #page-mt #mt-rel-body .rel-camp-t td { height: auto; padding: 6px 12px; border: 0; border-top: 1px solid var(--rel-line-soft); background: transparent !important; color: var(--rel-text); text-align: left; vertical-align: top; }
#page-mt #mt-rel-body .rel-camp-t th { border-top: 0; color: var(--rel-muted) !important; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; cursor: default; }
#page-mt #mt-rel-body .rel-camp-t tbody tr, #page-mt #mt-rel-body .rel-camp-t tbody tr:nth-child(even) { background: transparent; border: 0; }
#page-mt #mt-rel-body .rel-camp-client { font-weight: 650; white-space: nowrap; }
#page-mt #mt-rel-body .rel-camp-issue { color: var(--rel-muted); }
#page-mt #mt-rel-body .rel-req { display: inline-block; min-width: 26px; padding: 0 7px; border-radius: 4px; background: var(--rel-soft); border: 1px solid var(--rel-line-soft); font-size: 12px; font-weight: 800; text-align: center; }
#page-mt #mt-rel-body .rel-req-\$, #page-mt #mt-rel-body .rel-req-x { background: #d9f4e6; border-color: #86dbb0; color: #00774a; }
#page-mt #mt-rel-body .rel-req-p { background: #efe3fb; border-color: #cdb0ef; color: #5f2a9c; }
#page-mt #mt-rel-body .rel-req-qfr, #page-mt #mt-rel-body .rel-req-a { background: #e3eefc; border-color: #b9d3f7; color: #1c5fb8; }

/* The office: a plain list — role, name, who knows them — with ONE ✎ Edit. */
#page-mt #mt-rel-body .rel-office, #page-mt #mt-rel-body .rel-camp { margin: 0; border: 1px solid var(--rel-line-soft); border-radius: 6px; background: var(--rel-paper); }
#page-mt #mt-rel-body .rel-office.is-edit { border-color: var(--rel-me-line); box-shadow: 0 0 0 2px var(--rel-me); }
#page-mt #mt-rel-body .rel-office-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 8px 10px 8px 14px; border-bottom: 1px solid var(--rel-line); background: var(--rel-soft); border-radius: 6px 6px 0 0; }
#page-mt #mt-rel-body .rel-office-title { color: var(--rel-ink); font-size: 14px; font-weight: 700; }
#page-mt #mt-rel-body .rel-camp .rel-office-title { font-size: 13px; }
#page-mt #mt-rel-body .rel-office.is-edit .rel-office-title { color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-edit { border: 1px solid var(--rel-line); padding: 3px 12px; border-radius: 5px; background: var(--rel-paper); color: var(--rel-accent); font-size: 13px; font-weight: 700; }
#page-mt #mt-rel-body .rel-edit:hover { background: var(--rel-me); }
#page-mt #mt-rel-body .rel-edit[aria-pressed="true"] { background: var(--rel-accent); color: #fff; }
#page-mt #mt-rel-body .rel-oline { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(160px, 1.2fr); align-items: center; column-gap: 14px; min-height: 42px; padding: 4px 14px; font-size: 14px; }
#page-mt #mt-rel-body .rel-oline + .rel-oline { border-top: 1px solid var(--rel-line-soft); }
#page-mt #mt-rel-body .rel-oline.is-edit, #page-mt #mt-rel-body .rel-oadd { grid-template-columns: 54px minmax(220px, 1fr) minmax(160px, 1.2fr) 26px; padding-left: 10px; }
#page-mt #mt-rel-body .rel-owho { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; min-width: 0; }
#page-mt #mt-rel-body .rel-oknows { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; min-width: 0; }
#page-mt #mt-rel-body .rel-otools { display: flex; justify-content: flex-end; }
#page-mt #mt-rel-body .rel-oknow { display: inline-flex; align-items: center; gap: 4px; color: var(--rel-muted); font-size: 11.5px; font-weight: 700; }
#page-mt #mt-rel-body .rel-oknow input { width: 16px; height: 16px; margin: 0; accent-color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-role { display: inline-block; min-width: 56px; padding: 1px 8px; border-radius: 4px; background: #eef0f6; color: #3d4466; font-size: 12px; font-weight: 700; text-align: center; }
#page-mt #mt-rel-body .rel-role-self { background: var(--rel-ink); color: #fff; }
#page-mt #mt-rel-body .rel-sname { font-size: 14.5px; font-weight: 650; }
#page-mt #mt-rel-body .rel-stitle { color: var(--rel-muted); font-size: 12.5px; }
#page-mt #mt-rel-body .rel-oin { min-width: 0; min-height: 26px; padding: 2px 7px; border: 1px dashed var(--rel-line); border-radius: 4px; background: transparent; font-size: 12.5px; }
#page-mt #mt-rel-body .rel-oin:focus { border-style: solid; border-color: var(--rel-accent); outline: none; background: var(--rel-paper); }
#page-mt #mt-rel-body .rel-oin-role { flex: 0 1 170px; }
#page-mt #mt-rel-body .rel-oin-name { flex: 1 1 140px; font-weight: 600; }
#page-mt #mt-rel-body .rel-oadd { border-top: 1px solid var(--rel-line-soft); background: var(--rel-soft); border-radius: 0 0 6px 6px; }
#page-mt #mt-rel-body .rel-oadd .rel-oknows { gap: 10px; }
#page-mt #mt-rel-body .rel-mini { border: 0; padding: 0 6px; border-radius: 4px; background: transparent; color: var(--rel-muted); font-size: 14px; font-weight: 700; line-height: 1.4; }
#page-mt #mt-rel-body .rel-mini-off:hover:not(:disabled) { background: #fde3e8; color: #b3203a; }
#page-mt #mt-rel-body .rel-addfor { width: 84px; min-height: 22px; padding: 0 2px; border: 0; border-radius: 4px; background: transparent; font-size: 11.5px; font-weight: 600; color: var(--rel-muted); }
#page-mt #mt-rel-body .rel-addfor:hover { background: var(--rel-soft); color: var(--rel-accent); }
#page-mt #mt-rel-body .rel-chip { display: inline-flex; align-items: center; gap: 5px; padding: 2px 8px 2px 2px; border: 1px solid var(--rel-line-soft); border-radius: 999px; background: var(--rel-paper); font-size: 13px; font-weight: 600; white-space: nowrap; }
#page-mt #mt-rel-body .rel-chip.is-me { background: var(--rel-me); border-color: var(--rel-me-line); }
#page-mt #mt-rel-body .rel-chip .rel-av { width: 22px; height: 22px; font-size: 10px; }
#page-mt #mt-rel-body .rel-chip-btn { display: inline-grid; place-items: center; width: 18px; height: 18px; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--rel-muted); font-size: 13px; line-height: 1; }
#page-mt #mt-rel-body .rel-chip-btn:hover:not(:disabled) { background: #fde3e8; color: #b3203a; }
#page-mt #mt-rel-body .rel-check { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; font-weight: 600; }

/* ── Toast ──────────────────────────────────────────────────────────────── */
#page-mt #mt-rel-body .rel-toast { position: fixed; left: 50%; bottom: 24px; z-index: 40; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 10px; max-width: min(640px, 92vw); padding: 8px 8px 8px 14px; border-radius: 8px; background: var(--rel-ink); color: #fff; box-shadow: 0 8px 24px #0003; font-size: 13px; }
#page-mt #mt-rel-body .rel-toast .rel-btn { background: transparent; color: #fff; border-color: #ffffff66; }
#page-mt #mt-rel-body .rel-x { border: 0; background: none; color: #fff; font-size: 16px; padding: 0 6px; }

/* ── Narrower screens: the columns stack, the band wraps ────────────────── */
@media (max-width: 1100px) {
  #page-mt #mt-rel-body .rel-band { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  #page-mt #mt-rel-body { overflow: auto; }
  #page-mt #mt-rel-body .rel-wrap { flex: none; min-height: 100%; padding: 10px; }
  #page-mt #mt-rel-body .rel-cols { display: flex; flex-direction: column; }
  #page-mt #mt-rel-body .rel-col { flex: none; max-height: 70vh; }
  #page-mt #mt-rel-body .rel-col-team { max-height: 34vh; }
  #page-mt #mt-rel-body .rel-tm { min-height: 48px; max-height: none; }
  #page-mt #mt-rel-body .rel-band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #page-mt #mt-rel-body .rel-tools { flex-wrap: wrap; }
  #page-mt #mt-rel-body .rel-m { grid-template-columns: minmax(0, 1fr) auto 14px; }
  #page-mt #mt-rel-body .rel-m-cmte, #page-mt #mt-rel-body .rel-m-seat { grid-column: 1 / -1; }
  #page-mt #mt-rel-body .rel-m-who { max-width: 90px; }
  #page-mt #mt-rel-body .rel-units { max-width: none; flex: 1 1 100%; }
  #page-mt #mt-rel-body .rel-camp-client { white-space: normal; }
  #page-mt #mt-rel-body .rel-focus { padding: 8px; }
  #page-mt #mt-rel-body .rel-oline, #page-mt #mt-rel-body .rel-oline.is-edit, #page-mt #mt-rel-body .rel-oadd { grid-template-columns: minmax(0, 1fr) auto; row-gap: 4px; padding-block: 6px; }
  #page-mt #mt-rel-body .rel-oline.is-edit .rel-oknows, #page-mt #mt-rel-body .rel-oadd .rel-oknows { grid-column: 1 / -1; }
}
