/* ==========================================================================
   Class Action Hero — Serious Journalist Mode Design System (journalist-mode.css)
   Scope: html[data-theme="journalist"] across all pages (/, /settlements/*,
   /api/, /methodology/, /press/, /ca/, /for-advocates/, category hubs)
   Fonts: Public Sans (editorial/body/headlines) + IBM Plex Mono (kickers/figures)
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. View Transitions API & Reduced-Motion Swap Mechanics
   Replaces the pixel newspaper + lightning flash with a 220ms composited
   wire-service cross-fade and zero layout shift.
   -------------------------------------------------------------------------- */
::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 220ms;
  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
  mix-blend-mode: normal;
}

html[data-transition-dir="from-journalist"]::view-transition-old(root),
html[data-transition-dir="from-journalist"]::view-transition-new(root) {
  animation-duration: 260ms;
  animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Optional 2px institutional navy top-rule sweep during theme switch */
html[data-transition-dir="to-journalist"]::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: #122a4f;
  z-index: 99999;
  transform-origin: left center;
  animation: cah-masthead-sweep 240ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  pointer-events: none;
}

@keyframes cah-masthead-sweep {
  0% { transform: scaleX(0); opacity: 1; }
  80% { transform: scaleX(1); opacity: 1; }
  100% { transform: scaleX(1); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*),
  ::view-transition-old(*),
  ::view-transition-new(*),
  html[data-transition-dir="to-journalist"]::before {
    animation: none !important;
  }
}

/* --------------------------------------------------------------------------
   2. Design Tokens (Color, Typography, Rules, Rhythm)
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] {
  /* Surfaces */
  --j-bg-page: #f7f6f2;
  --j-bg-surface: #ffffff;
  --j-bg-subtle: #efede7;
  --j-bg-hover: #f2f0ea;

  /* Ink Hierarchy (WCAG AA/AAA verified on #f7f6f2 & #ffffff) */
  --j-ink-primary: #111418;    /* 17.4:1 */
  --j-ink-secondary: #38404a;  /* 9.6:1 */
  --j-ink-muted: #5c6672;      /* 5.3:1 */

  /* Institutional & Functional Accents */
  --j-accent-navy: #122a4f;
  --j-accent-navy-hover: #0b1b36;
  --j-accent-claim: #0d6842;   /* 6.7:1 with #ffffff text */
  --j-accent-claim-hover: #094d30;
  --j-accent-record-bg: rgba(18, 42, 79, 0.06);
  --j-accent-record-hover: rgba(18, 42, 79, 0.12);
  --j-status-urgent: #9e1c1c;
  --j-status-noproof: #0d6842;

  /* Structural Rules (Hairlines) */
  --j-rule-heavy: 2px solid #111418;
  --j-rule-section: 1px solid #111418;
  --j-rule-hairline: 1px solid #d4d1c8;
  --j-rule-subtle: 1px solid #e4e1d8;

  /* Font Stacks */
  --j-font-sans: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --j-font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  /* Layout Rhythm */
  --j-max-width-ledger: 1200px;
  --j-max-width-editorial: 1040px;
  --j-page-pad: clamp(16px, 3vw, 32px);

  /* Override global playful variables so subpages inherit cleanly */
  --bg: var(--j-bg-page);
  --surface: var(--j-bg-surface);
  --text: var(--j-ink-primary);
  --text-muted: var(--j-ink-muted);
  --pop: var(--j-accent-claim);

  background-color: var(--j-bg-page);
  color: var(--j-ink-primary);
  font-family: var(--j-font-sans);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

html[data-theme="journalist"] body {
  background-color: var(--j-bg-page);
  color: var(--j-ink-primary);
  font-family: var(--j-font-sans);
  margin: 0;
}

