/* ============================================================
   OVO BOUNCE — V6.0
   One-screen preseason HQ + owner/records/history/rules pages.
   Palette: black #0a0806, cream #f4f2ec, gold #d9b25a.
   Type: Bebas (display), Inter (body), JetBrains (metrics),
         Playfair italic (accents).
   ============================================================ */

:root {
  --v6-bg:        #0a0806;
  --v6-bg-lift:  #12100c;
  --v6-bg-card:  #17140f;
  --v6-line:     rgba(217, 178, 90, 0.14);
  --v6-line-hi:  rgba(217, 178, 90, 0.34);
  --v6-gold:     #d9b25a;
  --v6-gold-hi:  #ffe08a;
  --v6-gold-lo:  #8f7534;
  --v6-ink:      #f4f2ec;
  --v6-ink-2:    #d8d4c6;
  --v6-ink-3:    #9c9689;
  --v6-ink-4:    #61594c;
  --v6-max:      1240px;
}

/* ---- Reset-lite (styles.css already covers the base) ---- */
.v6 * { box-sizing: border-box; }
.v6 h1, .v6 h2, .v6 h3, .v6 h4 { margin: 0; }
.v6 p { margin: 0; }
.v6 a { color: inherit; text-decoration: none; }

/* Page shell */
.v6-page {
  min-height: 100vh;
  background: var(--v6-bg);
  color: var(--v6-ink);
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ---------- TOP NAV ---------- */
.v6-nav {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(10, 8, 6, 0.86);
  backdrop-filter: saturate(140%) blur(10px);
  -webkit-backdrop-filter: saturate(140%) blur(10px);
  border-bottom: 1px solid var(--v6-line);
}
.v6-nav-inner {
  max-width: var(--v6-max);
  margin: 0 auto;
  padding: 14px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  position: relative;
}
.v6-brand {
  display: flex;
  align-items: baseline;
  gap: 12px;
  color: var(--v6-ink);
}
.v6-wordmark {
  font-family: 'Bebas Neue', 'Impact', sans-serif;
  letter-spacing: 0.08em;
  font-size: 22px;
  line-height: 1;
  color: var(--v6-ink);
}
.v6-wordmark .amp { color: var(--v6-gold); margin: 0 2px; }
.v6-yearchip {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  padding: 4px 8px;
  border: 1px solid var(--v6-line);
  border-radius: 999px;
  color: var(--v6-gold);
  text-transform: uppercase;
}
.v6-nav-links {
  display: flex;
  gap: 22px;
  align-items: center;
}
.v6-nav-links a {
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--v6-ink-3);
  padding: 8px 0;
  border-bottom: 1px solid transparent;
  transition: color 160ms ease, border-color 160ms ease;
}
.v6-nav-links a:hover,
.v6-nav-links a[aria-current="page"] {
  color: var(--v6-ink);
  border-bottom-color: var(--v6-gold);
}
/* Hamburger toggle (CSS-only) */
.v6-nav-toggle { display: none; }
.v6-nav-burger {
  display: none;
  background: transparent;
  border: 1px solid var(--v6-line);
  color: var(--v6-ink);
  width: 40px; height: 40px;
  border-radius: 8px;
  cursor: pointer;
  padding: 0;
  align-items: center;
  justify-content: center;
}
.v6-nav-burger span {
  display: block;
  width: 18px; height: 1.5px;
  background: var(--v6-ink);
  position: relative;
}
.v6-nav-burger span::before,
.v6-nav-burger span::after {
  content: ''; position: absolute; left: 0;
  width: 18px; height: 1.5px; background: var(--v6-ink);
}
.v6-nav-burger span::before { top: -6px; }
.v6-nav-burger span::after  { top: 6px; }

@media (max-width: 720px) {
  .v6-nav-burger { display: inline-flex; }
  .v6-nav-links {
    position: absolute;
    top: 100%; left: 0; right: 0;
    flex-direction: column;
    align-items: stretch;
    background: #0a0806;
    border-bottom: 1px solid var(--v6-line);
    box-shadow: 0 12px 32px rgba(0,0,0,0.6);
    padding: 8px 24px 18px;
    gap: 4px;
    z-index: 60;
    transform: translateY(-8px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 180ms ease, transform 180ms ease;
  }
  .v6-nav-links a {
    padding: 12px 0;
    border-bottom: 1px solid var(--v6-line);
  }
  .v6-nav-links a:last-child { border-bottom: 0; }
  .v6-nav-toggle:checked ~ .v6-nav-links {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }
}

/* ---------- v6-nav More dropdown (shared with weekly nav's More button) ---------- */
.v6-nav-more {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.v6-nav-more-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: inherit;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--v6-ink-3);
  background: transparent;
  border: 0;
  padding: 8px 0;
  cursor: pointer;
  border-bottom: 1px solid transparent;
  transition: color 160ms ease, border-color 160ms ease;
}
.v6-nav-more-btn svg {
  width: 12px;
  height: 12px;
  transition: transform 160ms ease;
}
.v6-nav-more:hover .v6-nav-more-btn,
.v6-nav-more.open .v6-nav-more-btn,
.v6-nav-more.is-active .v6-nav-more-btn {
  color: var(--v6-ink);
}
.v6-nav-more.is-active .v6-nav-more-btn {
  border-bottom-color: var(--v6-gold);
}
.v6-nav-more.open .v6-nav-more-btn svg {
  transform: rotate(180deg);
}
.v6-nav-more-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: #0a0806;
  border: 1px solid var(--v6-line);
  border-radius: 6px;
  min-width: 180px;
  padding: 8px 0;
  box-shadow: 0 12px 32px rgba(0,0,0,0.55);
  opacity: 0;
  transform: translateY(-6px);
  pointer-events: none;
  transition: opacity 160ms ease, transform 160ms ease;
  z-index: 80;
}
.v6-nav-more.open .v6-nav-more-menu {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.v6-nav-more-menu a {
  display: block;
  padding: 10px 18px;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--v6-ink-2);
  text-decoration: none;
  border-bottom: 0 !important;
  transition: background 140ms ease, color 140ms ease;
}
.v6-nav-more-menu a:hover,
.v6-nav-more-menu a[aria-current="page"] {
  color: var(--v6-ink);
  background: rgba(217, 178, 90, 0.06);
}
.v6-nav-more-menu a[aria-current="page"] {
  color: var(--v6-gold);
}
@media (max-width: 720px) {
  /* Mobile: More items lay flat in the drawer, no dropdown overlay. */
  .v6-nav-more { display: block; width: 100%; }
  .v6-nav-more-btn {
    width: 100%;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid var(--v6-line);
  }
  .v6-nav-more-menu {
    position: static;
    display: none;
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0 0 0 12px;
    opacity: 1;
    transform: none;
    pointer-events: auto;
    min-width: 0;
  }
  .v6-nav-more.open .v6-nav-more-menu { display: block; }
  .v6-nav-more-menu a {
    padding: 10px 0;
    border-bottom: 1px solid var(--v6-line) !important;
  }
}

/* ---------- HQ (one-screen preseason) ---------- */
.v6-hq {
  min-height: calc(100vh - 60px);
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  gap: 28px;
  padding: 36px 24px 44px;
  max-width: var(--v6-max);
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

/* Atmospheric hero container. Wraps the crest + countdowns ONLY so the field
   does not bleed through From the Room, Power Rankings, or the rest of the
   homepage. The arena is scoped to this element, not the whole .v6-hq. */
.v6-hq-hero {
  position: relative;
  padding: 20px 0 16px;
  overflow: hidden;
  isolation: isolate;
  display: grid;
  gap: 24px;
}
.v6-hq-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 70% 55% at 50% 30%, rgba(217, 178, 90, 0.08), transparent 65%),
    linear-gradient(to bottom, transparent 0%, rgba(10, 8, 6, 0.55) 78%, #0a0806 100%);
  z-index: 0;
  pointer-events: none;
}
.v6-hq-hero > *:not(.season-arena) { position: relative; z-index: 1; }

/* Gold divider between hero and the rest of the homepage. */
.v6-hq-divider {
  height: 1px;
  margin: 0 auto 18px;
  max-width: calc(var(--v6-max) - 48px);
  background: linear-gradient(to right, transparent 0%, rgba(217, 178, 90, 0.35) 20%, rgba(217, 178, 90, 0.35) 80%, transparent 100%);
}

/* ============================================================
   SEASON ARENA — the animated field behind the crest + countdown.
   Sits in position:absolute behind everything, contained by .v6-hq's
   overflow:hidden. All motion is subtle, restrained to gold + cream,
   and respects prefers-reduced-motion.
   ============================================================ */
.season-arena {
  /* Scoped to .v6-hq-hero, not to .v6-hq. The field is atmosphere behind the
     crest + countdowns only. Softer opacity so it never overpowers the type. */
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  pointer-events: none;
  opacity: 0.55;
  /* Fade the bottom edge into the page so the field ends before the divider. */
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 60%, rgba(0,0,0,0.4) 88%, transparent 100%);
          mask-image: linear-gradient(to bottom, #000 0%, #000 60%, rgba(0,0,0,0.4) 88%, transparent 100%);
}
.season-arena-svg { width: 100%; height: 100%; display: block; }
.v6-hq > *:not(.season-arena) { position: relative; z-index: 1; }

