@font-face {
  font-family: 'Roobert Fallback';
  src: local('Arial'), local('Helvetica Neue'), local('Helvetica'), local('sans-serif');
  size-adjust: 103%;
  ascent-override: 95%;
  descent-override: 25%;
  line-gap-override: 0%;
}

:host {
  /* Brand Colors - from Figma */
  --color-bg-primary: #0a0a0a;
  --color-bg-secondary: #111111;
  --color-bg-card: #171717;
  --color-bg-card-hover: #1c1c1c;
  --color-bg-input: #171717;

  /* Text Colors - Figma neutral-50 / neutral-200 */
  --color-text-primary: #fafafa;
  --color-text-secondary: #e5e5e5;
  --color-text-muted: #a3a3a3;
  --color-text-dim: #656565;

  /* Gradient - Figma: sky-600 -> emerald-400 */
  --gradient-primary: linear-gradient(100deg, rgb(2, 132, 199) 15%, rgb(49, 196, 141) 95%);
  --gradient-hero-bg: radial-gradient(ellipse at 50% 80%, rgba(2, 132, 199, 0.12) 0%, rgba(49, 196, 141, 0.06) 40%, transparent 70%);
  --gradient-cta-bg: radial-gradient(ellipse at center, rgba(49, 196, 141, 0.15) 0%, rgba(2, 132, 199, 0.08) 50%, transparent 100%);
  --gradient-section-divider: radial-gradient(ellipse at center, rgba(49, 196, 141, 0.06) 0%, transparent 70%);

  /* Accent Colors */
  --color-accent-green: #31c48d;
  --color-accent-blue: #0284c7;
  --color-accent-muted: rgba(49, 196, 141, 0.15);

  /* Borders */
  --color-border: #262626;
  --color-border-card: #262626;
  --color-border-input: #656565;

  /* Badge */
  --color-badge-bg: rgba(49, 196, 141, 0.1);
  --color-badge-border: rgba(49, 196, 141, 0.3);
  --color-badge-text: #31c48d;

  /* Spacing */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --space-2xl: 40px;
  --space-3xl: 64px;
  --space-4xl: 96px;
  --space-5xl: 128px;

  /* Border Radius */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* Typography */
  --font-display: 'Roobert', 'Roobert Fallback', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-base: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-2xl: 24px;
  --font-size-3xl: 32px;
  --font-size-4xl: 48px;
  --font-size-5xl: 64px;
  --font-size-6xl: 80px;

  /* Shadows */
  --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-card-hover: 0 8px 24px rgba(0, 0, 0, 0.4);

  /* Layout */
  --max-width: 1172px;
  --max-width-narrow: 968px;
  --content-padding: 24px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body,
:host {
  font-family: var(--font-body);
  background-color: var(--color-bg-primary);
  color: var(--color-text-primary);
  line-height: 1.5;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ==========================================================================
   State of AI Video Clipping 2026 — Editorial Report Stylesheet
   Style direction: data-journalism / long-form research report.
   Light paper background, serif headlines, single readable column,
   restrained accent color, tables that look like Economist/FT/NYT tables.
   ========================================================================== */

.SacofWv2odEMo3pK0kXd {
  --paper: #fbfaf6;
  --paper-alt: #f4f2ea;
  --ink: #111111;
  --ink-soft: #3d3d3d;
  --ink-muted: #6b6b6b;
  --ink-faint: #9a9a9a;
  --rule: #d9d6cc;
  --rule-soft: #e8e5db;
  --accent: #b03a2e;
  --accent-soft: #f9e9e6;
  --reap: #0d6e67;
  --reap-soft: #eafaf7;
  --warn-soft: #fef3c7;
  --good: #0f766e;
  --bad: #b03a2e;
  --neutral: #6b6b6b;

  background: var(--paper);
  color: var(--ink);
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  min-height: 100vh;
  width: 100%;
  -webkit-font-smoothing: antialiased;
  position: relative;
}

.nPmFaJixUj3wfLdM6mJJ {
  max-width: 920px;
  margin: 0 auto;
  padding: 0 24px;
}

.GFGsnJIe31IajAk74nIu {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
  scroll-margin-top: 96px;
}

.wHSv8iUbuh2RcOlcMs9l {
  padding: 64px 0;
  border-bottom: 1px solid var(--rule-soft);
  /* Ensure hash-nav lands below the sticky report header (~60–72px tall) */
  scroll-margin-top: 96px;
}

.FeMyfqDOZGNyxphRkvqR {
  border-bottom: none;
}

.dGvNJLYL3vvGblH00AZt {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: "Inter", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 18px;
}

.dGvNJLYL3vvGblH00AZt::before {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: var(--accent);
  flex-shrink: 0;
}

.YIutHWXXKAD94ldARPfq {
  font-family: "Source Serif 4", "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: clamp(36px, 5.6vw, 62px);
  line-height: 1.08;
  letter-spacing: -0.022em;
  color: var(--ink);
  margin: 0 0 20px 0;
}

.ubC8_qb7dEliIqoMcx3H {
  font-family: "Source Serif 4", "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: clamp(26px, 3.2vw, 36px);
  line-height: 1.18;
  letter-spacing: -0.012em;
  color: var(--ink);
  margin: 0 0 14px 0;
}

.h5dVPCi7c9YB6MpYjpgN {
  font-family: "Source Serif 4", "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: clamp(20px, 2.2vw, 24px);
  line-height: 1.25;
  color: var(--ink);
  margin: 28px 0 10px 0;
}

.yUlb1LRe0gBMrjSxJy0h {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin: 0 0 8px 0;
}

.k4va1jgwsggQ7tQJ5hPz {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 20px;
  line-height: 1.55;
  color: var(--ink-soft);
  margin: 0 0 28px 0;
  font-weight: 400;
}

.b440Jyh_MjXGVppoz1ew {
  font-size: 16px;
  line-height: 1.75;
  color: var(--ink-soft);
  margin: 0 0 20px 0;
  max-width: 900px;
}

.FbNeIL0wyjtqSjNLrL2w {
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-soft);
  margin: 0 0 14px 0;
}

.dcNd4zkvpesJ_7IHoi9c {
  font-size: 13px;
  line-height: 1.55;
  color: var(--ink-muted);
}

.DPRh81oH6MEwtu2r1TLQ {
  font-size: 12px;
  line-height: 1.5;
  color: var(--ink-muted);
  font-style: italic;
  margin: 8px 0 0 0;
}

/* ===== Masthead ===== */

.F6F3xT6A5WctJ9nihxtu {
  padding: 80px 0 64px;
  border-bottom: 2px solid var(--ink);
  margin-bottom: 0;
}

.pQ0lZiCl0UrUPlQzAA63 {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--rule);
  margin-bottom: 36px;
  font-family: "Inter", sans-serif;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-muted);
  font-weight: 600;
}

