/* ============================================================
   TrueMetriks - /revenue (revenue-first landing page variant)
   Loaded ONLY by revenue.html, on top of marketing.css and
   dashboard-replicas.css (the real dashboard widget replicas).
   Started as a copy of analytics.css and is self-contained on
   purpose, so the page variants can change independently.
   Page-only components use the rv- prefix (bottom of the file).

   All colors via tokens.css. Cards stay WHITE in dark mode (site
   rule) via the scoped re-pin near the bottom of this file.
   ============================================================ */

.an { overflow-x: clip; }

/* --- Layout containers --- */
.an-container {
  width: 100%;
  max-width: var(--container-base);
  margin-inline: auto;
  padding-inline: var(--space-5);
}
.an-wide {
  width: 100%;
  max-width: var(--container-wide);
  margin-inline: auto;
  padding-inline: var(--space-5);
}
@media (min-width: 768px) {
  .an-container, .an-wide { padding-inline: var(--space-6); }
}
.an-center { text-align: center; }

.an-section { padding-block: var(--space-8); }
.an-section--tight { padding-block: var(--space-7); }
.an-section--alt { background: var(--color-surface-alt); }
@media (max-width: 768px) {
  .an-section, .an-section--tight { padding-block: var(--space-7); }
}

.an h2 {
  font-size: clamp(32px, 3.6vw, 47px);
  letter-spacing: -0.03em;
  line-height: 1.15;
  margin-bottom: var(--space-4);
}
.an h3 {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-snug);
  margin-bottom: var(--space-2);
}
.an-lead.an-lead--wide { max-width: 80ch; }
.an-lead {
  font-size: 20px;
  line-height: 1.65;
  color: var(--color-text-muted);
  max-width: 64ch;
  margin-inline: auto;
}
.an-feature__text p {
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin-bottom: var(--space-4);
}
@media (max-width: 768px) {
  .an-lead, .an-feature__text p { font-size: 17px; }
}

.an-eyebrow {
  display: inline-block;
  color: var(--color-brand);
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-3);
}
[data-theme="dark"] .an-eyebrow { color: var(--color-accent-amber); }

.an-caption {
  text-align: center;
  margin-top: var(--space-5);
  font-size: 16px;
  color: var(--color-text-subtle);
}
.an-caption a, .an-more a { color: var(--color-link-bright); font-weight: var(--font-weight-semibold); }
.an-caption a:hover, .an-more a:hover { color: var(--color-link-bright-hover); }

/* --- Hero --- */
.an-hero {
  padding-top: clamp(28px, 3.5vw, 48px);
  padding-bottom: var(--space-8);
  background:
    radial-gradient(60% 50% at 50% 0%, rgba(34, 51, 255, 0.10), transparent 70%),
    var(--color-bg);
}
.an-hero__container {
  max-width: 1180px;
  margin-inline: auto;
  padding-inline: var(--space-5);
  text-align: center;
}
.an-hero h1 {
  font-size: clamp(38px, 5.4vw, 68px);
  letter-spacing: -0.035em;
  line-height: 1.06;
  margin-bottom: var(--space-5);
}
.an-hero__lead {
  font-size: 21px;
  line-height: 1.6;
  color: var(--color-text-muted);
  max-width: 62ch;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .an-hero__lead { font-size: 17px; }
}
.an-hero__ticks {
  list-style: none;
  padding: 0;
  margin: var(--space-5) 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-2) var(--space-5);
  font-size: 15px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-muted);
}
.an-hero__ticks li::before {
  content: "\2713";
  color: var(--color-success);
  font-weight: var(--font-weight-extra);
  margin-right: 6px;
}

/* CTA row (hero + close) */
.an-cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  justify-content: center;
  margin-top: var(--space-6);
}
.an-cta .btn { min-width: 240px; }
.an-cta__meta {
  margin-top: var(--space-3);
  font-size: var(--font-size-sm);
  color: var(--color-text-subtle);
}
/* Mid-page CTA rows, repeated after most sections */
.an-cta-block { margin-top: var(--space-7); }
.an-cta-block .an-cta { margin-top: 0; }
@media (max-width: 768px) {
  .an-cta { flex-direction: column; align-items: stretch; }
  .an-cta .btn { width: 100%; min-width: 0; }
}

