  :root {
    color-scheme: dark;
    --measure: 45rem;
    --measure-wide: 56rem;
    --measure-tight: 35rem;
    --page: 75rem;
    --page-wide: 93.75rem;
    --base: #050a06; --mantle: #0a120c; --crust: #030604;
    --surface0: #102117; --surface1: #1d3d2a; --surface2: #2c5a3e;
    --text: #c6f9d0; --subtext0: #7cc88d; --subtext1: #9bdcab;
    --overlay0: #4f8a63;
    --rosewater: #9affc4; --flamingo: #ff6fa0; --pink: #ff3fb4;
    --mauve: #c264ff; --red: #ff3b4e; --maroon: #ff6a5e;
    --peach: #ff9e2c; --yellow: #f5e017; --green: #00ff66;
    --teal: #00f0c8; --sky: #2ad4ff; --sapphire: #00b8ff;
    --blue: #3b8dff; --lavender: #b48bff;
    --bg: var(--base); --card: var(--mantle); --border: #266542;
    --dim: var(--subtext0); --accent: #00ff66;
    --on-fill: #050a06;
    --status-open: #2ea043; --status-partial: #d29922;
    --status-banned: #da3633; --status-unknown: #30363d;
    --glow: 0 0 10px rgba(0,255,102,0.45);
    --value: #dcffe6; --value-glow: 0 0 8px rgba(0,255,102,0.22);
  }
  .theme-toggle {
    background: transparent; border: 1px solid var(--border); color: var(--dim);
    border-radius: 4px; padding: 0.1rem 0.5rem; margin-left: 0.6rem;
    cursor: pointer; font: inherit; font-size: 0.6rem; line-height: 1.4;
    letter-spacing: 0.05em;
  }
  .theme-toggle:hover { border-color: var(--accent); color: var(--accent); }
  .nav-more { position: relative; display: inline-block; }
  .nav-more > summary {
    list-style: none; cursor: pointer; color: var(--subtext1);
    letter-spacing: 0.01em; font-size: 0.75rem;
  }
  .nav-more > summary:hover { color: var(--accent); }
  .nav-more > summary::-webkit-details-marker { display: none; }
  .nav-more > summary::after { content: " \25BE"; }
  .nav-more[open] > summary { color: var(--text); }
  .nav-more-menu {
    position: absolute; right: 0; top: 1.5rem; z-index: 40; min-width: 9rem;
    display: flex; flex-direction: column; gap: 0.15rem;
    background: var(--card); border: 1px solid var(--border);
    border-radius: 6px; padding: 0.5rem 0.7rem; box-shadow: 0 6px 18px rgba(0,0,0,0.45);
  }
  .nav-more-menu a { padding: 0.15rem 0; white-space: nowrap; }
  @media (max-width: 820px) {
    .nav-more-menu { position: static; border: 0; box-shadow: none; padding: 0.2rem 0 0.2rem 0.8rem; background: transparent; }
  }
  .tbl-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: 8px; }
  div.tbl-wrap > table { width: max-content; min-width: 100%; }
  @media (max-width: 640px) {
    .stack-sm thead { display: none; }
    .stack-sm, .stack-sm tbody, .stack-sm tr, .stack-sm td { display: block; width: 100%; }
    div.tbl-wrap > table.stack-sm { width: 100%; min-width: 0; }
    .stack-sm tr[hidden] { display: none; }
    .stack-sm tr { border: 1px solid var(--border); border-radius: 10px; padding: 0.6rem 0.8rem; margin-bottom: 0.8rem; background: var(--card); }
    .stack-sm td { border: 0; padding: 0.3rem 0; display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; text-align: right; }
    .stack-sm td::before { content: attr(data-label); color: var(--dim); font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.05em; text-align: left; flex: 0 0 auto; }
    .stack-sm td.nm { font-size: 1.05rem; text-align: left; padding-bottom: 0.45rem; margin-bottom: 0.35rem; border-bottom: 1px solid var(--border); }
    .stack-sm td.nm::before { content: none; }
    .stack-sm td.nt { display: block; text-align: left; }
    .stack-sm td.nt::before { display: block; margin-bottom: 0.15rem; }
    .stack-sm td:empty { display: none; }
  }
  .crumbs { font-size: 0.7rem; color: var(--dim); margin: 0 0 0.6rem; }
  .crumbs a { color: var(--dim); text-decoration: none; }
  .crumbs a:hover { color: var(--accent); text-decoration: underline; }
  @media (max-width: 640px) {
    .crumbs { margin-bottom: 0.2rem; }
    .crumbs a { display: inline-block; padding: 0.7rem 0; min-height: 44px; }
  }
  .crumbs span:last-child { color: var(--subtext1); }
  :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 2px; }
  :focus:not(:focus-visible) { outline: none; }
  .home-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)); gap: 1rem; margin: 1.25rem 0; }
  .home-box {
    min-width: 0; padding: 0.85rem 1.1rem;
    background: var(--card); border-left: 3px solid var(--accent);
    border-radius: 0 6px 6px 0; color: var(--text);
    font-size: 0.82rem; line-height: 1.6;
  }
  .home-box--wide {  }
  .home-box--market { border-left-color: var(--peach); }
  .home-box .eyebrow {
    color: var(--dim); font-size: 0.7rem; text-transform: uppercase;
    letter-spacing: 0.05em; display: block; margin-bottom: 0.3rem;
  }
  .home-box details { margin-top: 0.5rem; }
  .home-box summary { cursor: pointer; color: var(--accent); font-size: 0.75rem; list-style: none; }
  .home-box details > div { margin-top: 0.5rem; }
  .card-sub { color: var(--dim); font-size: 0.75rem; margin-top: 0.3rem; line-height: 1.45; }
  .cn { max-width: var(--measure); }
  body > .asof, .wrap > .sub { max-width: var(--measure); }
  .page-lead {
    color: var(--subtext1); font-size: 0.82rem; max-width: var(--measure-wide);
    line-height: 1.6; margin: 0 0 1.4rem;
  }
  .page-lead:last-child { margin-bottom: 0; }
  .page-lead > p { margin: 0 0 0.7rem; }
  .page-lead > p:last-child { margin-bottom: 0; }
  .lead-more { margin: -0.9rem 0 1.4rem; }
  .lead-more summary { cursor: pointer; color: var(--accent); font-size: 0.75rem; list-style: none; }
  .lead-more summary::-webkit-details-marker { display: none; }
  .lead-more summary::before { content: "\25b8 "; }
  .lead-more[open] summary::before { content: "\25be "; }
  .lead-more > p { color: var(--subtext1); font-size: 0.82rem; max-width: var(--measure-wide); line-height: 1.6; margin: 0.6rem 0 0; }
  .dl-btn {
    background: var(--card); color: var(--accent); border: 1px solid var(--border);
    border-radius: 5px; padding: 0.25rem 0.7rem; font-size: 0.7rem;
    font-family: inherit; cursor: pointer; margin-left: 0.4rem;
  }
  .dl-btn:hover { border-color: var(--accent); }
  .dl-btn-sm {
    padding: 0.15rem 0.5rem; font-size: 0.6rem;
    text-transform: uppercase; letter-spacing: 0.05em; white-space: nowrap;
  }
  :root[data-theme="light"] {
    color-scheme: light;
    --base: #eef3ee; --mantle: #e4ebe5; --crust: #f7faf7;
    --surface0: #d7e2d9; --surface1: #c3d3c6; --surface2: #a8c0ad;
    --text: #0c1b11; --subtext0: #375841; --subtext1: #2b4c36;
    --overlay0: #536e5c;
    --rosewater: #267449; --flamingo: #ac4366; --pink: #b3126e;
    --mauve: #6f2fc4; --red: #c4121f; --maroon: #a33328;
    --peach: #9d5500; --yellow: #7e6400; --green: #007836;
    --teal: #007568; --sky: #0069a8; --sapphire: #005c91;
    --blue: #1a52c0; --lavender: #5f3fb8;
    --bg: var(--base); --card: var(--mantle); --border: #8e9c92;
    --dim: var(--subtext0); --accent: #00722f;
    --on-fill: #f7faf7;
    --status-open: #1a7f37; --status-partial: #9a6700;
    --status-banned: #cf222e; --status-unknown: #afb8c1;
    --glow: 0 0 0 1px rgba(0,114,47,0.25);
    --value: #04301a; --value-glow: none;
  }
  ::selection { background: rgba(0,255,102,0.30); color: var(--value); }
  ::-webkit-scrollbar { width: 10px; height: 10px; }
  ::-webkit-scrollbar-track { background: var(--mantle); }
  ::-webkit-scrollbar-thumb { background: var(--surface1); border-radius: 5px; }
  ::-webkit-scrollbar-thumb:hover { background: var(--surface2); }
  body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 9999;
    background: repeating-linear-gradient(0deg, rgba(0,255,102,0.035) 0, rgba(0,255,102,0.035) 1px, transparent 1px, transparent 3px); }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  body { background: var(--bg); color: var(--text); font-family: 'JetBrains Mono', 'SF Mono', 'Fira Code', ui-monospace, monospace; padding: 2rem clamp(1rem, 7%, 7rem); max-width: var(--page); margin: 0 auto; box-sizing: content-box; letter-spacing: 0.01em;
    background-image: radial-gradient(ellipse at 50% -10%, rgba(0,255,102,0.07), transparent 60%); background-attachment: fixed; }
  h1 { color: var(--accent); margin-bottom: 1rem; font-size: 1.5rem; font-weight: 700; letter-spacing: 0.01em; line-height: 1.25; }
  h1.home-title { font-size: 1.05rem; font-family: 'Orbitron', 'JetBrains Mono', monospace; letter-spacing: 0.09em; text-transform: uppercase; text-shadow: 0 0 12px rgba(0,255,102,0.55), 0 0 2px rgba(0,255,102,0.75); }
  .h1-badge { display: inline-block; font-size: 0.6rem; font-weight: 700; padding: 0.1rem 0.4rem;
    border-radius: 3px; letter-spacing: 0.05em; vertical-align: middle; color: var(--on-fill); }
  .next-up { margin: 1.6rem 0 0; max-width: var(--measure); }
  .next-up h2 { font-size: 0.82rem; color: var(--subtext1); margin: 0 0 0.6rem; letter-spacing: 0.05em; text-transform: uppercase; }
  .next-up ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 0.4rem 1.4rem; }
  .next-up a { color: var(--accent); text-decoration: none; font-size: 0.82rem; }
  @media (max-width: 640px) {
    .next-up ul { gap: 0.2rem 1rem; }
    .next-up a { display: inline-block; padding: 0.85rem 0; min-height: 44px; }
  }
  .next-up a:hover { text-decoration: underline; }
  .next-up .next-rand { color: var(--dim); font-size: 0.75rem; margin: 0.55rem 0 0; }
  .next-up .next-rand a { font-size: inherit; }
  :root[data-theme="light"] body::before { display: none; }
  :root[data-theme="light"] body { background-image: none; }
  :root[data-theme="light"] h1 { text-shadow: none; }
  :root[data-theme="light"] .top-bar .nav-links a:hover { text-shadow: none; text-decoration: underline; }
  .cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0.75rem; margin-bottom: 1.5rem; }
  .card { background: var(--card); border: 1px solid var(--border); border-radius: 6px; padding: 1rem; }
  .card .label { color: var(--dim); font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.05em; }
  .card .value { font-size: 1.3rem; font-weight: bold; color: var(--value); margin: 0.15rem 0; text-shadow: var(--value-glow); }
  a.card-link { text-decoration: none; cursor: pointer; transition: border-color 0.15s, box-shadow 0.15s; }
  a.card-link:hover { border-color: var(--accent); box-shadow: var(--glow); }
  .top-bar {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    column-gap: 1rem; row-gap: 0.5rem;
    margin-bottom: 1rem;
  }
  .top-bar > h1, .top-bar > .back { grid-column: 1; grid-row: 1; }
  .top-bar > .nav-links { grid-column: 2 / 4; grid-row: 1; }
  .top-bar > .nav-cta { grid-column: 3; grid-row: 1; justify-self: end; }
  .top-bar > .zad { grid-column: 1 / 3; grid-row: 2; }
  .top-bar > .search-box { grid-column: 3; grid-row: 2; justify-self: end; }
  @media (min-width: 641px) and (max-width: 1200px) {
    .top-bar > .nav-links { grid-column: 1 / -1; grid-row: 2; justify-self: start; }
    .top-bar > .zad { grid-row: 3; }
    .top-bar > .search-box { grid-row: 3; }
  }
  .top-bar h1 { margin: 0; font-size: 1.7rem; }
  .top-bar .nav-links {
    display: flex; gap: 0.75rem; font-size: 0.75rem;
    flex-wrap: wrap; align-items: center; row-gap: 0.35rem;
  }
  .top-bar .nav-links a { color: var(--subtext1); text-decoration: none; letter-spacing: 0.01em; font-size: 0.75rem; transition: color 0.15s; }
  .top-bar .nav-links a:visited { color: var(--subtext1); }
  .top-bar .nav-links a.active:visited { color: var(--base); }
  .top-bar .back:visited { color: var(--accent); }
  .top-bar .back.wordmark { font-weight: 600; font-size: 0.82rem; letter-spacing: 0.01em; }
  .top-bar .nav-links a:hover { text-decoration: none; color: var(--accent); }
  .top-bar .nav-links a.active { color: var(--base); background: var(--accent); border-radius: 3px; padding: 0.1rem 0.45rem; text-shadow: none; font-weight: 600; }
  .top-bar .nav-links a.active:hover { text-shadow: none; }
  .nav-cta { display: flex; align-items: center; gap: 0.6rem; }
  .nav-toggle { display: none; flex-direction: column; justify-content: center; gap: 4px; width: 44px; height: 44px; padding: 11px 9px; background: var(--card); border: 1px solid var(--border); border-radius: 6px; cursor: pointer; }
  .nav-toggle span { display: block; height: 2px; width: 100%; background: var(--accent); border-radius: 2px; transition: transform 0.2s, opacity 0.2s; }
  .top-bar.nav-open .nav-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .top-bar.nav-open .nav-toggle span:nth-child(2) { opacity: 0; }
  .top-bar.nav-open .nav-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .nav-cta[open] .nav-toggle span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .nav-cta[open] .nav-toggle span:nth-child(2) { opacity: 0; }
  .nav-cta[open] .nav-toggle span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  summary.nav-toggle { list-style: none; }
  summary.nav-toggle::-webkit-details-marker { display: none; }
  summary.nav-toggle::marker { content: ""; }
  .search-box { margin-left: auto; position: relative; }
  @media (max-width: 760px) {
    html body { padding: 1rem; }
    .cards { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.5rem; margin-bottom: 1rem; }
    .card { padding: 0.6rem 0.7rem; }
    .card .value { font-size: 1.05rem; margin: 0.1rem 0; }
    .card .label { font-size: 0.6rem; }
    body #chart-title { font-size: 1.35rem; margin-top: 0.8rem; line-height: 1.15; }
    body #chart-desc { font-size: 0.82rem; margin-bottom: 1rem; }
    h1 { font-size: 1.05rem; line-height: 1.3; }
    .top-bar h1 { font-size: 1.05rem; }
    .top-bar { grid-template-columns: 1fr auto; column-gap: 0.6rem; row-gap: 0.6rem; }
    .top-bar > h1, .top-bar > .back { grid-column: 1; grid-row: 1; }
    .top-bar > .nav-cta { grid-column: 2; grid-row: 1; justify-self: end; }
    .nav-cta { margin-left: 0; }
    .nav-toggle { display: flex; }
    input[type="text"], input[type="search"], input[type="number"],
    input[type="date"], input[type="month"], input[type="email"],
    select, textarea {
      font-size: 16px !important;
      min-height: 44px !important;
    }
    label:has(> input[type="checkbox"]), label:has(> input[type="radio"]) {
      display: inline-flex;
      align-items: center;
      min-height: 44px;
      gap: 0.5rem;
    }
    input[type="checkbox"], input[type="radio"] {
      width: 1.15rem;
      height: 1.15rem;
    }
    button, .range-btn, [role="button"] {
      min-height: 44px;
    }
    summary {
      display: flex;
      align-items: center;
      min-height: 44px;
    }
    input[type="range"] {
      min-height: 44px;
    }
    .top-bar > .search-box { grid-column: 1 / -1; grid-row: 2; justify-self: stretch; width: 100%; margin-left: 0; }
    .top-bar .search-box input { width: 100%; box-sizing: border-box; font-size: 16px; padding: 0.6rem 0.8rem; }
    .top-bar > .zad { grid-column: 1 / -1; grid-row: 4; }
    .top-bar .search-drop { left: 0; right: 0; min-width: 0; max-width: none; }
    .top-bar > .nav-links { grid-column: 1 / -1; grid-row: 3; }
    .top-bar:has(.nav-toggle) .nav-links { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 0; background: var(--card); border: 1px solid var(--border); border-radius: 8px; padding: 0.25rem 0.85rem; margin-top: 0.4rem; }
    .top-bar.nav-open .nav-links { display: flex; }
    .top-bar .nav-cta[open] ~ .nav-links { display: flex; }
    .top-bar .nav-links a { padding: 0.6rem 0; font-size: 0.82rem; border-bottom: 1px solid var(--border); }
    .top-bar .nav-links a.active { background: transparent; color: var(--accent); border-radius: 0; padding: 0.6rem 0; }
    .top-bar .nav-links a:last-child { border-bottom: none; }
    .top-bar .nav-links .theme-toggle { align-self: flex-start; width: auto; margin: 0.7rem 0 0.5rem; padding: 0.35rem 0.9rem; }
    .top-bar .nav-links .nav-more { width: 100%; border-bottom: 1px solid var(--border); }
    .top-bar .nav-links .nav-more > summary { padding: 0.6rem 0; font-size: 0.82rem; }
    .top-bar .nav-links .nav-more[open] { border-bottom: none; }
    .top-bar .nav-links .nav-more-menu a:last-child { border-bottom: none; }
    .chart-grid { grid-template-columns: 1fr; gap: 1rem; }
    .cards { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 0.5rem; }
  }
  .search-box input { background: var(--card); border: 1px solid var(--border); border-radius: 4px; padding: 0.3rem 0.6rem; color: var(--text); font-family: inherit; font-size: 0.75rem; width: 230px; }
  .search-box input::placeholder { color: var(--dim); }
  .search-box input:focus { border-color: var(--accent); }
  .search-drop { display: none; position: absolute; top: 100%; right: 0; margin-top: 4px; min-width: 19rem; max-width: 26rem; max-height: 70vh; background: var(--card); border: 1px solid var(--border); border-radius: 6px; box-shadow: 0 6px 20px rgba(0,0,0,0.35); z-index: 200; overflow-y: auto; }
  .search-drop.open { display: block; }
  .search-drop .sd-item { display: block; padding: 0.5rem 0.7rem; font-size: 0.75rem; color: var(--text); text-decoration: none; border-bottom: 1px solid var(--border); }
  .search-drop .sd-t { display: block; font-weight: 600; }
  .search-drop .sd-d { display: block; font-size: 0.7rem; color: var(--dim); line-height: 1.45; margin-top: 0.2rem; }
  .search-drop .sd-head { padding: 0.4rem 0.7rem; font-size: 0.65rem; color: var(--dim); text-transform: uppercase; letter-spacing: 0.05em; border-bottom: 1px solid var(--border); background: var(--surface0); }
  .search-drop .sd-item:last-child { border-bottom: none; }
  .search-drop .sd-item:hover, .search-drop .sd-item.active { background: var(--surface0); color: var(--accent); }
  .search-drop .sd-none { padding: 0.4rem 0.7rem; font-size: 0.7rem; color: var(--dim); }
  .zad { flex: 1 1 22rem; min-width: 0; margin: 0; padding: 0; display: flex; gap: 0.6rem; align-items: baseline; font-size: 0.75rem; line-height: 1.45; color: var(--dim); }
  .zad.zad-footer { margin: 2rem auto 0.6rem; }
  .top-bar .zad.zad-inline { flex: 1 1 300px; min-width: 0; max-width: none; margin: 0; align-items: flex-start; }
  .top-bar .zad.zad-inline > span:last-child { min-width: 0; overflow-wrap: anywhere; }
  .top-bar .zad.zad-inline + .search-box { flex: none; margin-left: 0; }
  .zad .zad-label { flex: none; font-size: 0.65rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dim); border: 1px solid var(--border); border-radius: 3px; padding: 0.1rem 0.4rem; }
  .zad a.zad-link { color: var(--text); font-weight: 600; text-decoration: none; }
  .zad a.zad-link:hover { color: var(--accent); text-decoration: underline; }
  .zad .zad-body { color: var(--dim); }
  .chart-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); gap: 1.5rem; margin-bottom: 1.5rem; }
  @media (max-width: 900px) {
    .top-bar h1 { font-size: 1.35rem; }
  }
  .home-search { margin: 0 0 1.4rem; position: relative; }
  .home-search .search-drop { left: 0; right: 0; min-width: 0; max-width: none; margin-top: 6px; border-radius: 10px; }
  .home-search .search-drop .sd-item { padding: 0.62rem 1rem; font-size: 0.95rem; }
  .home-search .search-drop .sd-d { font-size: 0.75rem; }
  .home-search .search-drop .sd-head, .home-search .search-drop .sd-none { padding: 0.5rem 1rem; font-size: 0.7rem; }
  .home-search input { width: 100%; background: var(--card); border: 1px solid var(--border); border-radius: 10px; padding: 0.8rem 1rem; color: var(--text); font-family: inherit; font-size: 1.05rem; }
  .home-search input:focus { border-color: var(--accent); }
  .home-search input:focus:not(:focus-visible) { outline: none; }
  .home-search input::placeholder { color: var(--dim); }
  .hs-eg { margin-top: 0.5rem; font-size: 0.75rem; color: var(--dim); display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.4rem; }
  .hs-eg button { background: transparent; border: 1px solid var(--border); border-radius: 999px; color: var(--accent); font-family: inherit; font-size: 0.75rem; padding: 0.1rem 0.6rem; cursor: pointer; }
  @media (max-width: 640px) {
    .hs-eg { gap: 0.5rem; margin-top: 0.7rem; }
    .hs-eg button { font-size: 0.82rem; padding: 0.6rem 0.9rem; min-height: 44px; }
  }
  .hs-eg button:hover { border-color: var(--accent); }
  .chart-section { margin-bottom: 2.75rem; }
  summary.section-sum { cursor: pointer; list-style: none; display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
  @media (max-width: 640px) {
    summary.section-sum { padding: 0.7rem 0; min-height: 44px; }
    details.chart-section { border-top: 1px solid var(--border); }
    details.chart-section:first-of-type { border-top: none; }
  }
  summary.section-sum::-webkit-details-marker { display: none; }
  summary.section-sum > h2 { margin: 0; }
  summary.section-sum::after { content: "\002212"; color: var(--dim); font-weight: 400; font-size: 1.05rem; }
  details.chart-section:not([open]) > summary.section-sum::after { content: "+"; }
  details.chart-section:not([open]) { margin-bottom: 0.9rem; }
  details.chart-section:not([open]) > .section-caption { display: none; }
  .section-title { color: var(--text); font-size: 1.05rem; font-weight: 700; margin: 0 0 0.15rem 0; letter-spacing: 0.01em; border-left: 3px solid var(--accent); padding-left: 0.5rem; }
  .section-caption { color: var(--dim); font-size: 0.82rem; margin: 0 0 1.1rem 0.5rem; }
  .section-more { background: transparent; color: var(--accent); border: 1px solid var(--border); border-radius: 6px; padding: 0.3rem 0.85rem; font-size: 0.7rem; font-weight: 600; cursor: pointer; margin-top: 1.25rem; letter-spacing: 0.01em; }
  .section-more:hover { background: var(--card); }
  .chart-panel { background: var(--card); border: 1px solid var(--border); border-radius: 6px; padding: 1rem 1rem 0.5rem 1rem; position: relative; }
  .chart-panel h2, .chart-panel h3 { color: var(--text); font-size: 0.75rem; font-weight: 600; margin-bottom: 0.5rem; text-transform: uppercase; letter-spacing: 0.05em; display: inline; }
  .h2-sub { font-weight: 400; font-size: 0.7rem; color: var(--dim); margin-left: 0.6rem; }
  @media (max-width: 700px) { .h2-sub { display: block; margin: 0.15rem 0 0; } }
  .page-h2, .explainer h2 { font-size: 1.05rem; color: var(--text); font-weight: 700; margin: 2rem 0 0.7rem; }
  .explainer h2 { margin-top: 0; text-transform: none; letter-spacing: 0; }
  .node-lead p { margin: 0 0 0.7rem; }
  .node-lead b { color: var(--text); }
  .node-lead a { color: var(--accent); text-decoration: none; }
  .node-lead a:hover { text-decoration: underline; }
  .chart-panel--link { min-height: 0; padding: 0.3rem 0; margin: 0; background: none; border: none; border-radius: 0; box-shadow: none; }
  .chart-panel--link.dir-card { display: flex; flex-direction: column; min-height: 58px; padding: 0.6rem 0.7rem; border: 1px solid var(--border); border-radius: 6px; background: var(--card); transition: border-color 0.15s, background 0.15s; }
  .chart-panel--link.dir-card:hover { border-color: var(--accent); background: var(--surface0); }
  .chart-panel--link.dir-card h3 { margin: 0; font-size: 0.75rem; line-height: 1.35; }
  .chart-panel--link.dir-card .dir-val { color: var(--value); font-size: 0.95rem; font-weight: 700; margin-top: auto; padding-top: 0.35rem; font-family: 'JetBrains Mono', monospace; text-shadow: var(--value-glow); }
  .chart-panel--link.dir-card .dir-val--none { color: var(--dim); font-weight: 400; text-shadow: none; }
  .chart-panel--link:hover { background: none; border: none; }
  .chart-panel--link h2, .chart-panel--link h3 { display: block; margin: 0; font-size: 0.75rem; font-weight: 500; text-transform: none; letter-spacing: 0; line-height: 1.45; }
  .chart-panel--link h3 a.tile-link { color: var(--subtext1); }
  .chart-panel--link h3 a.tile-link:hover { color: var(--accent); }
  .dir-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(265px, 1fr)); gap: 0.6rem; margin-top: 0.6rem; }
  .chart-panel h3 a.tile-link { color: inherit; text-decoration: none; }
  .chart-panel h3 a.tile-link:hover { color: var(--accent); text-decoration: underline; }
  .chart-panel h3.clickable { cursor: pointer; }
  .chart-panel h3.clickable:hover { color: var(--accent); text-decoration: underline; }
  .chart-panel .permalink { color: var(--dim); font-size: 0.6rem; text-decoration: none; margin-left: 0.5rem; opacity: 0.4; }
  .chart-panel .permalink:hover { opacity: 1; text-decoration: underline; }
  .chart-panel svg { display: block; }
  .axis text { fill: var(--dim); font-size: 9px; font-family: inherit; }
  .axis path, .axis line { stroke: var(--surface1); stroke-width: 0.5; }
  .axis .domain { display: none; }
  .chart-empty { color: var(--dim); font-size: 0.75rem; padding: 2rem 0; text-align: center; }
  .tooltip { position: fixed; background: var(--card); border: 1px solid var(--border); border-radius: 4px; padding: 0.4rem 0.6rem; font-size: 0.7rem; pointer-events: none; z-index: 100; color: var(--text); box-shadow: 0 2px 8px rgba(0,0,0,0.2); white-space: pre-line; }
  .range-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem; margin-bottom: 1.5rem; background: var(--card); border: 1px solid var(--border); border-radius: 6px; padding: 0.6rem 1rem; }
  .range-bar label { color: var(--dim); font-size: 0.7rem; text-transform: uppercase; }
  .range-bar input[type=range] { accent-color: var(--accent); }
  .dual-range { position: relative; flex: 1; height: 20px; min-width: 200px; }
  .dual-range input[type=range] { position: absolute; width: 100%; top: 0; left: 0; pointer-events: none; -webkit-appearance: none; appearance: none; background: transparent; height: 20px; }
  @media (max-width: 640px) {
    .dual-range { height: 44px; }
    .dual-range input[type=range] { height: 44px; }
  }
  .dual-range input[type=range]::-webkit-slider-thumb { pointer-events: all; -webkit-appearance: none; appearance: none; width: 14px; height: 14px; border-radius: 50%; background: var(--accent); cursor: pointer; border: 2px solid var(--bg); }
  .dual-range input[type=range]::-moz-range-thumb { pointer-events: all; width: 14px; height: 14px; border-radius: 50%; background: var(--accent); cursor: pointer; border: 2px solid var(--bg); }
  .dual-range .track { position: absolute; top: 8px; height: 4px; background: var(--surface0); width: 100%; border-radius: 2px; }
  .dual-range .track-fill { position: absolute; top: 8px; height: 4px; background: var(--accent); border-radius: 2px; opacity: 0.4; }
  .range-bar .range-val { color: var(--text); font-size: 0.75rem; min-width: 80px; }
  .range-date {
    background: var(--surface0); color: var(--text); border: 1px solid var(--border);
    border-radius: 4px; padding: 0.2rem 0.35rem; font-size: 0.7rem;
    font-family: inherit; line-height: 1.4; cursor: pointer;
  }
  .range-date:hover { border-color: var(--accent); }
  .range-date:focus { border-color: var(--accent); box-shadow: var(--glow); }
  .range-date::-webkit-calendar-picker-indicator { cursor: pointer; opacity: 0.6; }
  .range-date::-webkit-calendar-picker-indicator:hover { opacity: 1; }
  .range-presets { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.25rem; width: 100%; }
  @media (max-width: 640px) {
    .range-bar { gap: 0.4rem 0.5rem; }
    .range-bar .range-date { flex: 1 1 6rem; min-width: 0; font-size: 16px; padding: 0.5rem 0.4rem; }
    .range-bar .dual-range { flex-basis: 100%; order: 1; }
    .range-bar .range-presets { order: 2; }
  }
  .range-btn { background: var(--surface0); color: var(--text); border: 1px solid var(--border); border-radius: 4px; padding: 0.2rem 0.5rem; font-size: 0.65rem; font-family: inherit; cursor: pointer; text-transform: uppercase; letter-spacing: 0.05em; }
  .range-btn:hover { background: var(--surface1); }
  .chip-legend > .chip { cursor: pointer; font-size: 0.7rem; padding: 0.15rem 0.4rem;
    border-radius: 3px; border: 1px solid currentColor; line-height: 1.5; }
  @media (pointer: coarse) {
    .range-btn { padding: 0.45rem 0.7rem; }
    .dl-btn { padding: 0.45rem 0.8rem; }
    .range-date { padding: 0.4rem 0.5rem; }
    .chip-legend > .chip { padding: 0.55rem 0.7rem; font-size: 0.75rem; }
  }
  .range-btn.active { background: var(--accent); color: var(--base); border-color: var(--accent); box-shadow: var(--glow); }