.pQ0lZiCl0UrUPlQzAA63 strong {
  color: var(--ink);
  font-weight: 700;
}

.G8vKEGqNAIs5T2MoRvYP {
  display: flex;
  align-items: baseline;
  gap: 18px;
  font-family: "Inter", sans-serif;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-muted);
  font-weight: 600;
  margin-bottom: 20px;
}

.Dr_Mh61AHQ90XeSuDwS0 {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--accent);
  display: inline-block;
  flex-shrink: 0;
}

.H1aKqQLTckDiKZqz2qIQ {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 0;
  margin-top: 48px;
  padding-top: 0;
  border-top: none;
  border: 1px solid var(--rule);
  border-radius: 8px;
  overflow: hidden;
}

.bSflqmYP39iWVR4MqKIH {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 24px 28px;
  border-right: 1px solid var(--rule);
  background: var(--paper-alt);
}

.bSflqmYP39iWVR4MqKIH:last-child {
  border-right: none;
}

.unKZuHCk6UE4wJ0E9iEw {
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-faint);
  font-weight: 700;
}

.R9PdWPXZeAuIO4HXHvWK {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 40px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1;
  letter-spacing: -0.02em;
}

.PK8xtrfpv4KEom1mPSbm {
  font-size: 12px;
  color: var(--ink-muted);
  line-height: 1.4;
  margin-top: 2px;
}

.IP8aBsvzNE8uctkla08D .R9PdWPXZeAuIO4HXHvWK {
  color: var(--reap);
}

/* ===== TOC sidebar ===== */

.Y9fA0O5101N4HL3Gbu19 {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}

