

:root {
  --paper: #f7f3ea;
  --paper-2: #efe8da;
  --card: #fffdf8;
  --ink: #1b1b1f;          
  --ink-2: #3c3a36;
  --muted: #6b665d;
  --line: #e2d9c8;
  --red: #d62828;          
  --red-ink: #b51f1f;
  --yellow: #ffe14d;       
  --night: #141a22;        
  --green: #1f8a4c;
  --neg: #c0392b;
  --shadow: 0 1px 0 rgba(27, 27, 31, .04), 0 8px 24px -12px rgba(27, 27, 31, .18);
  --radius: 14px;
  --wrap: 1180px;
  --display: "Archivo Black", "Arial Black", Arial, sans-serif;
  --body: "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;

  
  --fs-0: 1rem;            
  --fs-1: 1.25rem;         
  --fs-2: 1.5625rem;       
  --fs-3: 1.9375rem;       
  --fs-h1-min: 1.75rem;    
  --fs-4: 2.4375rem;       
  --fs-5: 3rem;            
  --fs-prose: 1.125rem;    
  --fs-prose-m: 1.0625rem; 
  --fs-s: .875rem;         
  --fs-xs: .75rem;         
  --fs-2xs: .625rem;       
  --sp-0: 4px;             
  --sp-1: 8px;            
  --sp-1-5: 12px;          
  --sp-2: 16px;
  --sp-3: 24px;            
  --sp-4: 32px;
  --sp-5: 48px;
  --sp-6: 64px;
  --section: 56px;         
  --gap: var(--sp-3);      
  --card-pad: 20px 24px;   
  --head-h: 60px;          
  --prose: 68ch;           
  --wide: 920px;           
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--head-h) + var(--sp-2)); }
body {
  margin: 0; background: var(--paper); color: var(--ink);
  font: 400 var(--fs-0)/1.6 var(--body); font-feature-settings: "ss01", "cv11";
  overflow-x: hidden;
}
img, svg { max-width: 100%; display: block; }

[data-art] > img { width: 100%; height: auto; }
a { color: inherit; text-decoration-color: rgba(27, 27, 31, .35); text-underline-offset: 3px; }
a:hover { text-decoration-color: var(--red); }
:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; border-radius: 4px; }

.wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--sp-3); }
@media (max-width: 640px) { .wrap { padding: 0 var(--sp-2); } :root { --section: 40px; --gap: var(--sp-2); --card-pad: 18px 20px; } }


h1, h2, h3 { font-family: var(--display); font-weight: 400; letter-spacing: -.01em; line-height: 1.1; margin: 0 0 var(--sp-1-5); }
h1 { font-size: clamp(var(--fs-h1-min), 3.2vw, var(--fs-4)); }
h2 { font-size: clamp(var(--fs-2), 2.4vw, var(--fs-3)); line-height: 1.15; }
h3 { font-size: var(--fs-1); letter-spacing: 0; line-height: 1.2; }
p { margin: 0 0 var(--sp-2); }
.lead { font-size: var(--fs-prose); color: var(--ink-2); max-width: 62ch; }
.eyebrow {
  font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--muted);
  display: inline-flex; gap: var(--sp-1); align-items: center; margin-bottom: var(--sp-2);
}
.eyebrow .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--red); }
.num { font-family: var(--mono); font-variant-numeric: tabular-nums; }
.muted { color: var(--muted); }
.tbd {
  font-family: var(--mono); font-size: var(--fs-s); background: #fff3b0; color: #6b5300; border: 1px dashed #c9a400;
  padding: 1px var(--sp-0); border-radius: 4px; white-space: normal;
}


