/*
 * The General Assembly portal (add-ga-public-site §5) — on the VolunHub host and on
 * ag.scout.ro alike. Only design-system tokens (--bs-*, --vh-*, --oncr-*): the published
 * theme loads design_system.css, so the portal looks the same inside either chrome.
 */
.ga-hero {
  background: linear-gradient(135deg, var(--oncr-bleumarin, var(--bs-primary)) 0%, var(--oncr-sea-blue, var(--bs-info)) 100%);
  color: var(--bs-white);
  border-radius: var(--vh-border-radius-lg, 0.75rem);
  padding: var(--vh-spacer-4, 1.5rem);
}
.ga-hero__eyebrow { text-transform: uppercase; letter-spacing: .06em; font-size: var(--vh-font-xs, .75rem); opacity: .85; }
.ga-hero__meta { opacity: .92; }
.ga-hero .badge { background: color-mix(in srgb, var(--bs-white) 18%, transparent); color: var(--bs-white); }

.ga-nav { overflow-x: auto; flex-wrap: nowrap; scrollbar-width: thin; }
.ga-nav .nav-link { white-space: nowrap; }

.ga-step { border-left: 4px solid var(--bs-primary); }
.ga-step--warning { border-left-color: var(--bs-warning); }
.ga-step--success { border-left-color: var(--bs-success); }
.ga-step--secondary { border-left-color: var(--bs-secondary); }

.ga-calendar__row--past { color: var(--bs-secondary-color); }
.ga-calendar__row--next { background: var(--vh-surface-muted, var(--bs-tertiary-bg)); }

.ga-agenda__order {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 2rem; height: 2rem; border-radius: 50%;
  background: var(--bs-primary-bg-subtle); color: var(--bs-primary-text-emphasis);
  font-weight: 600;
}

.ga-qr svg { width: 100%; max-width: 16rem; height: auto; }