@media (min-width: 1024px) {
  .Y9fA0O5101N4HL3Gbu19 {
    grid-template-columns: 200px minmax(0, 1fr);
    gap: 64px;
  }
}

.G7buvojtkGtCWCv6Kpxx {
  display: none;
}

@media (min-width: 1024px) {
  .G7buvojtkGtCWCv6Kpxx {
    display: block;
    position: sticky;
    top: 88px;
    align-self: start;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    padding: 20px 0;
    border-right: 1px solid var(--rule-soft);
    padding-right: 20px;
  }
}

.rIDzPRbshfeOMfilEKE2 {
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-faint);
  font-weight: 700;
  margin: 0 0 16px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--rule-soft);
}

.kR6aYWgHxW3jgO0Ghsx3 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.z6MGgbR7zX52pL_3Or4e {
  counter-increment: toc;
}

.mphZZujtWendAjg4Dlwz {
  display: flex;
  gap: 10px;
  padding: 7px 0 7px 12px;
  font-size: 13px;
  line-height: 1.4;
  color: var(--ink-muted);
  text-decoration: none;
  border-left: 2px solid transparent;
  margin-left: -14px;
  transition: color 0.12s, border-color 0.12s, background 0.12s;
  border-radius: 0 4px 4px 0;
}

.mphZZujtWendAjg4Dlwz:hover {
  color: var(--ink);
  border-left-color: var(--rule);
  background: var(--paper-alt);
}

.T5AZ2lyx2s__XDOA9Mfc {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 12px;
  color: var(--ink-faint);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
}

/* ===== Pull quote / callout ===== */

.GjdxiQ75odr4_xt0XoLD {
  margin: 36px 0;
  padding: 24px 28px;
  border-left: 4px solid var(--accent);
  background: var(--paper-alt);
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ink);
  font-style: italic;
  max-width: 900px;
  border-radius: 0 6px 6px 0;
}

.GjdxiQ75odr4_xt0XoLD strong {
  font-style: normal;
  font-weight: 700;
  color: var(--ink);
}

.iB1t8YqE0aGapwFojK8H {
  margin: 28px 0;
  padding: 20px 24px;
  background: var(--paper-alt);
  border: 1px solid var(--rule);
  border-radius: 8px;
}

.BrZ1SLtgsUgNKKa0PCfY {
  background: var(--reap-soft);
  border-color: #a7f3d0;
  border-left: 3px solid var(--reap);
}

.cicDvroRa4tJS9jKGBnJ {
  background: var(--accent-soft);
  border-color: #f5c9c3;
  border-left: 3px solid var(--accent);
}

.gd2Jrsvjtad8eTC1q6de {
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin: 0 0 8px 0;
}

.sW_KofUIf7Hli1TYmZzk {
  font-size: 14px;
  line-height: 1.65;
  color: var(--ink-soft);
  margin: 0;
}

/* ===== Data tables (journalism style) ===== */

.XkVf5p82pBeLVUqQvCS8 {
  margin: 20px 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}

.ohauEuGk6MHzz0bO4M8X {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  font-variant-numeric: tabular-nums;
  min-width: 640px;
}

.ohauEuGk6MHzz0bO4M8X caption {
  caption-side: top;
  text-align: left;
  padding: 12px 4px;
  font-family: "Inter", sans-serif;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-faint);
  font-weight: 700;
  border-bottom: 2px solid var(--ink);
  margin-bottom: 2px;
}

.ohauEuGk6MHzz0bO4M8X th {
  text-align: left;
  padding: 11px 14px 11px 4px;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--ink-muted);
  border-bottom: 1px solid var(--ink);
  white-space: nowrap;
  background: var(--paper);
}

.ohauEuGk6MHzz0bO4M8X th:not(:first-child),
.ohauEuGk6MHzz0bO4M8X td:not(:first-child) {
  padding-left: 18px;
}

.ohauEuGk6MHzz0bO4M8X td {
  padding: 11px 14px 11px 4px;
  border-bottom: 1px solid var(--rule-soft);
  color: var(--ink-soft);
  vertical-align: top;
  font-size: 14px;
}

.ohauEuGk6MHzz0bO4M8X tr:last-child td {
  border-bottom: none;
}

/* Subtle zebra on even rows for dense tables */
.P6DtOoLy5QL9O_H8TGZV tbody tr:nth-child(even) {
  background: var(--paper-alt);
}