/* --------------------------------------------------------------------------
   3. Hard Kill-Switch for All Playful / Arcade / Easter-Egg Elements
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] .hero-art,
html[data-theme="journalist"] .hero-shade,
html[data-theme="journalist"] .px-sparks,
html[data-theme="journalist"] .sparkles,
html[data-theme="journalist"] .hero-ceo,
html[data-theme="journalist"] .ceo-sprites,
html[data-theme="journalist"] .egg-layer,
html[data-theme="journalist"] .easter-egg-layer,
html[data-theme="journalist"] .skydive-scene,
html[data-theme="journalist"] .skydive-animation,
html[data-theme="journalist"] .wm-ticket,
html[data-theme="journalist"] .wm-swoosh,
html[data-theme="journalist"] .logo-plate,
html[data-theme="journalist"] .push-optin,
html[data-theme="journalist"] .push-opt-in,
html[data-theme="journalist"] .mode-flash,
html[data-theme="journalist"] .newspaper-transition,
html[data-theme="journalist"] .lightning-flash,
html[data-theme="journalist"] .sky-flash,
html[data-theme="journalist"] .scanlines {
  display: none !important;
  animation: none !important;
  pointer-events: none !important;
}

/* Strip game-card border-radius and drop shadows globally in journalist mode */
html[data-theme="journalist"] *,
html[data-theme="journalist"] *::before,
html[data-theme="journalist"] *::after {
  box-shadow: none !important;
}

/* --------------------------------------------------------------------------
   4. Rank 1 Component: Above-the-Fold Credibility Dateline Bar & Masthead Hero
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] .cah-credibility-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 16px;
  min-height: 36px;
  padding: 6px var(--j-page-pad);
  background-color: var(--j-bg-subtle);
  border-top: var(--j-rule-heavy);
  border-bottom: var(--j-rule-hairline);
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  line-height: 1.35;
  letter-spacing: 0.02em;
  color: var(--j-ink-secondary);
  font-variant-numeric: tabular-nums;
}

html[data-theme="journalist"] .cah-credibility-bar strong {
  color: var(--j-ink-primary);
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

html[data-theme="journalist"] .cah-credibility-bar a {
  color: var(--j-accent-navy);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: 500;
}

html[data-theme="journalist"] .cah-credibility-bar a:hover {
  color: var(--j-accent-navy-hover);
}

/* Hero Masthead Compression */
html[data-theme="journalist"] .hero,
html[data-theme="journalist"] header.site-hero {
  background: var(--j-bg-surface) !important;
  border-bottom: var(--j-rule-heavy);
  padding: 20px var(--j-page-pad) 24px !important;
  min-height: 0 !important;
}

html[data-theme="journalist"] .hero-inner,
html[data-theme="journalist"] .ledger-container {
  max-width: var(--j-max-width-ledger);
  margin: 0 auto;
}

html[data-theme="journalist"] .kicker,
html[data-theme="journalist"] .section-kicker,
html[data-theme="journalist"] .dateline {
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--j-accent-navy);
  margin: 0 0 4px 0;
  display: block;
}

