/*
 * The activity timeline and the activity page, plus the log panel, follow-up
 * widgets, market signals and the CSV import banner.
 *
 * Part of the ordered atlas stylesheet — the files in this directory are
 * linked in filename order and the order is load-bearing, so a rule moved
 * between them can change what wins.
 */
/* ===================== Activity timeline ===================== */
.timeline{position:relative;padding-left:20px}
.timeline::before{content:"";position:absolute;left:5px;top:4px;bottom:4px;width:2px;background:var(--line2)}
.tl-item{position:relative;padding:0 0 20px 0}
.tl-item:last-child{padding-bottom:2px}
.tl-item::before{content:"";position:absolute;left:-19px;top:3px;width:11px;height:11px;border-radius:50%;
  background:var(--accent);border:2px solid var(--panel)}
.tl-item.sms::before{background:#5eead4}.tl-item.email::before{background:#60a5fa}
.tl-item.call::before{background:#fbbf24}.tl-item.linkedin::before{background:#818cf8}
.tl-head{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:3px}
.tl-ch{text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.5px;color:var(--accent2)}
.tl-date{color:var(--faint);font-size:11px}
.tl-body{color:var(--muted);font-size:13px}

/* ── activity feed ── */
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;
  flex-shrink:0;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(34,197,94,.4)}
  50%{opacity:.7;box-shadow:0 0 0 5px rgba(34,197,94,0)}}
.empty-msg{color:var(--faint);font-size:13px;padding:24px 0}
.act-card .section-h{margin-bottom:16px}
.evt-list{display:flex;flex-direction:column;gap:0}
.evt-row{display:flex;align-items:flex-start;gap:14px;padding:14px 0;
  border-bottom:1px solid var(--line);transition:.15s}