/* --- Browser frame around the hero widgets --- */
.an-frame {
  max-width: 1080px;
  margin: var(--space-7) auto 0;
  background: #FFFFFF;
  border: 1px solid #D5DAEB;
  border-radius: 16px;
  box-shadow: 0 30px 80px -30px rgba(15, 23, 42, 0.35), 0 0 0 6px rgba(34, 51, 255, 0.05);
  overflow: hidden;
  margin-inline: var(--space-5);
}
@media (min-width: 1140px) { .an-frame { margin-inline: auto; } }
.an-frame__bar {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 14px;
  background: #F0F3FF;
  border-bottom: 1px solid #D5DAEB;
}
.an-frame__bar i { width: 10px; height: 10px; border-radius: 50%; background: #D5DAEB; }
.an-frame__bar i:nth-child(1) { background: #FF5F57; }
.an-frame__bar i:nth-child(2) { background: #FEBC2E; }
.an-frame__bar i:nth-child(3) { background: #28C840; }
.an-frame__bar span {
  margin-left: var(--space-3);
  font-size: 12px;
  color: #4B5160;
  background: #FFFFFF;
  border: 1px solid #D5DAEB;
  border-radius: 999px;
  padding: 2px 14px;
}
.an-frame__body { padding: 14px; display: grid; gap: 14px; background: #F7F8FC; }

/* Widgets inside this page: full width, no doc-style margins or captions */
html .an .widget--mock {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}
html .an-frame .widget--mock { box-shadow: none !important; }
.an .widget__caption { display: none !important; }

/* --- Channel chips --- */
.an-channels {
  list-style: none;
  padding: 0;
  margin: var(--space-5) auto 0;
  max-width: 900px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}
.an-channels li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 999px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  font-size: 15px;
  font-weight: var(--font-weight-semibold);
  box-shadow: var(--shadow-sm);
}
.an-channels img, .an-channels__ic { width: 18px; height: 18px; flex: none; display: block; object-fit: contain; }
.an-channels__ic { color: #4B5160; }
.an-channels__ic--ai { color: #8B5CF6; }
.an-channels__tt { width: 18px; height: 18px; border-radius: 5px; background: #000000; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.an-channels .an-channels__tt img { width: 11px; height: 11px; filter: invert(1); }

/* --- Shared white card --- */
.an-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-6);
  box-shadow: var(--shadow-md);
}
.an-card p { font-size: 16px; line-height: var(--line-height-relaxed); color: var(--color-text-muted); margin: 0; }
@media (max-width: 768px) {
  .an-card { padding: var(--space-5); }
}

/* --- Feature grid --- */
.an-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}
@media (max-width: 960px) { .an-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .an-grid { grid-template-columns: 1fr; gap: var(--space-4); } }
.an-ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(34, 51, 255, 0.08);
  color: var(--color-brand);
  margin-bottom: var(--space-4);
}
.an-ic svg { width: 22px; height: 22px; }
.an-ic--live { background: rgba(16, 185, 129, 0.12); color: var(--color-success); }

/* --- Setup steps --- */
.an-steps {
  list-style: none;
  padding: 0;
  margin: var(--space-6) 0 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
}
@media (max-width: 900px) { .an-steps { grid-template-columns: 1fr; gap: var(--space-4); } }
.an-step__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--gradient-brand);
  color: var(--color-text-on-brand);
  font-weight: var(--font-weight-extra);
  margin-bottom: var(--space-4);
}
.an-platforms {
  list-style: none;
  padding: 0;
  margin: var(--space-6) 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
.an-platforms li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px 7px 9px;
  border-radius: 999px;
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  box-shadow: var(--shadow-sm);
  font-size: 14px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-text);
}
.an-platforms img, .an-platforms svg { height: 18px; width: auto; flex: none; }
.an-platforms .an-platform--woo img { height: 16px; }
.an-platforms .an-platform--ghl img { border-radius: 4px; }
.an-platforms .an-platform--custom svg { color: #4B5160; }

/* --- Wide widget (revenue table) --- */
.an-widget-wide { margin-top: var(--space-6); }

/* --- Paid / organic split --- */
.an-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}
@media (max-width: 900px) { .an-split { grid-template-columns: 1fr; } }
.an-split__col h3 { font-size: 22px; margin-bottom: var(--space-4); }
.an-tag {
  display: inline-block;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: var(--font-weight-bold);
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: var(--space-4);
}
.an-tag--paid { background: rgba(34, 51, 255, 0.10); color: var(--color-brand); }
.an-tag--organic { background: rgba(16, 185, 129, 0.14); color: #05603A; }
.an-list { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--space-4); }
.an-list li {
  position: relative;
  padding-left: 28px;
  font-size: 16px;
  line-height: var(--line-height-relaxed);
  color: var(--color-text-muted);
}
.an-list li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--color-success);
  font-weight: var(--font-weight-extra);
}
.an-list b { color: var(--color-text); }