.site-head { position: sticky; top: 0; z-index: 20; background: rgba(247, 243, 234, .92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); }
.site-head .wrap { display: flex; align-items: center; gap: var(--sp-2); height: var(--head-h); }
.brand { display: flex; align-items: center; gap: var(--sp-1); text-decoration: none; flex-shrink: 0; }
.brand .logo { width: 132px; height: auto; }
.nav { display: flex; gap: var(--sp-2); margin-left: auto; align-items: center; }
.nav a { text-decoration: none; font-weight: 600; font-size: var(--fs-s); color: var(--ink-2); }
.nav a:hover, .nav a[aria-current="page"] { color: var(--ink); box-shadow: inset 0 -2px 0 var(--red); }
.nav a.btn-yt, .nav a.btn-yt:hover { color: #fff; box-shadow: none; }
.btn {
  display: inline-flex; align-items: center; gap: var(--sp-1); padding: var(--sp-1-5) var(--sp-2); border-radius: 999px;
  font: 700 var(--fs-s)/1 var(--body); text-decoration: none; border: 2px solid var(--ink); background: var(--card); color: var(--ink);
  transition: transform .12s ease, background .12s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn-yt { background: var(--red); border-color: var(--red); color: #fff; }
.btn-yt:hover { background: var(--red-ink); border-color: var(--red-ink); }
.btn-yt svg { width: 1.2em; height: 1.2em; }
.btn-sm { padding: var(--sp-1) var(--sp-1-5); font-size: var(--fs-s); }
.menu-toggle { display: none; }

.menu { display: none; }
.menu summary {
  list-style: none; cursor: pointer; width: 42px; height: 42px; border-radius: 10px; border: 2px solid var(--ink);
  display: block; position: relative; background: var(--card);
}
.menu summary::-webkit-details-marker { display: none; }
.menu .bars, .menu .bars::before, .menu .bars::after {
  display: block; width: 18px; height: 2px; border-radius: 2px; background: var(--ink); position: relative; transition: transform .15s ease, background .15s ease;
}
.menu .bars { position: absolute; left: 50%; top: 50%; margin: -1px 0 0 calc(-1 * var(--sp-1)); }
.menu .bars::before, .menu .bars::after { content: ""; position: absolute; left: 0; }
.menu .bars::before { top: -6px; } .menu .bars::after { top: 6px; }
.menu[open] .bars { background: transparent; }
.menu[open] .bars::before { transform: translateY(6px) rotate(45deg); }
.menu[open] .bars::after { transform: translateY(-6px) rotate(-45deg); }
.menu-panel {
  position: absolute; left: 0; right: 0; top: var(--head-h); background: var(--paper); border-bottom: 1px solid var(--line);
  box-shadow: 0 14px 30px rgba(0, 0, 0, .12); padding: var(--sp-1) var(--sp-2) var(--sp-2); display: flex; flex-direction: column;
}
.nav .menu-panel a { display: block; padding: var(--sp-1-5) 4px; font-size: var(--fs-0); color: var(--ink); border-bottom: 1px solid var(--line); box-shadow: none; }
.nav .menu-panel a:last-child { border-bottom: 0; }
.nav .menu-panel a[aria-current="page"] { color: var(--red-ink); }

.nav > a { white-space: nowrap; }
@media (max-width: 1080px) {
  .nav > a:not(.btn) { display: none; }
  .nav { gap: var(--sp-1); }
  .menu { display: block; }
}
@media (max-width: 860px) { .brand .logo { width: 112px; } }





section.block { padding: var(--section) 0; }
section.block + section.block { border-top: 1px solid var(--line); }
main.bands section.block { border-top: 0; }
section.block.band { background: var(--paper-2); }
.section-head { display: flex; justify-content: space-between; align-items: end; gap: var(--sp-2); flex-wrap: wrap; margin-bottom: var(--sp-3); }
.section-head h2 { margin: 0; }
.link-arrow {
  font-weight: 700; white-space: nowrap; color: var(--red-ink);
  text-decoration: underline; text-decoration-thickness: 2px; text-decoration-color: rgba(181, 31, 31, .35);
}
.link-arrow:hover { color: var(--red); text-decoration-color: var(--red); }
.link-arrow::after { content: " →"; display: inline-block; margin-left: var(--sp-0); transition: transform .12s ease; }
.link-arrow:hover::after { transform: translateX(3px); }



.card { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }

.card.rule { padding: var(--sp-2) 0 0; background: none; border: 0; border-top: 3px solid var(--ink); border-radius: 0; box-shadow: none; }
.card.rule p { margin: 0; color: var(--muted); }



.grid { display: grid; gap: var(--gap); }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1080px) { .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .grid-3 { grid-template-columns: 1fr 1fr; } .grid-3.hm-home { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; } }



.feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: var(--sp-5); align-items: center; }
.feature.rev { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.feature.solo { grid-template-columns: 1fr; }
@media (max-width: 860px) { .feature, .feature.rev { grid-template-columns: 1fr; gap: var(--sp-3); } .feature.rev .art-col { order: 1; } }
.big-num { font: 600 clamp(var(--fs-4), 4vw, var(--fs-5))/1 var(--mono); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }


.video {
  position: relative; display: block; aspect-ratio: 16 / 9; border-radius: var(--radius); overflow: hidden;
  background: var(--night); box-shadow: 0 20px 50px -24px rgba(20, 26, 34, .55); text-decoration: none; color: #fff;
}
.video .art, .video .art svg, .video .art > img { width: 100%; height: 100%; }
.video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video .play {
  position: absolute; left: 50%; top: 50%; translate: -50% -50%; width: 88px; height: 62px; border-radius: 18px;
  background: var(--red); display: grid; place-items: center; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); transition: transform .15s ease;
}
.video .play::before { content: ""; border-left: 26px solid #fff; border-top: 16px solid transparent; border-bottom: 16px solid transparent; margin-left: var(--sp-0); }
.video:hover .play { transform: scale(1.06); }
.video .badge {
  position: absolute; left: 14px; bottom: 14px; background: rgba(20, 26, 34, .86); color: #fff; padding: var(--sp-0) var(--sp-1);
  border-radius: 8px; font: 600 var(--fs-xs)/1.2 var(--mono); letter-spacing: .04em;
}
.video .badge.right { left: auto; right: 14px; }
.video-note { font: var(--fs-xs)/1.4 var(--mono); color: var(--muted); margin-top: var(--sp-1); }
@media (max-width: 640px) { .video .play { width: 64px; height: 46px; border-radius: 14px; } .video .play::before { border-left-width: 20px; border-top-width: 12px; border-bottom-width: 12px; } }


.hero { padding: var(--sp-4) 0 var(--sp-5); }
.hero:has(+ #upcoming) { padding-bottom: var(--sp-1); } 
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: var(--sp-5); align-items: center; }
.hero h1 { font-size: clamp(var(--fs-h1-min), 2.9vw, var(--fs-4)); }
.tagline { font-family: var(--display); font-size: var(--fs-1); line-height: 1.25; margin: 0 0 var(--sp-2); }
.tagline span { white-space: nowrap; }
.tagline .r { color: var(--red); } .tagline .t { color: #c98a00; } .tagline .b { color: var(--green); }

.actions { display: flex; gap: var(--sp-1-5); flex-wrap: wrap; align-items: center; }
.hero .actions { margin-top: var(--sp-2); }

.hero.tight { padding-bottom: var(--sp-3); }
.hero.tight + section.block { padding-top: var(--sp-1); }
.hero.flush + section.block { padding-top: 0; }
.hero.ruled { padding-bottom: var(--sp-4); }
.hero.ruled .lead:last-child { margin-bottom: 0; }
.hero.ruled + section.block { border-top: 1px solid var(--line); padding-top: var(--sp-5); }

#upcoming + section.block { padding-top: var(--sp-3); }

h2.narrow { max-width: 24ch; }
@media (max-width: 900px) { .hero-grid { grid-template-columns: 1fr; gap: var(--sp-3); } }


.ep-card { overflow: hidden; display: flex; flex-direction: column; text-decoration: none; }
.ep-card .video { border-radius: 0; box-shadow: none; }
.ep-card .video .play { left: auto; top: auto; right: 16px; bottom: 14px; translate: none; width: 64px; height: 46px; border-radius: 14px; }
.ep-card .video .play::before { border-left-width: 20px; border-top-width: 12px; border-bottom-width: 12px; }
.next-card { justify-content: center; padding: var(--sp-4) var(--sp-3); background: var(--paper-2); box-shadow: none; border-style: dashed; }
.next-card h3 { font-size: var(--fs-1); }
.ep-card .body { padding: var(--card-pad); }
.ep-card h3 { font-size: var(--fs-1); margin-bottom: var(--sp-1); }
.ep-card p { color: var(--ink-2); margin-bottom: var(--sp-1-5); }

.ep-card .body .ep-links a { padding: var(--sp-1) 0; margin: calc(-1 * var(--sp-1-5)) 0; }
.ep-card .body > .link-arrow { position: relative; }
.ep-card .body > .link-arrow::before { content: ""; position: absolute; inset: -10px -4px; }
.ep-meta { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .06em; color: var(--muted); text-transform: uppercase; }

.series-link { color: inherit; text-decoration: none; }
.series-link:hover { text-decoration: underline; text-decoration-color: currentColor; }
.ep-links { display: flex; gap: var(--sp-2); flex-wrap: wrap; font-weight: 700; font-size: var(--fs-s); }

.grid-4 .ep-card .body { flex: 1; display: flex; flex-direction: column; }
.grid-4 .ep-card .body > p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; }
.grid-4 .ep-card .ep-links { margin-top: auto; }
@media (min-width: 1081px) {
  .grid-4 .ep-card { --card-pad: var(--sp-2) var(--sp-2); } 
  .grid-4 .ep-card .ep-meta { letter-spacing: .02em; }
  .grid-4 .ep-card .video .play { right: var(--sp-1-5); bottom: var(--sp-1-5); width: 48px; height: 34px; border-radius: 10px; }
  .grid-4 .ep-card .video .play::before { border-left-width: 15px; border-top-width: 9px; border-bottom-width: 9px; margin-left: 2px; }
  .grid-4 .ep-card .video .badge { left: var(--sp-1-5); bottom: var(--sp-1-5); font-size: var(--fs-2xs); padding: 2px var(--sp-0); border-radius: 6px; }
}


.stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border: 1px solid var(--line); border-radius: var(--radius); background: var(--card); overflow: hidden; }
.stat { padding: var(--sp-2); border-right: 1px solid var(--line); }
.stat:last-child { border-right: 0; }
.stat .v { font: 600 clamp(var(--fs-1), 2vw, var(--fs-2))/1.1 var(--mono); font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.stat .k { font-size: var(--fs-s); color: var(--ink-2); margin-top: var(--sp-0); line-height: 1.35; }
.stat .s { font: var(--fs-xs)/1.35 var(--mono); color: var(--muted); margin-top: var(--sp-0); }
.stats.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.stats.in-text { margin: var(--sp-2) 0 var(--sp-3); } 
.section-head:has(+ p) { margin-bottom: var(--sp-2); } 
@media (max-width: 800px) {
  .stats, .stats.three { grid-template-columns: 1fr 1fr; }
  .stat { border-bottom: 1px solid var(--line); }
  .stat:nth-child(2n) { border-right: 0; }
  
  .stats.three.one-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .stats.one-row .stat { border-bottom: 0; border-right: 1px solid var(--line); }
  .stats.one-row .stat:last-child { border-right: 0; }
}



.table-wrap, .hb-scroll, .sc-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); background: var(--card); }
table.data { width: 100%; border-collapse: collapse; font-size: var(--fs-s); min-width: 460px; }
table.data th, table.data td { padding: var(--sp-1) var(--sp-2); text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
table.data th { font: 600 var(--fs-xs)/1.2 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); background: var(--paper-2); }
table.data td.r, table.data th.r { text-align: right; font-family: var(--mono); font-variant-numeric: tabular-nums; }
table.data tr:last-child td { border-bottom: 0; }
table.data tr.total td { font-weight: 700; background: #faf6ee; }
.pos { color: var(--green); } .neg { color: var(--neg); }



.source {
  font: var(--fs-xs)/1.5 var(--mono); color: var(--muted); margin-top: var(--sp-1-5); padding-left: var(--sp-1-5); border-left: 3px solid var(--line);
}
.source a { color: var(--ink-2); }
.source b { color: var(--ink-2); font-weight: 600; }
.stat .s a, .cite a, td.src a { color: inherit; text-decoration-color: rgba(107, 102, 93, .45); }
.stat .s a:hover, .cite a:hover, td.src a:hover { color: var(--ink); text-decoration-color: var(--red); }
.cite { font: var(--fs-xs)/1.45 var(--mono); color: var(--muted); margin: var(--sp-1) 0 0; }
.timeline .cite { margin-top: 2px; }
table.data td.src { font: var(--fs-xs)/1.4 var(--mono); color: var(--muted); white-space: nowrap; }


.ep-hero { padding: var(--sp-3) 0; }
.ep-hero h1 { margin-bottom: var(--sp-2); }
.ep-hero .meta { display: flex; gap: var(--sp-0) var(--sp-2); flex-wrap: wrap; font: 600 var(--fs-xs)/1.4 var(--mono); color: var(--muted); margin-bottom: var(--sp-2); }
.ep-hero .video { margin-bottom: var(--sp-1-5); max-width: 1000px; }
.ep-hero .under-video { max-width: 1000px; }
.under-video { display: flex; gap: var(--sp-1-5); flex-wrap: wrap; align-items: center; justify-content: space-between; }
.layout-ep > * { min-width: 0; }
.layout-ep { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: var(--sp-5); align-items: start; }
.toc { position: sticky; top: calc(var(--head-h) + var(--sp-3)); font-size: var(--fs-s); }
.toc h2 { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-bottom: var(--sp-1-5); }
.toc ol { list-style: none; margin: 0; padding: 0; counter-reset: toc; }
.toc li { counter-increment: toc; }
.toc a { display: block; padding: var(--sp-0) 0 var(--sp-0) var(--sp-3); text-decoration: none; color: var(--ink-2); position: relative; line-height: 1.3; }
.toc a::before { content: counter(toc, decimal-leading-zero); position: absolute; left: 0; font: 600 var(--fs-xs)/1.7 var(--mono); color: var(--muted); }
.toc a:hover { color: var(--ink); }
.toc .sub a::before { content: "↳"; }
@media (max-width: 1000px) {
  .layout-ep { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .toc { position: static; margin: var(--sp-1) 0 var(--sp-3); padding: var(--sp-2) var(--sp-2); border: 1px solid var(--line); border-radius: var(--radius); background: var(--card); }
  .toc ol { columns: 2; column-gap: var(--sp-3); }
  .toc li { break-inside: avoid; }
}
@media (max-width: 560px) { .toc ol { columns: 1; } }

.ep-section { padding: var(--section) 0; border-top: 1px solid var(--line); }
.ep-section:first-child { border-top: 0; padding-top: var(--sp-1); }
.ep-section > .kicker { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--red); margin-bottom: var(--sp-2); display: block; }
.ep-section h2 { max-width: 26ch; }
.answer { font-size: var(--fs-prose); line-height: 1.65; color: var(--ink); max-width: var(--prose); }
@media (max-width: 640px) { .answer { font-size: var(--fs-prose-m); } }

.ep-section .stats { margin: var(--sp-3) 0 var(--sp-1); }
.ep-section .table-wrap { margin: var(--sp-3) 0 var(--sp-1); }

.ep-section > :is(.table-wrap, .sc-wrap, .art-frame, .split-bar, .hc-bars) { max-width: var(--wide); }
.watch {
  display: inline-flex; align-items: center; gap: var(--sp-1); margin-top: var(--sp-3); font-weight: 700; font-size: var(--fs-s); text-decoration: none;
  padding: var(--sp-1) var(--sp-1-5) var(--sp-1) var(--sp-1); border-radius: 999px; background: var(--card); border: 1px solid var(--line);
}
.watch .tri { width: 22px; height: 22px; border-radius: 50%; background: var(--red); display: grid; place-items: center; }
.watch .tri::before { content: ""; border-left: 8px solid #fff; border-top: 5px solid transparent; border-bottom: 5px solid transparent; margin-left: 2px; }
.watch:hover { border-color: var(--red); }
.watch .t { font-family: var(--mono); color: var(--muted); font-weight: 500; }


.share { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1) var(--sp-1-5); margin-top: var(--sp-2); max-width: 1000px; }
.share-label { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--muted); margin-right: 2px; }
.share-row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1); }
.share-js:not(:has(> button:not([hidden]))) { display: none; }
.share-btn, .share-pill {
  --brand: var(--ink);
  display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-1); height: 44px; border-radius: 999px;
  background: var(--card); border: 1px solid var(--line); color: var(--ink); text-decoration: none; cursor: pointer;
  transition: color .12s ease, border-color .12s ease, transform .12s ease, box-shadow .12s ease;
}
.share-btn { width: 44px; }
.share-btn svg, .share-pill svg { width: 20px; height: 20px; flex: none; }
.share-pill { padding: 0 var(--sp-2) 0 var(--sp-1-5); font: 700 var(--fs-s)/1 var(--body); }
.share-btn:hover, .share-btn:focus-visible, .share-pill:hover, .share-pill:focus-visible {
  color: var(--brand); border-color: var(--brand); transform: translateY(-1px); box-shadow: 0 0 0 1px var(--brand);
}
.share-btn:focus-visible, .share-pill:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.s-reddit { --brand: #FF4500; } .s-facebook { --brand: #0866FF; } .s-threads { --brand: #000; } .s-x { --brand: #000; }
.s-linkedin { --brand: #0A66C2; } .s-whatsapp { --brand: #25D366; }
.share-pill[hidden] { display: none; }
.share-pill.done { color: var(--green); border-color: var(--green); }
.share-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ep-share-end { padding: var(--sp-4) 0 var(--sp-1); }
.ep-share-end .share { margin-top: 0; }
@media (max-width: 640px) { .share { gap: var(--sp-1); } .share-label { flex-basis: 100%; } }


.quotes { display: grid; gap: var(--sp-2); margin: var(--sp-3) 0 var(--sp-1); padding: 0; list-style: none; }
.quote { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: var(--sp-2); position: relative; }
.quote .what { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--red); margin-bottom: var(--sp-1); }
.quote blockquote { margin: 0 0 var(--sp-1); font-size: var(--fs-0); line-height: 1.5; color: var(--ink); }
.quote blockquote::before { content: "“"; } .quote blockquote::after { content: "”"; }
.quote .src { font: var(--fs-xs)/1.4 var(--mono); color: var(--muted); }
.quote .note { font-size: var(--fs-s); color: var(--ink-2); margin: var(--sp-0) 0 0; }
mark { background: linear-gradient(transparent 55%, #ffe98a 55%); color: inherit; padding: 0 1px; }


.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-2); margin: var(--sp-3) 0 var(--sp-1); }
.two-col .col { border-radius: 12px; padding: var(--sp-2) var(--sp-2); border: 1px solid var(--line); background: var(--card); }
.two-col h3 { font: 700 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; margin-bottom: var(--sp-1-5); }
.two-col .real h3 { color: var(--green); } .two-col .wrong h3 { color: var(--neg); }
.two-col ul { margin: 0; padding-left: var(--sp-2); } .two-col li { margin-bottom: var(--sp-0); font-size: var(--fs-s); }
@media (max-width: 720px) { .two-col { grid-template-columns: 1fr; } }


.bars { display: grid; gap: var(--sp-1); margin: var(--sp-2) 0 var(--sp-0); }
.bar-row { display: grid; grid-template-columns: 150px minmax(0, 1fr) 70px; gap: var(--sp-1-5); align-items: center; }
.bar-row .who { display: flex; align-items: center; min-height: 28px; }
.bar-row .who img { width: 128px; height: 26px; object-fit: contain; object-position: left center; }
.bar-row .who span { font-weight: 600; font-size: var(--fs-s); }
.bar-row .track { height: 14px; background: var(--paper-2); border-radius: 999px; overflow: hidden; }
.bar-row .fill { height: 100%; border-radius: 999px; background: var(--ink); }
.bar-row .n { font: 600 var(--fs-0)/1 var(--mono); text-align: right; font-variant-numeric: tabular-nums; }
.bar-row.more .who span { color: var(--muted); font-weight: 500; font-size: var(--fs-s); line-height: 1.25; }
@media (max-width: 560px) { .bar-row { grid-template-columns: 96px minmax(0, 1fr) 54px; gap: var(--sp-1); } .bar-row .who img { width: 92px; height: 20px; } }

.split-bar { margin: var(--sp-2) 0 var(--sp-0); }
.split-bar .rail { display: flex; height: 46px; border-radius: 10px; overflow: hidden; border: 1px solid var(--line); }
.split-bar .seg { display: flex; align-items: center; padding: 0 var(--sp-1-5); font: 600 var(--fs-s)/1 var(--mono); color: #fff; white-space: nowrap; overflow: hidden; }
.split-bar .legend { display: flex; gap: var(--sp-2); flex-wrap: wrap; font-size: var(--fs-s); margin-top: var(--sp-1); color: var(--ink-2); }
.split-bar .legend i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: var(--sp-0); vertical-align: 0; }


.timeline { list-style: none; margin: var(--sp-2) 0 var(--sp-0); padding: 0; border-left: 2px solid var(--line); }
.timeline li { position: relative; padding: 0 0 var(--sp-2) var(--sp-2); }
.timeline li::before { content: ""; position: absolute; left: -7px; top: 6px; width: 12px; height: 12px; border-radius: 50%; background: var(--card); border: 2px solid var(--ink); }
.timeline li.past::before { background: var(--ink); }
.timeline .d { font: 600 var(--fs-xs)/1.4 var(--mono); }
.timeline .e { font-size: var(--fs-s); color: var(--ink-2); }


.art-frame { border-radius: var(--radius); overflow: hidden; background: var(--night); aspect-ratio: 16 / 9; }
.art-frame svg, .art-frame > img { width: 100%; height: 100%; }
.art-cap { font: var(--fs-xs)/1.5 var(--mono); color: var(--muted); margin-top: var(--sp-1); }


details.fold { border: 1px solid var(--line); border-radius: 12px; background: var(--card); margin-bottom: var(--sp-1); }
details.fold > summary {
  cursor: pointer; list-style: none; padding: var(--sp-1-5) var(--sp-2); display: flex; gap: var(--sp-1-5); justify-content: space-between; align-items: center;
  font-weight: 700;
}
details.fold > summary::-webkit-details-marker { display: none; }
details.fold > summary::after { content: "+"; font: 600 var(--fs-1)/1 var(--mono); color: var(--muted); }
details.fold[open] > summary::after { content: "−"; }
details.fold > summary .t { font: 500 var(--fs-xs)/1 var(--mono); color: var(--muted); margin-left: auto; margin-right: var(--sp-1); }
details.fold > summary .n { font: 600 var(--fs-s)/1 var(--mono); color: var(--red); margin-left: 4px; font-variant-numeric: tabular-nums; }   
details.fold .inner { padding: 0 var(--sp-2) var(--sp-2); }
.src-list { list-style: none; margin: 0; padding: 0; }
.src-list li { padding: var(--sp-1) 0; border-top: 1px dashed var(--line); font-size: var(--fs-s); line-height: 1.45; }
.src-list li:first-child { border-top: 0; }
.src-list .ttl { font-weight: 600; }
.src-list .meta { color: var(--muted); font-size: var(--fs-s); }
.src-list a { word-break: break-word; }
.src-list .ts { font: 600 var(--fs-xs)/1 var(--mono); color: var(--red); margin-right: var(--sp-0); }

.src-list li.page-first { border-top: 0; }
.pager { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-0); margin-top: var(--sp-1); padding-top: var(--sp-1-5); border-top: 1px dashed var(--line); font: 600 var(--fs-xs)/1 var(--mono); }
.pager button { font: inherit; color: var(--ink-2); background: var(--card); border: 1px solid var(--line); border-radius: 999px; min-width: 40px; height: 40px; padding: 0 var(--sp-1-5); cursor: pointer; font-variant-numeric: tabular-nums; }
.pager button:hover:not(:disabled), .pager button:focus-visible { color: var(--ink); border-color: var(--ink); }
.pager button[aria-current="page"] { color: var(--red); border-color: var(--red); }
.pager button:disabled { opacity: .4; cursor: default; }
.pager-status { margin-left: auto; color: var(--muted); font-weight: 500; }
@media (max-width: 560px) { .pager-status { flex-basis: 100%; margin-left: 0; } }

