/* vv-admin-hub-luxury 20260919T234800Z
   Admin Hub / post-login chrome — forest + champagne, Italiana headlines.
   MLS listing-template density on dashboards. Does not restyle Super Map
   or MLS listing chrome. Dashboard frames use vv-dash-gold* only. */

@import url("https://fonts.googleapis.com/css2?family=Doppio+One&family=Inter:wght@400;500;600;700&family=Italiana&display=swap");

:root {
  --vv-bg: #0a1a17;
  --vv-bg-elevated: #0f2621;
  --vv-bg-card: #122c26;
  --vv-gold: #d4af37;
  --vv-gold-soft: #c9a84c;
  --vv-cream: #f3e6c4;
  --vv-text: #e5e7eb;
  --vv-muted: #9ca3af;
  --vv-line: rgba(212, 175, 55, 0.42);
  --vv-font-display: "Italiana", "Times New Roman", serif;
  --vv-font-kicker: "Doppio One", "Inter", system-ui, sans-serif;
  --vv-font-ui: "Inter", system-ui, sans-serif;
  --vv-mls-gold-hi: #f5ec9b;
  --vv-mls-gold: #c4a265;
  --vv-mls-gold-mid: #d4af37;
  --vv-mls-gold-lo: #905e26;
  --vv-mls-teal: #004236;
  --vv-mls-teal-mid: #003a2e;
  --vv-mls-teal-lo: #002a20;
  --vv-mls-field: #103e34;
  --vv-mls-field-lo: #0e3429;
}

body.vv-admin-hub-surface {
  background: var(--vv-bg);
  color: var(--vv-text);
  font-family: var(--vv-font-ui);
}

body.vv-admin-hub-surface .vv-demo-banner,
body.vv-admin-hub-surface .vv-watermark-overlay,
body.vv-admin-hub-surface [data-vv-prelaunch-banner] {
  display: none !important;
}

.vv-admin-hub,
.vv-admin-telemetry,
[data-vv-admin-hub="1"] {
  --vv-bg: #0a1a17;
  --vv-bg-elevated: #0f2621;
  --vv-bg-card: #122c26;
  --vv-gold: #d4af37;
  font-family: var(--vv-font-ui);
  color: var(--vv-text);
}

body.vv-admin-hub-surface .min-h-screen {
  background: radial-gradient(circle at 50% 0%, rgba(212, 175, 55, 0.08), transparent 42%),
    linear-gradient(180deg, #0f2621 0%, #0a1a17 46%, #081512 100%) !important;
}

.vv-admin-hub {
  min-height: 100vh;
  padding: 32px 24px 64px;
  background: radial-gradient(circle at 50% 0%, rgba(212, 175, 55, 0.08), transparent 42%),
    linear-gradient(180deg, #0f2621 0%, #0a1a17 46%, #081512 100%);
}

.vv-admin-hero {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-end;
  max-width: 1120px;
  margin: 0 auto 28px;
}

.vv-admin-hero h1,
body.vv-admin-hub-surface h1 {
  font-family: var(--vv-font-display);
  font-weight: 400;
  letter-spacing: 0.02em;
  color: var(--vv-gold);
  font-size: clamp(2rem, 4vw, 3.1rem);
  margin: 6px 0 8px;
}

.vv-admin-kicker,
.vv-admin-card-title {
  font-family: var(--vv-font-kicker);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--vv-gold);
  font-weight: 400;
}

.vv-admin-lede,
.vv-admin-muted {
  color: var(--vv-muted);
  font-size: 13px;
}

.vv-admin-pill {
  border: 1px solid var(--vv-line);
  color: var(--vv-cream);
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 12px;
  background: var(--vv-bg-elevated);
}

.vv-admin-stats,
body.vv-admin-hub-surface section .max-w-7xl.grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  max-width: 1120px;
  margin: 0 auto 22px;
}

.vv-admin-stat,
body.vv-admin-hub-surface .rounded-xl.p-5 {
  background: var(--vv-bg-card);
  border: 1px solid var(--vv-line);
  border-radius: 16px;
  padding: 18px 18px 16px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
}

.vv-admin-stat p,
body.vv-admin-hub-surface .rounded-xl.p-5 p.text-xs {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 11px;
  color: var(--vv-muted);
}

.vv-admin-stat strong,
body.vv-admin-hub-surface .rounded-xl.p-5 p.text-2xl {
  display: block;
  margin: 10px 0 6px;
  font-family: var(--vv-font-display);
  font-size: 2rem;
  font-weight: 400;
  color: var(--vv-cream);
}