/* Yard lines: stronger contrast so they read against the black. */
.season-arena .yl {
  transform-box: fill-box;
  transform-origin: center;
  transform: scaleY(0);
  animation: arena-yl 1.6s cubic-bezier(0.22, 0.9, 0.28, 1) forwards;
  stroke: #d9b25a;
  stroke-opacity: 0.55;
  stroke-width: 1.5;
}
.season-arena .yl-c {
  stroke-opacity: 0.75;
  stroke-width: 2;
}
.season-arena .yl-c   { animation-delay: 0.05s; }
.season-arena .yl-l1, .season-arena .yl-r1 { animation-delay: 0.20s; }
.season-arena .yl-l2, .season-arena .yl-r2 { animation-delay: 0.35s; }
.season-arena .yl-l3, .season-arena .yl-r3 { animation-delay: 0.50s; }
.season-arena .yl-l4, .season-arena .yl-r4 { animation-delay: 0.65s; }
.season-arena .yl-l5, .season-arena .yl-r5 { animation-delay: 0.80s; }
@keyframes arena-yl { to { transform: scaleY(1); } }

/* Stadium-light sweep across the field. Peak opacity kept low so it feels
   like atmosphere, not a moving strobe across the type. */
.season-arena .arena-sweep {
  animation: arena-sweep 14s ease-in-out 1.4s infinite;
  opacity: 0;
}
@keyframes arena-sweep {
  0%   { transform: translateX(0);       opacity: 0; }
  10%  { opacity: 0.35; }
  90%  { opacity: 0.35; }
  100% { transform: translateX(1200px);  opacity: 0; }
}

/* Midfield OVO Bounce crest — fades in and scales up after yard lines. */
.season-arena .arena-crest {
  opacity: 0;
  transform-box: fill-box;
  transform-origin: 500px 280px;
  animation: arena-crest 1.2s cubic-bezier(0.22, 0.9, 0.28, 1) 1.6s forwards;
}
@keyframes arena-crest {
  0%   { opacity: 0; transform: scale(0.6); }
  60%  { opacity: 1; }
  100% { opacity: 1; transform: scale(1); }
}

/* Sixteen team marks enter the field one at a time. */
.season-arena .mark {
  opacity: 0;
  transform-box: fill-box;
  transform-origin: center;
  animation: arena-mark 700ms ease-out forwards;
}
.season-arena .m1  { animation-delay: 2.1s; }
.season-arena .m2  { animation-delay: 2.18s; }
.season-arena .m3  { animation-delay: 2.26s; }
.season-arena .m4  { animation-delay: 2.34s; }
.season-arena .m5  { animation-delay: 2.42s; }
.season-arena .m6  { animation-delay: 2.50s; }
.season-arena .m7  { animation-delay: 2.58s; }
.season-arena .m8  { animation-delay: 2.66s; }
.season-arena .m9  { animation-delay: 2.74s; }
.season-arena .m10 { animation-delay: 2.82s; }
.season-arena .m11 { animation-delay: 2.90s; }
.season-arena .m12 { animation-delay: 2.98s; }
.season-arena .m13 { animation-delay: 3.06s; }
.season-arena .m14 { animation-delay: 3.14s; }
.season-arena .m15 { animation-delay: 3.22s; }
.season-arena .m16 { animation-delay: 3.30s; }
@keyframes arena-mark {
  0%   { opacity: 0; transform: scale(0.4); }
  60%  { opacity: 1; transform: scale(1.2); }
  100% { opacity: 0.7; transform: scale(1); }
}

/* Countdown scoreboard glow — lets the countdown "illuminate" once yard
   lines land. Uses filter on .v6-count-num to inherit brand color. */
.v6-count-num {
  animation: scoreboard-glow 2.4s ease-out 1.9s both;
}
@keyframes scoreboard-glow {
  0%   { text-shadow: 0 0 0 rgba(217,178,90,0); }
  30%  { text-shadow: 0 0 22px rgba(217,178,90,0.55); }
  100% { text-shadow: 0 0 6px rgba(217,178,90,0.22); }
}

@media (prefers-reduced-motion: reduce) {
  .season-arena .yl { animation: none; transform: scaleY(1); }
  .season-arena .arena-sweep { animation: none; opacity: 0; }
  .season-arena .arena-crest { animation: none; opacity: 1; transform: none; }
  .season-arena .mark { animation: none; opacity: 0.7; }
  .v6-count-num { animation: none; }
}

.v6-hq-crest {
  text-align: center;
}
.v6-hq-eyebrow {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: var(--v6-gold);
  text-transform: uppercase;
  margin-bottom: 12px;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.75);
}
.v6-hq-title {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: clamp(56px, 9vw, 132px);
  letter-spacing: 0.02em;
  line-height: 0.9;
  color: var(--v6-ink);
}
.v6-hq-title .amp { color: var(--v6-gold); padding: 0 4px; }
.v6-hq-sub {
  margin-top: 14px;
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  font-size: 18px;
  color: var(--v6-ink-2);
  letter-spacing: 0.01em;
}

/* ============ State-aware hero CTAs ============ */
.v6-hero-ctas {
  margin-top: 26px;
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
/* Hero CTAs
 * Design intent: buttons must read as actionable, not pre-selected. Neither uses
 * solid gold fill (that reads as "pressed" state on a dark field). Both use ghost
 * treatments with a small chevron to signal navigation.
 */
.v6-hero-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 22px;
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 17px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 4px;
  transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
  border: 1px solid transparent;
  position: relative;
}
.v6-hero-cta::after {
  content: "\2192"; /* right arrow */
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  transition: transform 0.18s ease;
  margin-left: 2px;
  line-height: 1;
}
.v6-hero-cta:hover::after { transform: translateX(4px); }

/* Primary: cream outline, prominent glow — reads as the main action, not a pressed state */
.v6-hero-cta-primary {
  background: rgba(244, 242, 236, 0.04);
  color: #f4f2ec;
  border-color: rgba(244, 242, 236, 0.85);
  box-shadow: 0 0 0 0 rgba(244, 242, 236, 0);
}
.v6-hero-cta-primary:hover {
  background: #f4f2ec;
  color: #0a0806;
  border-color: #f4f2ec;
  box-shadow: 0 6px 24px -8px rgba(244, 242, 236, 0.5);
  transform: translateY(-1px);
}

/* Secondary: gold outline, transparent — supporting action */
.v6-hero-cta-secondary {
  background: transparent;
  color: var(--v6-gold);
  border-color: rgba(217, 178, 90, 0.4);
}
.v6-hero-cta-secondary:hover {
  border-color: var(--v6-gold);
  color: #f4d78c;
  transform: translateY(-1px);
}

@media (max-width: 520px) {
  .v6-hero-cta { font-size: 15px; padding: 0 18px; min-height: 44px; }
  .v6-hero-ctas { gap: 10px; }
  .v6-hero-cta::after { font-size: 15px; }
}

/* State-driven module visibility */
body.in-season .v6-count-dual { display: none; }

/* Countdown row */
.v6-countdown {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  max-width: 720px;
  margin: 0 auto;
  width: 100%;
}
.v6-count-cell {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 14px 8px 12px;
  text-align: center;
}
.v6-count-num {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: clamp(28px, 5vw, 44px);
  font-weight: 500;
  color: var(--v6-gold-hi);
  line-height: 1;
  letter-spacing: 0.01em;
}
.v6-count-lab {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-top: 8px;
}
.v6-count-deadline {
  text-align: center;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.2em;
  color: var(--v6-ink-2);
  margin-top: 12px;
  text-transform: uppercase;
}
.v6-count-deadline .thick {
  color: var(--v6-gold);
}