/* --- Text + visual feature rows --- */
.an-feature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: var(--space-8, 64px);
  align-items: center;
}
.an-feature--rev .an-feature__text { order: 2; }
@media (max-width: 960px) {
  .an-feature { grid-template-columns: 1fr; gap: var(--space-6); }
  .an-feature--rev .an-feature__text { order: 0; }
}
.an-checks { list-style: none; padding: 0; margin: var(--space-5) 0; display: grid; gap: 10px; }
.an-checks li { position: relative; padding-left: 30px; font-size: 17px; font-weight: var(--font-weight-semibold); }
.an-checks li::before {
  content: "\2713";
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(16, 185, 129, 0.14);
  color: var(--color-success);
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: var(--font-weight-extra);
}
.an-more { margin-top: var(--space-4); }

/* --- LTV mock card (custom, no matching widget) --- */
.an-mock {
  background: #FFFFFF;
  color: #0F0F0F;
  border: 1px solid #D5DAEB;
  border-radius: 14px;
  box-shadow: 0 10px 30px -12px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}
.an-mock__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px;
  background: #F0F3FF;
  border-bottom: 1px solid #D5DAEB;
  font-size: 14px;
  font-weight: var(--font-weight-bold);
}
.an-mock__chip {
  font-size: 12px;
  font-weight: var(--font-weight-semibold);
  color: #4B5160;
  background: #FFFFFF;
  border: 1px solid #D5DAEB;
  border-radius: 999px;
  padding: 2px 10px;
}
.an-mock__rows { padding: 6px 0; }
.an-mrow {
  display: grid;
  grid-template-columns: minmax(0, 2fr) 1fr 1fr 1fr;
  gap: 10px;
  padding: 11px 18px;
  font-size: 14px;
  font-weight: var(--font-weight-semibold);
  border-bottom: 1px solid #E6E9F4;
  align-items: center;
}
.an-mrow:last-child { border-bottom: 0; }
.an-mrow span, .an-mrow b { text-align: right; }
.an-mrow span:first-child { text-align: left; display: flex; align-items: center; gap: 8px; }
.an-mrow i { width: 10px; height: 10px; border-radius: 50%; display: inline-block; flex: none; }
.an-mrow b { color: #0B8A5B; font-weight: var(--font-weight-extra); }
.an-mrow--head { font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: #4B5160; }
.an-mock__foot { padding: 12px 18px 16px; border-top: 1px solid #E6E9F4; font-size: 14px; color: #4B5160; }
@media (max-width: 520px) {
  .an-mrow { padding-inline: 12px; font-size: 13px; gap: 6px; }
}

/* --- Outcomes --- */
.an-outcomes {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}
.an-outcomes b { display: block; font-size: 18px; margin-bottom: var(--space-2); }
@media (max-width: 1024px) { .an-outcomes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .an-outcomes { grid-template-columns: 1fr; gap: var(--space-4); } }

/* --- FAQ --- */
.an-faq { margin-top: var(--space-6); border-top: 1px solid var(--color-border); }
.an-faq details { border-bottom: 1px solid var(--color-border); }
.an-faq summary {
  cursor: pointer;
  list-style: none;
  padding: var(--space-5) 40px var(--space-5) 0;
  font-size: 19px;
  font-weight: var(--font-weight-bold);
  position: relative;
}
.an-faq summary::-webkit-details-marker { display: none; }
.an-faq summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 26px;
  font-weight: var(--font-weight-regular);
  color: var(--color-brand);
}
[data-theme="dark"] .an-faq summary::after { color: var(--color-accent-amber); }
.an-faq details[open] summary::after { content: "\2212"; }
.an-faq details p {
  padding-bottom: var(--space-5);
  font-size: 17px;
  line-height: 1.7;
  color: var(--color-text-muted);
  margin: 0;
}

/* --- Plans --- */
.an-plans {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
}
@media (max-width: 900px) { .an-plans { grid-template-columns: 1fr; } }
.an-plan { text-align: center; display: flex; flex-direction: column; gap: var(--space-3); position: relative; }
.an-plan h3 { margin: 0; }
.an-plan__price {
  font-size: clamp(34px, 3.6vw, 42px);
  font-weight: var(--font-weight-extra);
  letter-spacing: -0.03em;
  line-height: 1.1;
}
.an-plan__price small { font-size: var(--font-size-sm); font-weight: var(--font-weight-regular); color: var(--color-text-subtle); letter-spacing: 0; }
.an-plan .btn { margin-top: auto; width: 100%; justify-content: center; }
.an-plan--pop { border-color: var(--color-brand); box-shadow: var(--shadow-brand); }
.an-plan__badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--gradient-brand);
  color: var(--color-text-on-brand);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-semibold);
  padding: 4px 12px;
  border-radius: 999px;
  white-space: nowrap;
}

