/* ========================================================================
   ContractLab — Dashboard & Faculty View
   ======================================================================== */

.dash-header, .fac-header { background: var(--navy); color: var(--white); padding: var(--sp-7) 0; }
.dash-header .eyebrow, .fac-header .eyebrow { color: var(--brass-light); }
.dash-header h1, .fac-header h1 { color: var(--white); font-size: var(--fs-2xl); }
.dash-header p, .fac-header p { color: rgba(246,241,231,0.8); max-width: 62ch; margin-bottom: 0; }

.cap-row {
  display: grid;
  grid-template-columns: 200px 1fr 140px;
  align-items: center;
  gap: var(--sp-4);
  padding: var(--sp-4) 0;
  border-bottom: 1px solid var(--parchment-line);
}
.cap-row:last-child { border-bottom: none; }
.cap-name { font-weight: 600; color: var(--navy); }
.cap-bar-track { background: var(--parchment-dark); border-radius: 999px; height: 10px; overflow: hidden; }
.cap-bar-fill { height: 100%; background: linear-gradient(90deg, var(--teal), var(--brass)); border-radius: 999px; }
.cap-evidence-count { font-family: var(--font-mono); font-size: var(--fs-xs); color: var(--ink-faint); }

.recent-list { display: flex; flex-direction: column; gap: var(--sp-2); }
.recent-item {
  display: flex; justify-content: space-between; gap: var(--sp-3);
  padding: var(--sp-3); border-radius: var(--radius-sm); background: var(--parchment-dark);
  font-size: var(--fs-sm);
}
.recent-item .cap-tag { font-family: var(--font-mono); font-size: var(--fs-xs); color: var(--teal-dark); }
.recent-item .ts { font-family: var(--font-mono); font-size: var(--fs-xs); color: var(--ink-faint); white-space: nowrap; }

.empty-state {
  text-align: center; padding: var(--sp-8) var(--sp-4);
  color: var(--ink-faint);
}
.empty-state a { font-weight: 600; }

/* Faculty */
.insight-card { padding: var(--sp-5); margin-bottom: var(--sp-4); display: flex; gap: var(--sp-4); align-items: flex-start; }
.insight-icon { width: 36px; height: 36px; border-radius: 50%; background: var(--teal-tint); color: var(--teal-dark); display: flex; align-items: center; justify-content: center; font-family: var(--font-mono); font-weight: 700; flex-shrink: 0; }
.insight-icon.warn { background: var(--tape-tint); color: var(--tape-dark); }
.insight-icon.good { background: #E4F0E7; color: var(--success); }

.fac-mockup-note {
  background: var(--brass-tint); border-left: 3px solid var(--brass);
  padding: var(--sp-3) var(--sp-4); border-radius: var(--radius-sm);
  font-size: var(--fs-sm); margin-bottom: var(--sp-6);
}

.demo-mode-banner {
  display: flex;
  align-items: center;
  gap: var(--sp-3);
  background: var(--tape);
  color: var(--white);
  font-family: var(--font-mono);
  font-weight: 700;
  font-size: var(--fs-sm);
  letter-spacing: 0.03em;
  padding: var(--sp-3) var(--sp-5);
  border-radius: var(--radius-md);
  margin-bottom: var(--sp-6);
}
.demo-mode-banner .dmb-tag {
  background: rgba(255,255,255,0.22);
  padding: 2px 10px;
  border-radius: 999px;
  font-size: var(--fs-xs);
  letter-spacing: 0.08em;
}

.illustrative-tag {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  background: var(--brass-tint);
  color: #6E5424;
  padding: 2px 8px;
  border-radius: var(--radius-sm);
  margin-left: var(--sp-2);
  white-space: nowrap;
  vertical-align: middle;
}
