/* NICO desktop — Prospecting / Sourced-accounts canvas pane. Token-based (light/dark).
   The company-grouped sourced universe renders into #pane-sourced (a source-tile
   header, screen chips + search, a clickable table, and a right-side detail drawer
   (.pb-drawer)). #pane-leads keeps the same flex layout for the Clay people table.
   Prefixed pb- to avoid colliding with the shared .data-*/.crm-* canvas classes. */
#pane-leads, #pane-sourced { position: relative; display: flex; flex-direction: column; height: 100%; min-height: 0; }
.pb-av { display: inline-grid; place-items: center; width: 18px; height: 18px; border-radius: 5px; font-family: var(--mono); font-size: 8px; font-weight: 700; flex: none; }
.pb-av.sm { width: 15px; height: 15px; border-radius: 4px; font-size: 6.5px; }

.pb-scroll { flex: 1; min-height: 0; overflow-y: auto; padding-bottom: 20px; }

/* source tiles */
.pb-sources { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; padding: 14px 18px 6px; }
.pb-tile { display: flex; align-items: center; gap: 11px; padding: 12px 14px; background: var(--surface-1); border: 0.5px solid var(--line); border-radius: 12px; }
.pb-tbody { flex: 1; min-width: 0; }
.pb-tn { font-size: 13.5px; font-weight: 650; letter-spacing: -0.01em; }
.pb-trole { font-family: var(--mono); font-size: 9.5px; color: var(--text-4); margin-top: 3px; }
.pb-tcount { flex: none; font-family: var(--mono); font-size: 19px; font-weight: 700; color: var(--text); font-variant-numeric: tabular-nums; }

/* search + screen chips */
.pb-search { display: flex; align-items: center; gap: 8px; margin: 10px 18px 4px; padding: 8px 12px; background: var(--surface-1); border: 0.5px solid var(--line); border-radius: 10px; color: var(--text-4); }
.pb-search input { flex: 1; border: none; background: none; outline: none; font: inherit; font-size: 13px; color: var(--text); }
.pb-chips { display: flex; flex-wrap: wrap; gap: 7px; padding: 6px 18px 10px; }
.pb-chip { display: inline-flex; align-items: center; gap: 5px; height: 28px; padding: 0 11px; border-radius: 14px; cursor: pointer; white-space: nowrap; background: var(--surface-2); border: 0.5px solid var(--line); color: var(--text-2); font: inherit; font-size: 12px; font-weight: 550; }
.pb-chip.on { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }

/* table */
.pb-cols { display: flex; align-items: center; gap: 10px; padding: 4px 20px; font-family: var(--mono); font-size: 9.5px; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-4); }
.pb-cfit { flex: none; width: 60px; text-align: center; }
.pb-list { display: flex; flex-direction: column; }
.pb-row { display: flex; align-items: center; gap: 11px; width: 100%; padding: 10px 18px; border: none; border-top: 0.5px solid var(--line-soft, var(--line)); background: none; cursor: pointer; text-align: left; color: var(--text); }
.pb-row:hover { background: var(--surface-1); }
.pb-logo { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; color: #fff; font-size: 11px; font-weight: 700; }
.pb-logo.xl { width: 46px; height: 46px; border-radius: 12px; font-size: 16px; }
.pb-logo.sm { width: 24px; height: 24px; border-radius: 6px; font-size: 9px; }
.pb-main { flex: 1; min-width: 0; }
.pb-n { font-size: 13.5px; font-weight: 600; letter-spacing: -0.01em; }
.pb-sub { display: flex; align-items: center; gap: 6px; margin-top: 3px; }
.pb-srcs { display: inline-flex; }
.pb-srcs .pb-av { margin-left: -5px; border: 1.5px solid var(--surface-0, var(--bg)); }
.pb-srcs .pb-av:first-child { margin-left: 0; }
.pb-sigdot { width: 6px; height: 6px; border-radius: 50%; flex: none; }
.pb-sigt { font-family: var(--mono); font-size: 10px; color: var(--text-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pb-fit { flex: none; width: 60px; text-align: center; padding: 3px 0; border-radius: 7px; text-transform: capitalize; font-family: var(--mono); font-size: 10.5px; font-weight: 700; }
.pb-fit-none { color: var(--text-4); border: 0.5px solid var(--line); }
.fit-hot  { background: var(--accent-dim); color: var(--accent-text); border: 0.5px solid var(--accent-line); }
.fit-warm { background: var(--run-dim, var(--surface-2)); color: var(--run, var(--text-2)); border: 0.5px solid oklch(0.83 0.15 85 / 0.4); }
.fit-cool { background: var(--info-dim, var(--surface-2)); color: var(--info, var(--text-2)); border: 0.5px solid oklch(0.77 0.11 240 / 0.4); }
.pb-empty { padding: 30px 18px; text-align: center; font-family: var(--mono); font-size: 12px; color: var(--text-4); }

/* detail drawer */
.pb-drawer { position: absolute; top: 0; right: 0; bottom: 0; width: 380px; max-width: 82%; background: var(--surface-0, var(--bg)); border-left: 0.5px solid var(--line); box-shadow: -12px 0 32px oklch(0 0 0 / 0.12); display: flex; flex-direction: column; z-index: 5; }
/* the author display:flex above outguns the UA [hidden]{display:none} — without this,
   the CLOSED drawer still floats over the right 380px of the list and eats row clicks */
.pb-drawer[hidden] { display: none; }
.pb-dhead { display: flex; align-items: center; padding: 10px 14px; border-bottom: 0.5px solid var(--line); }
.pb-dclose { background: none; border: none; color: var(--accent-text); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.pb-dscroll { flex: 1; min-height: 0; overflow-y: auto; padding: 16px; }
.pb-dhero { display: flex; align-items: center; gap: 12px; }
.pb-dname { font-size: 17px; font-weight: 700; letter-spacing: -0.02em; }
.pb-dsub { font-family: var(--mono); font-size: 11px; color: var(--text-3); margin-top: 3px; }
.pb-dfit { flex: none; min-width: 52px; padding: 7px 9px; border-radius: 11px; text-align: center; font-family: var(--mono); font-size: 14px; font-weight: 800; line-height: 1; text-transform: capitalize; display: flex; flex-direction: column; align-items: center; gap: 3px; }
.pb-dfit small { font-size: 7.5px; font-weight: 600; letter-spacing: 0.04em; opacity: 0.8; text-transform: uppercase; }
.pb-sourcedby { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 14px; padding: 10px 12px; background: var(--surface-1); border: 0.5px solid var(--line); border-radius: 10px; }
.pb-sblabel { font-family: var(--mono); font-size: 9px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; color: var(--text-4); }
.pb-sbprov { display: inline-flex; align-items: center; gap: 6px; font-family: var(--mono); font-size: 11px; color: var(--text-2); }
.pb-dactions { display: flex; gap: 8px; margin-top: 14px; }
.pb-btn { flex: 1; height: 34px; border-radius: 9px; border: 0.5px solid var(--line); background: var(--surface-1); color: var(--text); font: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.pb-btn.acc { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.pb-dsec { font-family: var(--mono); font-size: 10px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-4); margin: 18px 0 8px; }
.pb-secsrc { font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--accent-text); margin-left: 6px; }
.pb-fields { display: flex; flex-direction: column; gap: 1px; border-radius: 10px; overflow: hidden; border: 0.5px solid var(--line); }
.pb-frow { display: flex; justify-content: space-between; gap: 12px; padding: 9px 12px; background: var(--surface-1); }
.pb-fk { font-family: var(--mono); font-size: 11px; color: var(--text-4); }
.pb-fv { font-size: 12.5px; color: var(--text); text-align: right; overflow: hidden; text-overflow: ellipsis; }
.pb-link { color: var(--accent-text); cursor: pointer; }
.pb-why { display: flex; flex-direction: column; gap: 7px; }
.pb-wrow { display: flex; align-items: baseline; gap: 9px; padding: 8px 11px; background: var(--surface-1); border-left: 2px solid var(--line); border-radius: 0 8px 8px 0; }
.pb-wk { font-family: var(--mono); font-size: 9.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; flex: none; }
.pb-wv { font-size: 12px; color: var(--text-2); }
.pb-stack { display: flex; flex-wrap: wrap; gap: 6px; }
.pb-schip { font-family: var(--mono); font-size: 11px; color: var(--text-2); background: var(--surface-1); border: 0.5px solid var(--line); border-radius: 6px; padding: 4px 9px; }
.pb-cov { display: flex; flex-direction: column; gap: 8px; }
.pb-covrow { display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; background: var(--surface-1); border: 0.5px solid var(--line); border-radius: 10px; }
.pb-covbadge { flex: none; margin-top: 1px; }
.pb-covn { font-size: 12.5px; font-weight: 600; }
.pb-covfields { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.pb-covchip { font-family: var(--mono); font-size: 9.5px; color: var(--text-3); background: var(--surface-2); border: 0.5px solid var(--line-soft, var(--line)); border-radius: 6px; padding: 3px 7px; }
.pb-contacts { display: flex; flex-direction: column; gap: 6px; }
.pb-ct { display: flex; align-items: center; gap: 10px; padding: 7px 10px; background: var(--surface-1); border: 0.5px solid var(--line); border-radius: 10px; }
.pb-ctn { font-size: 12.5px; font-weight: 600; }
.pb-ctt { font-family: var(--mono); font-size: 10px; color: var(--text-4); margin-top: 2px; }
.pb-ctmail { flex: none; width: 28px; height: 28px; border-radius: 8px; border: 0.5px solid var(--line); background: var(--surface-2); color: var(--accent-text); cursor: pointer; }