/* --- Close --- */
.an-close {
  padding-block: var(--space-8);
  background:
    radial-gradient(60% 70% at 50% 100%, rgba(34, 51, 255, 0.12), transparent 70%),
    var(--color-bg);
}

/* ------------------------------------------------------------
   DARK MODE: cards stay white (site rule). Scoped mirror of the
   components.css re-pin literals - keep in sync with that list.
   ------------------------------------------------------------ */
[data-theme="dark"] .an-card,
[data-theme="dark"] .an-channels li,
[data-theme="dark"] .an-platforms li {
  --surface-tint-1:      #FFFFFF;
  --surface-tint-2:      #F0F3FF;
  --surface-tint-3:      #E1E6FF;
  --color-bg:            #F0F3FF;
  --color-surface:       #FFFFFF;
  --color-surface-alt:   #E1E6FF;
  --color-border:        #D5DAEB;
  --color-border-strong: #B7BFE0;
  --color-text:          #0F0F0F;
  --color-text-muted:    #2E3340;
  --color-text-subtle:   #4B5160;
  color: var(--color-text);
}
[data-theme="dark"] .an-frame__body { background: #EEF1FA; }

/* Hero stat cards: 4 across, 8 cards (keeps the hero short). Hidden:
   4 Pages per visit, 9 AOV, 11 New Buyers, 12 Returning Buyers.
   Mobile keeps 4: Users, Visits, Revenue, Conversion Rate. */
.an-frame .widget--mock.mock-tm-stats .mock-tm-stats__grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
.an-frame .mock-tm-stats__card:nth-child(4),
.an-frame .mock-tm-stats__card:nth-child(9),
.an-frame .mock-tm-stats__card:nth-child(n+11) { display: none !important; }
@media (max-width: 760px) {
  .an-frame .widget--mock.mock-tm-stats .mock-tm-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .an-frame .mock-tm-stats__card:nth-child(3),
  .an-frame .mock-tm-stats__card:nth-child(5),
  .an-frame .mock-tm-stats__card:nth-child(6),
  .an-frame .mock-tm-stats__card:nth-child(7) { display: none !important; }
}

/* --- Billing-cycle toggle + save note (mirror of simple.css / home.css; this page loads
   neither). pricing-cycle.js drives it via .js-cycle / [data-price] / [data-meta] / [data-save]. --- */
.cycle-toggle { display: flex; justify-content: center; margin: var(--space-6) 0 0; }
.cycle-toggle__inner {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px;
  border-radius: var(--radius-full);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
}
.cycle-toggle__btn {
  appearance: none;
  border: 0;
  cursor: pointer;
  background: transparent;
  color: var(--color-text-muted);
  font-family: inherit;
  font-size: 15px;
  font-weight: var(--font-weight-semibold);
  padding: 9px 20px;
  border-radius: var(--radius-full);
  transition: background .18s ease, color .18s ease;
  white-space: nowrap;
}
.cycle-toggle__btn:hover { color: var(--color-text); }
[data-theme="dark"] .cycle-toggle__inner { background: #FFFFFF; border-color: #D5DAEB; }
[data-theme="dark"] .cycle-toggle__btn { color: #2E3340; }
[data-theme="dark"] .cycle-toggle__btn:hover { color: #0F0F0F; }
.cycle-toggle__btn[aria-pressed="true"] {
  background: var(--gradient-brand);
  color: var(--color-text-on-brand);
  box-shadow: 0 6px 18px -8px rgba(34, 51, 255, .8);
}
.cycle-toggle__save {
  display: inline-block;
  margin-left: 8px;
  padding: 3px 10px;
  border-radius: var(--radius-full);
  background: #C7F2E2;
  color: #05603A;
  border: 1px solid #8FE0C4;
  font-size: 12.5px;
  font-weight: 800;
}
.plan-save-note.plan-save-note {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: var(--font-weight-semibold);
  color: var(--color-brand);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.plan-save-note--link {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: var(--color-brand);
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.an-plan .an-plan__meta { font-size: 14px; color: var(--color-text-subtle); margin: 0; }
.an-plan .plan-save-note { min-height: 20px; margin: 0; justify-content: center; }
.an-plan .an-plan__note { font-size: 14px; color: var(--color-text-subtle); margin: 0; }

/* "What counts as an event?" pill under each plan line (events-explainer.css styles the pill) */
.an-plan .an-plan__events { display: flex; justify-content: center; margin-bottom: 20px; }
/* Same-height plan blurbs on desktop so the three pills sit on one line */
@media (min-width: 901px) { .an-plan .an-plan__desc { min-height: 3lh; } }

/* Full feature comparison under the plans (table styles come from marketing.css) */
.an-compare { max-width: 1040px; margin: var(--space-7) auto 0; text-align: left; }
.an .an-compare .compare-heading { font-size: var(--font-size-2xl); margin-bottom: 0; text-align: center; }
.an-compare .compare-wrapper { margin-top: var(--space-5); }

/* Real platform logos in the revenue table icon slots */
.widget--mock.mock-tm-rev-overview .dd-plat.dd-logo { background: transparent !important; border: 0 !important; }
.widget--mock.mock-tm-rev-overview .dd-plat img { display: block; }
.widget--mock.mock-tm-rev-overview .dd-plat.dd-tt img { width: 11px; height: 11px; filter: invert(1); }

/* --- Hero: channel revenue table (mirror of the dashboard Revenue page) --- */
.an-chtab {
  margin: 0;
  background: #FFFFFF;
  color: #0F172A;
  border: 1px solid #E5E7EB;
  border-radius: 12px;
  overflow: hidden;
  font-size: 13px;
}
.an-chtab__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
  padding: 10px 16px;
  border-bottom: 1px solid #E5E7EB;
  font-size: 12px;
  color: #6B7280;
}
.an-chtab__ctl b {
  display: inline-block;
  margin-left: 4px;
  padding: 3px 9px;
  border: 1px solid #E5E7EB;
  border-radius: 7px;
  color: #0F172A;
  font-weight: 600;
}
.an-chtab__meta { margin-left: auto; }
.an-chtab__scroll { overflow-x: auto; }
.an-chtab table { width: 100%; min-width: 860px; border-collapse: collapse; }
.an-chtab th, .an-chtab td {
  padding: 9px 14px;
  text-align: right;
  white-space: nowrap;
  border-top: 1px solid #EEF0F4;
  font-variant-numeric: tabular-nums;
}
.an-chtab th { border-top: 0; font-size: 12px; font-weight: 700; color: #0F172A; }
.an-chtab td b { font-weight: 700; }
.an-chtab th.an-chtab__l, .an-chtab td.an-chtab__l { text-align: left; border-right: 1px solid #E5E7EB; }
.an-chtab td.an-chtab__l > * { display: inline-block; vertical-align: middle; margin-right: 8px; }
.an-chtab td.an-chtab__l { line-height: 16px; }
.an-chtab__chev { width: 12px; color: #9CA3AF; font-size: 15px; line-height: 16px; text-align: center; }
.an-chtab__chev--open { transform: rotate(90deg); }
.an-chtab__sub td.an-chtab__l { padding-left: 34px; }
.an-chtab td.an-chtab__l > .an-chtab__tt { display: inline-flex; width: 16px; height: 16px; border-radius: 4px; background: #000000; align-items: center; justify-content: center; }
.an-chtab__tt img { filter: invert(1); }
.an-chtab__ic { width: 16px; height: 16px; flex: none; color: #6B7280; }
.an-chtab__ic--ai { color: #8B5CF6; }
.an-chtab__pos { color: #16A34A; }
.an-chtab__total td { background: #F3F4F6; font-weight: 800; border-top: 2px solid #D1D5DB; }

/* Journeys board: keep Filter, both sliders and the date picker on one line */
.an .widget--mock.mock-tm-journeys-board .mock-tm-jb__toolbar { flex-wrap: nowrap !important; gap: 10px !important; }
.an .widget--mock.mock-tm-journeys-board .mock-tm-jb__slider { gap: 6px !important; font-size: 12px !important; white-space: nowrap !important; }
.an .widget--mock.mock-tm-journeys-board .mock-tm-jb__track { width: 44px !important; }
.an .widget--mock.mock-tm-journeys-board .mock-tm-jb__date { padding: 5px 9px !important; font-size: 12px !important; white-space: nowrap !important; flex: none !important; }

/* Comparison table on this page: solid white card with solid column tints, so it
   does not melt into the tinted section background (marketing.css uses see-through tints) */
.an-compare .compare-wrapper {
  background: #FFFFFF;
  border: 1px solid #C9D0EA;
  border-radius: 16px;
  box-shadow: var(--shadow-md);
}
.an-compare .compare-table { background: #FFFFFF; border: 0; border-radius: 0; }
.an-compare .compare-table th,
.an-compare .compare-table td { border-bottom-color: #E3E7F3; }
.an-compare .compare-table th[scope="row"] { background: #FFFFFF; border-right-color: #E3E7F3; }
.an-compare .compare-table thead th.compare-table__feature-col { background: #F4F6FC; }
.an-compare .compare-table td:nth-child(2), .an-compare .compare-table thead th:nth-child(2) { background: #F7F8FA; }
.an-compare .compare-table td:nth-child(3), .an-compare .compare-table thead th:nth-child(3) { background: #F0F2FF; }
.an-compare .compare-table td:nth-child(4), .an-compare .compare-table thead th:nth-child(4) { background: #F7F4FF; }
.an-compare .compare-table thead th:nth-child(3) { background: #E6E9FF; }
.an-compare .compare-table td:nth-child(n+2) { border-left: 1px solid #E3E7F3; }
.an-compare .compare-table__category { background: #EEF1FA; border-top: 1px solid #E3E7F3; color: #2E3340; }
.an-compare .compare-table tr.compare-table__gap td { background: #FFFFFF; height: 12px; }
.an-compare .compare-table tbody:last-child tr:last-child th,
.an-compare .compare-table tbody:last-child tr:last-child td { border-bottom: 0; }


/* Plan card text at the simple page's size (Fahir, 2026-10-04): 20px, like
   `.simple .marketing-section p` renders inside the simple page's plan cards. */
.an-plan p.an-plan__meta,
.an-plan p.plan-save-note,
.an-plan p.an-plan__desc,
.an-plan p.an-plan__note { font-size: 20px; line-height: 1.7; }
.an-plan .btn { font-size: 18px; padding-block: var(--space-4); }


/* ============================================================
   /revenue page components (rv-). Mock cards use literal light
   colors so they stay white in dark mode without a re-pin.
   ============================================================ */

/* --- Hero: KPI strip + "revenue by source" leaderboard --- */
.rv-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.rv-kpi {
  background: #FFFFFF;
  border: 1px solid #E5E7EB;
  border-radius: 12px;
  padding: 14px 16px;
  color: #0F172A;
}
.rv-kpi__label { font-size: 12px; font-weight: 600; color: #6B7280; margin: 0 0 6px; }
.rv-kpi__row { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.rv-kpi__num { font-size: 24px; font-weight: 800; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.rv-kpi__delta { font-size: 12px; font-weight: 700; color: #16A34A; }
@media (max-width: 760px) {
  .rv-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .rv-kpi__num { font-size: 20px; }
}

.rv-board {
  margin: 0;
  background: #FFFFFF;
  color: #0F172A;
  border: 1px solid #E5E7EB;
  border-radius: 12px;
  overflow: hidden;
  font-size: 14px;
}
.rv-board__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px;
  padding: 12px 16px;
  border-bottom: 1px solid #E5E7EB;
}
.rv-board__title { font-weight: 800; font-size: 14px; margin-right: auto; }
.rv-chip {
  font-size: 12px;
  font-weight: 600;
  color: #374151;
  border: 1px solid #E5E7EB;
  border-radius: 7px;
  padding: 3px 9px;
  background: #FFFFFF;
}
.rv-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 64px 200px;
  gap: 14px;
  align-items: center;
  padding: 10px 16px;
  border-top: 1px solid #EEF0F4;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.rv-row:first-of-type { border-top: 0; }
.rv-row--head { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #6B7280; }
.rv-row__src { display: flex; align-items: center; gap: 10px; min-width: 0; text-align: left; }
.rv-row__src img, .rv-row__src svg { width: 18px; height: 18px; flex: none; display: block; object-fit: contain; }
.rv-row__src svg { color: #475569; }
.rv-row__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
.rv-row__rev { display: flex; align-items: center; gap: 10px; justify-content: flex-end; font-weight: 800; }
.rv-row__bar { flex: 1; height: 8px; border-radius: 999px; background: #EEF0F4; overflow: hidden; }
.rv-row__bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2233FF, #6A7BFF); }
.rv-row__rev b { min-width: 64px; }
.rv-tt { width: 18px; height: 18px; border-radius: 5px; background: #000000; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.rv-row__src .rv-tt img, .rv-mini .rv-tt img { width: 11px; height: 11px; filter: invert(1); }

/* Type badges (AD, EMAIL, VIDEO, STORY, POST, SEARCH) */
.rv-badge {
  flex: none;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  padding: 2px 7px;
  border-radius: 5px;
  min-width: 52px;
  text-align: center;
}
.rv-badge--ad { background: #E6E9FF; color: #1A27CC; }
.rv-badge--email { background: #E8F5EE; color: #05603A; }
.rv-badge--video { background: #FDECEC; color: #B42318; }
.rv-badge--social { background: #FCEBF6; color: #A1176B; }
.rv-badge--search { background: #FFF4E0; color: #93370D; }
@media (max-width: 760px) {
  .rv-row { grid-template-columns: minmax(0, 1fr) 96px; padding-inline: 12px; gap: 10px; }
  .rv-row > :nth-child(2) { display: none; }
  .rv-row__bar { display: none; }
  .rv-badge { display: none; }
}

/* --- Every kind of revenue source --- */
.rv-kinds {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
  text-align: left;
}
@media (max-width: 760px) { .rv-kinds { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); } }
.rv-kind { display: flex; flex-direction: column; }
.rv-kind .an-tag { align-self: flex-start; }
.rv-kind > p { margin-bottom: var(--space-4); }
.rv-mini {
  list-style: none;
  margin: auto 0 0;
  padding: 0;
  border: 1px solid #E6E9F4;
  border-radius: 10px;
  background: #FFFFFF;
  color: #0F172A;
  overflow: hidden;
}
.rv-mini li {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  font-size: 14px;
  border-top: 1px solid #EEF0F4;
}
.rv-mini li:first-child { border-top: 0; }
.rv-mini img { width: 16px; height: 16px; flex: none; display: block; object-fit: contain; }
.rv-mini svg { width: 16px; height: 16px; flex: none; color: #475569; }
.rv-mini .rv-tt { width: 16px; height: 16px; border-radius: 4px; }
.rv-mini span:not(.rv-tt) { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rv-mini b { color: #0B8A5B; font-weight: 800; font-variant-numeric: tabular-nums; }
.rv-mini b.rv-zero { color: #6B7280; }

/* --- Visits vs money comparison --- */
.rv-vs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
  text-align: left;
}
@media (max-width: 900px) { .rv-vs { grid-template-columns: 1fr; } }
.rv-vs__col {
  background: #FFFFFF;
  color: #0F172A;
  border: 1px solid #D5DAEB;
  border-radius: 14px;
  box-shadow: 0 10px 30px -12px rgba(15, 23, 42, 0.18);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.rv-vs__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 18px;
  font-size: 14px;
  font-weight: 800;
  background: #F4F5F8;
  border-bottom: 1px solid #E5E7EB;
}
.rv-vs__col--new .rv-vs__head { background: #F0F3FF; border-bottom-color: #D5DAEB; }
.rv-vs__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rv-vs__stat { padding: 16px 18px; border-bottom: 1px solid #EEF0F4; }
.rv-vs__stat:nth-child(odd) { border-right: 1px solid #EEF0F4; }
.rv-vs__stat small { display: block; font-size: 12px; font-weight: 600; color: #374151; margin-bottom: 4px; }
.rv-vs__stat b { font-size: 24px; font-weight: 800; color: #0F172A; font-variant-numeric: tabular-nums; }
.rv-vs__lines { list-style: none; margin: 0; padding: 0; }
.rv-vs__lines li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 18px;
  font-size: 15px;
  font-weight: 600;
  border-bottom: 1px solid #EEF0F4;
}
.rv-vs__lines img, .rv-vs__lines svg { width: 18px; height: 18px; flex: none; display: block; object-fit: contain; }
.rv-vs__lines svg { color: #475569; }
.rv-vs__lines span { flex: 1; min-width: 0; }
.rv-vs__lines b { color: #0B8A5B; font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
.rv-vs__lines .rv-vs__neg { color: #D92D20; }
.rv-vs__foot { margin-top: auto; padding: 14px 18px 16px; font-size: 15px; color: #4B5160; }
.rv-vs__col--old .rv-vs__foot { font-weight: 700; color: #0F172A; }

/* --- Opportunity cards --- */
.rv-opps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-top: var(--space-6);
  text-align: left;
}
@media (max-width: 960px) { .rv-opps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .rv-opps { grid-template-columns: 1fr; gap: var(--space-4); } }
.rv-opp { display: flex; flex-direction: column; }
.rv-opp__tag {
  align-self: flex-start;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 999px;
  margin-bottom: var(--space-3);
}
.rv-opp__tag--scale { background: rgba(16, 185, 129, 0.14); color: #05603A; }
.rv-opp__tag--cut { background: rgba(217, 45, 32, 0.10); color: #B42318; }
.rv-opp__tag--repeat { background: rgba(34, 51, 255, 0.10); color: var(--color-brand); }
.rv-opp__tag--fix { background: rgba(247, 144, 9, 0.14); color: #93370D; }
.rv-opp > p { margin-bottom: var(--space-4); }
.rv-opp__find {
  margin-top: auto;
  background: #F7F8FC;
  border: 1px solid #E6E9F4;
  border-radius: 10px;
  padding: 12px 14px;
  color: #0F172A;
  font-size: 14px;
  line-height: 1.5;
}
.rv-opp__find small { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #6B7280; margin-bottom: 4px; }
.rv-opp__find b { font-variant-numeric: tabular-nums; }
.rv-pos { color: #0B8A5B; }
.rv-neg { color: #D92D20; }

/* --- One buyer's path --- */
.rv-path {
  margin-top: var(--space-6);
  background: #FFFFFF;
  color: #0F172A;
  border: 1px solid #D5DAEB;
  border-radius: 16px;
  box-shadow: 0 10px 30px -12px rgba(15, 23, 42, 0.18);
  padding: var(--space-6);
  text-align: left;
}
.rv-path__steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
  position: relative;
}
.rv-path__steps::before {
  content: "";
  position: absolute;
  left: 12%;
  right: 12%;
  top: 22px;
  border-top: 2px dashed #C9D0EA;
}
.rv-path__step { position: relative; text-align: center; }
.rv-path__ic {
  width: 44px;
  height: 44px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #FFFFFF;
  border: 1px solid #D5DAEB;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.rv-path__ic img, .rv-path__ic svg { width: 20px; height: 20px; display: block; object-fit: contain; }
.rv-path__ic svg { color: #475569; }
.rv-path__step--buy .rv-path__ic { background: #0B8A5B; border-color: #0B8A5B; }
.rv-path__step--buy .rv-path__ic svg { color: #FFFFFF; }
.rv-path__day { display: block; font-size: 12px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #6B7280; }
.rv-path__what { display: block; font-size: 16px; font-weight: 700; margin: 4px 0 2px; }
.rv-path__detail { display: block; font-size: 14px; color: #4B5160; }
.rv-path__step--buy .rv-path__what { color: #0B8A5B; }
.rv-path__credit {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin-top: var(--space-6);
  padding-top: var(--space-5);
  border-top: 1px solid #EEF0F4;
}
.rv-path__credit div { background: #F7F8FC; border: 1px solid #E6E9F4; border-radius: 10px; padding: 12px 14px; font-size: 15px; }
.rv-path__credit small { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #6B7280; margin-bottom: 4px; }
@media (max-width: 760px) {
  .rv-path { padding: var(--space-5); }
  .rv-path__steps { grid-template-columns: 1fr; gap: var(--space-5); }
  .rv-path__steps::before { left: 22px; right: auto; top: 22px; bottom: 22px; border-top: 0; border-left: 2px dashed #C9D0EA; }
  .rv-path__step { text-align: left; padding-left: 60px; min-height: 44px; }
  .rv-path__ic { position: absolute; left: 0; top: 0; margin: 0; }
  .rv-path__credit { grid-template-columns: 1fr; }
}

/* --- Hero table total row --- */
.rv-row--total { background: #F3F4F6; border-top: 2px solid #D1D5DB; font-weight: 800; }

/* --- Ad tracking: "sent to your ad platforms" log --- */
.rv-sent {
  background: #FFFFFF;
  color: #0F172A;
  border: 1px solid #D5DAEB;
  border-radius: 14px;
  box-shadow: 0 10px 30px -12px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}
.rv-sent__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px;
  background: #F0F3FF;
  border-bottom: 1px solid #D5DAEB;
  font-size: 14px;
  font-weight: 800;
}
.rv-sent__live { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: #05603A; }
.rv-sent__live::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #10B981; }
.rv-sent__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 76px;
  gap: 14px;
  align-items: center;
  padding: 12px 18px;
  border-bottom: 1px solid #EEF0F4;
}
.rv-sent__ev { min-width: 0; }
.rv-sent__ev b { display: block; font-size: 14px; font-weight: 800; }
.rv-sent__ev small { display: block; font-size: 12px; color: #6B7280; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rv-sent__plats { display: flex; gap: 8px; }
.rv-sent__to {
  position: relative;
  width: 30px;
  height: 30px;
  border: 1px solid #E5E7EB;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rv-sent__to img { width: 16px; height: 16px; display: block; }
.rv-sent__to .rv-tt { width: 16px; height: 16px; border-radius: 4px; }
.rv-sent__to .rv-tt img { width: 10px; height: 10px; filter: invert(1); }
.rv-sent__to i {
  position: absolute;
  right: -5px;
  bottom: -5px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #10B981;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rv-sent__to i svg { width: 9px; height: 9px; }
.rv-sent__time { font-size: 12px; color: #6B7280; text-align: right; }
.rv-sent__foot { padding: 12px 18px 16px; font-size: 14px; font-weight: 600; color: #05603A; }
@media (max-width: 520px) {
  .rv-sent__row { grid-template-columns: minmax(0, 1fr) auto; padding-inline: 12px; }
  .rv-sent__time { display: none; }
}