.vv-admin-stat span {
  color: var(--vv-muted);
  font-size: 12px;
}

.vv-admin-tabs,
body.vv-admin-hub-surface .flex.flex-wrap.gap-1\.5 {
  max-width: 1120px;
  margin: 0 auto 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px;
  border: 1px solid var(--vv-line);
  border-radius: 18px;
  background: var(--vv-bg-elevated);
}

.vv-admin-tabs button,
body.vv-admin-hub-surface .flex.flex-wrap.gap-1\.5 > button {
  border: 0;
  background: transparent;
  color: rgba(243, 230, 196, 0.72);
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}

.vv-admin-tabs button.is-active,
body.vv-admin-hub-surface .flex.flex-wrap.gap-1\.5 > button[style*="linear-gradient"] {
  background: linear-gradient(180deg, #c9a227, #8f7318);
  color: #0a1a17;
}

.vv-admin-telemetry,
.vv-admin-overview {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  gap: 14px;
}

.vv-admin-overview {
  grid-template-columns: 1.4fr 1fr;
}

.vv-admin-card,
body.vv-admin-hub-surface .rounded-xl.border.border-white\/10 {
  background: var(--vv-bg-card);
  border: 1px solid var(--vv-line);
  border-radius: 16px;
  padding: 16px;
}

.vv-admin-card-title {
  margin: 0 0 12px;
}

.vv-admin-telemetry-bar,
body.vv-admin-hub-surface .flex.flex-wrap.items-center.justify-between.gap-3 {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 16px;
  border: 1px solid var(--vv-line);
  border-radius: 16px;
  background: var(--vv-bg-elevated);
}

.vv-admin-telemetry-status,
.vv-admin-telemetry-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
}

.vv-admin-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  box-shadow: 0 0 10px currentColor;
}

.vv-admin-gold-btn {
  border: 1px solid var(--vv-gold);
  background: linear-gradient(180deg, #c9a227, #8f7318);
  color: #0a1a17;
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 700;
  font-size: 12px;
  cursor: pointer;
}

.vv-admin-gold-btn:disabled {
  opacity: 0.5;
}

.vv-admin-error {
  border: 1px solid rgba(239, 68, 68, 0.35);
  background: rgba(239, 68, 68, 0.08);
  color: #fecaca;
  border-radius: 14px;
  padding: 12px 14px;
  display: grid;
  gap: 4px;
}

.vv-admin-error p,
.vv-admin-empty,
.vv-admin-empty-inline {
  color: var(--vv-muted);
  font-size: 13px;
}

.vv-admin-empty {
  text-align: center;
  padding: 42px 18px;
}

.vv-admin-empty strong {
  display: block;
  font-family: var(--vv-font-display);
  font-size: 1.35rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: var(--vv-cream);
  margin-bottom: 8px;
}

.vv-admin-empty p {
  margin: 0 auto;
  max-width: 28rem;
  color: var(--vv-muted);
  font-size: 13px;
  line-height: 1.5;
}

.vv-admin-grid-3,
.vv-admin-grid-2 {
  display: grid;
  gap: 14px;
}

.vv-admin-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.vv-admin-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.vv-admin-kv,
.vv-admin-mono-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 12px;
  padding: 4px 0;
}

.vv-admin-mono-row,
.vv-admin-kv span:last-child {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.vv-admin-kv span:first-child {
  color: rgba(229, 231, 235, 0.62);
  font-family: var(--vv-font-ui);
}

.vv-admin-kicker {
  margin-top: 10px;
}

.vv-admin-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.vv-admin-chips span {
  border: 1px solid var(--vv-line);
  border-radius: 999px;
  padding: 3px 8px;
  font-size: 11px;
  color: var(--vv-cream);
}

.vv-admin-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 70%;
}

.vv-admin-link-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.vv-admin-link-grid a {
  color: var(--vv-gold);
  text-decoration: none;
  border: 1px solid var(--vv-line);
  border-radius: 12px;
  padding: 10px 12px;
  background: var(--vv-bg-elevated);
}

body.vv-admin-hub-surface .innovation-cards-row {
  border-color: var(--vv-line) !important;
}

hr.gold-line,
.vv-admin-gold-line {
  height: 1px;
  border: 0;
  background: linear-gradient(90deg, transparent, var(--vv-gold), transparent);
}

