/* Prospector OS — Bootstrap 5 overrides */

body {
  font-size: 0.875rem;
  background-color: #f8f9fa;
}

#sidebar .nav-link {
  padding: 0.4rem 0.75rem;
  border-radius: 6px;
  font-size: 0.85rem;
}

#sidebar .nav-link:hover {
  background-color: rgba(255,255,255,0.1);
}

#sidebar .nav-link.active {
  background-color: #0d6efd;
}

.table th {
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #6c757d;
  font-weight: 600;
}

.badge-target    { background-color: #198754; }
.badge-no-target { background-color: #dc3545; }
.badge-pending   { background-color: #6c757d; }
.badge-undetermined { background-color: #ffc107; color: #000; }

.stage-bar .stage-dot {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  font-weight: 700;
}

.stage-dot.done    { background: #198754; color: #fff; }
.stage-dot.active  { background: #0d6efd; color: #fff; }
.stage-dot.pending { background: #dee2e6; color: #6c757d; }
.stage-dot.failed  { background: #dc3545; color: #fff; }

.card { border: 1px solid #e9ecef; }
.card-header { background: #fff; border-bottom: 1px solid #e9ecef; font-weight: 600; }

.kpi-card .kpi-value { font-size: 2rem; font-weight: 700; line-height: 1; }
.kpi-card .kpi-label { font-size: 0.78rem; color: #6c757d; text-transform: uppercase; letter-spacing: 0.05em; }