.chapters { list-style: none; margin: 0; padding: 0; columns: 2; column-gap: var(--sp-4); }
.chapters li { break-inside: avoid; padding: var(--sp-0) 0; border-bottom: 1px dashed var(--line); display: flex; gap: var(--sp-1-5); }
.chapters .ts { font: 600 var(--fs-s)/1.5 var(--mono); color: var(--red); min-width: 3.4em; text-decoration: none; }
@media (max-width: 640px) { .chapters { columns: 1; } }

.mentioned { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: var(--sp-1); list-style: none; padding: 0; margin: 0; }
.mentioned li { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: var(--sp-1) var(--sp-1-5); font-size: var(--fs-s); }
.mentioned b { display: block; }
.mentioned span { color: var(--muted); font-size: var(--fs-s); }

.notice {
  border: 1px solid var(--line); background: var(--paper-2); border-radius: 12px; padding: var(--sp-2); font-size: var(--fs-s); color: var(--ink-2);
}
.notice b { color: var(--ink); }
.notice > p:last-child { margin-bottom: 0; }


.fund-board { border-radius: var(--radius); overflow: hidden; background: #070b1a; aspect-ratio: 16 / 9; }
.fund-board svg, .fund-board > img { width: 100%; height: 100%; }

.fund-board.is-tall { aspect-ratio: 4 / 5; }
.fund-pick { border: 0; margin: var(--sp-2) 0 0; padding: 0; min-width: 0; }
.fund-pick + .art-cap { margin-top: var(--sp-1-5); }
.fund-pick-label { padding: 0; margin: 0 0 var(--sp-1-5); font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.fund-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(196px, 1fr)); grid-auto-rows: 1fr; gap: var(--sp-1-5); }
@media (max-width: 560px) { .fund-cards { grid-template-columns: repeat(auto-fill, minmax(136px, 1fr)); gap: var(--sp-1); } }
.fund-card {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: var(--sp-1-5);
  min-height: 124px; padding: var(--sp-2) var(--sp-1-5) var(--sp-1-5); border-radius: var(--radius); background: var(--card); border: 1px solid var(--line);
  color: var(--ink); cursor: pointer; transition: border-color .12s ease, box-shadow .12s ease, background-color .12s ease;
}
.fund-card.is-on { border-color: var(--ink); box-shadow: var(--shadow); }
.fund-card:hover { border-color: var(--red); }
.fund-card:not(.is-on) { background: var(--paper-2); border-style: dashed; }
.fund-card:not(.is-on) .fund-card-logo, .fund-card:not(.is-on) .fund-card-meta { opacity: .4; filter: grayscale(1); }
.fund-card input { position: absolute; top: 10px; left: 10px; width: 18px; height: 18px; margin: 0; accent-color: var(--ink); cursor: pointer; }
.fund-card:has(input:focus-visible) { outline: 3px solid var(--red); outline-offset: 3px; }
.fund-card:has(input:focus-visible) input { outline: none; }
.fund-card.is-solo { cursor: default; max-width: 260px; }
.fund-card.is-solo:hover { border-color: var(--ink); }
.fund-card-logo { flex: 1; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 44px; }
.fund-card-logo img { max-width: 100%; height: auto; object-fit: contain; }
.fund-card-name { font: 400 var(--fs-prose)/1.15 var(--display); text-align: center; overflow-wrap: anywhere; }
.fund-card-meta { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 4px var(--sp-1); font-size: var(--fs-s); line-height: 1.2; }
.fund-card-meta .num { font-weight: 600; }
.fund-card-ticker { color: var(--muted); }
.fund-pick-foot { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1) var(--sp-2); margin-top: var(--sp-1-5); }
.fund-all {
  min-height: 40px; padding: 0 var(--sp-2); border-radius: 999px; background: var(--card); border: 1px solid var(--ink); color: var(--ink);
  font: 700 var(--fs-s)/1 var(--body); cursor: pointer;
}
.fund-all:hover { border-color: var(--red); color: var(--red-ink); }
.fund-all[hidden] { display: none; }
.fund-all:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }
.fund-pick-sum { flex: 1 1 260px; font: var(--fs-xs)/1.5 var(--mono); color: var(--ink-2); margin: 0; min-height: 1.5em; }
.stamp-updated { display: inline-flex; gap: var(--sp-1); align-items: center; font: 600 var(--fs-xs)/1 var(--mono); padding: var(--sp-0) var(--sp-1); border-radius: 999px; background: #e6f4ea; color: var(--green); }
.stamp-updated::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }


