/* Insights — app overlay on rv-theme.css.
 *
 * Insights is an internal satellite: it is never white-labelled, so it keeps
 * rv-theme's default accent (PV blue) and the neutral gray ramp. Do NOT set
 * --rv-accent or --bs-primary here. Semantic tones (success / warning /
 * danger / info) carry meaning only: health flags, reconciliation state.
 */

body {
  background: var(--bs-body-bg);
  -webkit-font-smoothing: antialiased;
}

/* Borderless cards, the rv-theme / sibling-app default. */
.card {
  --bs-card-border-width: 0;
  border-radius: 1.125rem;
}

a.card:hover {
  background: var(--bs-tertiary-bg);
}

/* Satellite lockup: bi-star + the two-tone wordmark; "Insights" is one word
   so it takes a single .logo-part-1-color span like Momentum. */
.logo-icon {
  color: #bdc0c9;
}

.in-nav-dropdown {
  min-width: 260px;
}

.in-eyebrow {
  letter-spacing: .04em;
  font-size: .75rem;
}

/* Digits line up in columns everywhere a number sits beside another. */
.in-tabular {
  font-variant-numeric: tabular-nums;
}

.in-chart {
  position: relative;
  height: 260px;
}

.in-chart-sm {
  position: relative;
  height: 200px;
}

/* Funnel bars: share of the first stage, drawn as a plain tinted bar. */
.in-funnel-bar {
  height: .5rem;
  border-radius: .25rem;
  background: var(--bs-tertiary-bg);
  overflow: hidden;
}

.in-funnel-bar > span {
  display: block;
  height: 100%;
  background: var(--bs-primary);
  border-radius: .25rem;
}

footer.in-footer {
  padding: 2.5rem 0;
  text-align: center;
  color: var(--bs-secondary-color);
  font-size: .9rem;
}

/* Shared (customer) report: narrower, calmer, no nav. */
.in-shared main {
  max-width: 960px;
}

.in-shared .in-shared-banner {
  background: var(--bs-primary-bg-subtle);
  color: var(--bs-primary-text-emphasis);
  border-radius: .625rem;
}

@media print {
  nav, footer.in-footer, .no-print { display: none !important; }
  .card { break-inside: avoid; }
}