/* Dual countdown layout: Draft + Keeper Deadline side-by-side */
.v6-count-dual {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  max-width: 1080px;
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 780px) {
  .v6-count-dual { grid-template-columns: 1fr; gap: 18px; }
}
/* Countdown block: opaque enough to keep the field from bleeding into the type */
.v6-count-block {
  background: rgba(10, 8, 6, 0.72);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid var(--v6-line);
  border-radius: 14px;
  padding: 18px 18px 20px;
}
.v6-count-block[data-target="keeper"] { border-color: rgba(217,178,90,0.28); }
.v6-count-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.v6-count-eyebrow {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 22px;
  letter-spacing: 0.08em;
  color: var(--v6-gold-hi);
}
.v6-count-block[data-target="keeper"] .v6-count-eyebrow { color: var(--v6-gold); }
.v6-count-when {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.18em;
  color: rgba(244, 242, 236, 0.82); /* was --v6-ink-3, too dim against field */
  text-transform: uppercase;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.v6-count-block .v6-countdown { max-width: none; gap: 8px; }
.v6-count-block .v6-count-num { font-size: clamp(24px, 3.6vw, 34px); }
.v6-count-block .v6-count-cell { padding: 12px 6px 10px; }

/* =================================================================
   HQ SECTION SYSTEM — one-page mission control
   ================================================================= */
.v6-hq-section {
  max-width: 1200px;
  margin: 72px auto 0;
  padding: 0 24px;
}
/* First section after the hero divider sits tighter — the divider itself
   already provides breathing room, so we do not need a second 72px stack. */
.v6-hq-divider + .v6-hq-section { margin-top: 8px; }
@media (max-width: 780px) {
  .v6-hq-section { margin-top: 54px; padding: 0 16px; }
  .v6-hq-divider + .v6-hq-section { margin-top: 4px; }
}
.v6-hq-h2 {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: clamp(30px, 4vw, 44px);
  letter-spacing: 0.04em;
  color: var(--v6-cream);
  line-height: 1;
}
.v6-hq-h2-sub {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.18em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 22px;
}

/* Storylines */
.v6-stories {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
@media (max-width: 780px) { .v6-stories { grid-template-columns: 1fr; } }
.v6-story {
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--v6-line);
  border-radius: 12px;
  padding: 20px 22px;
}
.v6-story .eyebrow {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.22em;
  color: var(--v6-gold);
  text-transform: uppercase;
}
.v6-story .head {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 26px;
  letter-spacing: 0.03em;
  color: var(--v6-cream);
  margin-top: 6px;
  line-height: 1.1;
}
.v6-story .body {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.55;
  color: var(--v6-ink-2);
  margin-top: 10px;
}

/* Money grid */
.v6-money-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
@media (max-width: 780px) { .v6-money-grid { grid-template-columns: repeat(2, 1fr); } }
.v6-money-cell {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 16px 16px 14px;
}
.v6-money-cell .k {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
}
.v6-money-cell .v {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 30px;
  color: var(--v6-gold-hi);
  letter-spacing: 0.02em;
  margin-top: 6px;
  line-height: 1;
}
.v6-money-cell .sub {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12px;
  color: var(--v6-ink-2);
  margin-top: 6px;
}
.v6-money-note {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 13px;
  color: var(--v6-ink-2);
  margin-top: 16px;
  line-height: 1.55;
}
.v6-money-note a { color: var(--v6-gold-hi); text-decoration: none; border-bottom: 1px solid rgba(217,178,90,0.3); }

/* Rules grid */
.v6-rules-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
@media (max-width: 780px) { .v6-rules-grid { grid-template-columns: 1fr; } }
.v6-rule {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 16px 18px;
}
.v6-rule .k {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 20px;
  color: var(--v6-gold-hi);
  letter-spacing: 0.04em;
}
.v6-rule .v {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 13.5px;
  color: var(--v6-ink-2);
  line-height: 1.55;
  margin-top: 6px;
}

/* Divisions */
.v6-divs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
@media (max-width: 780px) { .v6-divs { grid-template-columns: 1fr; } }
.v6-div {
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--v6-line);
  border-radius: 12px;
  padding: 18px 20px;
}
.v6-div-head {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 24px;
  letter-spacing: 0.08em;
  color: var(--v6-gold-hi);
}
.v6-div-why {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.16em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-top: 4px;
  margin-bottom: 12px;
}
.v6-div-rows { display: flex; flex-direction: column; gap: 8px; }
.v6-div-row {
  display: grid;
  grid-template-columns: 90px 1fr auto;
  gap: 12px;
  align-items: baseline;
  padding: 8px 10px;
  background: rgba(0,0,0,0.25);
  border-radius: 6px;
}
.v6-div-row .owner {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 17px;
  letter-spacing: 0.05em;
  color: var(--v6-cream);
}
.v6-div-row .team {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 13px;
  color: var(--v6-ink-2);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v6-div-row .tag {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.18em;
  color: var(--v6-gold);
  text-transform: uppercase;
}

/* 2025 recap */
.v6-podium {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media (max-width: 780px) { .v6-podium { grid-template-columns: repeat(2, 1fr); } }
.v6-podium-cell {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 14px 16px 16px;
}
.v6-podium-cell.is-champ {
  border-color: rgba(217,178,90,0.45);
  background: linear-gradient(180deg, rgba(217,178,90,0.08), rgba(217,178,90,0.02));
}
.v6-podium-cell .pos {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: var(--v6-gold);
  text-transform: uppercase;
}
.v6-podium-cell .who {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 24px;
  color: var(--v6-cream);
  letter-spacing: 0.04em;
  margin-top: 6px;
  line-height: 1;
}
.v6-podium-cell .team {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12.5px;
  color: var(--v6-ink-2);
  margin-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v6-podium-cell .rec {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  color: var(--v6-ink-3);
  margin-top: 8px;
}
.v6-pf {
  margin-top: 18px;
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--v6-line);
  border-radius: 12px;
  padding: 16px 18px;
}
.v6-pf-head {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.22em;
  color: var(--v6-gold);
  text-transform: uppercase;
  margin-bottom: 10px;
}
.v6-pf-row {
  display: grid;
  grid-template-columns: 24px 90px 1fr auto;
  gap: 12px;
  align-items: baseline;
  padding: 8px 0;
  border-top: 1px solid var(--v6-line);
}
.v6-pf-row:first-of-type { border-top: none; }
.v6-pf-row .rk {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 12px;
  color: var(--v6-ink-3);
}
.v6-pf-row .who {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 17px;
  letter-spacing: 0.05em;
  color: var(--v6-cream);
}
.v6-pf-row .tm {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 13px;
  color: var(--v6-ink-2);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v6-pf-row .pf {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 14px;
  color: var(--v6-gold-hi);
  letter-spacing: 0.02em;
}
.v6-recap-note {
  font-family: 'Inter', system-ui, sans-serif;
  font-style: italic;
  font-size: 13.5px;
  color: var(--v6-ink-2);
  margin-top: 14px;
  line-height: 1.55;
}

/* Hero mini (records to chase) */
.v6-hero-mini {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
@media (max-width: 980px) { .v6-hero-mini { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .v6-hero-mini { grid-template-columns: 1fr; } }
.v6-hero-cell {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 14px 14px 14px;
}
.v6-hero-cell .k {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
}
.v6-hero-cell .v {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 26px;
  color: var(--v6-gold-hi);
  letter-spacing: 0.02em;
  margin-top: 6px;
  line-height: 1;
}
.v6-hero-cell .who {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12px;
  color: var(--v6-ink-2);
  margin-top: 6px;
  line-height: 1.35;
}
.v6-hero-cell .when {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.14em;
  color: var(--v6-ink-3);
  margin-top: 4px;
  text-transform: uppercase;
}

/* Commissioner card */
.v6-commish {
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--v6-line);
  border-radius: 12px;
  padding: 22px 24px;
}
.v6-commish-name {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 28px;
  color: var(--v6-cream);
  letter-spacing: 0.05em;
  line-height: 1;
}
.v6-commish-name .tag {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.2em;
  color: var(--v6-gold);
  text-transform: uppercase;
  vertical-align: middle;
  margin-left: 6px;
}
.v6-commish-rows {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-top: 16px;
}
@media (max-width: 780px) { .v6-commish-rows { grid-template-columns: 1fr; } }
.v6-commish-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 12px 14px;
  background: rgba(0,0,0,0.3);
  border-radius: 8px;
  text-decoration: none;
  transition: background 0.15s ease;
}
.v6-commish-row:hover { background: rgba(217,178,90,0.08); }
.v6-commish-row .k {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
}
.v6-commish-row .v {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 14px;
  color: var(--v6-gold-hi);
  letter-spacing: 0.02em;
}

/* The 16 grid */
.v6-16 {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 10px;
  align-content: center;
}
@media (max-width: 900px) {
  .v6-16 { grid-template-columns: repeat(4, 1fr); }
}
.v6-16-cell {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 10px;
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  transition: transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease;
}
.v6-16-cell:hover {
  transform: translateY(-2px);
  border-color: var(--v6-line-hi);
  box-shadow: 0 12px 32px -12px rgba(217, 178, 90, 0.22);
}
.v6-16-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  filter: grayscale(35%) brightness(0.94);
  transition: filter 200ms ease, transform 300ms ease, opacity 300ms ease;
  opacity: 0;
}
.v6-16-cell img.loaded {
  opacity: 1;
}
.v6-16-cell:hover img {
  filter: grayscale(0%) brightness(1);
  transform: scale(1.03);
}
/* NFL color stripe overlay */
.v6-nfl-stripe {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 4px;
  z-index: 3;
  background: linear-gradient(90deg, var(--nfl-a, transparent) 0%, var(--nfl-a, transparent) 50%, var(--nfl-b, transparent) 50%, var(--nfl-b, transparent) 100%);
}
/* NFL abbreviation chip — tiny label so colors are legible */
.v6-nfl-abbr {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 4;
  padding: 3px 6px 2px;
  background: rgba(0, 0, 0, 0.55);
  border-radius: 4px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.14em;
  color: var(--v6-cream);
  line-height: 1;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
.v6-16-scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(10, 8, 6, 0.92) 100%);
  pointer-events: none;
}
.v6-16-tag {
  position: absolute;
  bottom: 8px;
  left: 8px;
  right: 8px;
  color: var(--v6-ink);
}
.v6-16-tag .name {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--v6-ink);
}
.v6-16-tag .team {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 8.5px;
  letter-spacing: 0.14em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-top: 3px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* Championship signifier — one gold ring icon per title, stacked in the corner. */
.v6-16-champ {
  position: absolute;
  top: 6px;
  right: 6px;
  display: flex;
  gap: 3px;
  padding: 3px 5px;
  border-radius: 999px;
  background: rgba(10, 8, 6, 0.72);
  border: 1px solid rgba(217, 178, 90, 0.55);
  backdrop-filter: blur(4px);
}
.v6-16-champ .ring-icon {
  width: 11px;
  height: 11px;
  display: block;
  filter: drop-shadow(0 1px 1px rgba(0,0,0,0.5));
}
.v6-16-champ.multi {
  padding: 3px 6px;
}
.v6-16-champ .ring-count {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9px;
  line-height: 11px;
  color: var(--v6-gold);
  font-weight: 700;
  padding-left: 2px;
  letter-spacing: 0.02em;
}

/* Doorways */
.v6-doorways {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  max-width: 720px;
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 640px) {
  .v6-doorways { grid-template-columns: 1fr; }
}
.v6-doorway {
  display: block;
  padding: 18px 20px;
  border: 1px solid var(--v6-line);
  border-radius: 12px;
  background: var(--v6-bg-lift);
  color: var(--v6-ink);
  transition: transform 200ms ease, border-color 200ms ease, background 200ms ease;
}
.v6-doorway:hover {
  transform: translateY(-2px);
  border-color: var(--v6-gold);
  background: var(--v6-bg-card);
}
.v6-doorway .k {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-bottom: 6px;
}
.v6-doorway .v {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 22px;
  letter-spacing: 0.03em;
  color: var(--v6-ink);
  line-height: 1;
  display: flex;
  align-items: center;
  gap: 8px;
}
.v6-doorway .v .arrow {
  color: var(--v6-gold);
  transition: transform 200ms ease;
}
.v6-doorway:hover .v .arrow { transform: translateX(3px); }
.v6-doorway .caption {
  margin-top: 8px;
  font-size: 12.5px;
  color: var(--v6-ink-3);
  line-height: 1.45;
}

/* ---------- Interior pages: shared building blocks ---------- */
.v6-shell {
  max-width: var(--v6-max);
  margin: 0 auto;
  padding: 32px 24px 80px;
}
.v6-page-eyebrow {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.28em;
  color: var(--v6-gold);
  text-transform: uppercase;
}
.v6-page-title {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: clamp(44px, 6vw, 80px);
  letter-spacing: 0.02em;
  line-height: 0.92;
  color: var(--v6-ink);
  margin: 8px 0 6px;
}
.v6-page-sub {
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  font-size: 17px;
  color: var(--v6-ink-2);
  max-width: 640px;
  line-height: 1.55;
}

/* Owner cards (/the-16) */
.v6-owner { scroll-margin-top: 90px; }
.anchor-stub { display: block; position: relative; top: -90px; visibility: hidden; height: 0; scroll-margin-top: 90px; }
@keyframes v6-owner-glow-anim {
  0%   { box-shadow: 0 0 0 0 rgba(217, 178, 90, 0.0), 0 0 0 1px var(--v6-line); border-color: var(--v6-line); }
  15%  { box-shadow: 0 0 0 4px rgba(217, 178, 90, 0.35), 0 12px 40px -8px rgba(217, 178, 90, 0.45); border-color: var(--v6-gold); }
  100% { box-shadow: 0 0 0 0 rgba(217, 178, 90, 0.0), 0 0 0 1px var(--v6-line); border-color: var(--v6-line); }
}
.v6-owner-glow {
  animation: v6-owner-glow-anim 2.4s ease-out;
}
.v6-owners-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin-top: 34px;
}
@media (max-width: 1200px) { .v6-owners-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 900px)  { .v6-owners-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px)  { .v6-owners-grid { grid-template-columns: 1fr; } }
.v6-owner {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 220ms ease, border-color 220ms ease;
}
.v6-owner:hover {
  transform: translateY(-3px);
  border-color: var(--v6-line-hi);
}
.v6-owner-portrait {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #111;
}
.v6-owner-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  transition: transform 400ms ease;
}
.v6-owner:hover .v6-owner-portrait img { transform: scale(1.04); }
.v6-owner-portrait .scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 45%, rgba(10, 8, 6, 0.92) 100%);
}
.v6-owner-portrait .rings {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  gap: 4px;
}
.v6-owner-portrait .ring {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--v6-gold);
  color: var(--v6-bg);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 0 1.5px rgba(0,0,0,0.65);
}
.v6-owner-body {
  padding: 16px 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.v6-owner-name {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 30px;
  letter-spacing: 0.03em;
  line-height: 1;
  color: var(--v6-ink);
}
.v6-owner-team {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.16em;
  color: var(--v6-gold);
  text-transform: uppercase;
}
.v6-nfl-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 10px 5px 5px;
  margin-top: 8px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(217,178,90,0.18);
  border-radius: 999px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  color: var(--v6-ink-2);
  text-transform: uppercase;
  max-width: 100%;
}
.v6-nfl-pill img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  background: rgba(0,0,0,0.35);
  border-radius: 50%;
  padding: 2px;
  flex-shrink: 0;
}
.v6-nfl-pill .name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.v6-nfl-pill.empty {
  color: rgba(216,212,198,0.4);
  border-style: dashed;
}
.v6-owner-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
  /* Reserve TWO chip rows so 3-tag cards (Sean, Kyle) and 1-tag cards
     (Pocket, Yinka) start their bio at exactly the same y. */
  min-height: 58px;
  align-content: flex-start;
}
.v6-chip {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.16em;
  color: var(--v6-ink-2);
  padding: 4px 8px;
  border: 1px solid var(--v6-line);
  border-radius: 999px;
  text-transform: uppercase;
}
.v6-chip.gold {
  color: var(--v6-gold);
  border-color: var(--v6-line-hi);
}
.v6-owner-note {
  font-size: 13px;
  line-height: 1.55;
  color: var(--v6-ink-2);
  /* Clamp so short/long bios don't push the bottom row around. */
  min-height: calc(1.55em * 3);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.v6-owner-chain {
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  font-size: 12.5px;
  color: var(--v6-ink-3);
  line-height: 1.5;
  /* Reserve two lines so owners with long previous-team histories (Sean,
     Alex, Marley's future rename, etc.) don't push IG + stats rows down.
     Owners with no previous teams get an empty block that still reserves
     the same space, keeping every card's bottom rail aligned. */
  min-height: calc(1.5em * 2);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.v6-owner-chain-lab {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-style: normal;
  font-size: 10px;
  letter-spacing: 0.14em;
  color: var(--v6-ink-4);
  text-transform: uppercase;
  margin-right: 6px;
}
.v6-owner-ig {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 10px;
  border-top: 1px solid var(--v6-line);
}
.v6-owner-ig .handle {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 12px;
  color: var(--v6-gold);
  letter-spacing: 0.05em;
}
.v6-owner-ig .handle.mute {
  color: var(--v6-ink-4);
}
.v6-owner-ig .div {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.18em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
}

/* Records — museum layout */
.v6-museum {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 34px;
}
@media (max-width: 720px) { .v6-museum { grid-template-columns: 1fr; } }
.v6-plaque {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 12px;
  padding: 22px 22px 24px;
  transition: border-color 200ms ease;
}
.v6-plaque:hover { border-color: var(--v6-line-hi); }
.v6-plaque .cat {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-bottom: 10px;
}
.v6-plaque .val {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 48px;
  line-height: 1;
  color: var(--v6-gold-hi);
  letter-spacing: 0.02em;
}
.v6-plaque .who {
  margin-top: 10px;
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  font-size: 14px;
  color: var(--v6-ink-2);
  line-height: 1.45;
}
.v6-plaque .yr {
  margin-top: 8px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
}

/* History — champions timeline */
.v6-timeline {
  margin-top: 34px;
  position: relative;
  padding-left: 22px;
  border-left: 1px solid var(--v6-line);
}
.v6-timeline-year {
  position: relative;
  padding: 14px 0 26px 24px;
}
.v6-timeline-year::before {
  content: '';
  position: absolute;
  left: -30px;
  top: 22px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--v6-bg);
  border: 2px solid var(--v6-gold);
}
.v6-timeline-year.champ-repeat::before {
  background: var(--v6-gold);
}
.v6-timeline-year .yr {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 36px;
  letter-spacing: 0.03em;
  color: var(--v6-ink);
  line-height: 1;
}
.v6-timeline-year .champ {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 22px;
  color: var(--v6-gold);
  margin-top: 4px;
  letter-spacing: 0.02em;
}
.v6-timeline-year .champ .owner {
  color: var(--v6-ink);
}
.v6-timeline-year .note {
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  color: var(--v6-ink-3);
  font-size: 14px;
  margin-top: 6px;
  max-width: 620px;
}
.v6-timeline-year .yearbook-link {
  display: inline-block;
  margin-top: 12px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.22em;
  color: var(--v6-gold);
  text-transform: uppercase;
  padding: 6px 12px;
  border: 1px solid var(--v6-line-hi);
  border-radius: 999px;
  transition: background 200ms ease, color 200ms ease;
}
.v6-timeline-year .yearbook-link:hover {
  background: var(--v6-gold);
  color: var(--v6-bg);
}

/* Yearbook (per-season pages) */
.v6-yearbook-hero {
  border-bottom: 1px solid var(--v6-line);
  padding-bottom: 32px;
  margin-bottom: 32px;
}
.v6-champ-card {
  margin-top: 24px;
  padding: 22px 26px;
  border: 1px solid var(--v6-line-hi);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(217, 178, 90, 0.08), rgba(217, 178, 90, 0.02));
  display: flex;
  align-items: center;
  gap: 22px;
}
.v6-champ-card .portrait {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--v6-gold);
  flex-shrink: 0;
}
.v6-champ-card .portrait img { width: 100%; height: 100%; object-fit: cover; }
.v6-champ-card .info .k {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.24em;
  color: var(--v6-gold);
  text-transform: uppercase;
  margin-bottom: 6px;
}
.v6-champ-card .info .team {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 32px;
  letter-spacing: 0.02em;
  color: var(--v6-ink);
  line-height: 1;
}
.v6-champ-card .info .owner {
  margin-top: 4px;
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  color: var(--v6-ink-2);
  font-size: 15px;
}