html[data-theme="journalist"] h1 {
  font-family: var(--j-font-sans);
  font-size: clamp(1.75rem, 2.6vw, 2.375rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.025em;
  color: var(--j-ink-primary);
  max-width: 28ch;
  margin: 0 0 8px 0;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
}

html[data-theme="journalist"] .hero-subtitle,
html[data-theme="journalist"] .hero p {
  font-family: var(--j-font-sans);
  font-size: 1rem;
  line-height: 1.55;
  color: var(--j-ink-secondary);
  max-width: 65ch;
  margin: 0 0 16px 0;
}

/* --------------------------------------------------------------------------
   5. Rank 3 Component: Stats Strip (4-Cell Ruled Financial Ticker)
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] .stats-strip,
html[data-theme="journalist"] .board-stats,
html[data-theme="journalist"] .live-stats .ls-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  max-width: var(--j-max-width-ledger);
  margin: 0 auto 24px auto;
  background-color: var(--j-bg-surface);
  border-top: var(--j-rule-section);
  border-bottom: var(--j-rule-hairline);
  border-left: var(--j-rule-hairline);
  border-right: var(--j-rule-hairline);
}

html[data-theme="journalist"] .stats-strip > *,
html[data-theme="journalist"] .stat-cell,
html[data-theme="journalist"] .ls-stat {
  padding: 12px 16px;
  border-right: var(--j-rule-hairline);
  border-radius: 0 !important;
  background: transparent;
}

html[data-theme="journalist"] .stats-strip > *:last-child,
html[data-theme="journalist"] .stat-cell:last-child,
html[data-theme="journalist"] .ls-stat:last-child {
  border-right: none;
}

html[data-theme="journalist"] .stat-label,
html[data-theme="journalist"] .ls-stat span {
  display: block;
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--j-ink-muted);
  margin-bottom: 4px;
}

html[data-theme="journalist"] .stat-value,
html[data-theme="journalist"] .figure-numeral,
html[data-theme="journalist"] .ls-stat b {
  font-family: var(--j-font-mono);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--j-ink-primary);
  font-variant-numeric: tabular-nums slashed-zero;
}

@media (max-width: 760px) {
  html[data-theme="journalist"] .stats-strip,
  html[data-theme="journalist"] .board-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  html[data-theme="journalist"] .stats-strip > *:nth-child(2) {
    border-right: none;
  }
  html[data-theme="journalist"] .stats-strip > *:nth-child(1),
  html[data-theme="journalist"] .stats-strip > *:nth-child(2) {
    border-bottom: var(--j-rule-hairline);
  }
  html[data-theme="journalist"] .live-stats .ls-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* --------------------------------------------------------------------------
   6. Search, Filter Controls & Sort Pills (Wire-Service Toolbar)
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] input[type="search"],
html[data-theme="journalist"] input[type="text"],
html[data-theme="journalist"] select {
  font-family: var(--j-font-sans);
  font-size: 0.9375rem;
  color: var(--j-ink-primary);
  background-color: var(--j-bg-surface);
  border: 1px solid #8c887f;
  border-radius: 0 !important;
  min-height: 38px;
  padding: 6px 12px;
}

html[data-theme="journalist"] input[type="search"]:focus-visible,
html[data-theme="journalist"] input[type="text"]:focus-visible,
html[data-theme="journalist"] select:focus-visible {
  outline: 2px solid var(--j-accent-navy);
  outline-offset: 0;
  border-color: var(--j-accent-navy);
}

html[data-theme="journalist"] .sort-pill,
html[data-theme="journalist"] .filter-pill {
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--j-ink-secondary);
  background-color: var(--j-bg-surface);
  border: var(--j-rule-hairline);
  border-radius: 0 !important;
  min-height: 32px;
  padding: 4px 10px;
  cursor: pointer;
}

html[data-theme="journalist"] .sort-pill[aria-pressed="true"],
html[data-theme="journalist"] .sort-pill.active,
html[data-theme="journalist"] .filter-pill.active {
  background-color: var(--j-accent-navy);
  border-color: var(--j-accent-navy);
  color: #ffffff;
}

/* --------------------------------------------------------------------------
   7. Rank 2 & 4 Components: Settlement Rows / Cards & Wire-Stamp Badges
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] .settlement-board,
html[data-theme="journalist"] .cards-grid {
  max-width: var(--j-max-width-ledger);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  border-top: var(--j-rule-section);
}

html[data-theme="journalist"] .settlement-card,
html[data-theme="journalist"] article.card,
html[data-theme="journalist"] .claim-card {
  background-color: var(--j-bg-surface);
  border-left: var(--j-rule-hairline);
  border-right: var(--j-rule-hairline);
  border-bottom: var(--j-rule-hairline);
  border-top: none;
  border-radius: 0 !important;
  padding: 16px 20px;
  margin: 0;
  transition: background-color 100ms ease;
}

html[data-theme="journalist"] .settlement-card:hover,
html[data-theme="journalist"] article.card:hover,
html[data-theme="journalist"] .claim-card:hover {
  background-color: var(--j-bg-hover);
}

html[data-theme="journalist"] .settlement-card h3,
html[data-theme="journalist"] .card-title,
html[data-theme="journalist"] .claim-card h3 {
  font-family: var(--j-font-sans);
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--j-ink-primary);
  margin: 0 0 6px 0;
}

html[data-theme="journalist"] .settlement-card h3 a,
html[data-theme="journalist"] .card-title a {
  color: inherit;
  text-decoration: none;
}

html[data-theme="journalist"] .settlement-card h3 a:hover,
html[data-theme="journalist"] .card-title a:hover {
  color: var(--j-accent-navy);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Tabular Figures inside Settlement Cards */
html[data-theme="journalist"] .card-meta,
html[data-theme="journalist"] .fund-amount,
html[data-theme="journalist"] .payout-estimate,
html[data-theme="journalist"] .deadline-date {
  font-family: var(--j-font-mono);
  font-size: 0.875rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums slashed-zero;
  color: var(--j-ink-primary);
}

/* Rank 4: Deadline & Proof Wire-Stamp Badges */
html[data-theme="journalist"] .badge,
html[data-theme="journalist"] .proof-badge,
html[data-theme="journalist"] .deadline-badge {
  display: inline-flex;
  align-items: center;
  padding: 2px 6px;
  border-radius: 0 !important;
  font-family: var(--j-font-mono);
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background-color: transparent;
  border: 1px solid var(--j-ink-secondary);
  color: var(--j-ink-secondary);
  font-variant-numeric: tabular-nums;
}

html[data-theme="journalist"] .badge--no-proof,
html[data-theme="journalist"] .proof-badge[data-proof="none"] {
  border-color: var(--j-status-noproof);
  color: var(--j-status-noproof);
  background-color: rgba(13, 104, 66, 0.05);
}

html[data-theme="journalist"] .badge--urgent,
html[data-theme="journalist"] .deadline-badge[data-urgent="true"] {
  border-color: var(--j-status-urgent);
  color: var(--j-status-urgent);
  background-color: rgba(158, 28, 28, 0.05);
}

/* Primary Claim CTA Button in Journalist Mode */
html[data-theme="journalist"] .claim-btn,
html[data-theme="journalist"] a.btn-claim {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 6px 14px;
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background-color: var(--j-accent-claim);
  color: #ffffff !important;
  border: 1px solid var(--j-accent-claim);
  border-radius: 0 !important;
  text-decoration: none;
}

html[data-theme="journalist"] .claim-btn:hover,
html[data-theme="journalist"] a.btn-claim:hover {
  background-color: var(--j-accent-claim-hover);
  border-color: var(--j-accent-claim-hover);
}

/* Record-Line ("Also on this company's record") */
html[data-theme="journalist"] .cah-record-line,
html[data-theme="journalist"] .record-line,
html[data-theme="journalist"] .rec-line,
html[data-theme="journalist"] .ep-line {
  margin: 10px 0 0 0;
  padding-top: 8px;
  border-top: var(--j-rule-subtle);
  font-family: var(--j-font-sans);
  font-size: 0.8125rem;
  line-height: 1.4;
  color: var(--j-ink-muted);
}

html[data-theme="journalist"] .cah-record-link,
html[data-theme="journalist"] .record-line a,
html[data-theme="journalist"] .rec-line a,
html[data-theme="journalist"] .ep-line a {
  color: var(--j-accent-navy);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: rgba(18, 42, 79, 0.45);
  text-underline-offset: 2px;
  background-color: var(--j-accent-record-bg);
  padding: 1px 4px;
  border-radius: 0;
}

html[data-theme="journalist"] .cah-record-link:hover,
html[data-theme="journalist"] .record-line a:hover,
html[data-theme="journalist"] .rec-line a:hover,
html[data-theme="journalist"] .ep-line a:hover {
  background-color: var(--j-accent-record-hover);
  text-decoration-color: var(--j-accent-navy);
}

/* --------------------------------------------------------------------------
   8. Rank 5, 6, 7, 8 Components: Detail Pages, /press/, /api/, /methodology/, Footer
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] .editorial-container,
html[data-theme="journalist"] main.detail-page,
html[data-theme="journalist"] main.methodology-page,
html[data-theme="journalist"] main.press-page,
html[data-theme="journalist"] main.api-page {
  max-width: var(--j-max-width-editorial);
  margin: 0 auto;
  padding: 24px var(--j-page-pad) 48px;
}

html[data-theme="journalist"] h2 {
  font-family: var(--j-font-sans);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.015em;
  color: var(--j-ink-primary);
  border-top: var(--j-rule-section);
  padding-top: 10px;
  margin: 32px 0 12px 0;
}

html[data-theme="journalist"] p,
html[data-theme="journalist"] li {
  font-family: var(--j-font-sans);
  font-size: 1rem;
  line-height: 1.6;
  color: var(--j-ink-secondary);
  max-width: 66ch;
}

/* Detail-Page Fact Box */
html[data-theme="journalist"] .case-fact-box,
html[data-theme="journalist"] .settlement-meta-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  background-color: var(--j-bg-surface);
  border-top: var(--j-rule-heavy);
  border-bottom: var(--j-rule-hairline);
  border-left: var(--j-rule-hairline);
  border-right: var(--j-rule-hairline);
  margin: 16px 0 24px 0;
}