.ohauEuGk6MHzz0bO4M8X tbody tr:hover {
  background: var(--paper-alt);
}

.olRtiUOQSGSFs8UHKe3U {
  color: var(--ink);
  font-weight: 600;
}

.H4j23RVdJJTFOX_9Puau {
  color: var(--reap);
  font-weight: 600;
}

.HYTL8xLYNAk0QEHuB43o {
  color: var(--accent);
  font-weight: 500;
}

.aY1xjIdXpUt5Fm6JQDXp {
  color: var(--ink-muted);
  font-size: 13px;
}

.YOGSXmEwZ4O56NVF6NFM {
  background: var(--reap-soft);
}

.YOGSXmEwZ4O56NVF6NFM:hover {
  background: #d8f5e8 !important;
}

.YOGSXmEwZ4O56NVF6NFM td:first-child {
  border-left: 3px solid var(--reap);
  padding-left: 13px;
}

.Ys1CTdh5uWzDiDRnnf_J thead th {
  position: sticky;
  top: 0;
  z-index: 2;
}

/* ===== Chips / pills (minimal, for boolean cells) ===== */

.Zo8oKn6YGkmGwER5tYYa {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 3px;
  letter-spacing: 0.02em;
}

.ZT6GBjTZSK__NhHy7wvA {
  background: var(--reap-soft);
  color: var(--reap);
  border: 1px solid #bbf7d0;
}

.uWRiVv3tKY0Lx0_dEExw {
  background: #fafafa;
  color: var(--ink-muted);
  border: 1px solid var(--rule);
}

.TfsrSjGnm0Jf1ebff783 {
  background: var(--warn-soft);
  color: #92400e;
  border: 1px solid #fde68a;
}

/* ===== Segmented control (tabs) ===== */

.V_BUCjsgmstUCESn7_2r {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 0 0 16px 0;
  background: var(--paper-alt);
  border: 1px solid var(--rule);
  border-radius: 8px;
  padding: 4px;
}

.sv2zZOLH6FeJjCZPhttJ {
  appearance: none;
  background: transparent;
  border: none;
  padding: 8px 16px;
  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--ink-muted);
  cursor: pointer;
  border-radius: 5px;
  transition: all 0.15s;
  letter-spacing: 0.01em;
}

.sv2zZOLH6FeJjCZPhttJ:hover {
  color: var(--ink);
}

.IN3WZX5NUZK0MKQQfLzH {
  background: #fff;
  color: var(--ink);
  font-weight: 600;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

/* ===== Horizontal bar chart (TTFC, etc.) ===== */

.BlldwmE2y1JAUXHayXlS {
  margin: 24px 0 8px;
  padding: 20px 0;
  border-top: 1px solid var(--rule-soft);
  border-bottom: 1px solid var(--rule-soft);
}

.eatpbBLQLloUgjak2RNy {
  display: grid;
  grid-template-columns: 140px 1fr 70px;
  align-items: center;
  gap: 16px;
  padding: 8px 0;
}

.eatpbBLQLloUgjak2RNy + .eatpbBLQLloUgjak2RNy {
  border-top: 1px dashed var(--rule-soft);
}

.lil0anocRslhZuSgsJ02 {
  font-size: 13px;
  color: var(--ink);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.DfYCYZpbZfC4TnOfP7Pw {
  font-weight: 700;
  color: var(--reap);
}

.cJvK_MYSDkeZQR1KN_Tm {
  height: 18px;
  background: transparent;
  position: relative;
}

.QnKwAnrRLnGJCdTSucnZ {
  position: absolute;
  inset: 2px auto 2px 0;
  background: var(--ink-faint);
  border-radius: 2px;
}

._j7giJBWGjP7iJorTmfj {
  background: var(--reap);
}

.cSALCUGK9RGfEUtIAFOR {
  background: var(--accent);
}

.OtreXSW4TcI0PoxoObh2 {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.YSLyiXHo3Hv46CVuEnmi {
  color: var(--reap);
}

.lcn9Iz_IxmNeK0k1mCvK {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--ink-faint);
  padding: 8px 86px 0 156px;
  letter-spacing: 0.04em;
}

@media (max-width: 640px) {
  .eatpbBLQLloUgjak2RNy {
    grid-template-columns: 100px 1fr 60px;
    gap: 10px;
  }
  .lcn9Iz_IxmNeK0k1mCvK {
    padding: 8px 70px 0 110px;
  }
}

/* ===== Grid helpers ===== */

.HFWBgnO9NIQlLPexZlk2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin: 20px 0;
}

.CiLwjQ_V7MLybuvmdmE0 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 16px;
  margin: 20px 0;
}