@media (max-width: 900px) {
  .vv-admin-stats,
  .vv-admin-grid-3,
  .vv-admin-grid-2,
  .vv-admin-overview,
  body.vv-admin-hub-surface section .max-w-7xl.grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .vv-admin-stats,
  .vv-admin-grid-3,
  .vv-admin-grid-2,
  .vv-admin-overview {
    grid-template-columns: 1fr;
  }
}

/* MLS listing-template language — dashboard gold frames (new class names).
   Ratios match live 3-tier maharaja: outer 6px / teal 8px / inner 4px. */
.vv-dash-gold {
  border-radius: 16px;
  padding: 6px;
  background: linear-gradient(135deg, var(--vv-mls-gold-hi), var(--vv-mls-gold) 46%, var(--vv-mls-gold-lo));
  box-shadow: 0 0 50px rgba(196, 162, 101, 0.18), 0 20px 60px rgba(0, 0, 0, 0.55);
}

.vv-dash-gold__teal {
  border-radius: 12px;
  padding: 8px;
  background: linear-gradient(135deg, var(--vv-mls-teal), var(--vv-mls-teal-mid), var(--vv-mls-teal-lo));
}

.vv-dash-gold__inner {
  border-radius: 8px;
  padding: 4px;
  background: linear-gradient(135deg, var(--vv-mls-gold-mid), var(--vv-mls-gold), #8b6914);
}

.vv-dash-gold__content {
  border-radius: 6px;
  background:
    radial-gradient(ellipse 80% 45% at 50% 0%, rgba(212, 175, 55, 0.1), transparent 60%),
    linear-gradient(135deg, var(--vv-mls-field), var(--vv-mls-field-lo));
  padding: 28px 24px;
}

.vv-dash-gold__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(212, 175, 55, 0.14);
}

.vv-dash-gold__head h2 {
  font-family: var(--vv-font-display);
  font-weight: 400;
  font-size: 18px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--vv-gold);
  margin: 0;
}

.vv-dash-gold__head .vv-admin-lede {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.55);
  margin-top: 2px;
}

.vv-dash-num {
  font-family: var(--vv-font-display);
  font-size: 28px;
  line-height: 1;
  color: var(--vv-gold);
  flex-shrink: 0;
}

.vv-dash-chips,
.vv-dash-gold .vv-admin-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 16px;
}

.vv-dash-chips span {
  border: 1px solid var(--vv-line);
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--vv-cream);
  background: rgba(10, 26, 23, 0.55);
}

.vv-dash-gold--photo .vv-dash-gold__content {
  position: relative;
  padding: 1.6rem 1.6rem 1.4rem;
  overflow: hidden;
  min-height: 280px;
  background:
    radial-gradient(ellipse 90% 80% at 82% 0%, rgba(212, 175, 55, 0.32), transparent 48%),
    radial-gradient(ellipse 55% 70% at 6% 110%, rgba(8, 21, 18, 0.96), transparent 52%),
    linear-gradient(180deg, rgba(22, 61, 51, 0.15), rgba(10, 26, 23, 0.72)),
    repeating-linear-gradient(-18deg, transparent 0 22px, rgba(10, 26, 23, 0.22) 22px 24px),
    linear-gradient(165deg, #1b4a3d 0%, #0f2621 42%, #0a1a17 100%);
}

.vv-dash-gold--photo .vv-dash-gold__head {
  position: relative;
  z-index: 1;
  margin: 0 0 8px;
  padding: 0;
  border-bottom: 0;
}

.vv-dash-gold--photo .vv-dash-gold__head h2 {
  font-size: clamp(2rem, 4vw, 3.1rem);
  letter-spacing: 0.02em;
  text-transform: none;
  color: var(--vv-gold);
}

.vv-dash-hero .vv-dash-nav {
  margin: 0;
  max-width: none;
}

.vv-admin-hub > .vv-dash-gold,
.vv-admin-hub > .vv-admin-error {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 22px;
}

.vv-admin-hub > .vv-admin-error {
  margin-bottom: 22px;
}

.vv-dash-hero {
  max-width: 1120px;
  margin: 0 auto 28px;
}

.vv-dash-hero__media {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 70% 18%, rgba(245, 236, 155, 0.16), transparent 34%),
    linear-gradient(180deg, transparent 40%, rgba(10, 26, 23, 0.35) 100%);
}

.vv-dash-hero__meta {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 8px 0 0;
}