html[data-theme="journalist"] .case-fact-box > * {
  padding: 12px 16px;
  border-right: var(--j-rule-hairline);
  font-variant-numeric: tabular-nums;
}

/* Rank 6 & 7: Press & API Specification Blocks (#122a4f Navy) */
html[data-theme="journalist"] .btn-press-api,
html[data-theme="journalist"] .api-cta,
html[data-theme="journalist"] .cite-copy-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 6px 14px;
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background-color: var(--j-accent-navy);
  color: #ffffff !important;
  border: 1px solid var(--j-accent-navy);
  border-radius: 0 !important;
  cursor: pointer;
  text-decoration: none;
}

html[data-theme="journalist"] .btn-press-api:hover,
html[data-theme="journalist"] .api-cta:hover,
html[data-theme="journalist"] .cite-copy-btn:hover {
  background-color: var(--j-accent-navy-hover);
}

html[data-theme="journalist"] pre,
html[data-theme="journalist"] code,
html[data-theme="journalist"] .api-endpoint-box {
  font-family: var(--j-font-mono);
  font-size: 0.8125rem;
  background-color: var(--j-bg-subtle);
  border: var(--j-rule-hairline);
  border-radius: 0 !important;
  color: var(--j-ink-primary);
}

/* Rank 8: Institutional Colophon Footer */
html[data-theme="journalist"] footer,
html[data-theme="journalist"] .site-footer {
  background-color: var(--j-bg-surface);
  border-top: var(--j-rule-heavy);
  padding: 28px var(--j-page-pad) 40px;
  margin-top: 48px;
  font-family: var(--j-font-sans);
  font-size: 0.8125rem;
  color: var(--j-ink-muted);
}

