/* Toll Bench receipt — standalone shell page, same dark idiom as toll-bench.css.
   GOTCHA (documented on the board page): standalone shells need their own
   box-sizing reset; they do not inherit the app shell's. Tokens only. */
.rcp, .rcp *, .rcp *::before, .rcp *::after { box-sizing: border-box; }

.rcp {
  margin: 0;
  background: var(--color-dark-900, #05070f);
  color: var(--color-white);
  font-family: var(--font-serif);
  line-height: 1.55;
}

.rcp-shell {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  padding: var(--space-6) var(--space-4) var(--space-12);
}

.rcp-crumb a {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  font-family: var(--font-heading);
  font-size: var(--text-sm);
}
.rcp-crumb a:hover { color: var(--color-white); }

.rcp-kicker {
  font-family: var(--font-heading);
  font-size: var(--text-xs);
  font-weight: var(--font-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent-primary);
  margin: 0 0 var(--space-1);
}

.rcp-head h1 {
  font-family: var(--font-heading);
  font-size: var(--text-2xl);
  margin: 0 0 var(--space-2);
  display: flex;
  align-items: center;
  gap: var(--space-3);
  flex-wrap: wrap;
}

.rcp-res {
  font-family: var(--font-heading);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  padding: var(--space-1) var(--space-3);
  border-radius: var(--radius-full);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.75);
}
.rcp-res--delivered { border-color: var(--status-success, #2ea043); color: var(--status-success, #2ea043); }
.rcp-res--failed, .rcp-res--walked { border-color: var(--status-error); color: var(--status-error); }

.rcp-sub { color: rgba(255, 255, 255, 0.7); margin: 0 0 var(--space-6); }

.rcp-card {
  background: var(--color-dark-800, #0a0e1a);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--radius-lg);
  padding: var(--space-5);
  margin-bottom: var(--space-4);
}
.rcp-card h2 {
  font-family: var(--font-heading);
  font-size: var(--text-lg);
  margin: 0 0 var(--space-2);
}

.rcp-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: var(--space-4);
}
.rcp-grid strong {
  display: block;
  font-family: var(--font-heading);
  font-size: var(--text-xl);
}
.rcp-label {
  display: block;
  font-family: var(--font-heading);
  font-size: var(--text-xs);
  color: rgba(255, 255, 255, 0.6);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: var(--space-1);
}

.rcp-facts { margin: 0; display: grid; grid-template-columns: 1fr; gap: var(--space-2); }
.rcp-facts > div { display: flex; gap: var(--space-3); align-items: baseline; }
.rcp-facts dt {
  flex: 0 0 130px;
  font-family: var(--font-heading);
  font-size: var(--text-sm);
  color: rgba(255, 255, 255, 0.6);
}
.rcp-facts dd { margin: 0; overflow-wrap: anywhere; }

.rcp-mono {
  font-family: var(--font-mono);
  font-size: var(--text-sm);
}

.rcp-note { color: rgba(255, 255, 255, 0.6); font-size: var(--text-sm); }

.rcp-links { padding-left: var(--space-5); margin: var(--space-2) 0 0; }
.rcp-links li { margin-bottom: var(--space-2); }
.rcp-links a { color: var(--accent-primary); }

.rcp-events { width: 100%; border-collapse: collapse; font-size: var(--text-sm); }
.rcp-events th, .rcp-events td {
  text-align: left;
  padding: var(--space-2) var(--space-3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.rcp-events th {
  font-family: var(--font-heading);
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.6);
}

.rcp-foot { margin-top: var(--space-6); color: rgba(255, 255, 255, 0.6); font-size: var(--text-sm); }
.rcp-foot a { color: var(--accent-primary); }

@media (max-width: 480px) {
  .rcp-facts dt { flex-basis: 105px; }
}
