/* ACS Member Portal — Mentoring Communications. Uses the portal's tokens from styles.css. */
.mc{ --mc-line:#E3E2D4; }
.mc .grow{ flex:1; }
.mc .mc-sub{ display:block; color:var(--ink-soft); font-size:12.5px; line-height:1.45; }
.mc .mc-crim{ color:var(--crimson); }
.mc .mc-h{ font-family:var(--font-head); font-size:14.5px; color:var(--navy); }
.mc .mc-h2{ font-size:22px; margin:0; }
.mc .mc-pad{ padding:16px 18px; }
.mc .mc-card{ background:#fff; border-radius:14px; box-shadow:0 6px 24px rgba(38,40,59,.10); padding:16px 18px; display:grid; gap:10px; }
.mc .mc-row{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.mc .mc-row > label{ font-family:var(--font-head); font-weight:600; font-size:12.5px; color:var(--ink-soft); min-width:64px; }
.mc .mc-row > select, .mc .mc-row > input{ flex:1; min-width:0; }
.mc .mc-row2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.mc .mc-ro{ flex:1; min-width:0; padding:8px 12px; border-radius:10px; background:var(--cream); font-size:14px; overflow-wrap:anywhere; }
.mc .mc-hint{ font-size:13px; color:var(--ink-soft); display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.mc .mc-split{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:16px; align-items:start; margin-top:14px; }
.mc .mc-col{ min-width:0; display:grid; gap:12px; align-content:start; }
/* stage track (2C) */
.mc .mc-track{ display:flex; margin:2px 0 4px; }
.mc .mc-track > div{ flex:1; text-align:center; position:relative; padding-top:22px; font-family:var(--font-head); font-weight:600; font-size:11.5px; color:var(--ink-soft); }
.mc .mc-track > div::before{ content:""; position:absolute; top:8px; left:0; right:0; height:3px; background:var(--mc-line); }
.mc .mc-track > div > span{ position:absolute; top:2px; left:50%; transform:translateX(-50%); width:15px; height:15px; border-radius:50%; background:#fff; border:3px solid var(--mc-line); }
.mc .mc-track > div.done{ color:var(--navy); } .mc .mc-track > div.done::before{ background:var(--navy); } .mc .mc-track > div.done > span{ border-color:var(--navy); background:var(--navy); }
.mc .mc-track > div.now{ color:var(--crimson); } .mc .mc-track > div.now > span{ border-color:var(--crimson); background:var(--crimson); }
.mc .mc-clock{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; font-size:13px; margin-top:6px; }
/* editor */
.mc .mc-tb{ display:flex; align-items:center; gap:2px; border:1.5px solid var(--mc-line); border-bottom:0; border-radius:10px 10px 0 0; padding:4px 6px; background:#FAFAF5; }
.mc .mc-tbb{ border:0; background:transparent; font-family:var(--font-head); font-size:12.5px; color:var(--ink-soft); padding:4px 9px; border-radius:6px; line-height:1.2; }
.mc .mc-tbb:hover, .mc .mc-tbb:focus-visible{ background:var(--sage-soft); color:var(--navy); outline:none; }
.mc .mc-sep{ width:1px; height:16px; background:var(--mc-line); margin:0 4px; }
.mc .mc-ins{ border:0; background:transparent; font-family:var(--font-head); font-weight:600; font-size:12.5px; color:var(--navy); padding:4px; }
.mc .mc-ed{ border:1.5px solid var(--mc-line); border-radius:0 0 10px 10px; padding:12px 14px; min-height:220px; max-height:440px; overflow:auto; background:#fff; font-size:14.5px; line-height:1.6; }
.mc .mc-ed:focus{ outline:none; border-color:var(--crimson); box-shadow:0 0 0 4px rgba(160,28,40,.12); }
.mc .mc-ed p{ margin:0 0 9px; } .mc .mc-ed ul{ margin:0 0 9px 18px; padding:0; }
.mc .mc-f{ background:#EEF0E2; box-shadow:inset 0 -1.5px 0 #B9B894; border-radius:3px; padding:0 2px; }
.mc .mc-auto{ background:var(--sage-soft); color:var(--navy); border-radius:999px; padding:1px 9px; font-family:var(--font-head); font-weight:600; font-size:12.5px; white-space:nowrap; }
.mc .mc-write, .mc .mc-miss{ background:var(--crimson-soft); color:var(--crimson); border-radius:4px; padding:0 4px; font-weight:600; cursor:text; box-shadow:inset 0 -1.5px 0 var(--crimson); }
.mc .mc-write:focus-visible{ outline:2px solid var(--crimson); outline-offset:1px; }
.mc .mc-typed{ background:#FFF8D6; border-radius:3px; }
.mc .mc-tok{ background:var(--sage-soft); color:var(--navy); border-radius:5px; padding:0 4px; font-family:var(--font-head); font-size:12.5px; font-weight:600; white-space:nowrap; }
.mc .mc-ul{ margin:4px 0 0 18px; padding:0; } .mc .mc-ul li{ margin:2px 0; }
.mc .mc-atts{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.mc .mc-att{ display:inline-flex; gap:6px; align-items:center; border:1.5px solid var(--mc-line); border-radius:9px; padding:4px 10px; font-size:13px; background:#fff; }
.mc .mc-att svg{ width:14px; height:14px; }
.mc .mc-attc{ display:inline-flex; gap:7px; align-items:center; font-size:13.5px; margin-right:12px; }
.mc .mc-attc input, .mc .mc-copy input{ accent-color:var(--crimson); }
.mc .mc-foot{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.mc .mc-foot .mc-sub{ display:inline; }
.mc .mc-copy{ display:inline-flex; gap:6px; align-items:center; font-size:13px; }
.mc .mc-meet input{ flex:0 1 160px; }
.mc .mc-meet .mc-sub{ flex-basis:100%; }
.mc .mc-meet .mc-hint{ color:var(--crimson); font-family:var(--font-head, inherit); font-weight:600; }
.mc .btn[disabled]{ opacity:.5; pointer-events:none; box-shadow:none; }
/* email as it arrives */
.mc-mail{ border:1px solid #E3E2D4; border-radius:12px; overflow:hidden; background:#F2F2E8; }
.mc-mail .mc-mail-meta{ background:#fff; padding:8px 14px; font-size:13px; border-bottom:1px solid #E3E2D4; display:grid; gap:2px; }
.mc-mail .mc-mail-meta span{ display:inline-block; width:62px; color:var(--ink-soft); font-size:12px; }
.mc-mail .mc-mail-frame{ max-width:560px; margin:14px auto; background:#fff; border-radius:12px; overflow:hidden; }
.mc-mail .mc-mail-head{ background:#F2F2E8; padding:14px 22px; border-bottom:2px solid #9f1a28; }
.mc-mail .mc-mail-head img{ width:200px; height:auto; display:block; }
.mc-mail .mc-mail-body{ padding:18px 22px; font-family:"Segoe UI",Arial,sans-serif; font-size:14px; line-height:1.6; color:#26283b; }
.mc-mail .mc-mail-h1{ margin:0 0 12px; font-size:20px; line-height:1.3; color:#26283b; font-family:"Segoe UI",Arial,sans-serif; }
.mc-mail .mc-mail-body p{ margin:0 0 10px; } .mc-mail .mc-mail-body ul{ margin:0 0 10px 18px; padding:0; }
.mc-mail .mc-mail-body a{ color:#9f1a28; }
.mc-mail .mc-mail-foot{ background:#F2F2E8; padding:10px 22px; font-size:11px; color:#5a5c70; }
.mc-mail .mc-reply, .mc .mc-reply{ background:#fff; padding:14px 16px; font-size:14px; line-height:1.6; border-radius:10px; }
.mc-meta-row{ margin-bottom:10px; font-size:13px; }
/* history */
.mc .mc-hist{ display:grid; }
.mc .mc-hi{ display:grid; grid-template-columns:12px 1fr auto; gap:10px; align-items:start; padding:9px 0; border-top:1px solid var(--mc-line); text-align:left; font-size:13.5px; }
.mc .mc-hi:first-child{ border-top:0; }
.mc .mc-hib{ border-left:0; border-right:0; border-bottom:0; background:transparent; width:100%; font:inherit; color:inherit; cursor:pointer; border-radius:0; }
.mc .mc-hib:hover b, .mc .mc-hib:focus-visible b{ color:var(--crimson); }
.mc .mc-hib:focus-visible{ outline:2px solid var(--crimson); outline-offset:2px; }
.mc .mc-when{ color:var(--ink-soft); font-size:12px; white-space:nowrap; }
.mc .mc-dot{ width:9px; height:9px; border-radius:50%; background:var(--sage); margin-top:6px; }
.mc .mc-dot.ok{ background:var(--ok, #2E7D52); } .mc .mc-dot.cr{ background:var(--crimson); } .mc .mc-dot.nv{ background:var(--navy); } .mc .mc-dot.wn{ background:#8A5C12; }
.mc .mc-logf{ display:grid; gap:8px; background:var(--cream); border-radius:10px; padding:10px; }
/* hub */
.mc-hub{ display:grid; gap:16px; }
.mc .mc-hubhead{ display:flex; gap:10px; align-items:flex-end; flex-wrap:wrap; }
.mc .mc-hubhead p{ margin:4px 0 0; }
.mc .mc-back{ padding-left:0; margin-bottom:4px; }
.mc .mc-views{ display:inline-flex; gap:2px; background:rgba(255,255,255,.6); border-radius:999px; padding:4px; width:max-content; max-width:100%; overflow-x:auto; }
.mc .mc-views button{ border:0; background:transparent; font-family:var(--font-head); font-weight:600; font-size:13px; color:var(--ink-soft); padding:7px 16px; border-radius:999px; white-space:nowrap; }
.mc .mc-views button.on{ background:var(--navy); color:#fff; }
.mc .mc-views button:focus-visible{ outline:2px solid var(--crimson); outline-offset:1px; }
.mc .mc-kpis{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.mc .mc-kpi{ text-align:left; background:rgba(255,255,255,.72); border:1px solid rgba(255,255,255,.7); border-radius:18px; padding:14px 16px; box-shadow:0 10px 40px rgba(38,40,59,.10); font:inherit; color:inherit; cursor:pointer; }
.mc .mc-kpi.lead{ border-left:4px solid var(--crimson); }
.mc .mc-kpi b{ display:block; font-family:var(--font-head); font-size:28px; color:var(--navy); font-variant-numeric:tabular-nums; line-height:1.2; }
.mc .mc-kpi:focus-visible{ outline:2px solid var(--crimson); outline-offset:2px; }
.mc .mc-tablecard{ padding:0; overflow:hidden; }
.mc .mc-tabletitle{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; padding:12px 16px; }
.mc .mc-tabletitle .mc-sub{ display:inline; }
.mc .mc-tabletitle input{ max-width:220px; }
.mc .mc-click{ cursor:pointer; } .mc .mc-click:hover td{ background:var(--sage-soft); }
.mc .mc-inbox{ display:grid; grid-template-columns:200px minmax(0,1fr) minmax(0,1.3fr); gap:14px; align-items:start; }
.mc .mc-ql{ display:grid; gap:2px; }
.mc .mc-ql button{ display:flex; justify-content:space-between; gap:6px; border:0; background:transparent; font:inherit; font-size:13.5px; text-align:left; padding:8px 10px; border-radius:10px; color:var(--ink); }
.mc .mc-ql button.on{ background:var(--crimson-soft); font-weight:600; }
.mc .mc-n{ font-family:var(--font-head); font-weight:700; font-size:12px; color:var(--ink-soft); }
.mc .mc-n.crim{ color:var(--crimson); }
.mc .mc-list{ padding:6px; display:grid; gap:2px; max-height:560px; overflow:auto; }
.mc .mc-li{ border:0; background:transparent; text-align:left; padding:9px 10px; border-radius:10px; font:inherit; font-size:13.5px; color:var(--ink); }
.mc .mc-li.on{ background:var(--crimson-soft); }
.mc .mc-li:focus-visible{ outline:2px solid var(--crimson); }
.mc .mc-detail{ min-width:0; display:grid; gap:10px; }
.mc .mc-pipe{ display:grid; grid-template-columns:repeat(5,minmax(170px,1fr)); gap:10px; overflow-x:auto; }
.mc .mc-pcol{ background:rgba(214,213,184,.35); border-radius:14px; padding:10px; display:grid; gap:8px; align-content:start; }
.mc .mc-pcolh{ display:flex; justify-content:space-between; font-family:var(--font-head); font-size:13px; color:var(--navy); }
.mc .mc-pc{ background:#fff; border:0; border-radius:10px; padding:9px 10px; text-align:left; font:inherit; font-size:13px; display:grid; gap:4px; box-shadow:0 2px 8px rgba(38,40,59,.06); cursor:pointer; color:inherit; }
.mc .mc-pc:focus-visible{ outline:2px solid var(--crimson); }
/* template editor (4A) */
.mc .mc-ed3{ display:grid; grid-template-columns:230px minmax(0,1fr) minmax(0,.85fr); gap:16px; align-items:start; }
.mc .mc-lib{ display:grid; gap:2px; }
.mc .mc-grp{ margin:12px 0 4px; }
.mc .mc-it{ display:grid; grid-template-columns:24px 1fr auto; gap:6px; align-items:center; border:0; background:transparent; text-align:left; font:inherit; font-size:13px; padding:6px 8px; border-radius:9px; color:var(--ink); }
.mc .mc-it .k{ font-family:var(--font-head); font-weight:700; font-size:11.5px; color:var(--ink-soft); }
.mc .mc-it.on{ background:var(--crimson-soft); }
.mc .mc-it .pill{ font-size:10.5px; padding:1px 8px; }
.mc .mc-settings{ display:grid; gap:10px; background:var(--cream); border-radius:12px; padding:12px; }
.mc .mc-histv{ display:grid; gap:4px; font-size:13px; }
.mc .mc-switch{ position:relative; display:inline-block; width:46px; height:26px; }
.mc .mc-switch input{ position:absolute; opacity:0; inset:0; margin:0; cursor:pointer; }
.mc .mc-switch span{ position:absolute; inset:0; border-radius:999px; background:#AEB0BD; transition:background .2s; pointer-events:none; }
.mc .mc-switch span::after{ content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; transition:left .2s; }
.mc .mc-switch input:checked + span{ background:var(--ok, #2E7D52); }
.mc .mc-switch input:checked + span::after{ left:23px; }
.mc .mc-switch input:focus-visible + span{ box-shadow:0 0 0 4px rgba(160,28,40,.15); }
.mc .mc-flow{ display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.mc .mc-node{ background:#fff; border:1.5px solid var(--mc-line); border-radius:12px; padding:10px; display:grid; gap:5px; align-content:start; font-size:13px; }
.mc .mc-node b{ font-family:var(--font-head); color:var(--navy); }
.mc .mc-em{ display:flex; gap:6px; align-items:center; border:0; background:transparent; font:inherit; font-size:12.5px; text-align:left; padding:0; color:var(--ink); cursor:pointer; }
.mc .mc-em > span{ flex:none; width:20px; height:20px; border-radius:6px; display:grid; place-items:center; font-family:var(--font-head); font-weight:700; font-size:11px; color:#fff; background:#8A8C9D; }
.mc .mc-em.auto > span{ background:#6B6D80; } .mc .mc-em.review > span{ background:var(--navy); } .mc .mc-em.queue > span{ background:#8A5C12; } .mc .mc-em.off > span{ background:#C9CAD3; }
.mc .mc-legend{ display:flex; gap:16px; flex-wrap:wrap; margin-top:14px; }
.mc .mc-progf{ display:grid; grid-template-columns:1fr 1fr; gap:4px 16px; }
.mc .mc-warn{ border-color:#C9A15C; background:#FFFBF0; }
.mc .mc-who{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:6px; margin:12px 0; }
@media (max-width:1100px){ .mc .mc-ed3{ grid-template-columns:200px minmax(0,1fr); } .mc .mc-ed3 > .mc-col:last-child{ grid-column:1 / -1; } .mc .mc-inbox{ grid-template-columns:180px minmax(0,1fr); } .mc .mc-inbox .mc-detail{ grid-column:1 / -1; } }
@media (max-width:860px){ .mc .mc-split, .mc .mc-ed3, .mc .mc-inbox, .mc .mc-row2, .mc .mc-progf{ grid-template-columns:1fr; } .mc .mc-kpis{ grid-template-columns:1fr 1fr; } .mc .mc-flow{ grid-template-columns:1fr 1fr; } .mc .mc-track > div{ font-size:10px; } }

/* The profile modal widens only while it holds the Communication tab or an email (needs :has; older browsers keep the normal width). */
#modal.wide:has(.mc-split), #modal.wide:has(.mc-mail){ max-width:min(1180px, calc(100vw - 48px)); width:min(1180px, calc(100vw - 48px)); }
.mc .mc-hubhead > div:first-child{ flex:1 1 420px; min-width:0; }
.mc .mc-hubbtns{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.mc .mt-field input, .mc .mt-field select{ width:100%; box-sizing:border-box; }
@media (max-width:640px){ .mc .mc-track > div:not(.now){ font-size:0; } .mc .mc-track > div.now{ font-size:11px; white-space:nowrap; } }

/* Release C (contract F5, F8, F19) */
.mc .mc-ro-ed{ background:var(--cream); color:var(--ink-soft); cursor:default; }
.mc .mt-in:disabled, .mc .mt-sel:disabled, .mc .mc-switch input:disabled + span{ opacity:.6; cursor:not-allowed; }
.mc .mc-meet .mc-link{ flex:1 1 320px; }
.mc .mc-auto, .mc .mc-tok{ display:inline-block; line-height:1.5; vertical-align:baseline; }
.mc .mc-diag{ margin:0; }