/* Mobile Tap-Target Parity (< 700px) */
@media (max-width: 700px) {
  html[data-theme="journalist"] .claim-btn,
  html[data-theme="journalist"] .sort-pill,
  html[data-theme="journalist"] .filter-pill,
  html[data-theme="journalist"] .card-action-btn {
    min-height: 44px;
    min-width: 44px;
  }
}

/* --------------------------------------------------------------------------
   9. Site-specific mappings (Bankshot wiring pass, 2026-10-20)
   -------------------------------------------------------------------------- */
/* Credibility bar base state: hidden outside journalist mode */
.cah-credibility-bar { display: none; }

/* Wordmark melt/swoosh children must not survive the h1 reset */
html[data-theme="journalist"] .wm-top {
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  color: var(--j-ink-primary) !important;
}

/* live-stats as-of line */
html[data-theme="journalist"] .ls-asof {
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  color: var(--j-ink-muted);
  font-variant-numeric: tabular-nums;
}

/* Detail pages: masthead + breadcrumb + numbered sections */
html[data-theme="journalist"] .masthead {
  background: var(--j-bg-surface);
  border-bottom: var(--j-rule-heavy);
}
html[data-theme="journalist"] .crumb {
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  color: var(--j-ink-muted);
}
html[data-theme="journalist"] section.block {
  border-top: var(--j-rule-hairline);
}
html[data-theme="journalist"] .fundline {
  font-variant-numeric: tabular-nums slashed-zero;
  color: var(--j-ink-primary);
}