.JKzcj5j9f9E1RDXsCVl6 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin: 20px 0;
}

/* ===== Per-tool profile sections ===== */

.PbaIiff_bAC6GsVym363 {
  padding: 48px 0;
  border-bottom: 1px solid var(--rule-soft);
  scroll-margin-top: 96px;
}

.isxBHmDxsHq0bc4P_9p0 {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: baseline;
  gap: 20px;
  margin-bottom: 20px;
}

.GDhwC63VrSvUGeWUcLAV {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 56px;
  font-weight: 700;
  color: var(--ink-faint);
  line-height: 0.85;
  letter-spacing: -0.02em;
}

.QzgRNOIY0Fd0q8On2Hsw {
  color: var(--reap);
}

.eu_Ywj6jkUpWhEL9uffQ {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.pFArJcTcWZ9dSxLTEkq2 {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 700;
  color: var(--ink);
  margin: 0;
  line-height: 1.1;
  letter-spacing: -0.01em;
}

.PfFXROgqCirjFP5iKmCy {
  color: var(--reap);
}

.EvWUee229YQZcjomGLeJ {
  display: inline-block;
  vertical-align: middle;
  margin-left: 8px;
  font-family: "Inter", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--reap);
  background: var(--reap-soft);
  padding: 3px 7px;
  border-radius: 3px;
  border: 1px solid #bbf7d0;
}

.c3bvaBaruVz1XTQBwenw {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 16px;
  font-style: italic;
  color: var(--ink-muted);
  margin: 4px 0 0 0;
}

.co7xgpazYUBcqTr0lFSN {
  text-align: right;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}

.boFwqzsCYcDVKvx_fQc_ {
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-muted);
  font-weight: 600;
}

.PGwdalVrJxBc9ukWjLvl {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1;
}

.f6zg6Ql8EMw12v_MkSYU {
  color: var(--reap);
}

.VNuRM3kZ2MOUMuH6jmvE {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 0;
  margin: 20px 0;
  padding: 16px 0;
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}

.OC5PWpMn08Ux1Ck1B681 {
  padding: 0 16px;
  border-right: 1px solid var(--rule-soft);
}

.OC5PWpMn08Ux1Ck1B681:last-child {
  border-right: none;
}

.ir7gbKoF_ARRNE1yPJSU {
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-muted);
  font-weight: 600;
  margin-bottom: 4px;
}

.rBpcXtpHdVeZg3Flzhxw {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.2;
}

.WzlgvsREstVSnPUXts2z {
  color: var(--reap);
}

.v28pphuRv2usYfWsturi {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  margin: 20px 0;
}

.b72NB68PP5IHUZ8aRwq6 h4 {
  color: var(--reap);
}

.iTE2FFyx9n3oYYYo7KlA h4 {
  color: var(--accent);
}

.HUW8nPli7LdeefAWS6Rk,
.yoEhsxDRTui5cpU6aQ66 {
  list-style: none;
  padding: 0;
  margin: 6px 0 0 0;
}

.HUW8nPli7LdeefAWS6Rk li,
.yoEhsxDRTui5cpU6aQ66 li {
  position: relative;
  padding: 4px 0 4px 20px;
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink-soft);
}

.HUW8nPli7LdeefAWS6Rk li::before {
  content: "+";
  position: absolute;
  left: 0;
  color: var(--reap);
  font-weight: 700;
}

.yoEhsxDRTui5cpU6aQ66 li::before {
  content: "−";
  position: absolute;
  left: 0;
  color: var(--accent);
  font-weight: 700;
}

.Rmv0R0Sl_MWCRt20PMSt {
  margin-top: 18px;
  padding: 16px 20px;
  background: var(--paper-alt);
  border-left: 3px solid var(--ink);
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 16px;
  line-height: 1.55;
  color: var(--ink);
}