/* Standings table */
.v6-standings {
  margin-top: 28px;
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}
.v6-standings th {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--v6-ink-3);
  text-align: left;
  padding: 12px 12px;
  border-bottom: 1px solid var(--v6-line-hi);
}
.v6-standings td {
  padding: 12px;
  border-bottom: 1px solid var(--v6-line);
  color: var(--v6-ink-2);
}
.v6-standings tr:hover td { background: rgba(217, 178, 90, 0.04); }
.v6-standings .finish {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  color: var(--v6-gold);
  width: 40px;
}
.v6-standings .team-name { color: var(--v6-ink); }
.v6-standings tr.champ td { background: rgba(217, 178, 90, 0.06); }
.v6-standings tr.champ .finish { color: var(--v6-gold-hi); }
.v6-standings tr.champ .team-name { color: var(--v6-gold-hi); }

/* Rules — formal doc */
.v6-rules-section {
  margin-top: 40px;
  padding-top: 30px;
  border-top: 1px solid var(--v6-line);
}
.v6-rules-section:first-of-type {
  border-top: none;
  padding-top: 20px;
}
.v6-rules-section h2 {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 34px;
  letter-spacing: 0.02em;
  color: var(--v6-ink);
  margin-bottom: 18px;
}
.v6-rules-section h2 .num {
  color: var(--v6-gold);
  margin-right: 10px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 22px;
  letter-spacing: 0.16em;
}
.v6-rules-section p {
  color: var(--v6-ink-2);
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 12px;
  max-width: 720px;
}
.v6-rules-list {
  list-style: none;
  padding: 0;
  margin: 12px 0;
}
.v6-rules-list li {
  display: flex;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px dashed var(--v6-line);
  color: var(--v6-ink-2);
  font-size: 15px;
  line-height: 1.55;
}
.v6-rules-list li:last-child { border-bottom: none; }
.v6-rules-list li .k {
  flex-shrink: 0;
  min-width: 200px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  letter-spacing: 0.16em;
  color: var(--v6-gold);
  text-transform: uppercase;
}
.v6-rules-list li .v {
  color: var(--v6-ink);
}
@media (max-width: 640px) {
  .v6-rules-list li { flex-direction: column; gap: 4px; }
  .v6-rules-list li .k { min-width: 0; }
}
.v6-prize-pool {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-top: 18px;
}
@media (max-width: 640px) { .v6-prize-pool { grid-template-columns: 1fr 1fr; } }
.v6-prize-cell {
  padding: 16px 18px;
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
}
.v6-prize-cell .lab {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.22em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
  margin-bottom: 6px;
}
.v6-prize-cell .amt {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 30px;
  color: var(--v6-gold-hi);
  line-height: 1;
}
.v6-prize-cell .note {
  margin-top: 6px;
  font-size: 11.5px;
  color: var(--v6-ink-3);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  letter-spacing: 0.05em;
}

