/* Prospecting page — autonomous lead discovery UI */

.job-grid { display:grid;gap:12px;margin-bottom:32px; }
.job-card {
  background:var(--bg-card);border:1px solid var(--border);border-radius:12px;
  padding:18px 22px;display:flex;align-items:center;gap:18px;cursor:pointer;
  transition:border-color .2s;
}
.job-card:hover { border-color:rgba(245,166,35,.35); }
.job-card.active-card { border-color:var(--accent); }
.jc-status-dot {
  width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 5px currentColor;
}
.jc-status-dot.running  { background:#4ADE80;color:#4ADE80;animation:pulse 2s ease-in-out infinite; }
.jc-status-dot.queued   { background:#F59E0B;color:#F59E0B; }
.jc-status-dot.completed{ background:#60A5FA;color:#60A5FA; }
.jc-status-dot.failed   { background:#F87171;color:#F87171; }
.jc-body { flex:1;min-width:0; }
.jc-name { font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.jc-meta { font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);margin-top:3px; }
.jc-stats { display:flex;gap:18px;flex-shrink:0; }
.jc-stat { text-align:right; }
.jc-stat-val { font-family:var(--font-mono);font-size:16px;font-weight:500;color:var(--fg); }
.jc-stat-lbl { font-family:var(--font-mono);font-size:10px;color:var(--fg-muted); }

/* Detail pane */
.detail-pane {
  background:var(--bg-card);border:1px solid var(--border);border-radius:14px;
  padding:28px;display:none;margin-bottom:32px;
}
.detail-pane.visible { display:block; }
.detail-header { display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px; }
.detail-title  { font-size:18px;font-weight:700; }
.detail-sub    { font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);margin-top:3px; }
.progress-row  { display:flex;align-items:center;gap:12px;margin-bottom:20px; }
.progress-bar-wrap { flex:1;height:6px;background:var(--bg-surface);border-radius:3px;overflow:hidden; }
.progress-bar  { height:100%;background:var(--accent);border-radius:3px;transition:width .5s; }
.progress-pct  { font-family:var(--font-mono);font-size:12px;color:var(--fg-muted);flex-shrink:0;min-width:36px;text-align:right; }
.section-label {
  font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px;
}

/* Activity log */
.activity-log {
  max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:4px 0;
}
.log-row {
  display:flex;align-items:flex-start;gap:10px;background:var(--bg-surface);
  border-radius:7px;padding:8px 12px;font-family:var(--font-mono);font-size:11px;
}
.log-icon { flex-shrink:0;width:16px;text-align:center; }
.log-body { flex:1;min-width:0; }
.log-ts { color:var(--fg-muted);float:right;font-size:10px; }
.log-green { color:#4ADE80; }
.log-amber { color:#F59E0B; }
.log-red   { color:#F87171; }
.log-blue  { color:#60A5FA; }
.log-muted { color:var(--fg-muted); }

/* Stats row */
.stats-row { display:flex;gap:16px;margin-bottom:20px; }
.stat-card {
  flex:1;background:var(--bg-surface);border:1px solid var(--border);
  border-radius:10px;padding:14px 16px;
}
.stat-val { font-family:var(--font-mono);font-size:22px;font-weight:500;color:var(--fg); }
.stat-lbl { font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);margin-top:3px; }

/* Source table */
.source-table { width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:11px; }
.source-table th {
  text-align:left;color:var(--fg-muted);border-bottom:1px solid var(--border);
  padding:6px 8px;font-weight:400;
}
.source-table td { padding:7px 8px;border-bottom:1px solid rgba(255,255,255,.04); }
.source-table tr:last-child td { border:none; }

/* Badges */
.badge {
  display:inline-block;font-family:var(--font-mono);font-size:10px;
  padding:2px 7px;border-radius:100px;border:1px solid;
}
.badge-yes { color:#4ADE80;border-color:rgba(74,222,128,.3);background:rgba(74,222,128,.08); }
.badge-no  { color:var(--fg-muted);border-color:var(--border); }

/* Modal */
.modal-backdrop {
  position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px);
  z-index:200;display:none;align-items:center;justify-content:center;
}
.modal-backdrop.open { display:flex; }
.modal {
  background:var(--bg-card);border:1px solid var(--border);border-radius:16px;
  padding:32px;width:100%;max-width:480px;
}
.modal-title { font-size:20px;font-weight:700;margin-bottom:6px; }
.modal-sub   { font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);margin-bottom:24px; }
.form-group  { margin-bottom:16px; }
.form-label  { font-family:var(--font-mono);font-size:11px;color:var(--fg-muted);display:block;margin-bottom:6px; }
.form-input, .form-select {
  width:100%;background:var(--bg-surface);border:1px solid var(--border);
  border-radius:8px;padding:9px 12px;color:var(--fg);font-family:var(--font-mono);
  font-size:13px;transition:border-color .2s;
}
.form-input:focus,.form-select:focus { outline:none;border-color:var(--accent); }
.modal-actions { display:flex;justify-content:flex-end;gap:10px;margin-top:24px; }

/* Buttons */
.btn { display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;font-family:var(--font-head);font-size:13px;font-weight:600;cursor:pointer;border:none;transition:opacity .2s; }
.btn:hover { opacity:.85; }
.btn:disabled { opacity:.45;cursor:not-allowed; }
.btn-primary   { background:var(--accent);color:#0D0D0F; }
.btn-secondary { background:var(--bg-surface);color:var(--fg);border:1px solid var(--border); }
.btn-ghost     { background:transparent;color:var(--fg-muted); }
.btn-sm { padding:5px 12px;font-size:12px; }
.empty-state { text-align:center;padding:60px 20px;color:var(--fg-muted);font-family:var(--font-mono);font-size:13px; }
.toast {
  position:fixed;bottom:24px;right:24px;background:var(--bg-card);
  border:1px solid var(--border);border-radius:10px;padding:12px 18px;
  font-family:var(--font-mono);font-size:12px;z-index:500;display:none;
}
@keyframes pulse { 0%,100%{opacity:1}50%{opacity:.4} }