.Rmv0R0Sl_MWCRt20PMSt strong {
  font-family: "Inter", sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink-muted);
  margin-right: 8px;
  display: inline;
}

.nBBDSvs9ZGZuOybFy6uo {
  display: inline-block;
  margin-top: 14px;
  font-size: 13px;
  color: var(--ink-muted);
  text-decoration: underline;
  text-decoration-color: var(--rule);
  text-underline-offset: 3px;
}

.nBBDSvs9ZGZuOybFy6uo:hover {
  color: var(--ink);
  text-decoration-color: var(--ink);
}

/* ===== Ranking cards (sidebar-style) ===== */

.zYP3SRsWr_wwQt5cDo5a {
  list-style: none;
  padding: 0;
  margin: 24px 0;
  border-top: 2px solid var(--ink);
}

.LpYXlCwhNjBYNhXuuYCB {
  display: grid;
  grid-template-columns: 52px 1fr auto;
  align-items: center;
  gap: 22px;
  padding: 16px 8px 16px 4px;
  border-bottom: 1px solid var(--rule-soft);
  text-decoration: none;
  color: inherit;
  transition: background 0.1s;
}

.LpYXlCwhNjBYNhXuuYCB:hover {
  background: var(--paper-alt);
  padding-left: 8px;
}

.ybZifSncDS7_RX1V5J_4 {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--ink-faint);
  line-height: 1;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.wOpNJoPuZbcVXeoSnCch .ybZifSncDS7_RX1V5J_4 {
  color: var(--reap);
}

.s6NcteU3J_KA5hABKYIU {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--ink);
  margin: 0 0 3px 0;
  line-height: 1.2;
}

.wOpNJoPuZbcVXeoSnCch .s6NcteU3J_KA5hABKYIU {
  color: var(--reap);
}

.h8M4HcnNjppMiJVhI_Kn {
  font-size: 13px;
  color: var(--ink-muted);
  margin: 0;
  line-height: 1.5;
}

.XrLRrHMOOaoa0Yfkwk65 {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 15px;
  color: var(--ink);
  white-space: nowrap;
  font-weight: 500;
}

.wOpNJoPuZbcVXeoSnCch .XrLRrHMOOaoa0Yfkwk65 {
  color: var(--reap);
  font-weight: 700;
}

/* ===== Prediction / trend items ===== */

.TlrkAMEIfbSsDxVmcayX {
  list-style: none;
  padding: 0;
  margin: 20px 0;
  counter-reset: predlist;
}

.eAXppmCYN8pDrNvpaID3 {
  counter-increment: predlist;
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 16px;
  align-items: center;
  padding: 18px 0;
  border-top: 1px solid var(--rule-soft);
}

.eAXppmCYN8pDrNvpaID3:last-child {
  border-bottom: 1px solid var(--rule-soft);
}

.eAXppmCYN8pDrNvpaID3::before {
  content: counter(predlist, decimal-leading-zero);
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 24px;
  font-weight: 700;
  color: var(--accent);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.GYX3mpFAo1icU7u03dkM {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--ink);
  margin: 0 0 4px 0;
  line-height: 1.3;
}

.Pw___KMNC1IXm1RtMCyA {
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink-soft);
  margin: 0;
}

.COWasdfTCOXMIlnx3OOY {
  padding: 20px 0;
  border-top: 1px solid var(--rule-soft);
}

.fBmVT8OytXH6cmrR4cZX {
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--accent);
  margin-bottom: 4px;
}

.vO3UsNkHOtnrtGkeVrYF {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--ink);
  margin: 0 0 6px 0;
}

.AjhG1UNZt9OecrwcJHXV {
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink-soft);
  margin: 0;
}

/* ===== FAQ ===== */

.y4l_agBfTSItzcQ0wFj7 {
  margin: 20px 0;
  border-top: 1px solid var(--ink);
}

.XDMks8Hru0kgb2zhUx2h {
  border-bottom: 1px solid var(--rule);
}

.LL9V54kP0dddhER0_4v9 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 18px 0;
  background: transparent;
  border: none;
  color: var(--ink);
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 17px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
  line-height: 1.35;
}

.LL9V54kP0dddhER0_4v9:hover {
  color: var(--accent);
}