.site-foot { background: var(--night); color: #c9cfda; padding: var(--sp-5) 0 var(--sp-4); margin-top: var(--sp-4); font-size: var(--fs-s); }
.site-foot a { color: #fff; }
.site-foot .cols { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.3fr; gap: var(--sp-4); }
.site-foot .cols a { overflow-wrap: anywhere; }
.site-foot h4 { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--yellow); margin: 0 0 var(--sp-1-5); }
.site-foot ul { list-style: none; margin: 0; padding: 0; } .site-foot li { margin-bottom: var(--sp-1); }
@media (max-width: 1000px) { .site-foot .cols { grid-template-columns: 1fr 1fr 1.3fr; } .site-foot .cols > :first-child { grid-column: 1 / -1; } }
@media (max-width: 760px) { .site-foot .cols { grid-template-columns: 1fr; } }



.rtb { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gap); margin-top: var(--sp-3); }
.rtb .step:nth-child(1) { border-top-color: var(--red); } .rtb .step:nth-child(2) { border-top-color: #c98a00; } .rtb .step:nth-child(3) { border-top-color: var(--green); }
.rtb .step .n { font-family: var(--display); font-size: var(--fs-1); }
.rtb .step:nth-child(1) .n { color: var(--red); } .rtb .step:nth-child(2) .n { color: #c98a00; } .rtb .step:nth-child(3) .n { color: var(--green); }
.rtb .step p { margin: var(--sp-1) 0 0; color: var(--ink-2); font-size: var(--fs-s); }
@media (max-width: 720px) { .rtb { grid-template-columns: 1fr; } }
.collab { background: var(--night); color: #e8ecf2; border-radius: 20px; padding: var(--sp-5); display: grid; grid-template-columns: 1.3fr 1fr; gap: var(--sp-4); align-items: center; }
.collab h2 { color: #fff; } .collab p { color: #c9cfda; }
.collab .btn { background: var(--yellow); border-color: var(--yellow); color: var(--ink); }
@media (max-width: 760px) { .collab { grid-template-columns: 1fr; padding: var(--sp-3) var(--sp-2); } }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }


.upcoming { margin-top: var(--sp-3); display: grid; grid-template-columns: 168px minmax(0, 1fr) auto; gap: var(--sp-2); align-items: center; padding: var(--sp-1-5) var(--sp-2) var(--sp-1-5) var(--sp-1-5); }
.upcoming .thumb { aspect-ratio: 16 / 9; border-radius: 10px; overflow: hidden; background: var(--night); }
.upcoming .thumb svg, .upcoming .thumb > img { width: 100%; height: 100%; }
.upcoming h2 { font-size: var(--fs-prose); margin: 2px 0 4px; }
.upcoming p { margin: 0; font-size: var(--fs-s); color: var(--ink-2); }
.upcoming .eyebrow { margin-bottom: 4px; }
.steps { display: flex; list-style: none; margin: var(--sp-1) 0 0; padding: 0; gap: 0; flex-wrap: wrap; }
.steps li { display: flex; align-items: center; gap: var(--sp-0); font: 600 var(--fs-xs)/1 var(--mono); color: var(--muted); padding-right: var(--sp-1); }
.steps li::before { content: ""; width: 10px; height: 10px; border-radius: 50%; border: 2px solid #b9b1a2; background: var(--card); flex-shrink: 0; }
.steps li:not(:last-child) { padding-right: 0; }
.steps li:not(:last-child)::after { content: ""; display: inline-block; width: 18px; height: 2px; background: #d8cfbf; margin: 0 var(--sp-0); }
.steps li.done { color: var(--ink-2); }
.steps li.done::before { background: var(--green); border-color: var(--green); }
.steps li.now { color: var(--ink); }
.steps li.now::before { background: var(--yellow); border-color: #c9a400; box-shadow: 0 0 0 3px rgba(255, 225, 77, .35); }
@media (max-width: 860px) {
  .upcoming { grid-template-columns: 120px minmax(0, 1fr); }
  .upcoming .cta { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
  .upcoming { grid-template-columns: 96px minmax(0, 1fr); gap: var(--sp-1-5); padding: var(--sp-1-5); margin-top: var(--sp-1-5); }
  .upcoming p.teaser { display: none; }
  .upcoming h2 { font-size: var(--fs-0); }
  .upcoming .steps li { font-size: var(--fs-2xs); }
  .upcoming .steps li:not(:last-child)::after { width: 8px; margin: 0 4px; }
  
  #upcoming .upcoming { grid-template-columns: minmax(0, 1fr); }
  #upcoming .upcoming h2 { font-size: var(--fs-0); }
  #upcoming .upcoming .steps { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); margin-top: var(--sp-1-5); }
  #upcoming .upcoming .steps li { position: relative; flex-direction: column; gap: var(--sp-0); padding: 0; text-align: center; line-height: 1.15; letter-spacing: -.02em; }
  #upcoming .upcoming .steps li span { width: min-content; }  
  #upcoming .upcoming .steps li:not(:last-child)::after { position: absolute; top: 4px; left: calc(50% + 11px); width: calc(100% - 22px); margin: 0; }
  .upcoming .cta .btn { width: 100%; justify-content: center; }
}


.dim { color: #8f98a8; }
.small { font-size: var(--fs-s); }
.inline-logo { height: 18px; width: auto; display: inline-block; vertical-align: -3px; margin-right: var(--sp-1); }
.anchor { position: relative; top: -84px; display: block; height: 0; }
.block-h3 { margin-top: var(--sp-4); }
.portrait { max-width: 360px; margin: 0 auto; border-radius: var(--radius); overflow: hidden; aspect-ratio: 2 / 3; }

.kit-copy .card.rule { padding: var(--card-pad); background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); }
.eyebrow-yellow { color: var(--yellow); } .eyebrow-yellow .dot { background: var(--yellow); }
.on-dark { color: #c9cfda; padding-left: var(--sp-2); margin: 0; }
.on-dark li { margin-bottom: var(--sp-0); }
.contact-col { display: grid; gap: var(--sp-1-5); justify-items: start; }
.site-foot .dim { font-size: var(--fs-s); }


.video.play-corner .play { left: auto; top: auto; right: 18px; bottom: 56px; translate: none; }


.answer a { text-decoration-color: rgba(214, 40, 40, .45); text-decoration-thickness: 1.5px; }


@media (max-width: 600px) {
  table.data.stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  table.data.stack, table.data.stack tbody, table.data.stack tr, table.data.stack td { display: block; width: 100%; }
  table.data.stack tr { padding: var(--sp-1-5) var(--sp-1-5); border-bottom: 1px solid var(--line); }
  table.data.stack tr, table.data.stack td { box-sizing: border-box; }
  table.data.stack td { padding: 3px 0; border: 0; text-align: left; white-space: normal; overflow-wrap: anywhere; min-width: 0; }
  table.data.stack { table-layout: fixed; min-width: 0; }
  table.data.stack td.src { white-space: normal; }
  table.data.stack td::before { content: attr(data-label); display: block; font: 600 var(--fs-xs)/1.4 var(--mono, monospace); letter-spacing: .08em; text-transform: uppercase; color: var(--muted, #777); }
  table.data.stack td:first-child::before { display: none; }
  table.data.stack td:first-child { font-weight: 700; }
  table.data.stack td:empty { display: none; }
}

.prose-dark { padding-left: 0; max-width: 64ch; }
.prose-dark p { margin: 0 0 var(--sp-1-5); line-height: 1.65; }

.asof { font-size: var(--fs-s); color: var(--muted); margin: var(--sp-0) 0 var(--sp-2); max-width: 70ch; }
.grid + .asof { margin-top: var(--sp-3); }

.collab.collab-stacked { grid-template-columns: 1fr; }
.collab-stacked .contact-col { margin-top: var(--sp-1); display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); }


figure.kit { margin: 0; overflow: hidden; display: flex; flex-direction: column; }
.kit-preview { display: flex; align-items: center; justify-content: center; height: 190px; padding: var(--sp-2); background: var(--paper-2); border-bottom: 1px solid var(--line); }
.kit-preview img { max-width: 100%; max-height: 100%; width: auto; height: auto; }
.kit-preview.flush { padding: 0; }                       
.kit-preview.tall { height: 420px; padding: var(--sp-3); }
@media (max-width: 640px) { .kit-preview { height: 160px; } .kit-preview.tall { height: 340px; } }
.kit-preview.checker {
  background-color: #fff;
  background-image: linear-gradient(45deg, #ece6da 25%, transparent 25%), linear-gradient(-45deg, #ece6da 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, #ece6da 75%), linear-gradient(-45deg, transparent 75%, #ece6da 75%);
  background-size: 18px 18px; background-position: 0 0, 0 9px, 9px -9px, -9px 0;
}
figure.kit figcaption { padding: var(--sp-2) var(--sp-2) var(--sp-2); flex: 1; display: flex; flex-direction: column; }
figure.kit .kit-links { margin-top: auto; }
figure.kit h3 { margin-bottom: var(--sp-1); }
figure.kit figcaption p { color: var(--ink-2); font-size: var(--fs-s); }
.kit-links { display: flex; flex-wrap: wrap; gap: var(--sp-1); margin: 0; }
.kit-rules { margin-top: var(--sp-2); }
.grid.fonts { margin-top: var(--sp-3); }
.swatches { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--sp-1-5); }
.swatches li { background: var(--card); border: 1px solid var(--line); border-radius: 12px; overflow: hidden; font-size: var(--fs-s); }
.swatches .sw { display: block; height: 72px; border-bottom: 1px solid var(--line); }
.swatches b { display: block; padding: var(--sp-1) var(--sp-1-5) 0; }
.swatches code { display: block; padding: 2px var(--sp-1-5) var(--sp-1-5); font: 500 var(--fs-xs)/1.4 var(--mono); color: var(--muted); }
@media (max-width: 900px) { .swatches { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 480px) { .swatches { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.font-sample { font-size: var(--fs-2); line-height: 1.2; color: var(--ink) !important; margin: 0 0 var(--sp-0) !important; }
.kit-copy { grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); align-items: start; }
.kit-copy .card.rule p { color: var(--ink-2); margin: 0 0 var(--sp-1-5); }
.kit-copy .card.rule p:last-child { margin-bottom: 0; }
@media (max-width: 860px) { .kit-copy { grid-template-columns: 1fr; } }
.kit-list { padding-left: var(--sp-2); margin: 0 0 var(--sp-2); } .kit-list li { margin-bottom: var(--sp-1); }
.kit-two .section-head { margin-bottom: var(--sp-2); }
.collab a.dim { color: #c9cfda; text-decoration-color: rgba(201, 207, 218, .45); }


.method > * { max-width: 780px; }
.method h3 { margin: var(--sp-4) 0 var(--sp-1); }
.method ul { padding-left: var(--sp-2); margin: 0 0 var(--sp-1-5); }
.method li { margin-bottom: var(--sp-0); color: var(--ink-2); }
.method p { color: var(--ink-2); max-width: 70ch; }

.policy { max-width: 66ch; }
.policy h2 { font-size: var(--fs-1); margin: var(--sp-4) 0 var(--sp-1); }
.policy h2:first-child { margin-top: 0; }
.policy p { line-height: 1.65; }
.method .answer { color: var(--ink); }


[hidden] { display: none !important; }


.sc-status { display: flex; flex-wrap: wrap; gap: 4px var(--sp-1); align-items: baseline; width: fit-content; max-width: 100%; margin: 0 0 var(--sp-1-5);
  padding: var(--sp-1) var(--sp-1-5); background: var(--card); border: 1px solid var(--line); border-left: 4px solid var(--green); border-radius: 10px; font-size: var(--fs-s); }
.sc-status .d { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--green); }
.sc-status a { font-weight: 600; }
.sc-wrap { margin: var(--sp-2) 0 var(--sp-0); }
table.scorecard { border-collapse: separate; border-spacing: 0; width: 100%; min-width: 760px; font-size: var(--fs-s); }
.scorecard th, .scorecard td { padding: var(--sp-1) 1px; border-bottom: 1px solid var(--line); text-align: center; vertical-align: middle; font-weight: 400; }
.scorecard tbody tr:last-child > * { border-bottom: 0; }
.scorecard thead th { font: 600 var(--fs-xs)/1.2 var(--mono); letter-spacing: .06em; color: var(--muted); background: var(--paper-2); }
.scorecard thead tr.years th { padding-bottom: 2px; border-bottom: 0; color: var(--ink-2); }
.scorecard .yr, .scorecard td.y0 { border-left: 1px solid var(--line); }
.scorecard .rowh { position: sticky; left: 0; z-index: 1; text-align: left; background: var(--card); width: 168px; min-width: 168px; padding-left: var(--sp-1-5); padding-right: var(--sp-0); border-right: 1px solid var(--line); }
.scorecard thead .rowh { background: var(--paper-2); }
.scorecard .rowh b { display: block; font-weight: 700; line-height: 1.3; }
.scorecard .rowh .goal { display: block; font: 500 var(--fs-xs)/1.35 var(--mono); color: var(--muted); }
.scorecard .bc { width: 70px; }
.scorecard td.sc-span { text-align: left; color: var(--muted); font-size: var(--fs-s); padding-left: var(--sp-1); }
.sc-cell { display: grid; place-items: center; width: 34px; height: 32px; margin: 0 auto; border-radius: 7px; font: 600 var(--fs-2xs)/1 var(--mono); font-variant-numeric: tabular-nums; }
.sc-cell.empty { border: 1.5px dashed var(--line); }
.sc-cell.base { width: auto; min-width: 44px; padding: 0 var(--sp-0); margin: 0 4px; background: var(--paper-2); color: var(--ink-2); border: 1.5px solid var(--ink-2); }
.sc-cell.hit { background: var(--green); color: #fff; box-shadow: 0 0 0 3px rgba(31, 138, 76, .18), 0 0 14px rgba(31, 138, 76, .45); }
.sc-cell.miss { background: #fff; color: var(--neg); border: 2px solid var(--neg); }
.sc-cell.next { border: 2px solid var(--ink); background: var(--yellow); color: var(--ink); animation: sc-pulse 1.6s ease-in-out infinite; }
.sc-cell.final { width: 46px; background: var(--night); color: var(--yellow); }
.sc-cell.final.hit { background: var(--green); color: #fff; }
.sc-cell.final.miss { background: #fff; color: var(--neg); border: 2px solid var(--neg); }
@keyframes sc-pulse { 50% { box-shadow: 0 0 0 6px rgba(255, 225, 77, .45); } }
@media (prefers-reduced-motion: reduce) { .sc-cell.next { animation: none; } }
.sc-bar { height: 10px; border-radius: 6px; background: var(--paper-2); position: relative; overflow: hidden; margin: 4px var(--sp-0); }
.sc-bar i { position: absolute; inset: 0 auto 0 0; background: var(--green); border-radius: 6px; }
.sc-bar-lbl { display: flex; justify-content: space-between; font: 500 var(--fs-xs)/1 var(--mono); color: var(--muted); margin: 0 var(--sp-0); }
.sc-legend { display: flex; gap: var(--sp-1) var(--sp-2); flex-wrap: wrap; margin: var(--sp-1-5) 0 0; font: 500 var(--fs-xs)/1 var(--mono); color: var(--muted); }
.sc-legend span { display: inline-flex; gap: var(--sp-0); align-items: center; }
.sc-legend .sc-cell { width: 18px; height: 14px; border-radius: 4px; animation: none; box-shadow: none; margin: 0; }
.sc-tally { margin: var(--sp-2) 0 0; color: var(--muted); }
.sc-tally .v { font: 600 var(--fs-2)/1 var(--mono); color: var(--ink); margin: 0 4px 0 var(--sp-1); }
.sc-tally .v:first-child { margin-left: 0; }
.sc-tally .v.pos { color: var(--green); } .sc-tally .v.neg { color: var(--neg); }
.sc-log { margin-top: var(--sp-3); max-width: 760px; }
.sc-entry { border-left: 3px solid var(--line); padding: 2px 0 2px var(--sp-2); margin: 0 0 var(--sp-3); }
.sc-entry.latest { border-left-color: var(--green); }
.sc-entry.miss { border-left-color: var(--neg); }
.sc-entry .d { display: block; font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.sc-entry h3 { font: 700 var(--fs-prose)/1.3 var(--body); letter-spacing: 0; margin: var(--sp-0) 0; }
.sc-entry p { margin: 0 0 var(--sp-1); color: var(--ink-2); }
.sc-entry .docs { font: 500 var(--fs-xs)/1.5 var(--mono); color: var(--muted); }
.sc-entry .docs a { color: var(--ink-2); }
.sc-older { border-top: 1px solid var(--line); padding-top: var(--sp-1-5); }
.sc-older summary { cursor: pointer; font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .06em; color: var(--ink-2); margin-bottom: var(--sp-2); }
@media (max-width: 640px) { .scorecard .rowh { width: 150px; min-width: 150px; padding-left: var(--sp-1-5); } .scorecard .rowh b { font-size: var(--fs-s); } }


.watch-box { display: flex; flex-wrap: wrap; gap: var(--sp-1-5) var(--sp-2); align-items: center; justify-content: space-between; margin: var(--sp-1) 0 0;
  padding: var(--sp-2) var(--sp-2); background: var(--card); border: 1px solid var(--line); border-left: 4px solid var(--red); border-radius: var(--radius); }
.watch-box p { margin: 0; max-width: 46ch; }
.more-grid { margin-top: var(--sp-2); }
#more .upcoming { margin-top: var(--sp-2); }


.shelf + .shelf { margin-top: var(--section); }
.shelf > .muted { margin: calc(-1 * var(--sp-1)) 0 var(--sp-3); max-width: 60ch; }


.sc-hero { padding-bottom: var(--sp-3); }
.sc-hero .sc-next { margin-top: var(--sp-2); }
.sc-overview { border-top: 1px solid var(--line); padding-top: var(--sp-5); }
.sc-ov { padding: var(--card-pad); display: flex; flex-direction: column; gap: var(--sp-1); }
.sc-ov h3 { margin: 0; font-size: var(--fs-1); }
.sc-ov h3 a { color: inherit; text-decoration: none; }
.sc-ov h3 a:hover { text-decoration: underline; }
.sc-ov .tk { font: 600 var(--fs-s)/1 var(--mono); color: var(--muted); margin-left: 4px; }
.sc-ov .sc-status { margin: 2px 0 0; }
.sc-ov .sc-tally { margin: 2px 0 0; }
.sc-ov-final { margin: 0; font: 500 var(--fs-xs)/1.4 var(--mono); color: var(--muted); }
.sc-ov .link-arrow { margin-top: auto; padding-top: var(--sp-0); align-self: flex-start; }
.sc-board { border-top: 1px solid var(--line); }
.sc-board .eyebrow { display: flex; width: fit-content; margin-bottom: var(--sp-1); } 
.sc-board .section-head { margin-bottom: 4px; }
.sc-notes { border-top: 1px solid var(--line); }
.sc-notes .sc-log { margin-top: 0; }
.sc-tags { display: flex; flex-wrap: wrap; gap: var(--sp-0) var(--sp-1); align-items: center; margin: 0 0 var(--sp-1); }
.sc-kind, .sc-co { font: 600 var(--fs-2xs)/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; padding: var(--sp-0) var(--sp-1); border-radius: 999px; }
.sc-kind { background: var(--paper-2); color: var(--ink-2); border: 1px solid var(--line); }
.sc-kind.k-news { background: #fff4c2; }
.sc-kind.k-note { background: var(--card); }
.sc-co { background: var(--night); color: var(--yellow); text-decoration: none; }
.sc-co:hover { text-decoration: underline; }

.sc-latest .sc-entry { margin: 0; padding: var(--card-pad); display: flex; flex-direction: column; }
.sc-latest .sc-entry .link-arrow { margin-top: auto; padding-top: var(--sp-0); align-self: flex-start; }
.sc-latest .sc-entry h3 a { color: inherit; text-decoration: none; }
.sc-latest .sc-entry h3 a:hover { text-decoration: underline; }
.sc-latest .sc-next { margin: var(--sp-2) 0 0; }


.hb-hero { padding-bottom: var(--sp-4); }
.hb-hero h1 { max-width: 30ch; }
.hb-dates { display: flex; flex-wrap: wrap; gap: 4px var(--sp-2); font: 600 var(--fs-xs)/1.4 var(--mono); color: var(--muted); margin: 0 0 var(--sp-2); }
.hb-dates span:first-child { color: var(--red-ink); }
.hb-lede { max-width: var(--prose); font-size: var(--fs-prose); color: var(--ink-2); }
.hb-board .muted { margin: calc(-1 * var(--sp-2)) 0 var(--sp-2); }
.hb-h3 { margin: var(--sp-5) 0 var(--sp-2); }

.hb-scroll { max-width: 100%; }
.hb-scroll:focus-visible { outline-offset: 2px; }
table.hb-table { border-collapse: separate; border-spacing: 0; width: 100%; font-size: var(--fs-s); }
.hb-table th, .hb-table td { padding: var(--sp-1) var(--sp-1); border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; white-space: nowrap; background: var(--card); }
.hb-table thead th { font: 600 var(--fs-2xs)/1.25 var(--mono); letter-spacing: .05em; text-transform: uppercase; color: var(--muted); background: var(--paper-2); vertical-align: bottom; white-space: normal; min-width: 64px; }
.hb-table tbody tr:last-child > * { border-bottom: 0; }
.hb-table .r { text-align: right; font-family: var(--mono); font-variant-numeric: tabular-nums; }
.hb-table .c-place { position: sticky; left: 0; z-index: 2; width: 36px; min-width: 36px; padding-right: 4px; color: var(--muted); }
.hb-table .c-name { position: sticky; left: 36px; z-index: 2; font-weight: 400; min-width: 150px; border-right: 1px solid var(--line); }
.hb-peer-table .c-name { left: 0; }
.hb-table thead .c-place, .hb-table thead .c-name { z-index: 3; }
.hb-table .c-name b { font-weight: 700; }
.hb-table .tk { font: 600 var(--fs-xs)/1 var(--mono); color: var(--muted); margin-left: 3px; }
.hb-ind { display: block; font: 500 var(--fs-xs)/1.35 var(--mono); color: var(--muted); white-space: normal; max-width: 240px; }
.hb-table .c-sector { min-width: 200px; white-space: normal; }
.hb-tag { display: block; margin-top: 4px; font: 600 var(--fs-2xs)/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--red-ink); }
.hb-table tr.focus > * { background: color-mix(in srgb, var(--red) 6%, var(--card)); }
.hb-table tr.focus > :first-child { box-shadow: inset 3px 0 0 var(--red); }
@media (max-width: 640px) { .hb-table .c-name { min-width: 118px; max-width: 132px; white-space: normal; } .hb-table .c-sector { min-width: 150px; } .hb-table th, .hb-table td { padding: var(--sp-1); } }

.hb-glossary { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; max-width: 80ch; }
.hb-glossary > div { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: var(--sp-2); padding: var(--sp-1) 0; border-bottom: 1px solid var(--line); }
.hb-glossary dt { font: 600 var(--fs-xs)/1.5 var(--mono); text-transform: uppercase; letter-spacing: .05em; color: var(--ink-2); }
.hb-glossary dd { margin: 0; font-size: var(--fs-s); color: var(--ink-2); }
@media (max-width: 560px) { .hb-glossary > div { grid-template-columns: minmax(0, 1fr); gap: 2px; } }

.hb-sectors { max-width: 760px; }
.hb-sectors table.data { font-size: var(--fs-s); min-width: 520px; }
.hb-sectors table.data th, .hb-sectors table.data td { padding: var(--sp-0) var(--sp-1-5); }
.hb-sectors tbody th { font: 600 var(--fs-s)/1.3 var(--body); text-transform: none; letter-spacing: 0; color: var(--ink); background: none; }


.hb-prose > * { max-width: 780px; }
.hb-prose > p, .hb-prose > ul, .hb-prose > ol { max-width: var(--prose); }
.hb-prose > p { font-size: var(--fs-prose); line-height: 1.68; }
.hb-prose > h2 { margin-top: var(--sp-5); }
.hb-prose > h2:first-child { margin-top: 0; }
.hb-prose .table-wrap, .hb-quote { margin: var(--sp-3) 0; }
.hb-quote .src a { color: inherit; }

.hb-chart, .hb-peers { margin: var(--sp-3) 0 var(--sp-3); }
.hb-chart .hb-svg { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: var(--sp-1) var(--sp-0) 4px; }
.hb-chart .narrow { display: none; }
@media (max-width: 600px) { .hb-chart .wide { display: none; } .hb-chart .narrow { display: block; } }
.hb-chart svg { width: 100%; height: auto; overflow: visible; }
.hb-grid { stroke: var(--line); stroke-width: 1; }
.hb-grid.base { stroke: var(--muted); }
.hb-tick { font: 500 var(--fs-xs) var(--mono); fill: var(--muted); }
.hb-axt { font: 600 var(--fs-xs) var(--mono); fill: var(--ink-2); }
.hb-bar { fill: var(--red); opacity: .78; }
.hb-bar.peer { fill: var(--ink-2); opacity: .55; }
.hb-line { fill: none; stroke: var(--ink); stroke-width: 2.4; stroke-linejoin: round; stroke-linecap: round; }
.hb-dot { fill: var(--card); stroke: var(--ink); stroke-width: 2; }
.hb-line.s2, .hb-dot.s2 { stroke: var(--red); } 
.hb-val.s2 { fill: var(--red-ink); }
.hb-pbg { fill: var(--paper-2); }
.hb-pshare { display: flex; align-items: center; gap: var(--sp-1); font: 500 var(--fs-s)/1 var(--mono); }
.hb-pshare svg { width: 110px; height: 12px; flex: none; }
.hb-peer-table .hb-ind { white-space: nowrap; max-width: none; }
.hb-card { max-width: 560px; }
.hb-card h3 a { color: inherit; text-decoration: none; }
.hb-card h3 a:hover { text-decoration: underline; }
.hb-sources { margin: 0; padding-left: var(--sp-3); font-size: var(--fs-s); color: var(--ink-2); }
.hb-sources li { margin: 0 0 var(--sp-0); overflow-wrap: anywhere; }


.hb-issue .body { display: flex; flex-direction: column; gap: var(--sp-1); flex: 1; }
.hb-issue h3 { margin: 0; font-size: var(--fs-1); }
.hb-issue h3 a { color: inherit; text-decoration: none; }
.hb-issue h3 a:hover { text-decoration: underline; }
.hb-issue p { margin: 0; color: var(--ink-2); }
.hb-issue .link-arrow { align-self: flex-start; margin-top: auto; }

.hb-hero:has(+ .hb-issues) { padding-bottom: var(--sp-2); }
section.block.hb-issues { padding-top: 0; }
.hb-sectors tbody tr:last-child th { border-bottom: 0; }
.hb-card.next-card { padding: var(--sp-0) var(--sp-1); }
.hb-card .ep-meta { display: block; margin-bottom: var(--sp-1); }

.hb-prose .hb-peers { width: max-content; max-width: min(1132px, calc(100vw - 48px)); }
.hb-prose .hb-peers .source { max-width: 780px; }
@media (max-width: 640px) { .hb-prose .hb-peers { max-width: calc(100vw - 32px); } }


.data-board { --db-bg: #070b1a; --db-line: rgba(255, 255, 255, .1); --db-ink: #e8ecf2; --db-muted: #8f9bb3;
  background: var(--db-bg); color: var(--db-ink); border-radius: var(--radius); padding: var(--sp-2) var(--sp-2) var(--sp-1-5); box-shadow: var(--shadow); }
.data-board .db-head { display: flex; flex-wrap: wrap; gap: var(--sp-1) var(--sp-2); align-items: center; justify-content: space-between; margin: 0 2px var(--sp-1-5); }
.data-board .db-title { font: 600 var(--fs-xs)/1.3 var(--mono); letter-spacing: .1em; text-transform: uppercase; color: var(--yellow); }
.data-board .db-btn { background: transparent; border-color: var(--yellow); color: var(--yellow); cursor: pointer; }
.data-board .db-btn:hover { background: var(--yellow); color: var(--ink); }
.data-board .db-toggle:focus-visible ~ .db-head .db-btn { outline: 2px solid var(--yellow); outline-offset: 3px; }
.data-board .db-hide, .data-board .db-toggle:checked ~ .db-head .db-show { display: none; }
.data-board .db-toggle:checked ~ .db-head .db-hide { display: inline; }
.data-board .db-scroll { overflow-x: auto; max-width: 100%; }
.data-board .db-scroll:focus-visible { outline: 2px solid var(--yellow); outline-offset: 2px; }
table.db-table { border-collapse: separate; border-spacing: 0; width: 100%; font-size: var(--fs-s); }
.db-table th, .db-table td { padding: var(--sp-1); border-bottom: 1px solid var(--db-line); text-align: left; vertical-align: top; white-space: nowrap; background: var(--db-bg); color: var(--db-ink); }

.db-table thead th { font: 600 var(--fs-2xs)/1.25 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--db-muted); }
.db-table thead th { vertical-align: bottom; white-space: normal; min-width: 56px; }
.db-table tbody tr:last-child > *, .hb-mini tbody tr:last-child td { border-bottom: 0; }
.db-table .r, .hb-mini .r { text-align: right; font-family: var(--mono); font-variant-numeric: tabular-nums; }
.db-table .c-name b, .hb-mini .c-name b { color: #fff; }
.db-table .pos, .hb-mini .pos { color: #4ade80; } .db-table .neg, .hb-mini .neg { color: #ff6b6b; }
.db-table tr.focus > *, .hb-mini tr.focus td { background: #141d3a; }
.db-table tr.focus > :first-child, .hb-mini tr.focus td:first-child { box-shadow: inset 3px 0 0 var(--yellow); }
.db-table .db-more { display: none; }
.data-board .db-toggle:checked ~ .db-scroll .db-more { display: table-cell; }
.data-board .db-hint { display: none; margin: var(--sp-1) 2px 0; font: 500 var(--fs-xs)/1.3 var(--mono); color: var(--db-muted); }
.data-board .db-hint::after { content: " →"; color: var(--yellow); }
.data-board .db-toggle:checked ~ .db-hint { display: block; }
.db-table .c-place { position: sticky; left: 0; z-index: 2; width: 34px; min-width: 34px; padding-right: 4px; color: var(--db-muted); }
.db-table .c-name { position: sticky; left: 34px; z-index: 2; min-width: 150px; white-space: normal; }
.data-board .db-toggle:checked ~ .db-scroll .c-name { border-right: 1px solid var(--db-line); }
.db-table thead .c-place, .db-table thead .c-name { z-index: 3; }
.db-table .c-name b { font-weight: 700; }
.db-table .tk { font: 600 var(--fs-xs)/1 var(--mono); color: var(--db-muted); margin-left: 3px; }
.db-table .c-sector { min-width: 170px; white-space: normal; }
.db-table .hb-ind { color: var(--db-muted); }
.db-tag { display: inline-block; margin-top: var(--sp-0); padding: 3px var(--sp-0); border-radius: 4px; font: 700 var(--fs-2xs)/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; background: var(--yellow); color: var(--ink); }

@media (max-width: 640px) {
  .data-board { padding: var(--sp-1-5) var(--sp-1-5) var(--sp-1); }
  .data-board .db-scroll { overflow: visible; }
  .db-table, .db-table tbody { display: block; width: 100%; }
  .db-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .db-table tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: var(--sp-1) var(--sp-1); padding: var(--sp-1-5); border-bottom: 1px solid var(--db-line); }
  .db-table tbody tr:last-child { border-bottom: 0; }
  .db-table tr.focus { background: #141d3a; box-shadow: inset 3px 0 0 var(--yellow); }
  .db-table tr > * { display: none; padding: 0; border: 0; background: transparent !important; box-shadow: none !important; position: static; min-width: 0; white-space: normal; }
  .db-table tr > .db-core { display: block; }
  .data-board .db-toggle:checked ~ .db-scroll tr > * { display: block; }
  .data-board .db-toggle:checked ~ .db-scroll tr > .c-place { display: none; }
  .db-table .c-name { grid-column: 1 / -1; font-size: var(--fs-0); }
  .db-table .c-name::before { content: "#" attr(data-place) "  "; font: 600 var(--fs-xs)/1 var(--mono); color: var(--db-muted); white-space: pre; }
  .db-table .db-tag { margin: 0 0 0 var(--sp-1); vertical-align: 2px; }
  .db-table .c-sector { grid-column: 1 / -1; }
  .db-table td, .db-table td.r { text-align: left; font-size: var(--fs-0); }
  .data-board .db-toggle:checked ~ .db-scroll .c-name { border-right: 0; }
  .db-table td::before { content: attr(data-label); display: block; margin-bottom: 3px; font: 600 var(--fs-2xs)/1.25 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--db-muted); }
  .data-board .db-hint { display: none !important; }
}

.hb-label { display: block; }
.hb-hero .hb-label { margin-top: 4px; }
.hb-stats { margin: 4px 0 var(--sp-3); max-width: 860px; }
.hb-method-text { max-width: 72ch; }
.hb-method-text p { color: var(--ink-2); }
.hb-board .section-head h2 { max-width: 32ch; }
.hb-cols { margin-top: var(--sp-2); }
.hb-cols .hb-glossary { max-width: none; }
.hb-prose > .hb-label + h2, .hb-prose > .hb-label + .section-head h2 { margin-top: 0; }


.hb-thumb { display: flex; flex-direction: column; justify-content: center; gap: .7em; aspect-ratio: 16 / 9; border-radius: 0; box-shadow: none;
  padding: 1.2em 1.4em; text-decoration: none; font-size: clamp(12px, 2.6vw, 15px); }
.hb-thumb .db-title { font-size: .78em; }
table.hb-mini { border-collapse: collapse; width: 100%; font-size: 1em; }
.hb-mini th, .hb-mini td { padding: .55em .5em; border-bottom: 1px solid var(--db-line); text-align: left; white-space: nowrap; color: var(--db-ink); }
.hb-mini th { font: 600 .66em/1.2 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--db-muted); }
.hb-mini .c-place { width: 1.8em; color: var(--db-muted); }
.hb-mini .c-name { overflow: hidden; text-overflow: ellipsis; max-width: 0; width: 55%; }
.hb-mini .tk { font: 600 var(--fs-xs)/1 var(--mono); color: var(--db-muted); margin-left: 3px; }
.hb-thumb:hover .db-title { text-decoration: underline; }

.hb-thumb-chart { justify-content: flex-start; }
.hb-thumb-svg { flex: 1; min-height: 0; display: flex; }
.hb-thumb-svg svg { width: 100%; height: 100%; }
.hb-thumb-chart .hb-grid.base { stroke: var(--db-muted); }
.hb-thumb-chart .hb-val { font: 600 var(--fs-0) var(--mono); fill: var(--db-ink); }
.hb-thumb-chart .hb-tick { font: 500 var(--fs-s) var(--mono); fill: var(--db-muted); }

.hb-card .btn { align-self: flex-start; }

.hb-lede > :last-child { margin-bottom: 0; }
.hb-hero:has(+ .hb-method) { padding-bottom: 0; }
section.block.hb-method { padding-top: var(--sp-4); }

@media (max-width: 640px) {
  .stats.three.hb-stats .stat { padding: var(--sp-1-5) var(--sp-1); }
  .stats.three.hb-stats .stat .v { font-size: var(--fs-1); }
  .stats.three.hb-stats .stat .k { font-size: var(--fs-xs); hyphens: auto; }
}



.p3-link-dark, .data-board.fund-holdings a, .data-board.sc-dark .source a { color: var(--yellow); text-decoration: underline; text-decoration-color: rgba(255, 225, 77, .5); text-underline-offset: 3px; }
.p3-link-dark:hover, .data-board.fund-holdings a:hover, .data-board.sc-dark .source a:hover { text-decoration-color: var(--yellow); }

.p3-mail { align-self: center; font-weight: 600; overflow-wrap: anywhere; }


.fund-holdings .db-table { min-width: 0; }
.fund-holdings .inline-logo { box-sizing: content-box; height: 18px; padding: 4px var(--sp-0); border-radius: 5px; background: #fff; vertical-align: -8px; }
.fund-holdings .muted { color: var(--db-muted); }
@media (max-width: 640px) {
  .fund-holdings .db-table tr { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fund-holdings .db-table tr > * { display: block; }
  .fund-holdings .db-table .c-stock, .fund-holdings .db-table .c-ep { grid-column: 1 / -1; }
  .fund-holdings .db-table .c-stock::before { display: none; }
  .fund-holdings .db-table .c-date { white-space: nowrap; }
}


.sc-ov .sc-ov-stats { margin: 2px 0 0; }
.sc-ov .sc-ov-stats .stat { padding: var(--sp-1-5) var(--sp-1-5); }
.sc-ov .sc-ov-stats .stat .v { font-size: var(--fs-2); }
.sc-ov .sc-ov-stats .stat .k { margin-top: 4px; }

.sc-board .data-board.sc-dark { margin-top: var(--sp-2); }
.sc-dark .sc-wrap { margin: 0; border: 0; border-radius: 0; background: transparent; }
.sc-dark .scorecard th, .sc-dark .scorecard td { border-bottom-color: var(--db-line); color: var(--db-ink); }
.sc-dark .scorecard thead th { background: var(--db-bg); color: var(--db-muted); }
.sc-dark .scorecard thead tr.years th { color: var(--db-ink); }
.sc-dark .scorecard .yr, .sc-dark .scorecard td.y0 { border-left-color: var(--db-line); }
.sc-dark .scorecard .rowh, .sc-dark .scorecard thead .rowh { background: var(--db-bg); border-right-color: var(--db-line); }
.sc-dark .scorecard .rowh b { color: #fff; }
.sc-dark .scorecard .rowh .goal, .sc-dark .scorecard td.sc-span { color: var(--db-muted); }
.sc-dark .sc-cell.empty { border-color: rgba(255, 255, 255, .22); }
.sc-dark .sc-cell.base { background: rgba(255, 255, 255, .06); color: var(--db-ink); border-color: var(--db-muted); }
.sc-dark .sc-cell.miss, .sc-dark .sc-cell.final.miss { background: transparent; color: #ff6b6b; border-color: #ff6b6b; }
.sc-dark .sc-cell.final { background: #1b2440; }
.sc-dark .sc-bar { background: rgba(255, 255, 255, .1); }
.sc-dark .sc-bar-lbl, .sc-dark .sc-legend, .sc-dark .sc-tally, .sc-dark .source { color: var(--db-muted); }
.sc-dark .sc-tally .v { color: var(--db-ink); }
.sc-dark .sc-tally .v.pos { color: #4ade80; } .sc-dark .sc-tally .v.neg { color: #ff6b6b; }
.sc-dark .source { margin-bottom: 0; }

.sc-dark .sc-hint { display: none; margin: 0 2px var(--sp-1); font: 500 var(--fs-xs)/1.3 var(--mono); color: var(--db-muted); }
.sc-dark .sc-hint::after { content: " →"; color: var(--yellow); }
@media (max-width: 640px) {
  .sc-board .data-board.sc-dark { padding: var(--sp-1-5) 0 var(--sp-1); }
  .sc-dark .sc-hint, .sc-dark .sc-legend, .sc-dark .sc-tally, .sc-dark .source { margin-left: var(--sp-1-5); margin-right: var(--sp-1-5); }
  .sc-dark .sc-hint { display: block; }
}


.sc-hub-list { display: grid; gap: var(--sp-3); }
a.sc-hub { color: inherit; text-decoration: none; min-width: 0; transition: border-color .12s ease, transform .12s ease; }
a.sc-hub:hover { border-color: var(--ink); transform: translateY(-1px); }
a.sc-hub:hover .link-arrow::after { transform: translateX(3px); }
.sc-hub .ep-meta { font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .1em; color: var(--muted); }
.sc-hub .sc-updated { margin: 0; font: 600 var(--fs-xs)/1.3 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.sc-hub .sc-ov-stats { max-width: 520px; }
.sc-hub-h { margin: 2px 0 0; font: 700 var(--fs-prose)/1.3 var(--body); }
.sc-hub .sc-next { margin: 0; }
.sc-hub .data-board.sc-dark { margin-top: var(--sp-0); min-width: 0; max-width: 100%; }
@media (max-width: 640px) { a.sc-hub { padding: var(--sp-2); } .sc-hub .data-board.sc-dark { padding: var(--sp-1-5) 0 var(--sp-1); } }

.sc-updates { list-style: none; margin: 0; padding: 0; max-width: 760px; border-top: 1px solid var(--line); }
.sc-updates li { padding: var(--sp-1-5) 0; border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: 4px; }
.sc-updates a { font-weight: 700; color: var(--ink); text-decoration: none; }
.sc-updates a:hover { color: var(--red); text-decoration: underline; }
.sc-updates .meta { font: 500 var(--fs-xs)/1.3 var(--mono); color: var(--muted); }

.sc-timeline { position: relative; }
.sc-timeline .sc-entry { position: relative; margin: 0; padding: 0 0 var(--sp-3) var(--sp-3); border-left: 2px solid var(--line); }
.sc-timeline .sc-entry:last-child { padding-bottom: 4px; }
.sc-timeline .sc-entry::before { content: ""; position: absolute; left: -7px; top: 1px; width: 12px; height: 12px; border-radius: 50%; background: var(--card); border: 2px solid var(--muted); }
.sc-timeline .sc-entry.latest::before { background: var(--green); border-color: var(--green); }
.sc-timeline .sc-entry.miss::before { border-color: var(--neg); }
.sc-timeline .sc-entry { scroll-margin-top: calc(var(--head-h) + var(--sp-3)); }
.sc-timeline .sc-entry:target h3 { background: #fff4c2; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.sc-watch { margin: var(--sp-3) 0 0; }

.sc-every { margin: var(--sp-1-5) 0 0; }

.hb-val { font: 600 var(--fs-xs) var(--mono); fill: var(--ink-2); }
.hb-val.sm { font-size: var(--fs-2xs); letter-spacing: -.04em; } 

.hb-prose .table-wrap.compact { max-width: 520px; }
table.data.compact { min-width: 0; }

.hb-focus-card .body { padding: var(--card-pad); display: flex; flex-direction: column; align-items: flex-start; gap: var(--sp-1-5); }
.hb-focus-card h3, .hb-focus-card p { margin: 0; }


.ha-col { --ha-col: 660px; max-width: calc(var(--ha-col) + 48px); }
.hero.ha-hero { padding: var(--sp-5) 0 0; }
.ha-hero > .wrap > nav.eyebrow { margin-bottom: var(--sp-2); }
.ha-kicker { margin: 0 0 4px; }
.ha-kicker .eyebrow { color: var(--red-ink); margin-bottom: var(--sp-1); line-height: 1.3; }
.ha-hero h1 { max-width: none; margin-bottom: var(--sp-2); }
.ha-hero .lead { max-width: none; font-size: var(--fs-1); line-height: 1.5; margin-bottom: var(--sp-2); }
.ha-hero .hb-dates { margin-bottom: var(--sp-3); }
.ha-toc { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: var(--sp-1-5) 0 var(--sp-1-5); }
.ha-toc-h { display: block; font: 600 var(--fs-xs)/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-bottom: var(--sp-1); }
.ha-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: ha-toc; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--sp-3); }
.ha-toc li { counter-increment: ha-toc; }
.ha-toc a { display: block; position: relative; padding: var(--sp-0) 0 var(--sp-0) var(--sp-3); line-height: 1.35; text-decoration: none; color: var(--ink-2); font-weight: 600; font-size: var(--fs-s); }
.ha-toc a::before { content: counter(ha-toc, decimal-leading-zero); position: absolute; left: 0; top: 5px; font: 600 var(--fs-xs)/1.9 var(--mono); color: var(--red-ink); }
.ha-toc a:hover { color: var(--ink); text-decoration: underline; text-decoration-color: var(--red); }

section.block.ha-article { padding: var(--sp-5) 0 var(--sp-6); }
section.block.ha-end { padding: var(--section) 0; }
.ha-prose > * { max-width: none; }
.ha-prose > p { max-width: none; font-size: var(--fs-prose); line-height: 1.7; margin: 0 0 var(--sp-2); color: var(--ink); }
.ha-prose > h2 { margin: var(--sp-5) 0 var(--sp-2); }
.ha-prose > h2:first-child { margin-top: 0; }
.ha-prose > h3 { margin: var(--sp-4) 0 var(--sp-1); }
.ha-prose > h2 + h3 { margin-top: var(--sp-3); }
.ha-prose .hb-quote { margin: var(--sp-4) 0; padding: var(--card-pad); }
.ha-prose .hb-quote blockquote { font-size: var(--fs-prose); line-height: 1.6; margin-bottom: var(--sp-1); }
.ha-prose .hb-chart, .ha-prose > .table-wrap { margin: var(--sp-4) 0; }
.ha-prose > .table-wrap, .ha-prose > .table-wrap.compact { max-width: none; } 
.ha-prose .hb-chart .source { margin-top: var(--sp-1); }
.ha-prose > .table-wrap + p.source, .ha-prose > .hb-chart + p.source { margin-top: calc(var(--sp-1) - var(--sp-4)); margin-bottom: var(--sp-4); }
.ha-prose > .hb-chart + h2, .ha-prose > .table-wrap + h2, .ha-prose > .hb-quote + h2 { margin-top: var(--sp-5); }

section.block.ha-article { container-type: inline-size; }
.ha-prose > .hb-chart, .ha-prose > .hb-peers, .ha-prose > .table-wrap:not(.compact), .ha-prose > .table-wrap:not(.compact) + p.source {
  --bleed: max(100%, min(var(--wide), 100cqw - 2 * var(--sp-3)));
  width: var(--bleed); max-width: none; margin-left: calc(50% - var(--bleed) / 2); margin-right: 0;
}
@media (max-width: 640px) {
  .hero.ha-hero { padding-top: var(--sp-3); }
  .ha-toc ol { grid-template-columns: minmax(0, 1fr); }
  section.block.ha-article { padding: var(--sp-4) 0 var(--sp-5); }
  .ha-prose > p { font-size: var(--fs-prose-m); line-height: 1.65; }
  .ha-prose > h2 { margin-top: var(--section); }
  .ha-prose .hb-quote, .ha-prose .hb-chart, .ha-prose > .table-wrap { margin: var(--sp-3) 0; }
  .ha-prose > .table-wrap + p.source, .ha-prose > .hb-chart + p.source { margin-top: calc(var(--sp-1) - var(--sp-3)); margin-bottom: var(--sp-3); }
}


.hl-board .hl-foot { margin: var(--sp-2) 0 0; font: var(--fs-xs)/1.4 var(--mono); color: var(--db-muted); }   
.hl-board { container-type: inline-size; }
.hl-board .hl-now { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--sp-1); }
.hl-board .hl-now b { font-size: var(--fs-3); line-height: 1.1; color: #fff; letter-spacing: -.01em; }
.hl-board .hl-now .tk { font: 600 var(--fs-s)/1 var(--mono); color: var(--yellow); }
.hl-board .hl-run { margin: var(--sp-0) 0 0; font: 600 var(--fs-2)/1.2 var(--mono); color: var(--yellow); letter-spacing: -.02em; }
.hl-board .hl-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: var(--sp-2) 0 var(--sp-3); background: transparent; border-color: var(--db-line); }
.hl-board .hl-stats .stat { padding: var(--sp-1-5) var(--sp-2); border-right: 1px solid var(--db-line); border-bottom: 1px solid var(--db-line); }
.hl-board .hl-stats .stat:nth-child(2n) { border-right: 0; }
.hl-board .hl-stats .stat:nth-last-child(-n+2):nth-child(odd), .hl-board .hl-stats .stat:last-child { border-bottom: 0; }
.hl-board .hl-stats .v { color: #fff; }
.hl-board .hl-stats .k { color: var(--db-muted); }
.hl-strip { display: block; width: 100%; height: auto; }
.hl-strip text { font-family: var(--mono); }
.hl-strip.m { display: none; }
@container (max-width: 440px) { .hl-strip.w { display: none; } .hl-strip.m { display: block; } }