/* Keepers page (renamed from vault) */
.v6-keepers-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-top: 30px;
}
@media (max-width: 1000px) { .v6-keepers-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 720px)  { .v6-keepers-grid { grid-template-columns: repeat(2, 1fr); } }
.v6-keeper-slot {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 14px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  transition: border-color 180ms ease;
}
.v6-keeper-slot.locked { border-color: var(--v6-line-hi); }
.v6-keeper-slot.submitted { border-color: rgba(97, 194, 133, 0.4); }
.v6-keeper-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  overflow: hidden;
  border: 1px solid var(--v6-line);
  flex-shrink: 0;
}
.v6-keeper-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }
.v6-keeper-body { min-width: 0; }
.v6-keeper-owner {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 18px;
  letter-spacing: 0.04em;
  color: var(--v6-ink);
  line-height: 1;
}
.v6-keeper-status {
  margin-top: 4px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.2em;
  color: var(--v6-ink-3);
  text-transform: uppercase;
}
.v6-keeper-slot.submitted .v6-keeper-status { color: #61c285; }
.v6-keeper-banned {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed rgba(217, 178, 90, 0.18);
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.v6-keeper-banned .lab {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9px;
  letter-spacing: 0.2em;
  color: var(--v6-ink-4);
  text-transform: uppercase;
}
.v6-keeper-banned .val {
  font-family: 'Playfair Display', 'Georgia', serif;
  font-style: italic;
  font-size: 13.5px;
  color: #d9b25a;
  line-height: 1.3;
  letter-spacing: 0.005em;
}
.v6-keeper-slot.submitted .v6-keeper-banned .val { color: var(--v6-ink-2); }

/* Footer */
.v6-foot {
  padding: 24px;
  border-top: 1px solid var(--v6-line);
  text-align: center;
  color: var(--v6-ink-4);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}
.v6-foot a { color: var(--v6-ink-3); }
.v6-foot a:hover { color: var(--v6-gold); }

/* ============ HQ v3.1 — Roster grid ============ */
.v6-roster-grid {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 10px;
  margin-bottom: 10px;
}
@media (max-width: 900px) { .v6-roster-grid { grid-template-columns: repeat(5, 1fr); } }
@media (max-width: 520px) { .v6-roster-grid { grid-template-columns: repeat(3, 1fr); } }
.v6-roster-slot {
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 14px 8px;
  text-align: center;
  background: var(--v6-bg-lift);
}
.v6-roster-slot.starter { border-color: rgba(217,178,90,0.5); background: rgba(217,178,90,0.06); }
.v6-roster-slot.bench { border-style: dashed; opacity: 0.9; }
.v6-roster-slot.ir { border-color: rgba(220,80,80,0.5); background: rgba(220,80,80,0.05); }
.v6-roster-slot .pos {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 15px;
  letter-spacing: 0.05em;
  color: var(--v6-ink-1);
}
.v6-roster-slot .ct {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 22px;
  color: var(--v6-gold-hi);
  font-weight: 600;
  margin-top: 4px;
}
.v6-roster-note {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12.5px;
  color: var(--v6-ink-3);
  margin-top: 6px;
}

/* ============ HQ v3.1 — Scoring grid ============ */
.v6-scoring-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}
@media (max-width: 1100px) { .v6-scoring-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 720px) { .v6-scoring-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .v6-scoring-grid { grid-template-columns: 1fr; } }
.v6-scoring-col {
  background: var(--v6-bg-lift);
  border: 1px solid var(--v6-line);
  border-radius: 10px;
  padding: 14px 16px;
}
.v6-scoring-h {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 17px;
  color: var(--v6-gold-hi);
  letter-spacing: 0.05em;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--v6-line);
  margin-bottom: 8px;
}
.v6-scoring-col ul { list-style: none; padding: 0; margin: 0; }
.v6-scoring-col li {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 4px 0;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12.5px;
  color: var(--v6-ink-2);
  border-bottom: 1px dotted rgba(255,255,255,0.05);
}
.v6-scoring-col li:last-child { border-bottom: none; }
.v6-scoring-col li b {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  color: var(--v6-ink-1);
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  margin-left: 10px;
}