/* Subpage topbar (brand strip on hub/api/about-style pages) */
html[data-theme="journalist"] .topbar {
  background: var(--j-bg-surface);
  border-bottom: var(--j-rule-hairline);
}
html[data-theme="journalist"] .hero {
  background: var(--j-bg-surface);
}

/* Detail-page deadline fact box + verified stamp (journalist treatment) */
html[data-theme="journalist"] .deadline {
  background: var(--j-bg-surface) !important;
  border: var(--j-rule-hairline) !important;
  border-top: var(--j-rule-heavy) !important;
  border-radius: 0 !important;
  color: var(--j-ink-primary);
}
html[data-theme="journalist"] .verified {
  border-radius: 0 !important;
  background: transparent !important;
  border: 1px solid var(--j-status-noproof) !important;
  color: var(--j-status-noproof) !important;
  box-shadow: none !important;
}

/* --------------------------------------------------------------------------
   10. Debug pass 3 (Bankshot, 2026-10-20): flat-print enforcement + row ledger
   -------------------------------------------------------------------------- */
html[data-theme="journalist"] *,
html[data-theme="journalist"] *::before,
html[data-theme="journalist"] *::after {
  border-radius: 0 !important;
}

/* Settlement ledger rows (li.row in ol.results) */
html[data-theme="journalist"] ol.results {
  list-style: none;
  border-top: var(--j-rule-section);
}
html[data-theme="journalist"] li.row {
  background: var(--j-bg-surface);
  border-left: var(--j-rule-hairline);
  border-right: var(--j-rule-hairline);
  border-bottom: var(--j-rule-hairline);
  box-shadow: none !important;
}
html[data-theme="journalist"] li.row .name {
  font-family: var(--j-font-sans);
  font-size: 1.0625rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--j-ink-primary);
}
html[data-theme="journalist"] li.row .deadline {
  background: transparent !important;
  border: none !important;
}
html[data-theme="journalist"] .closing-sign {
  background: var(--j-bg-subtle) !important;
  border: var(--j-rule-hairline) !important;
  color: var(--j-ink-primary) !important;
  box-shadow: none !important;
}
html[data-theme="journalist"] .story-kicker.urgent {
  color: var(--j-status-urgent) !important;
}

/* Homepage stats block (.stats/.stat) */
html[data-theme="journalist"] .stat b {
  color: var(--j-ink-primary);
  font-variant-numeric: tabular-nums slashed-zero;
}
html[data-theme="journalist"] .stat.hot b {
  color: var(--j-status-urgent);
}

/* Freshline strip under the masthead */
html[data-theme="journalist"] .freshline {
  font-family: var(--j-font-mono);
  font-size: 0.75rem;
  color: var(--j-ink-muted);
  border-bottom: var(--j-rule-hairline);
}
html[data-theme="journalist"] .freshline a {
  color: var(--j-accent-navy);
}

/* Wordmark pseudo-element decorations (melt underline) off in journalist mode */
html[data-theme="journalist"] .wm-top::before,
html[data-theme="journalist"] .wm-top::after,
html[data-theme="journalist"] .wordmark::before,
html[data-theme="journalist"] .wordmark::after {
  display: none !important;
}

/* Debug pass 4: freshline free-line ink, hero subhead rule + toggle plates off */
html[data-theme="journalist"] .free-line {
  color: var(--j-ink-secondary) !important;
}
html[data-theme="journalist"] .hero-subhead::before,
html[data-theme="journalist"] .hero-subhead::after,
html[data-theme="journalist"] .country-toggle::before,
html[data-theme="journalist"] .country-toggle::after,
html[data-theme="journalist"] .country-toggle *::before,
html[data-theme="journalist"] .country-toggle *::after {
  display: none !important;
}
html[data-theme="journalist"] .wm-hero::before,
html[data-theme="journalist"] .wm-hero::after {
  display: none !important;
}
