/* Revenue uses the same six confirmed months in both investor entry points. */
[data-monthly-revenue] { min-width: 0; }
.revenue-intro { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; margin-bottom: 14px; }
.revenue-intro h3 { margin: 0; font-size: 1.08rem; font-weight: 500; }
.revenue-intro p { margin: 0; color: var(--muted); font-size: .8rem; }
.revenue-summary { margin-bottom: 16px; padding: 14px 20px; border-left: 2px solid var(--gold); background: var(--surface); }
.revenue-summary > p { margin: 0 0 8px; color: var(--gold-dark); font-size: .78rem; }
.revenue-summary dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px 24px; margin: 0; }
.revenue-summary dl > div { min-width: 0; }
.revenue-summary dt { color: var(--muted); font-size: .78rem; }
.revenue-summary dd { margin: 4px 0 0; font-size: clamp(1.05rem,2vw,1.5rem); font-weight: 500; font-variant-numeric: tabular-nums; white-space: nowrap; }
.revenue-counter { display: inline-grid; text-align: right; }
.revenue-counter::before { content: attr(data-revenue-counter-final); visibility: hidden; grid-area: 1 / 1; }
.revenue-counter-value { grid-area: 1 / 1; }
.revenue-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid var(--line); background: var(--surface); overscroll-behavior-x: contain; }
.revenue-table { width: 100%; min-width: 510px; border-collapse: collapse; font-size: .875rem; font-variant-numeric: tabular-nums; }
.revenue-table .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.revenue-table th,.revenue-table td { padding: 11px 18px; border-bottom: 1px solid var(--line); text-align: right; white-space: nowrap; }
.revenue-table thead th { color: var(--muted); font-size: .8rem; font-weight: 500; background: var(--paper); }
.revenue-table th:first-child { text-align: left; }
.revenue-table tbody th { font-weight: 400; }
.revenue-table tbody tr:first-child { background: var(--paper); }
.revenue-table tbody tr:last-child > * { border-bottom: 0; }
.revenue-source { margin: 10px 0 0; color: var(--muted); font-size: .78rem; }
.revenue-source a { text-underline-offset: 3px; }
.revenue-load-error { margin: 12px 0 0; color: var(--muted); font-size: .85rem; }
.revenue-load-error button { margin-left: 12px; }
.revenue-empty { padding: 24px 0; }
@media(max-width:559px) {
  .revenue-summary { padding: 12px; }
  .revenue-summary dl { gap: 10px; }
  .revenue-summary dt { font-size: .69rem; line-height: 1.6; }
  .revenue-summary dd { font-size: 1rem; }
  .revenue-table th,.revenue-table td { padding: 10px 12px; }
  .revenue-table th:first-child { position: sticky; left: 0; background: var(--surface); box-shadow: 1px 0 0 var(--line); }
  .revenue-table thead th:first-child,.revenue-table tr:first-child > th:first-child { background: var(--paper); }
}