.evt-row:last-child{border-bottom:none}
.evt-row:hover{background:var(--panel2);margin:0 -16px;padding:14px 16px;border-radius:10px;border-bottom:1px solid transparent}
.evt-badge{width:34px;height:34px;border-radius:10px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:16px;margin-top:1px}
.eb-target_created{background:rgba(99,102,241,.18);color:#818cf8}
.eb-contact_added{background:rgba(94,234,212,.18);color:#5eead4}
.eb-comm_logged{background:rgba(34,197,94,.18);color:#4ade80}
.eb-opp_updated{background:rgba(251,146,60,.18);color:#fb923c}
.eb-opp_created,.eb-opp_status{background:rgba(168,85,247,.18);color:#c084fc}
.evt-body{flex:1;min-width:0}
.evt-sum{font-size:13px;color:var(--txt);font-weight:500;line-height:1.4;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.evt-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--faint);margin-top:4px}
.evt-user{background:var(--panel2);border:1px solid var(--line);border-radius:4px;
  padding:1px 6px;font-size:10px;font-weight:600;color:var(--muted)}
.evt-dot{opacity:.4}
/* before→after diff pills */
.evt-diffs{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.diff-item{display:inline-flex;align-items:center;gap:4px;
  background:var(--panel2);border:1px solid var(--line);border-radius:6px;
  padding:3px 8px;font-size:11px}
.diff-field{color:var(--faint);font-weight:600;text-transform:uppercase;font-size:10px;letter-spacing:.5px}
.diff-before{color:#f87171;text-decoration:line-through;opacity:.8}
.diff-arrow{color:var(--faint);font-size:10px}
.diff-after{color:#4ade80;font-weight:600}

/* ── server log panel ── */
.log-panel{position:fixed;bottom:0;left:0;right:0;height:260px;background:var(--bg);
  border-top:1px solid var(--line);z-index:50;display:flex;flex-direction:column}
.log-header{display:flex;align-items:center;gap:8px;padding:8px 16px;
  background:var(--panel);border-bottom:1px solid var(--line);font-size:12px;
  font-weight:600;color:var(--muted);flex-shrink:0}
.log-close{margin-left:auto;background:transparent;border:none;color:var(--muted);
  cursor:pointer;font-size:16px;line-height:1;padding:0 4px}
.log-close:hover{color:var(--txt)}
.log-body{flex:1;overflow-y:auto;padding:8px 16px;font-family:'JetBrains Mono',monospace;font-size:11px}
.log-line{padding:2px 0;white-space:pre-wrap;word-break:break-all;border-bottom:1px solid var(--line);color:var(--muted)}
.ll-error,.ll-critical{color:#f87171}
.ll-warning{color:#fbbf24}
.ll-info{color:var(--muted)}
.ll-debug{color:var(--faint)}
.theme-toggle.active{border-color:var(--accent);color:var(--accent-text,var(--accent))}

/* rating chip colors */
.rchip[data-r="A+"] .rc{color:#f59e0b}
.rchip[data-r="A"] .rc{color:#22c55e}
.rchip[data-r="B+"] .rc{color:#5eead4}
.rchip[data-r="B"] .rc{color:#60a5fa}
.rchip[data-r="C"] .rc{color:var(--muted)}

/* clickable evt rows */
.evt-row.clickable{cursor:pointer}
.evt-row.clickable:hover .evt-sum{color:var(--accent-text,var(--accent))}
.evt-has-diff{color:var(--accent-text,var(--accent));font-size:10px;font-weight:600;letter-spacing:.3px}

/* change modal rows */
.chg-row{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 14px;background:var(--panel2);border:1px solid var(--line);border-radius:10px}
.chg-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--faint);width:80px;flex-shrink:0}
.chg-vals{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.chg-before{color:#f87171;font-size:13px;font-weight:600;text-decoration:line-through;opacity:.8}
.chg-after{color:#4ade80;font-size:13px;font-weight:700}

/* log button */
.log-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;
  border-radius:9px;border:1px solid var(--line2);background:transparent;
  color:var(--muted);cursor:pointer;transition:.15s}
.log-btn:hover{color:var(--txt);border-color:var(--accent)}
.log-btn.active{border-color:var(--accent);color:var(--accent-text,var(--accent));background:rgba(99,102,241,.1)}
.log-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* fresh bar classes — no inheritance from .fill */
.bwrap{flex:1;height:11px;border-radius:7px;overflow:hidden;background:var(--panel2);box-shadow:inset 0 1px 2px rgba(0,0,0,.12)}
html[data-theme="light"] .bwrap{background:#e7ebf4}
.bhi,.bme,.blo,.bst{display:block;height:100%;border-radius:7px;transition:width .5s cubic-bezier(.2,.8,.2,1)}
.bhi{background:linear-gradient(90deg,#fb7185,#ef4444)}
.bme{background:linear-gradient(90deg,#fbbf24,#f59e0b)}
.blo{background:linear-gradient(90deg,#60a5fa,#3b82f6)}
.bst{background:linear-gradient(90deg,#5eead4,#6366f1)}

/* follow-ups widget */
.fu-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;
  border-radius:50%;background:var(--accent);color:var(--accent-ink,#fff);font-size:11px;font-weight:700}
.fu-list{display:flex;flex-direction:column;gap:0}
.fu-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);
  cursor:pointer;transition:.15s}
.fu-row:last-child{border-bottom:none}
.fu-row:hover{background:rgba(99,102,241,.04);margin:0 -16px;padding:12px 16px;border-radius:10px;border-bottom:1px solid transparent}
.fu-left{flex:1;min-width:0}
.fu-due{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;margin-bottom:3px}
.fu-overdue{color:#f87171}
.fu-urgent{color:#fb923c}
.fu-soon{color:#fbbf24}
.fu-future{color:#60a5fa}
.fu-company{font-size:14px;font-weight:600;color:var(--txt);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fu-meta{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}
.fu-last{font-size:11px;color:var(--faint);flex-shrink:0;white-space:nowrap}
.fu-arrow{color:var(--faint);flex-shrink:0}

/* activity page */
.page-title{font-family:'Inter','Segoe UI',sans-serif;font-size:26px;font-weight:600;letter-spacing:-.4px;margin-bottom:4px;color:var(--ink)}
.page-sub{font-size:13px;color:var(--faint);margin-bottom:24px}
.act-tabs{display:flex;gap:6px;margin-bottom:20px;border-bottom:1px solid var(--line);padding-bottom:0}
.act-tab{background:none;border:none;padding:10px 16px;font-size:13px;font-weight:600;color:var(--muted);
  cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:.15s}
.act-tab:hover{color:var(--txt)}
.act-tab.active{color:var(--accent-text,var(--accent));border-bottom-color:var(--accent)}
.act-cnt{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;
  border-radius:9px;background:var(--accent);color:var(--accent-ink,#fff);font-size:10px;font-weight:700;
  padding:0 4px;margin-left:5px}
.act-body{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.act-table{width:100%;border-collapse:collapse}
.act-table th{text-align:left;padding:10px 16px;font-size:11px;font-weight:700;text-transform:uppercase;
  letter-spacing:.5px;color:var(--faint);border-bottom:1px solid var(--line);background:var(--panel2)}
.act-table td{padding:12px 16px;border-bottom:1px solid var(--line);font-size:13px;vertical-align:middle}
.act-tr{cursor:pointer;transition:.12s}
.act-tr:hover{background:rgba(99,102,241,.06)}
.act-tr:last-child td{border-bottom:none}
.act-co{font-weight:600;color:var(--txt);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.act-faint{color:var(--muted);font-size:12px}
.act-note{color:var(--muted);font-size:12px;max-width:300px}
.act-group{border-bottom:1px solid var(--line)}
.act-group:last-child{border-bottom:none}
.act-date{padding:10px 16px;font-size:11px;font-weight:700;text-transform:uppercase;
  letter-spacing:.6px;color:var(--faint);background:var(--panel2)}
.ch-pill{text-transform:capitalize}

/* ── Activity page redesign ── */
.act-header{margin-bottom:24px}
.act-title{font-size:26px;font-weight:800;letter-spacing:-.5px}
.act-sub{font-size:13px;color:var(--faint);margin-top:4px}

/* pill tabs */
.act-pill-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}
.apt{display:flex;align-items:center;gap:7px;padding:9px 16px;border-radius:50px;
  border:1px solid var(--line2);background:var(--panel);color:var(--muted);
  font-size:13px;font-weight:600;cursor:pointer;transition:.18s}
.apt:hover{color:var(--txt);border-color:var(--accent)}
.apt.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#fff);
  box-shadow:0 4px 14px -4px rgba(99,102,241,.5)}
.apt-ic{font-size:14px}
.apt-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;
  border-radius:9px;background:rgba(255,255,255,.25);color:#fff;font-size:10px;font-weight:800;padding:0 4px}
.apt-badge-warn{background:rgba(248,113,113,.9)}
.apt.active .apt-badge{background:rgba(255,255,255,.3)}

/* panel */
.act-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:200px}

/* spinner */
.act-spin{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px 0;color:var(--faint)}
.spin-ring{width:24px;height:24px;border:3px solid var(--line2);border-top-color:var(--accent);
  border-radius:50%;animation:al-spin .7s linear infinite}

/* empty state */
.act-empty{display:flex;flex-direction:column;align-items:center;padding:56px 20px;text-align:center}
.act-empty-ic{font-size:40px;margin-bottom:14px;opacity:.7}
.act-empty-h{font-size:16px;font-weight:700;color:var(--txt);margin-bottom:6px}
.act-empty-s{font-size:13px;color:var(--faint);max-width:360px;line-height:1.6}

/* follow-up card rows */
.act-cards{display:flex;flex-direction:column}
.act-card-row{display:flex;align-items:center;gap:16px;padding:16px 20px;
  border-bottom:1px solid var(--line);cursor:pointer;transition:.15s}
.act-card-row:last-child{border-bottom:none}
.act-card-row:hover{background:rgba(99,102,241,.05)}
.acr-due{display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:76px;padding:10px 8px;border-radius:12px;background:var(--panel2);
  border:1px solid var(--line);text-align:center;flex-shrink:0}
.acr-due.fu-overdue{background:rgba(248,113,113,.1);border-color:rgba(248,113,113,.3)}
.acr-due.fu-urgent{background:rgba(251,146,60,.1);border-color:rgba(251,146,60,.3)}
.acr-due.fu-soon{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.3)}
.acr-due.fu-future{background:rgba(96,165,250,.1);border-color:rgba(96,165,250,.3)}
.acr-due-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px}
.acr-due-date{font-size:11px;color:var(--faint);margin-top:2px}
.acr-body{flex:1;min-width:0}
.acr-co{font-size:15px;font-weight:700;color:var(--txt);margin-bottom:5px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acr-pills{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:5px}
.acr-note{font-size:12px;color:var(--muted);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acr-right{display:flex;align-items:center;gap:12px;flex-shrink:0}
.acr-last{font-size:11px;color:var(--faint);text-align:right;line-height:1.5}
.acr-last b{color:var(--txt);font-weight:600}

/* touch list (week/month) */
.act-group{border-bottom:1px solid var(--line)}
.act-group:last-child{border-bottom:none}
.act-date-hdr{display:flex;align-items:center;gap:10px;padding:10px 20px;
  font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;
  color:var(--faint);background:var(--panel2)}
.act-date-cnt{font-weight:500;text-transform:none;letter-spacing:0;color:var(--faint);opacity:.7}
.act-touch-list{display:flex;flex-direction:column}
.act-touch{display:flex;align-items:center;gap:12px;padding:13px 20px;
  border-bottom:1px solid var(--line);cursor:pointer;transition:.14s}
.act-touch:last-child{border-bottom:none}
.act-touch:hover{background:rgba(99,102,241,.05)}
.ch-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;
  font-size:11px;font-weight:700;text-transform:capitalize;min-width:64px;justify-content:center}
.ch-call{background:rgba(34,197,94,.15);color:#22c55e}
.ch-email{background:rgba(96,165,250,.15);color:#60a5fa}
.ch-meeting{background:rgba(168,85,247,.15);color:#a855f7}
.ch-linkedin{background:rgba(14,165,233,.15);color:#0ea5e9}
.ch-note{background:rgba(251,191,36,.15);color:#fbbf24}
.ch-text,.ch-sms{background:rgba(94,234,212,.15);color:#5eead4}
.act-touch-body{flex:1;min-width:0}
.act-touch-co{font-size:13px;font-weight:600;color:var(--txt)}
.act-touch-who{font-weight:400;color:var(--muted)}
.act-touch-note{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}

/* stale info banner */
.stale-info{padding:10px 20px;font-size:12px;color:var(--faint);background:var(--panel2);border-bottom:1px solid var(--line)}

/* activity toolbar */
.act-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.act-search-wrap{display:flex;align-items:center;gap:0;background:var(--panel);border:1px solid var(--line);
  border-radius:8px;overflow:hidden;flex:1;min-width:180px;max-width:340px}
.act-search-ic{margin:0 10px;color:var(--faint);flex-shrink:0}
.act-search{background:none;border:none;outline:none;padding:8px 6px 8px 0;font-size:13px;color:var(--txt);width:100%}
.act-search::placeholder{color:var(--faint)}
.act-search-clr{background:none;border:none;cursor:pointer;color:var(--faint);padding:6px 10px;font-size:12px}
.act-search-clr:hover{color:var(--txt)}
.act-sort-sel{background:var(--panel);border:1px solid var(--line);border-radius:8px;
  color:var(--txt);font-size:13px;padding:8px 12px;cursor:pointer;outline:none}
.act-count{font-size:12px;color:var(--faint);margin-left:auto}
.act-clr-btn{background:var(--accent);color:var(--accent-ink,#fff);border:none;border-radius:20px;padding:6px 16px;
  font-size:12px;font-weight:600;cursor:pointer;margin-top:8px}

/* pagination */
.act-pager{display:flex;align-items:center;gap:4px;padding:14px 20px;justify-content:center;
  border-top:1px solid var(--line)}
.pg-btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;
  border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--muted);
  font-size:13px;font-weight:600;cursor:pointer;transition:.14s;padding:0 6px}
.pg-btn:hover:not(:disabled){background:var(--panel2);color:var(--txt)}
.pg-btn:disabled{opacity:.35;cursor:default}
.pg-btn.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#fff)}
.pg-ellipsis{color:var(--faint);padding:0 4px;font-size:13px}
.pg-info{font-size:12px;color:var(--faint);margin-left:8px}

/* stale card rows */
.stale-row{display:flex;align-items:center;gap:16px;padding:14px 20px;
  border-bottom:1px solid var(--line);cursor:pointer;transition:.15s}
.stale-row:last-child{border-bottom:none}
.stale-row:hover{background:rgba(99,102,241,.05)}
.stale-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:72px;height:64px;border-radius:14px;flex-shrink:0;border:1.5px solid transparent}
.stale-never{background:rgba(248,113,113,.08);border-color:rgba(248,113,113,.25)}
.stale-hot  {background:rgba(248,113,113,.1); border-color:rgba(248,113,113,.3)}
.stale-warm {background:rgba(251,146,60,.1);  border-color:rgba(251,146,60,.3)}
.stale-cool {background:rgba(251,191,36,.1);  border-color:rgba(251,191,36,.3)}
.stale-num{font-size:22px;font-weight:900;line-height:1;color:var(--txt)}
.stale-never .stale-num,.stale-hot .stale-num{color:#f87171}
.stale-warm  .stale-num{color:#fb923c}
.stale-cool  .stale-num{color:#fbbf24}
.stale-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--faint);margin-top:2px}
.stale-body{flex:1;min-width:0}
.stale-co{font-size:15px;font-weight:700;color:var(--txt);margin-bottom:6px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stale-pills{display:flex;flex-wrap:wrap;gap:5px}
.stale-meta{display:flex;gap:24px;flex-shrink:0}
.stale-meta-item{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.stale-meta-lbl{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--faint)}
.stale-meta-val{font-size:13px;font-weight:600;color:var(--txt)}
.stale-never-txt{color:#f87171!important}

/* full-width layout when sidebar hidden */
.shell-full { grid-template-columns: 0 1fr; }
.shell-full .sidebar { display: none; }

/* toolbar v2 – search + sort on the RIGHT */
.act-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.act-toolbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}

/* sort pills */
.sort-pills{display:flex;gap:4px;background:var(--panel);border:1px solid var(--line);
  border-radius:10px;padding:3px}
.sort-pill{background:none;border:none;padding:5px 12px;border-radius:8px;
  font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:.15s;white-space:nowrap}
.sort-pill:hover{color:var(--txt)}
.sort-pill.active{background:var(--accent);color:var(--accent-ink,#fff);box-shadow:0 2px 8px -2px rgba(99,102,241,.4)}

/* stale-never symbol */
.stale-never-sym{font-size:26px!important}

/* opportunity events in target timeline */
/* event = a clean contained card to the right of the rail (no double line / no touching blocks) */
.tl-item.tl-event{background:rgba(99,102,241,.07);border:1px solid var(--line2);border-radius:12px;
  padding:11px 14px;margin-bottom:14px}
html[data-theme="light"] .tl-item.tl-event{background:rgba(99,102,241,.06)}
.tl-item.tl-event::before{top:14px;left:-20px}
.tl-ev-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}
.tl-ev-label{font-size:12px;font-weight:700;color:var(--accent-text,var(--accent))}
.tl-changes{display:flex;flex-direction:column;gap:5px;margin-top:8px}
.tl-change{display:flex;align-items:center;gap:7px;font-size:12px}
.tl-ch-field{font-weight:700;color:var(--txt);min-width:64px}
.tl-ch-before{color:var(--faint);text-decoration:line-through}
.tl-ch-after{color:var(--accent-text,var(--accent));font-weight:600}

/* ── M&A Signals ─────────────────────────────────────────────────────────── */
.sig-search{flex:0 0 320px;max-width:320px;padding:9px 13px;border-radius:9px;border:1px solid var(--line2);
  background:var(--panel);color:var(--txt);font-size:13px;font-family:inherit}
.sig-search:focus{outline:none;border-color:var(--accent)}
.sig-tbl th.sortable{cursor:pointer;user-select:none;white-space:nowrap}
.sig-tbl th.sortable:hover{color:var(--accent-text,var(--accent))}
.sig-new{display:inline-block;margin-left:6px;font-size:9.5px;font-weight:800;letter-spacing:.06em;
  color:var(--accent-ink,#fff);background:var(--accent);border-radius:5px;padding:1px 5px;vertical-align:middle;font-family:var(--sans,inherit)}
.sig-ind{color:var(--muted);font-size:12.5px}
.sig-msg{font-size:12px;color:var(--muted);max-width:280px;text-align:right;line-height:1.35}
.btn svg.spin{animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── CSV import ──────────────────────────────────────────────────────────── */
.imp-summary{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.imp-stat{flex:1;min-width:90px;background:var(--canvas);border:1px solid var(--line);border-radius:10px;
  padding:10px 12px;text-align:center}
.imp-stat b{display:block;font-size:22px;line-height:1.1;font-family:var(--mono,monospace)}
.imp-stat span{font-size:11px;color:var(--muted)}
.modal input[type=file]{font-size:13px;color:var(--txt)}

/* ── M&A Signals auto-sync banner ────────────────────────────────────────── */
.sig-auto{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:8px 12px;
  background:color-mix(in srgb,var(--accent) 6%,transparent);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:9px;
  font-size:12.5px;color:var(--txt)}
.sig-auto svg{width:15px;height:15px;fill:none;stroke:var(--accent-text,var(--accent));stroke-width:2;flex-shrink:0}
.sig-auto b{color:var(--accent-text,var(--accent))}

/* client-detail sub-tabs (Deal board / Mandates) */
.ctabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:2px 0 20px}
.ctab{background:none;border:none;padding:10px 16px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit;transition:.12s}
.ctab:hover{color:var(--ink)}
.ctab.on{color:var(--accent-text,var(--accent));border-bottom-color:var(--accent)}
.ctab-n{opacity:.55;font-weight:500;margin-left:2px}
