/* coaching.css -- session 418 (briefs/session-418-brief.md; mh-lifecycle-mockups-v1). The mockups' own section styles as classes, every value a token
   (tokens.css --ch-* for the shared header, --co-* for Coaching's own colours). The header itself is core-header.css's (CHD).
     .coh   the Coaching tab (#partner-dev): the table, the pills and the source badges of Main.dc.html; Plan a visit and Log a visit's menus
     .cos   Settings > Coaching
     .psc   her Staff record's Coaching tab (Cleaner.dc.html), inside session 389's page (person-page.css's ps- classes and --ps-* tokens)
     .mrc   the coaching stop and the two new phone pages on My route (Visit.dc.html, Suggested.dc.html), inside myroute.css's page
     .qbc   the Quality Check's "Coached since her last QC" (QC.dc.html), inside Before you go in */

/* ---------------------------------------------------------------------------------------------- the Coaching tab */
.coh{min-width:0}
.coh .coh-msg{margin:12px 0 0;font-size:13px;color:var(--ch-sub)}
.coh .coh-msg:empty{display:none}
.coh .coh-body{margin-top:14px;font-size:14px;color:var(--ch-cell)}
.coh .coh-none{padding:18px 14px;color:var(--ch-sub);font-size:14px}
.coh .coh-r1t{font-size:13.5px;color:var(--ch-sub)}
.coh .coh-tbx{overflow-x:auto}
.coh .coh-tbl{width:100%;border-collapse:separate;border-spacing:0;min-width:980px;table-layout:fixed}
.coh .coh-tbl th{text-align:left;font-size:13px;font-weight:600;color:var(--ch-sub);padding:12px 16px;background:var(--ch-tag-bg);white-space:nowrap;position:static;text-transform:none;letter-spacing:normal}
.coh .coh-tbl th:first-child{border-radius:10px 0 0 10px}
.coh .coh-tbl th:last-child{border-radius:0 10px 10px 0}
.coh .coh-tbl td{padding:14px 16px;border-bottom:1px solid var(--ch-row-line);vertical-align:top;font-size:14px;white-space:normal;overflow:visible;text-overflow:clip;color:var(--ch-cell)}
.coh .coh-tbl .n{text-align:left}
.coh .coh-tr{cursor:pointer}
.coh .coh-tbl tbody tr:hover td{background:#f5f7f8}
.coh .coh-tr:focus-visible{outline:2px solid var(--ch-acc);outline-offset:-2px}
.coh .coh-nm{font-size:15px;font-weight:700;color:var(--co-teal-2);text-decoration:underline;text-decoration-color:var(--ch-line);text-underline-offset:3px}
.coh .coh-nm:hover{color:var(--co-teal);text-decoration-color:currentColor}
.coh .coh-sb{font-size:13px;color:var(--ch-muted);margin-top:2px}
.coh .coh-sb a{color:var(--co-teal-2);text-decoration:underline}
.coh .coh-v{color:var(--ch-ink);font-weight:500}
.coh .coh-mut{color:var(--ch-muted);font-weight:450}
.coh .coh-late{color:var(--co-late);font-weight:600}
.coh .coh-onb{color:var(--co-onb-ink);font-weight:600}
.coh .coh-big{font-size:20px;font-weight:800;color:var(--ch-ink)}
.coh .coh-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600;margin:0 6px 6px 0;white-space:nowrap}
.coh .coh-fixed{background:var(--co-fixed-bg);color:var(--co-fixed-ink)}
.coh .coh-still{background:var(--co-still-bg);color:var(--co-still-ink)}
.coh .coh-wait{background:var(--co-wait-bg);color:var(--co-wait-ink)}
.coh .coh-amb{background:var(--co-gap-bg);color:var(--co-gap-ink)}
.coh .coh-src{display:inline-block;font-size:11.5px;font-weight:700;border-radius:6px;padding:2px 7px;margin-right:6px}
.coh .coh-s-qc{background:var(--co-still-bg);color:var(--co-still-ink)}
.coh .coh-s-onb{background:var(--co-onb-bg);color:var(--co-onb-ink)}
.coh .coh-s-gap{background:var(--co-gap-bg);color:var(--co-gap-ink)}
.coh .coh-s-new{background:var(--co-new-bg);color:var(--co-new-ink)}
.coh .coh-s-plan{background:var(--ch-badge-bg);color:var(--ch-badge-ink)}
.coh .coh-why{font-size:13.5px;color:var(--ch-ink);font-weight:500}
.coh .coh-sg{display:flex;gap:12px;align-items:flex-start}
.coh .coh-sgw{flex:1 1 auto;min-width:0}
.coh .coh-acts{display:flex;flex-wrap:wrap;gap:8px}
.coh .coh-btn{display:inline-flex;align-items:center;height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--ch-line);background:#ffffff;color:var(--ch-btn-ink);font:600 13px 'Inter',system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.coh .coh-btn:hover{background:#e9ecee;border-color:var(--ch-line-hover)}
.coh .coh-btn:focus-visible{outline:2px solid var(--ch-acc);outline-offset:2px}
.coh .coh-btn[disabled]{opacity:.55;cursor:not-allowed}
.coh .coh-btn.coh-btn-t{background:var(--co-teal);border-color:var(--co-teal);color:#ffffff}
.coh .coh-btn.coh-btn-t:hover{background:var(--ch-acc-hover)}
.coh .coh-foot{padding:14px 4px 0;font-size:13px;color:var(--ch-muted)}
.coh .coh-wk{display:flex;align-items:flex-end;gap:5px;height:40px;justify-content:flex-end}
.coh .coh-wb{width:16px;background:var(--co-bar);border-radius:3px 3px 0 0;display:block}
.coh .coh-items{margin-top:14px;border:1px solid var(--ch-row-line);border-radius:12px;padding:12px 14px;background:#ffffff}
.coh .coh-ih{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-bottom:6px}
.coh .coh-item{display:flex;gap:12px;align-items:flex-start;border-top:1px solid var(--ch-row-line);padding:10px 0}
.coh .coh-iw{flex:1 1 auto;min-width:0}
.coh .coh-res{flex:0 1 360px}
.coh .coh-lab{display:block;font-size:12.5px;font-weight:600;color:var(--ch-sub);margin:4px 0}
.coh .coh-row{display:flex;gap:8px}
.coh input.coh-in,.coh .coh-in{height:36px;width:100%;border:1px solid var(--ch-line);border-radius:9px;padding:0 10px;font:450 14px 'Inter',system-ui,sans-serif;color:var(--ch-ink);background:#ffffff}
.coh select.coh-sel,.coh .coh-sel{height:36px;width:100%;border:1px solid var(--ch-line);border-radius:9px;padding:0 8px;font:450 14px 'Inter',system-ui,sans-serif;margin-bottom:8px}
.coh .coh-pop{width:360px;max-height:70vh;overflow:auto}
.coh .coh-poph{font-weight:700;color:var(--ch-ink);font-size:14px;padding:4px 4px 8px}
.coh .coh-popl{display:flex;flex-direction:column;gap:2px;margin-top:8px}
.coh .coh-pli{flex-direction:column;align-items:flex-start;white-space:normal;gap:2px}
.coh .coh-pli[disabled]{opacity:.55;cursor:not-allowed}
@media (max-width:760px){
  .coh .coh-pop{width:calc(100vw - 48px)}
  .coh .coh-sg{flex-direction:column}
}

/* ---------------------------------------------------------------------------------------------- Settings > Coaching */
.cos .cos-grid{display:flex;flex-direction:column}
.cos .cos-row{display:flex;align-items:center;gap:16px;padding:10px 0;border-top:1px solid var(--ch-row-line);flex-wrap:wrap}
.cos .cos-row.cos-head{margin-top:10px;border-top:2px solid var(--ch-th-line)}
.cos .cos-row.cos-head .cos-w{font-weight:700;color:var(--ch-ink)}
.cos .cos-w{flex:1 1 360px;font-size:14px;color:var(--ch-cell)}
.cos .cos-c{flex:0 0 auto;display:flex;align-items:center;gap:8px}
.cos input.cos-n,.cos .cos-n{width:64px;height:36px;text-align:right}
.cos .cos-u{font-size:13px;color:var(--ch-sub)}
.cos select.cos-sel,.cos .cos-sel{width:auto;min-width:240px;height:36px}
.cos .cos-sw{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;margin-right:12px;white-space:nowrap}
.cos .cos-tbx{overflow-x:auto}
.cos .cos-tbl td{vertical-align:top;white-space:normal}
.cos input.cos-t,.cos .cos-t{width:180px;height:34px;display:block;margin-bottom:6px}
.cos .cos-es{color:var(--ch-sub)}
.cos textarea.cos-ta,.cos .cos-ta{width:100%;min-width:200px;font:450 13px 'Inter',system-ui,sans-serif}
.cos .cos-add{display:flex;gap:8px;margin-top:12px}
.cos .cos-save{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:16px 0}

/* ---------------------------------------------------------------------------------------------- her Staff record, Coaching tab */
.psc-banner{background:var(--co-banner);border-radius:14px;padding:16px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.psc-banner .psc-bw{flex:1 1 420px;min-width:0}
.psc-banner .psc-bt{font-size:16px;font-weight:700;color:var(--co-gap-ink)}
.psc-banner .psc-bs{margin-top:4px;color:var(--co-gap-ink);font-size:14px;line-height:1.45}
.psc-banner.psc-plan{background:var(--co-onb-bg)}
.psc-banner.psc-plan .psc-bt,.psc-banner.psc-plan .psc-bs{color:var(--co-onb-ink)}
.psc-btn{display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:10px;border:1px solid #c9d0d4;background:#ffffff;color:#16181a;font:600 14px 'Inter',system-ui,sans-serif;cursor:pointer;white-space:nowrap;text-decoration:none}
.psc-btn:hover{background:#e9ecee}
.psc-btn:focus-visible{outline:2px solid #6fd5d4;outline-offset:2px}
.psc-btn[disabled]{opacity:.55;cursor:not-allowed}
.psc-btn.psc-t{background:var(--co-teal);border-color:var(--co-teal);color:#ffffff}
.psc-btn.psc-t:hover{background:var(--ch-acc-hover)}
.psc-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600;white-space:nowrap}
.psc-pill.psc-fixed{background:var(--co-fixed-bg);color:var(--co-fixed-ink)}
.psc-pill.psc-still{background:var(--co-still-bg);color:var(--co-still-ink)}
.psc-pill.psc-wait{background:var(--co-wait-bg);color:var(--co-wait-ink)}
.psc-pill.psc-topic{background:var(--co-onb-bg);color:var(--co-onb-ink)}
.psc-pill.psc-amb{background:var(--co-gap-bg);color:var(--co-gap-ink)}
.psc-topic-row{border-top:1px solid var(--ps-line, #dfe3e6);padding:12px 0}
.psc-topic-row .psc-th{display:flex;align-items:center;gap:10px}
.psc-topic-row .psc-tn{font-size:15px;font-weight:700;color:var(--ps-ink, #16181a)}
.psc-topic-row .psc-th .psc-pill{margin-left:auto}
.psc-qcs{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px 14px}
.psc-qc{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ps-ink-2, #4d545a)}
.psc-qd{width:10px;height:10px;border-radius:50%;display:inline-block}
.psc-qd.psc-pass{background:var(--co-pass)}
.psc-qd.psc-miss{background:var(--co-miss)}
.psc-visit{border:1px solid var(--ps-line, #dfe3e6);border-radius:12px;padding:16px 18px;margin-top:12px}
.psc-visit .psc-vh{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.psc-visit .psc-vd{font-size:17px;font-weight:700;color:var(--ps-ink, #16181a)}
.psc-visit .psc-vw{font-size:14px;color:var(--ps-ink-2, #4d545a)}
.psc-visit .psc-vw a{color:var(--co-teal-2);text-decoration:underline}
.psc-visit .ps-open{margin-left:auto}
.psc-kv{display:grid;grid-template-columns:130px minmax(0,1fr);gap:4px 12px;margin-top:10px;font-size:14px}
.psc-kv .psc-k{color:var(--ps-ink-3, #6b747b);font-weight:600}
.psc-kv .psc-v{color:var(--ps-ink, #16181a);line-height:1.45;white-space:pre-wrap;min-width:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.psc-kv .psc-v.psc-text{display:block}
.psc-res{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.psc-res input.psc-in,.psc-res .psc-in{height:36px;width:auto;flex:1 1 220px;border:1px solid #c9d0d4;border-radius:9px;padding:0 10px;font:450 14px 'Inter',system-ui,sans-serif}
.psc-more{padding-top:14px}
.psc-more button{background:none;border:0;padding:0;font:600 14px 'Inter',system-ui,sans-serif;color:var(--co-teal-2);text-decoration:underline;cursor:pointer}
.psc-log{margin-top:12px;border:1px dashed #c9d0d4;border-radius:12px;padding:12px 14px}
.psc-log .psc-li{display:flex;align-items:center;gap:10px;padding:6px 0;flex-wrap:wrap}
@media (max-width:760px){ .psc-kv{grid-template-columns:minmax(0,1fr)} }

/* ---------------------------------------------------------------------------------------------- the phone: the coaching stop, Suggested visits, I'm with a cleaner */
.mrc-new{display:inline-block;margin-left:6px;font-size:10.5px;font-weight:800;letter-spacing:.04em;border-radius:5px;padding:2px 6px;background:var(--co-onb-bg);color:var(--co-onb-ink);vertical-align:1px}
.mrc-hint{font-size:13px;color:#4d545a;margin-top:6px;line-height:1.4}
.mrc-chips{display:flex;flex-wrap:wrap;gap:8px}
.mrc-chip{min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid #c9d0d4;background:#ffffff;color:#16181a;font:600 14px 'Inter',system-ui,sans-serif;cursor:pointer}
.mrc-chip:focus-visible{outline:2px solid #6fd5d4;outline-offset:2px}
.mrc-chip[aria-pressed="true"]{background:var(--co-teal);border-color:var(--co-teal);color:#ffffff}
.mrc-chip.mrc-o[aria-pressed="true"]{background:var(--co-still-bg);border-color:var(--co-orange);color:var(--co-still-ink)}
.mrc-line{margin-top:10px}
.mrc-line label{display:block;font-size:13px;font-weight:600;color:#16181a;margin-bottom:4px}
.mrc-line textarea.mrc-ta,.mrc-line .mrc-ta{width:100%;min-height:56px;font:450 15px 'Inter',system-ui,sans-serif;border:1px solid #c9d0d4;border-radius:10px;padding:8px 10px;box-sizing:border-box}
.mrc-card{background:#ffffff;border-radius:14px;box-shadow:0 4px 14px rgba(14,54,59,.08);padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.mrc-card .mrc-cn{display:flex;align-items:center;gap:8px}
.mrc-card .mrc-name{font-size:17px;font-weight:700;color:#16181a;flex:1 1 auto}
.mrc-card .mrc-why{font-size:14px;color:#16181a;line-height:1.4}
.mrc-card .mrc-where{font-size:13px;color:#6b747b}
.mrc-card .mrc-acts{display:flex;gap:8px;margin-top:2px}
.mrc-src{display:inline-block;font-size:11.5px;font-weight:700;border-radius:6px;padding:2px 7px;background:var(--co-gap-bg);color:var(--co-gap-ink)}
.mrc-src.mrc-qc{background:var(--co-still-bg);color:var(--co-still-ink)}
.mrc-src.mrc-onb{background:var(--co-onb-bg);color:var(--co-onb-ink)}
.mrc-src.mrc-new2{background:var(--co-new-bg);color:var(--co-new-ink)}
.mrc-btn{flex:1 1 auto;min-height:44px;padding:0 14px;border-radius:10px;border:1px solid #c9d0d4;background:#ffffff;color:#16181a;font:600 14.5px 'Inter',system-ui,sans-serif;cursor:pointer}
.mrc-btn:focus-visible{outline:2px solid #6fd5d4;outline-offset:2px}
.mrc-btn[disabled]{opacity:.55;cursor:not-allowed}
.mrc-btn.mrc-t{background:var(--co-teal);border-color:var(--co-teal);color:#ffffff}
.mrc-btn.mrc-n{flex:0 0 auto}
.mrc-list{display:flex;flex-direction:column;gap:12px;margin-top:10px}
.mrc-sugcard{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.mrc-sugcard .mrc-sn{font-size:26px;font-weight:800;color:var(--co-teal)}
.mrc-sugcard .mrc-st{font-weight:700;color:#16181a}
.mrc-with{margin-top:14px;display:flex;flex-direction:column;gap:6px}
.mrc-with .mrc-btn{background:linear-gradient(#ffd13a,#f5c21c);border:0;font-weight:700;min-height:52px}
.mrc-with .mrc-cap{font-size:12px;color:#6b747b;text-align:center}
.mrc-pick{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;min-height:56px;padding:10px 14px;border-radius:12px;border:1px solid #dfe3e6;background:#ffffff;font:inherit;cursor:pointer}
.mrc-pick:focus-visible{outline:2px solid #6fd5d4;outline-offset:2px}
.mrc-pick b{font-size:16px;color:#16181a}
.mrc-pick span{font-size:13px;color:#4d545a}
.mrc-now{display:inline-block;font-size:11px;font-weight:700;border-radius:999px;padding:1px 8px;background:var(--co-fixed-bg);color:var(--co-fixed-ink);margin-left:6px}
.mrc-queued{background:#fff6d9;border-radius:10px;padding:10px 12px;font-size:14px;color:#7a4f00}

/* ---------------------------------------------------------------------------------------------- the Quality Check: Coached since her last QC */
.qbc{box-shadow:0 0 0 2px var(--co-bar) inset;border-radius:12px;padding:12px 14px;margin:0 0 12px}
.qbc .qbc-h{display:flex;align-items:center;gap:10px}
.qbc .qbc-ic{width:36px;height:36px;border-radius:10px;background:var(--co-onb-bg);color:var(--co-teal-2);display:flex;align-items:center;justify-content:center;flex:none}
.qbc .qbc-k{font-size:12px;font-weight:800;letter-spacing:.06em;color:#4d545a}
.qbc .qbc-s{font-size:12px;color:#6b747b}
.qbc .qbc-row{border-top:1px solid #dfe3e6;padding:10px 0 2px;margin-top:10px;display:flex;flex-direction:column;gap:6px}
.qbc .qbc-tr{display:flex;align-items:center;gap:8px}
.qbc .qbc-tn{font-size:16px;font-weight:700;color:#16181a;flex:1 1 auto}
.qbc .qbc-pill{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600}
.qbc .qbc-still{background:var(--co-still-bg);color:var(--co-still-ink)}
.qbc .qbc-fixed{background:var(--co-fixed-bg);color:var(--co-fixed-ink)}
.qbc .qbc-wait{background:var(--co-wait-bg);color:var(--co-wait-ink)}
.qbc .qbc-pf{display:flex;gap:8px}
.qbc .qbc-b{flex:1 1 0;min-height:44px;border-radius:10px;border:1.5px solid #c9d0d4;background:#ffffff;color:#16181a;font:700 15px 'Inter',system-ui,sans-serif;cursor:pointer}
.qbc .qbc-b:focus-visible{outline:2px solid #6fd5d4;outline-offset:2px}
.qbc .qbc-b[aria-pressed="true"].qbc-pass{background:var(--co-fixed-bg);border-color:var(--co-pass);color:var(--co-fixed-ink)}
.qbc .qbc-b[aria-pressed="true"].qbc-miss{background:var(--co-still-bg);border-color:var(--co-miss);color:var(--co-still-ink)}
.qbc .qbc-quiet{font-size:13px;color:#6b747b}
