/* Strong white-on-dark contrast for provenance/validation panel */
#provPanel, #provPanel * {
  color: #f3f8ff !important;
  --prov-border: rgba(255,255,255,0.18);
  --prov-border-soft: rgba(255,255,255,0.10);
  --prov-bg-soft: rgba(255,255,255,0.055);
  --prov-bg-sticky: rgba(15, 23, 42, 0.9); /* slate-900-ish */
  --prov-accent: #93c5fd;
  font-size: 14px;
}
#provPanel .prov-wrap{ margin-top:16px; }
#provPanel .prov-tabs{ display:flex; gap:6px; margin:6px 0 10px; }
#provPanel .prov-tab{ padding:6px 10px; border-radius:10px; background:var(--prov-bg-soft); cursor:pointer; }
#provPanel .prov-tab.active{ background:#2563eb; color:#fff; box-shadow:0 2px 8px rgba(37, 99, 235, .35); }

#provPanel .summary{ margin:8px 0 14px; display:grid; grid-template-columns: 120px 1fr; row-gap:6px; column-gap:8px; }
#provPanel .summary .k{ opacity:.85; }
#provPanel .summary .v{ color:#ffffff; }

#provPanel table { width:100%; border-collapse:collapse; table-layout:fixed; }
#provPanel thead th{
  text-align:right;
  padding:10px 8px;
  color:#ffffff !important;
  border-bottom:1px solid var(--prov-border);
  background:var(--prov-bg-sticky);
  position:sticky; top:0; z-index:1;
}
#provPanel thead th:first-child{ text-align:left; width:30%; }
#provPanel tbody td{
  text-align:right;
  padding:8px 8px;
  color:#e7efff !important;
  border-bottom:1px dashed var(--prov-border-soft);
}
#provPanel tbody td:first-child{ text-align:left; color:#ffffff; }

#provPanel tbody tr:hover{ background: var(--prov-bg-soft); }

#provPanel .note{ font-size:12px; opacity:.9; color:#dbeafe !important; margin-top:6px; }
#provPanel .muted{ opacity:.85; color:#cfe3ff !important; }

/* make sure dark sites don't override us */
#provPanel a, #provPanel b, #provPanel strong, #provPanel h4, #provPanel h5 { color:#fff !important; }