/* -------- HQ Basics strip (compact rules doorway) -------- */
.v6-basics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.v6-basic {
  padding: 14px 14px 12px;
  border: 1px solid rgba(217, 178, 90, 0.18);
  background: rgba(15, 12, 9, 0.55);
  border-radius: 6px;
}
.v6-basic .k {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #948b78;
  margin-bottom: 6px;
}
.v6-basic .v {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 24px;
  letter-spacing: 0.03em;
  color: #f4f2ec;
  line-height: 1;
  margin-bottom: 4px;
}
.v6-basic .sub {
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  color: #7d7563;
  line-height: 1.35;
}
.v6-basics-cta {
  margin-top: 18px;
  display: flex;
  gap: 24px;
  align-items: center;
  flex-wrap: wrap;
}
.v6-basics-link {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #d9b25a;
  border-bottom: 1px solid rgba(217, 178, 90, 0.35);
  padding-bottom: 3px;
  transition: color 0.2s, border-color 0.2s;
}
.v6-basics-link:hover { color: #f2cc70; border-color: #d9b25a; }
@media (max-width: 900px)  { .v6-basics { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px)  { .v6-basics { grid-template-columns: 1fr; } }

/* -------- The 16 by Division group -------- */
.v6-divs-portraits {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
}
.v6-div-group {
  border: 1px solid rgba(217, 178, 90, 0.18);
  background: rgba(15, 12, 9, 0.4);
  border-radius: 8px;
  padding: 18px;
}
.v6-div-group-head { margin-bottom: 14px; }
.v6-div-group-name {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 22px;
  letter-spacing: 0.08em;
  color: #d9b25a;
  margin-bottom: 4px;
}
.v6-div-group-why {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  color: #948b78;
  line-height: 1.5;
}
.v6-div-group-cells {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.v6-div-group-cells .v6-16-cell {
  aspect-ratio: 1 / 1.15;
}
@media (max-width: 900px) {
  .v6-divs-portraits { grid-template-columns: 1fr; }
}

/* -------- Standings tabs (Records page) -------- */
.v6-standings-tabs {
  display: flex;
  gap: 4px;
  margin: 18px 0 12px;
  border-bottom: 1px solid rgba(217, 178, 90, 0.15);
}
.v6-tab {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #7d7563;
  background: transparent;
  border: none;
  padding: 10px 16px;
  cursor: pointer;
  border-bottom: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s;
}
.v6-tab:hover { color: #948b78; }
.v6-tab.active {
  color: #d9b25a;
  border-bottom-color: #d9b25a;
}
.v6-tab:focus-visible {
  outline: 1px solid #d9b25a;
  outline-offset: 2px;
}
.v6-standings-view.hidden { display: none; }

/* -------- Accessibility -------- */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Focus rings — visible on keyboard nav, hidden on mouse click */
:focus-visible {
  outline: 2px solid #d9b25a;
  outline-offset: 3px;
  border-radius: 2px;
}
button:focus-visible,
a:focus-visible {
  outline-offset: 4px;
}

/* Skip link for keyboard users (hidden until focused) */
.skip-link {
  position: absolute;
  top: -100px;
  left: 12px;
  z-index: 999;
  background: #d9b25a;
  color: #0a0806;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 12px 20px;
  text-decoration: none;
}
.skip-link:focus {
  top: 12px;
}

/* -------- /owners page: dossier grid -------- */
.v6-owners-section { margin-top: 32px; }
.v6-owner-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media (max-width: 900px) { .v6-owner-grid { grid-template-columns: 1fr; } }

.v6-owner-card {
  background: rgba(30, 26, 20, 0.55);
  border: 1px solid rgba(217, 178, 90, 0.15);
  border-top: 3px solid var(--fc, #d9b25a);
  padding: 22px 22px 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: border-color 0.2s, transform 0.2s;
}
.v6-owner-card:hover {
  border-color: rgba(217, 178, 90, 0.4);
  transform: translateY(-2px);
}
.v6-owner-head {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.v6-owner-crest {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
}
.v6-owner-crest svg { width: 100%; height: 100%; }
.v6-owner-titleblock { flex: 1; min-width: 0; }
.v6-owner-team {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 22px;
  letter-spacing: 0.04em;
  color: #f4f2ec;
  line-height: 1.1;
}
.v6-owner-name {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #d9b25a;
  margin-top: 4px;
}
.v6-owner-nfl {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  color: #7d7563;
  margin-top: 6px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.v6-owner-nfl .fdot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--fc, #d9b25a);
  display: inline-block;
}
.v6-owner-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid rgba(217, 178, 90, 0.1);
  border-bottom: 1px solid rgba(217, 178, 90, 0.1);
}
.v6-owner-stat { text-align: left; }
.v6-owner-stat .k {
  font-family: 'JetBrains Mono', monospace;
  font-size: 9px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #7d7563;
}
.v6-owner-stat .v {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 24px;
  color: #f4f2ec;
  line-height: 1.1;
  margin-top: 2px;
}
.v6-owner-stat .v.small {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 500;
}
.v6-owner-note {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: #a89f8a;
}
.v6-owner-alias {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #948b78;
}
.v6-owner-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.v6-owner-b {
  font-family: 'JetBrains Mono', monospace;
  font-size: 9px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 4px 8px;
  border: 1px solid rgba(217, 178, 90, 0.25);
  color: #a89f8a;
  background: rgba(217, 178, 90, 0.05);
}
.v6-owner-b.gold {
  color: #d9b25a;
  border-color: rgba(217, 178, 90, 0.5);
  background: rgba(217, 178, 90, 0.1);
}
.v6-owner-b.role {
  color: #0a0806;
  background: #d9b25a;
  border-color: #d9b25a;
}

/* -------- v6 footer (shared) -------- */
.v6-footer {
  margin-top: 80px;
  border-top: 1px solid rgba(217, 178, 90, 0.15);
  padding: 40px 24px;
}
.v6-footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.v6-footer-brand {
  font-family: 'Bebas Neue', sans-serif;
  letter-spacing: 0.1em;
  color: #d9b25a;
  font-size: 18px;
}
.v6-footer-brand .amp { color: #7d7563; margin: 0 4px; }
.v6-footer-note {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.1em;
  color: #7d7563;
  text-transform: uppercase;
}

/* ============================================================
   v6 WEEKLY PAGE — restyles the legacy weekly modules to match HQ.
   Scoped to elements on the /preview/week-4 route via .v6-weekly-hero
   and by restyling the shared .sec-head + .band classes only where
   they appear alongside .v6-shell.
   ============================================================ */

.v6-weekly-hero {
  padding: 80px 32px 60px;
  border-bottom: 1px solid #22201d;
  background: linear-gradient(180deg, #0a0806 0%, #0e0b08 100%);
}
.v6-weekly-hero-inner {
  max-width: 1280px;
  margin: 0 auto;
}
.v6-hero-eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #d9b25a;
  margin-bottom: 20px;
}
.v6-hero-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(72px, 12vw, 168px);
  line-height: 0.9;
  letter-spacing: 0.02em;
  color: #f4f2ec;
  margin: 0 0 24px;
}
.v6-hero-sub {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  line-height: 1.55;
  color: #9c9689;
  max-width: 68ch;
  margin: 0 0 48px;
}
.v6-hero-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  border-top: 1px solid #22201d;
  padding-top: 40px;
}
@media (max-width: 900px) {
  .v6-hero-grid { grid-template-columns: 1fr; gap: 24px; }
  .v6-weekly-hero { padding: 56px 20px 40px; }
}
.v6-hero-cell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.v6-hero-cell .k {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #7d7563;
}
.v6-hero-cell .v {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(28px, 3.4vw, 40px);
  line-height: 1;
  letter-spacing: 0.02em;
  color: #f4f2ec;
}
.v6-hero-cell .v .vs {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-weight: 400;
  font-size: 0.6em;
  color: #d9b25a;
  padding: 0 6px;
}
.v6-hero-cell .sub {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: #9c9689;
  line-height: 1.5;
}

/* Restyle the legacy .sec-head that appears in weekly modules so
   its typography matches the HQ section eyebrow + title pattern.
   Scoped to body.weekly to avoid touching any other pages. */
body.weekly .sec-head {
  border-top: 1px solid #22201d;
  padding-top: 40px;
  margin-top: 40px;
  align-items: flex-start;
}
body.weekly .sec-head .title h2 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(40px, 5vw, 72px);
  letter-spacing: 0.02em;
  color: #f4f2ec;
}
body.weekly .sec-head .title .eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  color: #d9b25a;
  text-transform: uppercase;
}
body.weekly .sec-head .side .num {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 32px;
  color: #d9b25a;
  opacity: 0.7;
}

/* ============================================================
   HERO TAKE — the big above-the-fold editorial headline that
   opens the site. ESPN energy. One story. No cards. Big type.
   ============================================================ */
.v6-hero-take-section {
  padding-top: 24px !important;
}
.v6-hero-take {
  position: relative;
  padding: 48px 32px 56px;
  border-top: 1px solid #22201d;
  border-bottom: 1px solid #22201d;
  background:
    radial-gradient(1200px 500px at 15% 20%, rgba(217, 178, 90, 0.10), transparent 60%),
    linear-gradient(180deg, #0e0b08 0%, #0a0806 100%);
}
.v6-hero-take-eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #d9b25a;
  margin-bottom: 24px;
}
.v6-hero-take-head {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(56px, 9vw, 132px);
  line-height: 0.92;
  letter-spacing: 0.01em;
  color: #f4f2ec;
  margin: 0 0 28px;
  max-width: 22ch;
}
.v6-hero-take-body {
  font-family: 'Inter', sans-serif;
  font-size: clamp(17px, 1.6vw, 22px);
  line-height: 1.5;
  color: #c8c1b0;
  max-width: 62ch;
  margin-bottom: 32px;
}
.v6-hero-take-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-top: 20px;
  border-top: 1px solid #22201d;
}
.v6-hero-take-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #d9b25a;
}
.v6-hero-take-more {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #7d7563;
}
@media (max-width: 720px) {
  .v6-hero-take { padding: 36px 20px 40px; }
  .v6-hero-take-head { font-size: clamp(44px, 12vw, 72px); }
}

/* ============================================================
   POWER RANKINGS — compact 4×4 board on the homepage.
   One card per team: rank, owner name, one-line headline. Full
   analysis lives on /talk.html#power.
   Top 4 get gold accent, bottom 4 get muted.
   ============================================================ */