.vv-dash-gold--photo .vv-dash-chips {
  position: relative;
  z-index: 1;
  padding: 0;
}

.vv-dash-tabs,
.vv-admin-tabs {
  max-width: 1120px;
  margin: 0 auto 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
  border: 0;
  background: transparent;
}

.vv-dash-tabs button,
.vv-admin-tabs button {
  border: 0;
  min-height: 44px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(245, 236, 155, 0.08);
  color: rgba(245, 236, 155, 0.7);
  font-family: var(--vv-font-kicker);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  cursor: pointer;
}

.vv-dash-tabs button.is-active,
.vv-admin-tabs button.is-active {
  background: linear-gradient(135deg, #fff8dc, #f5ec9b, #d4af37, #c4a265);
  color: #0a1a17;
}

.vv-dash-fact {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(212, 175, 55, 0.14);
  font-size: 14px;
}

.vv-dash-fact:last-child {
  border-bottom: 0;
}

.vv-dash-fact__k {
  color: rgba(255, 255, 255, 0.45);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.vv-dash-fact__v {
  color: var(--vv-cream);
  font-family: var(--vv-font-display);
  font-size: 1.15rem;
}

.vv-dash-fact__note {
  display: block;
  margin-top: 2px;
  color: rgba(255, 255, 255, 0.4);
  font-size: 11px;
  letter-spacing: 0.04em;
}

.vv-dash-cta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}

.vv-dash-cta a {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  text-decoration: none;
  font-family: var(--vv-font-kicker);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0a1a17;
  background: linear-gradient(135deg, #c4a265, #d4bf7a);
}

.vv-dash-gold--stat .vv-dash-gold__content p {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 11px;
  color: var(--vv-muted);
}

.vv-dash-gold--stat .vv-dash-gold__content strong {
  display: block;
  margin: 10px 0 6px;
  font-family: var(--vv-font-display);
  font-size: 2rem;
  font-weight: 400;
  color: var(--vv-cream);
}

.vv-dash-gold--stat .vv-dash-gold__content span {
  color: var(--vv-muted);
  font-size: 12px;
}

.vv-dash-nav {
  max-width: 1120px;
  margin: 0 auto 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vv-dash-nav a {
  color: var(--vv-cream);
  text-decoration: none;
  border: 1px solid var(--vv-line);
  border-radius: 999px;
  padding: 8px 14px;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: var(--vv-bg-elevated);
}

.vv-dash-table {
  display: grid;
  gap: 4px;
}

body.vv-post-login-surface,
body.vv-my-dashboard-surface {
  background: var(--vv-bg);
}

body.vv-my-dashboard-surface .innovation-cards-row,
body.vv-post-login-surface .innovation-cards-row,
body.vv-my-dashboard-surface [data-vv-post-login-hidden],
body.vv-my-dashboard-surface [data-vv-dash-stub] {
  display: none !important;
}

body.vv-my-dashboard-surface a[href="/v3/connect/email"],
body.vv-my-dashboard-surface a[href="/v3/connect/jessica-call"],
body.vv-my-dashboard-surface a[href="/v3/connect/call-center"],
body.vv-my-dashboard-surface a[href="/v3/chat"],
body.vv-my-dashboard-surface a[href="/v3/product-analytics"],
body.vv-my-dashboard-surface a[href="/v3/vista-now"],
body.vv-agent-dashboard-pro-surface .innovation-cards-row,
body.vv-agent-dashboard-pro-surface a[href="/v3/connect/email"],
body.vv-agent-dashboard-pro-surface a[href="/v3/connect/jessica-call"] {
  display: none !important;
}

.vv-my-dashboard,
.vv-admin-hub--luxury,
[data-vv-admin-hub-gold="1"] {
  padding-bottom: 80px;
}

/* React-primary Admin Hub — hide leftover Innovation Lab / 4-up KPI / Jitsi. */
[data-vv-admin-hub-gold="1"] .vv-admin-stats,
[data-vv-admin-hub-gold="1"] .vv-admin-hero,
[data-vv-admin-hub-gold="1"] .vv-admin-link-grid,
body.vv-admin-hub-surface [data-vv-admin-hub-gold="1"] section.max-w-7xl.grid,
body.vv-admin-hub-surface:has([data-vv-admin-facts]) .vv-admin-stats,
body.vv-admin-hub-surface:has([data-vv-admin-facts]) section .max-w-7xl.grid {
  display: none !important;
}

body.vv-admin-hub-surface .innovation-cards-row,
body.vv-admin-hub-surface iframe[src*="meet.jit.si"],
body.vv-admin-hub-surface iframe[src*="jitsi"] {
  display: none !important;
}

.vv-dash-fact--link {
  text-decoration: none;
  color: inherit;
}

.vv-dash-fact--link:hover .vv-dash-fact__v {
  color: var(--vv-gold);
}

.vv-admin-telemetry-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid rgba(212, 175, 55, 0.14);
  color: var(--vv-cream);
  font-size: 13px;
}

.vv-admin-telemetry > .vv-dash-gold,
.vv-admin-overview > .vv-dash-gold {
  margin-bottom: 0;
}

.vv-dash-ledger {
  display: grid;
  gap: 0;
}

.vv-dash-ledger__head,
.vv-dash-ledger__row {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(212, 175, 55, 0.14);
  font-size: 13px;
}

.vv-dash-ledger__head {
  color: rgba(255, 255, 255, 0.45);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.vv-dash-ledger__row:last-child {
  border-bottom: 0;
}

.vv-dash-ledger__row span:last-child,
.vv-dash-ledger__head span:last-child {
  text-align: right;
}

@media (max-width: 640px) {
  .vv-dash-ledger__head,
  .vv-dash-ledger__row {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .vv-dash-ledger__row span:last-child,
  .vv-dash-ledger__head span:last-child {
    text-align: left;
  }
}

.vv-dash-account {
  display: grid;
  gap: 0;
}

.vv-dash-cards {
  display: grid;
  gap: 10px;
}

.vv-dash-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid var(--vv-line);
  border-radius: 12px;
  background: rgba(10, 26, 23, 0.45);
}

.vv-dash-card__brand {
  font-family: var(--vv-font-kicker);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--vv-gold);
}

.vv-dash-card__pan {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  color: var(--vv-cream);
  letter-spacing: 0.08em;
}

.vv-dash-card__exp {
  font-size: 12px;
  color: var(--vv-muted);
}

.vv-dash-ledger {
  display: grid;
  gap: 0;
}

.vv-dash-ledger__head,
.vv-dash-ledger__row {
  display: grid;
  grid-template-columns: 1fr 1.4fr 0.7fr 0.8fr 0.8fr 0.9fr;
  gap: 8px;
  padding: 10px 0;
  font-size: 12px;
  border-bottom: 1px solid rgba(212, 175, 55, 0.12);
}

.vv-dash-ledger[aria-label="Payment history"] .vv-dash-ledger__head,
.vv-dash-ledger[aria-label="Payment history"] .vv-dash-ledger__row {
  grid-template-columns: 0.9fr 1.4fr 0.8fr 0.7fr;
}

.vv-dash-ledger__head {
  color: rgba(255, 255, 255, 0.42);
  font-family: var(--vv-font-kicker);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 10px;
}

.vv-dash-ledger__row {
  color: var(--vv-cream);
}

@media (max-width: 800px) {
  .vv-dash-ledger__head,
  .vv-dash-ledger__row,
  .vv-dash-ledger[aria-label="Payment history"] .vv-dash-ledger__head,
  .vv-dash-ledger[aria-label="Payment history"] .vv-dash-ledger__row {
    grid-template-columns: 1fr 1fr;
  }

  .vv-dash-cta {
    grid-template-columns: 1fr;
  }
}


/* Soft hub densify-safe: park gold on body; do not fight React RoleGuard DOM */
body.vv-my-dashboard-surface.vv-soft-hub-gold #root {
  /* Keep React mounted for TopBar/WhoAreYou SoftAuth, but collapse RoleGuard theatre */
}
body.vv-my-dashboard-surface.vv-soft-hub-gold #root [class*="min-h-screen"]:has(h2),
body.vv-my-dashboard-surface.vv-soft-hub-gold #root h2,
body.vv-my-dashboard-surface.vv-soft-hub-gold #root {
  /* fallback without :has for older chrome — tip also marks stubs */
}
body.vv-my-dashboard-surface.vv-soft-hub-gold [data-vv-dash-stub="1"],
body.vv-my-dashboard-surface.vv-soft-hub-gold [data-vv-post-login-hidden="1"] {
  display: none !important;
}
body.vv-my-dashboard-surface.vv-soft-hub-gold [data-vv-my-dashboard-gold="1"] {
  display: block !important;
  position: relative;
  z-index: 40;
}