.OFiM7UYTaf6h4lvt0MP_ {
  color: var(--ink-muted);
  font-size: 20px;
  flex-shrink: 0;
  font-family: "Inter", sans-serif;
  transition: transform 0.2s;
}

.i59FbuMeEVG55Tfw1YxU {
  transform: rotate(45deg);
}

.XLZsldcJGQU7JEM4M4lh {
  padding: 0 0 18px 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--ink-soft);
}

/* ===== Signature CTA ===== */

.KmkYdBNC9NTYF6wq4hIa {
  margin: 56px 0 24px;
  padding: 40px 32px;
  border: 1px solid var(--rule);
  background: var(--paper-alt);
  border-radius: 8px;
  text-align: center;
}

/* ===== Inline (mid-page) CTA — lighter variant of .signature ===== */

.Yhref9qXtxGDURn6jW1o {
  margin: 48px 0;
  padding: 28px 28px;
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  background: transparent;
  text-align: left;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
}

.PzLYxKWlkp4vm4y_fqsy {
  min-width: 0;
}

.T9yfSE7vOWz0bjMPNpA7 {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: clamp(19px, 2vw, 22px);
  font-weight: 700;
  color: var(--ink);
  line-height: 1.25;
  margin: 0 0 6px 0;
}

.VDbVPLOOyyVP8nIUzgbW {
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink-soft);
  margin: 0;
  max-width: 640px;
}

.CYK9Uu3eSked9leDrHDg {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

@media (max-width: 767px) {
  .Yhref9qXtxGDURn6jW1o {
    grid-template-columns: 1fr;
    padding: 24px 20px;
    gap: 14px;
  }
  .CYK9Uu3eSked9leDrHDg {
    justify-content: flex-start;
  }
}

.RVYvV8Vkov2p8zdHmrX8 {
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--accent);
  margin-bottom: 12px;
}

.YpL235NJOFmapUr6Es5A {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 700;
  color: var(--ink);
  margin: 0 0 10px 0;
  line-height: 1.15;
}

.ciGvfOLmf_7hiGE_YIjg {
  font-size: 15px;
  line-height: 1.6;
  color: var(--ink-soft);
  margin: 0 auto 20px auto;
  max-width: 560px;
}

.y7ZjlpfQ5gQYC1vDthw8 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}

.iyYwxAJ5GBNU3IZLcsNM {
  padding: 10px 20px;
  background: var(--ink);
  color: #fff !important;
  border-radius: 4px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none !important;
  border: 1px solid var(--ink);
  transition: all 0.15s;
  display: inline-block;
}

.iyYwxAJ5GBNU3IZLcsNM:hover {
  background: transparent;
  color: var(--ink) !important;
}

.wjjJG20PqnY4oVe28F_u {
  padding: 10px 20px;
  background: transparent;
  color: var(--ink) !important;
  border: 1px solid var(--ink);
  border-radius: 4px;
  font-weight: 500;
  font-size: 14px;
  text-decoration: none !important;
  transition: all 0.15s;
  display: inline-block;
}

.wjjJG20PqnY4oVe28F_u:hover {
  background: var(--ink);
  color: #fff !important;
}

/* ===== Report footer (about) ===== */

.cEX5yTNNMDgYoif6oMJG {
  margin-top: 48px;
  padding: 40px 0 56px;
  border-top: 2px solid var(--ink);
  font-size: 14px;
  color: var(--ink-muted);
  line-height: 1.65;
}

.KCICat9yfKFnqnObUn_3 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 32px;
  margin-top: 20px;
}

.t5tbm9bVnNlmiyi_Tc9H h4 {
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ink);
  margin: 0 0 8px 0;
  font-weight: 700;
}

.t5tbm9bVnNlmiyi_Tc9H p {
  font-size: 13px;
  line-height: 1.6;
  color: var(--ink-muted);
  margin: 0;
}

/* ===== Accuracy tier display ===== */

.d7vEVIdS8hSQ73f8I_9L {
  padding: 16px 0;
  border-top: 1px solid var(--rule-soft);
}

.d7vEVIdS8hSQ73f8I_9L:last-child {
  border-bottom: 1px solid var(--rule-soft);
}

.MLrwanns7YwaLT85iPaq {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 6px;
}

.Xd1LiWtvGCSM4IvkwmKZ {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 17px;
  font-weight: 700;
  color: var(--ink);
}