.v6-pr-board {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.v6-pr-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 14px 16px;
  background: linear-gradient(180deg, #12100c 0%, #0e0b08 100%);
  border: 1px solid #22201d;
  border-radius: 6px;
  text-decoration: none;
  color: inherit;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
  min-height: 118px;
}
.v6-pr-cell:hover {
  background: rgba(217, 178, 90, 0.05);
  border-color: #3a342a;
  transform: translateY(-1px);
}
.v6-pr-cell-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}
.v6-pr-cell-rank {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 30px;
  line-height: 1;
  letter-spacing: 0.02em;
  color: #3d3830;
}
.v6-pr-cell.is-top4 .v6-pr-cell-rank { color: #d9b25a; }
.v6-pr-cell.is-top8 .v6-pr-cell-rank { color: #7d6534; }
.v6-pr-cell.is-bottom .v6-pr-cell-rank { color: #2a2620; }
.v6-pr-cell-rings {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 2px 4px;
  border-radius: 999px;
  background: rgba(10,8,6,0.55);
  border: 1px solid rgba(217,178,90,0.35);
}
.v6-pr-cell-delta {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  letter-spacing: 0.04em;
  padding: 2px 6px;
  border-radius: 3px;
  margin-right: 4px;
}
.v6-pr-cell-delta.up {
  color: #6dcf7a;
  background: rgba(109, 207, 122, 0.10);
  border: 1px solid rgba(109, 207, 122, 0.28);
}
.v6-pr-cell-delta.down {
  color: #d97a68;
  background: rgba(217, 122, 104, 0.10);
  border: 1px solid rgba(217, 122, 104, 0.28);
}
.v6-pr-cell-rings .v6-ring {
  width: 12px;
  height: 12px;
}
.v6-ring-x {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10px;
  color: #d9b25a;
  padding-left: 2px;
  font-weight: 700;
}
.v6-pr-cell-name {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 20px;
  letter-spacing: 0.06em;
  color: #f4f2ec;
  margin-top: 4px;
  line-height: 1.05;
}
.v6-pr-cell-line {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-weight: 500;
  font-size: 14px;
  color: #d9b25a;
  line-height: 1.35;
  margin-top: 2px;
}
.v6-pr-more {
  text-align: right;
  margin-top: 18px;
}
.v6-pr-more a {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 12px;
  color: #d9b25a;
  text-decoration: none;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(217,178,90,0.35);
  padding-bottom: 2px;
}
.v6-pr-more a:hover { color: #f4d78c; border-bottom-color: #d9b25a; }
@media (max-width: 900px) {
  .v6-pr-board { grid-template-columns: repeat(2, 1fr); }
  .v6-pr-cell { min-height: 108px; }
  /* Lift muted rank/headline on smaller screens so #13-16 stays legible. */
  .v6-pr-cell.is-bottom .v6-pr-cell-rank { color: #4a4238; }
  .v6-pr-cell.is-bottom .v6-pr-cell-line { color: #b09257; }
}
@media (max-width: 500px) {
  .v6-pr-board { grid-template-columns: 1fr; }
  .v6-pr-cell {
    min-height: 0;
    padding: 14px 16px 16px;
  }
  .v6-pr-cell-name { font-size: 22px; }
  /* On single-column phones, every card gets equal presence — the muted */
  /* treatment is a desktop-only visual hierarchy signal.                 */
  .v6-pr-cell.is-bottom .v6-pr-cell-rank { color: #6a5f4d; }
  .v6-pr-cell.is-bottom .v6-pr-cell-line { color: #c6a262; }
  .v6-pr-cell.is-top8 .v6-pr-cell-rank { color: #a48546; }
}

/* ============================================================
   TALK OF THE LEAGUE — commissioner take cards on the homepage.
   Real receipts live on /talk. This is the teaser.
   ============================================================ */
.v6-talk {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  align-items: stretch;
}
@media (max-width: 900px) {
  .v6-talk { grid-template-columns: 1fr; }
}
.v6-talk-card {
  background: linear-gradient(180deg, #12100c 0%, #0e0b08 100%);
  border: 1px solid #22201d;
  border-left: 3px solid #d9b25a;
  padding: 24px 22px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.v6-talk-eyebrow {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #d9b25a;
}
.v6-talk-body {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.4;
  color: #f4f2ec;
  flex: 1;
}
.v6-talk-attr {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #7d7563;
}
.v6-talk-more {
  grid-column: 1 / -1;
  display: block;
  margin-top: 16px;
  padding: 14px 20px;
  border: 1px solid #22201d;
  color: #d9b25a;
  text-decoration: none;
  text-align: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  transition: background 0.18s ease, border-color 0.18s ease;
}
.v6-talk-more:hover {
  background: rgba(217, 178, 90, 0.06);
  border-color: #d9b25a;
}

/* ============================================================
   FOOTER NAV — compressed doorway grid.
   Sits at the bottom of the homepage. Six mini-links.
   ============================================================ */
.v6-footnav {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1px;
  background: #22201d;
  border-top: 1px solid #22201d;
  border-bottom: 1px solid #22201d;
  margin-top: 40px;
}
@media (max-width: 900px) {
  .v6-footnav { grid-template-columns: repeat(2, 1fr); }
}
.v6-footnav-link {
  background: #0a0806;
  padding: 20px 16px;
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  gap: 6px;
  transition: background 0.18s ease;
}
.v6-footnav-link:hover {
  background: #12100c;
}
.v6-footnav-link .k {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #d9b25a;
}
.v6-footnav-link .v {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 18px;
  letter-spacing: 0.03em;
  color: #f4f2ec;
}

/* ============================================================
   PAST DIVISION WINNERS — divisions.html table
   ============================================================ */
.pw-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.pw-table {
  width: 100%;
  min-width: 720px;
  border-collapse: separate;
  border-spacing: 0;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 13px;
  color: var(--v6-ink);
  background: rgba(15, 12, 9, 0.5);
  border: 1px solid rgba(217, 178, 90, 0.14);
  border-radius: 4px;
  overflow: hidden;
}
.pw-table thead th {
  background: rgba(217, 178, 90, 0.06);
  color: var(--v6-gold);
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 500;
  padding: 12px 14px;
  text-align: left;
  border-bottom: 1px solid rgba(217, 178, 90, 0.2);
  white-space: nowrap;
}
.pw-year-h { width: 80px; }
.pw-table tbody tr + tr td,
.pw-table tbody tr + tr th { border-top: 1px solid rgba(244, 242, 236, 0.06); }
.pw-year {
  font-family: 'Bebas Neue', Impact, sans-serif;
  font-size: 22px;
  letter-spacing: 0.04em;
  color: var(--v6-gold);
  padding: 14px;
  text-align: left;
  vertical-align: top;
  border-right: 1px solid rgba(244, 242, 236, 0.06);
  background: rgba(217, 178, 90, 0.03);
}
.pw-cell {
  padding: 12px 14px;
  vertical-align: top;
  min-width: 150px;
}
.pw-empty {
  padding: 12px 14px;
  color: rgba(244, 242, 236, 0.28);
  text-align: center;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
}
.pw-team {
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 600;
  font-size: 13px;
  color: var(--v6-cream);
  line-height: 1.3;
}
.pw-owner {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 10.5px;
  letter-spacing: 0.06em;
  color: rgba(244, 242, 236, 0.62);
  margin-top: 2px;
}
.pw-rec {
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 11px;
  color: var(--v6-gold);
  margin-top: 6px;
  letter-spacing: 0.04em;
}
.pw-tie {
  display: inline-block;
  margin-top: 4px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
  font-size: 9.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(217, 178, 90, 0.7);
  border: 1px solid rgba(217, 178, 90, 0.28);
  border-radius: 2px;
  padding: 2px 5px;
  cursor: help;
}

/* Full tiebreak comparison block (winner vs runner-up + margin) */
.pw-tiebar {
  margin-top: 10px;
  padding: 8px 10px;
  background: rgba(217, 178, 90, 0.06);
  border-left: 2px solid rgba(217, 178, 90, 0.42);
  border-radius: 2px;
  font-family: 'JetBrains Mono', ui-monospace, monospace;
}
.pw-tiebar-tag {
  font-size: 9px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(217, 178, 90, 0.85);
  margin-bottom: 6px;
}
.pw-tiebar-row {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 11px;
  color: rgba(244, 242, 236, 0.72);
  line-height: 1.5;
}
.pw-tiebar-row.pw-tiebar-win {
  color: var(--v6-cream);
  font-weight: 600;
}
.pw-tiebar-row.pw-tiebar-win .pw-tiebar-pf { color: var(--v6-gold); }
.pw-tiebar-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  flex: 1 1 auto;
}
.pw-tiebar-pf {
  flex: 0 0 auto;
  font-variant-numeric: tabular-nums;
}
.pw-tiebar-diff {
  margin-top: 5px;
  font-size: 10px;
  letter-spacing: 0.08em;
  color: rgba(217, 178, 90, 0.65);
}

/* =========================================================================
   V7.6 · The Room Speaks strip — inline manager quotes on HQ
   ========================================================================= */
.v6-room-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width: 900px) { .v6-room-strip { grid-template-columns: 1fr; } }

.v6-room-card {
  background: #12100c;
  border: 1px solid #22201d;
  border-left: 3px solid #d9b25a;
  padding: 22px 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.v6-room-card-meta {
  display: flex;
  gap: 10px;
  align-items: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.14em;
  color: #d9b25a;
  text-transform: uppercase;
}
.v6-room-card-body {
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.4;
  color: #f4f2ec;
  margin: 0;
  flex: 1;
}
.v6-room-card-attr {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding-top: 12px;
  border-top: 1px solid #22201d;
}
.v6-room-card-franchise {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 17px;
  letter-spacing: 0.05em;
  color: #f4f2ec;
  text-decoration: none;
}
.v6-room-card-franchise:hover { color: #d9b25a; }
.v6-room-card-handle {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: #6d685e;
}
.v6-room-quiet {
  background: #0f0e0a;
  border: 1px dashed #2a2823;
  padding: 32px 28px;
  text-align: center;
  color: #8a857a;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  line-height: 1.55;
}
.v6-room-quiet strong {
  display: block;
  color: #d9b25a;
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.v6-room-quiet a {
  color: #d9b25a;
  text-decoration: none;
  border-bottom: 1px solid #d9b25a;
}

/* ============ V7.9 · Single rotating Room quote (below hero) ============ */
.v6-room-single-section {
  padding-top: 0;
  padding-bottom: 40px;
}
.v6-room-single {
  min-height: 76px;
}
.v6-room-single-inner {
  display: block;
  padding: 22px 26px;
  border: 1px solid rgba(217, 178, 90, 0.35);
  border-left: 3px solid #d9b25a;
  background: linear-gradient(180deg, rgba(217, 178, 90, 0.04), rgba(217, 178, 90, 0.01));
  text-decoration: none;
  color: inherit;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.v6-room-single-inner:hover {
  border-color: rgba(217, 178, 90, 0.65);
  background: linear-gradient(180deg, rgba(217, 178, 90, 0.07), rgba(217, 178, 90, 0.02));
}
.v6-room-single-eyebrow {
  display: block;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #d9b25a;
  margin-bottom: 10px;
}
.v6-room-single-body {
  margin: 0 0 12px 0;
  font-family: 'Playfair Display', serif;
  font-style: italic;
  font-size: clamp(20px, 2.4vw, 28px);
  line-height: 1.3;
  color: #f4f2ec;
}
.v6-room-single-attr {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.v6-room-single-franchise {
  color: #f4f2ec;
  font-weight: 700;
}
.v6-room-single-handle {
  color: rgba(244, 242, 236, 0.5);
}
.v6-room-single-more {
  margin-left: auto;
  color: #d9b25a;
}
.v6-room-single-quiet {
  padding: 18px 22px;
  border: 1px dashed rgba(244, 242, 236, 0.18);
  color: rgba(244, 242, 236, 0.65);
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
}
.v6-room-single-quiet-body {
  display: block;
  margin-top: 6px;
  color: rgba(244, 242, 236, 0.75);
  font-size: 13px;
  letter-spacing: 0;
  text-transform: none;
}
.v6-room-single-quiet a {
  color: #d9b25a;
  text-decoration: none;
  border-bottom: 1px solid #d9b25a;
}
@media (max-width: 640px) {
  .v6-room-single-body { font-size: 18px; }
  .v6-room-single-more { margin-left: 0; width: 100%; }
}

/* ============ V8.9 · The Ledger (4 record tiles on home) ============ */
.v6-ledger {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 24px;
}
.v6-ledger-tile {
  display: block;
  text-decoration: none;
  color: inherit;
  background: #12100c;
  border: 1px solid #22201d;
  overflow: hidden;
  transition: border-color 0.2s ease, transform 0.2s ease;
}
.v6-ledger-tile:hover {
  border-color: rgba(217, 178, 90, 0.55);
  transform: translateY(-2px);
}
.v6-ledger-portrait {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #0a0806;
}
.v6-ledger-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: grayscale(0.15) contrast(1.02);
}
.v6-ledger-portrait::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10,8,6,0) 45%, rgba(10,8,6,0.85) 100%);
  pointer-events: none;
}
.v6-ledger-logo {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(10, 8, 6, 0.72);
  border: 1px solid rgba(244, 242, 236, 0.14);
  display: grid;
  place-items: center;
  z-index: 2;
  backdrop-filter: blur(4px);
}
.v6-ledger-logo img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  display: block;
}
.v6-ledger-body {
  padding: 14px 16px 16px;
}
.v6-ledger-eye {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #d9b25a;
  margin-bottom: 6px;
}
.v6-ledger-val {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 42px;
  line-height: 1;
  letter-spacing: 0.02em;
  color: #f4f2ec;
  margin: 0 0 8px;
}
.v6-ledger-who {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: rgba(244, 242, 236, 0.86);
  line-height: 1.35;
  margin-bottom: 2px;
}
.v6-ledger-yr {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10.5px;
  letter-spacing: 0.08em;
  color: rgba(244, 242, 236, 0.5);
}
@media (max-width: 900px) {
  .v6-ledger { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .v6-ledger-val { font-size: 36px; }
}
@media (max-width: 480px) {
  .v6-ledger-val { font-size: 32px; }
}

/* ============ V8.9 · Picks Owned grid (Draft HQ) ============ */
.po-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  margin: 8px 0 16px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  color: rgba(244, 242, 236, 0.7);
}
.po-lg { display: inline-flex; align-items: center; gap: 8px; }
.po-lg::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border: 1px solid rgba(244, 242, 236, 0.2);
  background: transparent;
}
.po-lg-gain::before { background: rgba(217, 178, 90, 0.35); border-color: rgba(217, 178, 90, 0.7); }
.po-lg-lost::before { background: rgba(219, 84, 84, 0.25); border-color: rgba(219, 84, 84, 0.65); }
.po-lg-note { color: #d9b25a; }
.po-lg-note::before { display: none; }

.po-scroll {
  overflow-x: auto;
  border: 1px solid #22201d;
  background: #12100c;
  -webkit-overflow-scrolling: touch;
}
.po-grid {
  width: 100%;
  border-collapse: collapse;
  min-width: 780px;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: #f4f2ec;
}
.po-grid thead th {
  background: #0a0806;
  border-bottom: 1px solid #22201d;
  padding: 10px 8px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(244, 242, 236, 0.6);
  text-align: center;
  white-space: nowrap;
}
.po-th-team { text-align: left; padding-left: 14px; }
.po-th-total { color: #d9b25a; }
.po-grid tbody tr {
  border-top: 1px solid rgba(244, 242, 236, 0.05);
}
.po-grid tbody tr:hover {
  background: rgba(217, 178, 90, 0.03);
}
.po-row-team {
  padding: 10px 14px;
  text-align: left;
  font-weight: 400;
  border-right: 1px solid rgba(244, 242, 236, 0.06);
  min-width: 180px;
}
.po-row-name {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1.2;
}
.po-row-owner {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.1em;
  color: rgba(244, 242, 236, 0.45);
  text-transform: uppercase;
  margin-top: 2px;
}
.po-cell {
  text-align: center;
  padding: 10px 8px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
  color: rgba(244, 242, 236, 0.75);
  min-width: 34px;
}
.po-cell.po-gain {
  background: rgba(217, 178, 90, 0.16);
  color: #d9b25a;
  font-weight: 600;
}
.po-cell.po-lost {
  background: rgba(219, 84, 84, 0.14);
  color: #db5454;
  font-weight: 600;
}
.po-total {
  text-align: center;
  padding: 10px 12px;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 16px;
  letter-spacing: 0.04em;
  color: #f4f2ec;
  border-left: 1px solid rgba(244, 242, 236, 0.06);
}
.po-total.po-total-up { color: #d9b25a; }
.po-total.po-total-down { color: #db5454; }

/* ============ V8.9.2 · Draft jump links ============ */
.draft-jump {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
  justify-content: center;
}
.draft-jump-link {
  display: inline-block;
  padding: 10px 16px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #f4f2ec;
  text-decoration: none;
  background: rgba(217, 178, 90, 0.05);
  border: 1px solid rgba(217, 178, 90, 0.28);
  border-radius: 3px;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
.draft-jump-link:hover {
  background: rgba(217, 178, 90, 0.14);
  border-color: rgba(217, 178, 90, 0.65);
  color: #d9b25a;
}

/* ============ V8.9.3 · Pick Trades simple cards ============ */
.pt-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
  margin-top: 8px;
}
.pt-card {
  background: #12100c;
  border: 1px solid #22201d;
  padding: 18px 20px;
}
.pt-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(244, 242, 236, 0.08);
}
.pt-team {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 20px;
  letter-spacing: 0.03em;
  color: #f4f2ec;
  line-height: 1.1;
}
.pt-owner {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10.5px;
  letter-spacing: 0.14em;
  color: rgba(244, 242, 236, 0.5);
  text-transform: uppercase;
  white-space: nowrap;
}
.pt-line {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
}
.pt-line + .pt-line {
  border-top: 1px dashed rgba(244, 242, 236, 0.08);
}
.pt-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 3px;
  white-space: nowrap;
}
.pt-lost .pt-tag {
  background: rgba(219, 84, 84, 0.14);
  color: #db5454;
  border: 1px solid rgba(219, 84, 84, 0.35);
}
.pt-gain .pt-tag {
  background: rgba(217, 178, 90, 0.12);
  color: #d9b25a;
  border: 1px solid rgba(217, 178, 90, 0.4);
}
.pt-rounds {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 17px;
  letter-spacing: 0.06em;
  color: #f4f2ec;
}
.pt-lost .pt-rounds { color: rgba(244, 242, 236, 0.72); }
.pt-gain .pt-rounds { color: #f4f2ec; }

.pt-intact {
  margin-top: 24px;
  padding: 18px 20px;
  background: rgba(217, 178, 90, 0.04);
  border: 1px solid rgba(217, 178, 90, 0.2);
  border-radius: 4px;
}
.pt-intact-head {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  color: #d9b25a;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.pt-intact-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
}
.pt-intact-chip {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  color: rgba(244, 242, 236, 0.82);
  padding: 5px 10px;
  border: 1px solid rgba(244, 242, 236, 0.12);
  border-radius: 3px;
  background: rgba(244, 242, 236, 0.02);
}

/* ============ V8.9.4 · Record book "who" clarity ============ */
.who-block {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 18px;
  align-items: flex-start;
  margin-top: 10px;
}
.who-holder,
.who-opp {
  display: flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}
.who-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 9.5px;
  font-weight: 500;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 3px 7px;
  border-radius: 3px;
  white-space: nowrap;
  line-height: 1;
}
.who-tag.hold {
  background: rgba(217, 178, 90, 0.14);
  color: #d9b25a;
  border: 1px solid rgba(217, 178, 90, 0.42);
}
.who-tag.co {
  background: rgba(217, 178, 90, 0.14);
  color: #d9b25a;
  border: 1px solid rgba(217, 178, 90, 0.42);
}
.who-tag.opp {
  background: rgba(244, 242, 236, 0.05);
  color: rgba(244, 242, 236, 0.5);
  border: 1px solid rgba(244, 242, 236, 0.15);
}
.who-line {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}
.who-holder .who-team,
.who-holder .who-mgr {
  font-family: 'Inter', sans-serif;
}
.who-team {
  font-size: 14px;
  color: #f4f2ec;
  font-weight: 500;
}
.who-team.dim {
  color: rgba(244, 242, 236, 0.55);
  font-weight: 400;
  font-style: italic;
}
.who-mgr {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11.5px;
  letter-spacing: 0.08em;
  color: rgba(244, 242, 236, 0.6);
  text-transform: uppercase;
}
.who-wlt {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11.5px;
  letter-spacing: 0.08em;
  color: rgba(217, 178, 90, 0.72);
}
.co-holders .who-lines {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

/* Row-level compaction inside record list rows */
.v6-rec-row .who-block { margin-top: 8px; }
.v6-rec-row .who-team { font-size: 13.5px; }
.v6-rec-row .who-mgr { font-size: 11px; }

/* Plaque-level who-block sits under the big value */
.v6-plaque .who-block { justify-content: center; margin: 12px 0 8px; }
.v6-plaque-dual .col .who-block { justify-content: center; margin: 10px 0 6px; }

/* ============ V8.9.4 · Standings clarity ============ */
.v6-standings tbody tr.missed td {
  color: rgba(244, 242, 236, 0.5);
}
.v6-standings tbody tr.missed .tm {
  color: rgba(244, 242, 236, 0.68);
}
.v6-standings tbody tr.played td {
  color: rgba(244, 242, 236, 0.85);
}
.v6-standings tbody tr.champ td,
.v6-standings tbody tr.runner td,
.v6-standings tbody tr.third td {
  color: #f4f2ec;
}
/* Divider between playoff field (top 8) and missed playoffs (9-16) */
.v6-standings tbody tr.missed:first-of-type td {
  border-top: 2px solid rgba(217, 178, 90, 0.22) !important;
  padding-top: 14px !important;
  position: relative;
}
.v6-standings tbody tr.missed:first-of-type td:first-child::before {
  content: 'Missed playoffs \2193';
  position: absolute;
  top: -9px;
  left: 0;
  font-family: 'JetBrains Mono', monospace;
  font-size: 9.5px;
  letter-spacing: 0.16em;
  color: rgba(244, 242, 236, 0.42);
  text-transform: uppercase;
  background: #0a0806;
  padding: 0 8px;
}
/* Softer exit tags — no longer competing with the winner tags */
.fin-tag.exit {
  background: transparent !important;
  color: rgba(244, 242, 236, 0.4) !important;
  border: 1px solid rgba(244, 242, 236, 0.12) !important;
  font-family: 'JetBrains Mono', monospace;
  font-size: 9.5px !important;
  letter-spacing: 0.12em;
  padding: 3px 6px !important;
}
/* Row-height tightening for a cleaner rhythm */
.v6-standings tbody td {
  padding: 11px 12px !important;
}
