/* Disclosure history — see docs/UX.md §Disclosure receipts as a core
 * pattern, docs/STYLE-GUIDE.md §10.
 *
 * Each row is a self-contained card with the claim label, an active /
 * revoked status pill, the issuance metadata line, and a Revoke action.
 * No verifier identifiers are surfaced (bearer-only in v1.0; recipient-
 * bound proofs land in M3.x+ and will show *pubkey-short* — never a
 * name). */

.history-hero {
  min-height: 100dvh;
  padding: var(--space-12) var(--space-6) var(--space-12);
  color: var(--color-text-body);
  display: grid;
  place-content: center;
}

.history-column {
  display: grid;
  grid-template-columns: minmax(0, 56ch);
  gap: var(--space-5);
  text-align: left;
}

.history-empty {
  font-family: var(--font-sans);
  font-size: 0.9375rem;
  color: var(--color-text-muted);
  padding: var(--space-4);
  border: 1px dashed var(--color-border-secondary);
  border-radius: var(--r-md);
  margin: 0;
}

.history-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--space-3);
}

.history-row {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-5);
  background: var(--color-bg-elevated);
  border-radius: var(--r-lg);
  border: 1px solid var(--color-border-secondary);
}

.history-row-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

.history-label {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--color-text-heading);
}

.history-status {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: var(--space-1) var(--space-2);
  border-radius: var(--r-sm);
  background: var(--color-accent-bounded-subtle);
  color: var(--color-text-bounded);
  border: 1px solid var(--color-accent-bounded);
}

.history-status-revoked {
  background: transparent;
  color: var(--color-text-muted);
  border-color: var(--color-border-secondary);
}

.history-meta {
  font-family: var(--font-sans);
  font-size: 0.875rem;
  color: var(--color-text-muted);
  margin: 0;
}

.history-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-3);
}

/* Tab strip — disclosures (outbound) vs witnesses (inbound, M18). */

.history-tabs {
  display: inline-flex;
  gap: var(--space-1);
  padding: var(--space-1);
  background: var(--color-bg-elevated);
  border: 1px solid var(--color-border-secondary);
  border-radius: var(--r-md);
  align-self: start;
}

.history-tab {
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--color-text-muted);
  background: transparent;
  border: 0;
  padding: var(--space-2) var(--space-4);
  border-radius: var(--r-sm);
  cursor: pointer;
}

.history-tab:hover {
  color: var(--color-text-body);
}

.history-tab-active {
  background: var(--color-bg);
  color: var(--color-text-heading);
  box-shadow: 0 1px 0 var(--color-border-secondary);
}

.history-tab-intro {
  font-family: var(--font-sans);
  font-size: 0.9375rem;
  color: var(--color-text-muted);
  margin: 0;
}

/* Witness rows — same envelope as .history-row, but with class /
 * claim-scope / pubkey metadata in a single line. */

.witness-row {
  display: grid;
  gap: var(--space-2);
  padding: var(--space-5);
  background: var(--color-bg-elevated);
  border-radius: var(--r-lg);
  border: 1px solid var(--color-border-secondary);
}

.witness-label {
  font-family: var(--font-display);
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--color-text-heading);
}

.witness-meta {
  font-family: var(--font-sans);
  font-size: 0.875rem;
  color: var(--color-text-muted);
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  align-items: baseline;
}

.witness-pubkey {
  font-family: var(--font-mono);
  font-size: 0.8125rem;
}

@media (max-width: 480px) {
  .history-hero {
    padding: var(--space-8) var(--space-4);
  }
  .history-row,
  .witness-row {
    padding: var(--space-4);
  }
  .history-row-head {
    flex-wrap: wrap;
  }
  .history-tabs {
    align-self: stretch;
    justify-content: center;
  }
}