.U49hRHAAzMYbxMBcY0c4 {
  font-family: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  color: var(--reap);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}

.RzW3D_JyIdzCGWQ0Xf8o {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ink-muted);
  margin-bottom: 8px;
}

.JcDbNBEREfleGtrzOVVj {
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink-soft);
  margin: 0;
}

/* ===== Responsive tweaks ===== */

@media (max-width: 700px) {
  .isxBHmDxsHq0bc4P_9p0 {
    grid-template-columns: auto 1fr;
  }
  .co7xgpazYUBcqTr0lFSN {
    grid-column: 2;
    align-items: flex-start;
    text-align: left;
    margin-top: 10px;
  }
  .GDhwC63VrSvUGeWUcLAV {
    font-size: 44px;
  }
  .VNuRM3kZ2MOUMuH6jmvE {
    grid-template-columns: repeat(2, 1fr);
  }
  .OC5PWpMn08Ux1Ck1B681 {
    border-right: none;
    border-bottom: 1px solid var(--rule-soft);
    padding: 10px 12px;
  }
  .pQ0lZiCl0UrUPlQzAA63 {
    font-size: 10px;
  }
}

/* =====================================================================
   Link & color rules scoped to report body only (not the site Footer)
   ===================================================================== */
.Ccaemv2Q0PhtafhEhyIG {
  display: block;
}

.Ccaemv2Q0PhtafhEhyIG a {
  color: var(--ink);
}

.Ccaemv2Q0PhtafhEhyIG a:hover {
  color: var(--accent);
}

.wHSv8iUbuh2RcOlcMs9l a.S8tOoSSXzU0wrnemWi8A,
.wHSv8iUbuh2RcOlcMs9l a[href]:not([class]) {
  color: var(--ink);
  text-decoration: underline;
  text-decoration-color: var(--rule);
  text-underline-offset: 2px;
}

.wHSv8iUbuh2RcOlcMs9l a.S8tOoSSXzU0wrnemWi8A:hover {
  color: var(--accent);
  text-decoration-color: var(--accent);
}

/* =====================================================================
   Report header — minimal, editorial-only header bar (replaces site Navbar)
   ===================================================================== */

.AEbUbYO3MM3mnKxSn4xX {
  background: var(--paper);
  border-bottom: 1px solid var(--rule);
  position: sticky;
  top: 0;
  z-index: 100;
  backdrop-filter: saturate(1.1) blur(6px);
  -webkit-backdrop-filter: saturate(1.1) blur(6px);
}

.Z2tp0n_EF5EmxwFm42iI {
  max-width: 1280px;
  margin: 0 auto;
  padding: 14px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.LdK7mGXBxZhGbDYirTlz {
  display: flex;
  align-items: center;
  gap: 16px;
  text-decoration: none;
  color: var(--ink);
  min-width: 0;
}

.eyoWvN_rjo_pjzBGkgGV {
  width: 76px;
  height: auto;
  display: block;
  flex-shrink: 0;
}

.dhFjwExEYWVL6USluEZ9 {
  width: 1px;
  height: 22px;
  background: var(--rule);
  flex-shrink: 0;
}

.yinLGIAnTsOJazeNKN5P {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  line-height: 1.15;
}

.waHZLTOIXmx8L5gj10oo {
  font-family: "Inter", sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink-muted);
}

.Jhp_BPJJz4yOxmirxvJ0 {
  font-family: "Source Serif 4", Georgia, serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: -0.005em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.zUjidWFlIqlcH7lo4efY {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  padding: 9px 16px;
  background: var(--ink);
  color: #fff !important;
  font-family: "Inter", sans-serif;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
  border-radius: 4px;
  border: 1px solid var(--ink);
  transition: background 0.15s, color 0.15s;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.zUjidWFlIqlcH7lo4efY:hover {
  background: transparent;
  color: var(--ink) !important;
}

@media (max-width: 640px) {
  .Z2tp0n_EF5EmxwFm42iI {
    padding: 12px 16px;
    gap: 12px;
  }
  .dhFjwExEYWVL6USluEZ9,
  .yinLGIAnTsOJazeNKN5P {
    display: none;
  }
  .zUjidWFlIqlcH7lo4efY {
    padding: 8px 12px;
    font-size: 12px;
  }
}







