/* home/static/home/css/home_v2.css
 * Phase 2.9 — v2 home page, lifted from nyakundi_v2_mock.html.
 *
 * Scope: every selector below is namespaced under .home-v2 so it can sit
 * beside legacy `.t-home` rules in nyakundi.css without colliding. When
 * Phase 0.6 finally drops the legacy home, the .home-v2 prefix can be
 * lifted in one pass.
 *
 * Tokens are referenced with fallbacks (e.g. var(--ink-2, #1a1c1c)) since
 * not every v2 token is declared in the current global stylesheet yet.
 */

:root {
    --paper-2:        #f9f9f9;
    --paper-3:        #efeeea;
    --paper-4:        #e2e2e2;
    --ink-2:          #1a1c1c;
    --ink-3:          #4a4a4a;
    --muted:          #7e7576;
    --outline-soft:   #d4d0c8;
    --outline-faint:  #ebe8e0;
    --secondary-soft: #fbeae9;
    --confirmed:      #0f6b3f;
    --confirmed-bg:   #e6f4ec;
    --checking:       #a06200;
    --checking-bg:    #fbf2e0;
    --record:         #0d47c2;
    --record-bg:      #e6edf9;
    --wire-bg:        #15130f;
    --wire-ink:       #e8dfca;
    --wire-muted:     #8a8278;
    --serif:          'Newsreader', Georgia, serif;
    --sans:           'Inter', -apple-system, system-ui, sans-serif;
    --mono:           'JetBrains Mono', ui-monospace, monospace;
}

/* ── pills ────────────────────────────────────────────────────────────── */
.home-v2 .pill { display: inline-flex; align-items: center; gap: 4px; padding: 2px 7px; font-size: 10px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.4; font-family: var(--sans); white-space: nowrap; }
.home-v2 .pill.confirmed { background: var(--confirmed-bg); color: var(--confirmed); }
.home-v2 .pill.checking  { background: var(--checking-bg);  color: var(--checking); }
.home-v2 .pill.record    { background: var(--record-bg);    color: var(--record); }
.home-v2 .pill.muted     { background: var(--paper-3);      color: var(--muted); }
.home-v2 .pill.live      { background: var(--secondary, #b7221e); color: #fff; }
.home-v2 .live-dot { width: 6px; height: 6px; background: #fff; border-radius: 50%; display: inline-block; }

/* ── crests (outlet badges) ───────────────────────────────────────────── */
.home-v2 .crest { width: 26px; height: 26px; display: grid; place-items: center; font-size: 10px; font-weight: 700; color: #fff; flex-shrink: 0; letter-spacing: 0.02em; font-family: var(--sans); }
.home-v2 .crest.c0 { background: #1E3A8A; } .home-v2 .crest.c1 { background: #b7221e; }
.home-v2 .crest.c2 { background: #0f6b3f; } .home-v2 .crest.c3 { background: #a06200; }
.home-v2 .crest.c4 { background: #6a28a8; } .home-v2 .crest.c5 { background: #0f766e; }
.home-v2 .crest.c6 { background: #be185d; } .home-v2 .crest.c7 { background: #1f2937; }
.home-v2 .crest.c8 { background: #c2410c; } .home-v2 .crest.c9 { background: #4d7c0f; }

/* ── ticker ───────────────────────────────────────────────────────────── */
.home-v2 .ticker { background: var(--ink, #000); color: var(--paper, #fff); padding: 7px 16px; display: flex; gap: 14px; align-items: center; overflow: hidden; font-size: 11px; font-family: var(--sans); }
.home-v2 .ticker .pill.live { font-size: 9px; padding: 2px 6px; }
.home-v2 .ticker .item { white-space: nowrap; color: #ccc; }
@media (min-width: 1024px) { .home-v2 .ticker { padding: 7px 24px; } }

/* ── home grid (3 columns desktop, ordered stack on mobile) ───────────── */
.home-v2 .home-grid { display: flex; flex-direction: column; gap: 20px; }
.home-v2 .home-grid > * { min-width: 0; }
.home-v2 .home-grid > div { order: 1; }
.home-v2 .home-grid > .signal-panel { order: 2; }
.home-v2 .home-grid > aside:last-child { order: 3; }
@media (min-width: 1024px) {
  .home-v2 .home-grid {
    display: grid;
    grid-template-columns: 280px 1fr 320px;
    gap: 32px;
    padding: 24px;
    max-width: 1320px;
    margin: 0 auto;
  }
  .home-v2 .home-grid > .signal-panel,
  .home-v2 .home-grid > div,
  .home-v2 .home-grid > aside:last-child { order: initial; }
}

/* ── live signal panel (column 1) ─────────────────────────────────────── */
.home-v2 .signal-panel { background: var(--wire-bg); color: var(--wire-ink); padding: 0; border-top: 2px solid var(--ink, #000); font-family: var(--sans); }
@media (max-width: 1023px) {
  .home-v2 .signal-panel {
    margin: 0 16px 8px;
    border-top-width: 1px;
    max-height: 440px;
    overflow: auto;
    overscroll-behavior: contain;
  }
}
@media (min-width: 1024px) {
  .home-v2 .signal-panel {
    position: sticky;
    top: calc(var(--topbar-h, 64px) + 86px);
    max-height: calc(100vh - (var(--topbar-h, 64px) + 110px));
    overflow: auto;
    overscroll-behavior: contain;
  }
}
.home-v2 .signal-panel .head { padding: 12px 14px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #2a2418; }
@media (max-width: 1023px) {
  .home-v2 .signal-panel .head,
  .home-v2 .signal-panel .tabs { position: sticky; background: var(--wire-bg); z-index: 2; }
  .home-v2 .signal-panel .head { top: 0; }
  .home-v2 .signal-panel .tabs { top: 41px; }
}
.home-v2 .signal-panel .head .title { display: flex; align-items: center; gap: 8px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: #fff; font-weight: 700; }
.home-v2 .signal-panel .head .title .led { width: 7px; height: 7px; background: #ef4444; }
.home-v2 .signal-panel .head .meta { font-family: var(--mono); font-size: 10px; color: var(--wire-muted); letter-spacing: 0.06em; }
.home-v2 .signal-panel .tabs { display: flex; gap: 0; border-bottom: 1px solid #2a2418; overflow-x: auto; }
.home-v2 .signal-panel .tabs::-webkit-scrollbar { display: none; }
.home-v2 .signal-panel .tabs a { padding: 8px 12px; font-family: var(--mono); font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wire-muted); white-space: nowrap; border-right: 1px solid #2a2418; cursor: pointer; }
.home-v2 .signal-panel .tabs a.on { color: #fff; background: #1f1c14; }
.home-v2 .signal-row { padding: 10px 14px; border-bottom: 1px solid #1f1c14; display: grid; grid-template-columns: 56px 36px 1fr; gap: 8px; align-items: start; font-family: var(--mono); font-size: 11px; line-height: 1.45; }
.home-v2 .signal-row .ts { color: var(--wire-muted); font-size: 10px; padding-top: 1px; }
.home-v2 .signal-row .flag { font-size: 9px; padding: 2px 4px; font-weight: 700; letter-spacing: 0.04em; text-align: center; line-height: 1.2; }
.home-v2 .signal-row .flag.brk { background: #b7221e; color: #fff; }
.home-v2 .signal-row .flag.gaz { background: #0d47c2; color: #fff; }
.home-v2 .signal-row .flag.crt { background: #6a28a8; color: #fff; }
.home-v2 .signal-row .flag.tnd { background: #a06200; color: #fff; }
.home-v2 .signal-row .flag.upd { background: #444; color: #fff; }
.home-v2 .signal-row .flag.rec { background: #0f6b3f; color: #fff; }
.home-v2 .signal-row .body { color: var(--wire-ink); font-family: var(--sans); font-size: 12px; }
.home-v2 .signal-row .body a { color: inherit; text-decoration: none; }
.home-v2 .signal-row .body .src { color: var(--wire-muted); font-family: var(--mono); font-size: 10px; display: block; margin-top: 3px; }
.home-v2 .signal-panel::-webkit-scrollbar { width: 10px; }
.home-v2 .signal-panel::-webkit-scrollbar-thumb { background: #353128; border: 2px solid var(--wire-bg); }
.home-v2 .signal-panel::-webkit-scrollbar-track { background: var(--wire-bg); }
@media (max-width: 1023px) {
  .home-v2 .signal-row { grid-template-columns: 44px 34px 1fr; padding: 10px 12px; }
  .home-v2 .signal-row .body { font-size: 11px; line-height: 1.5; }
}

/* ── what changed today strip (top of column 2) ───────────────────────── */
.home-v2 .changed-strip { border-top: 3px solid var(--secondary, #b7221e); padding: 16px; background: var(--paper, #fff); }
.home-v2 .changed-strip .head { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; }
.home-v2 .changed-strip .head h2 { font-family: var(--serif); font-size: 22px; font-weight: 700; color: var(--ink, #000); }
.home-v2 .changed-strip .head .eyebrow { font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); font-family: var(--mono); }
.home-v2 .changed-list .changed-item { padding: 14px 0; border-bottom: 1px solid var(--outline-faint); }
.home-v2 .changed-list .changed-item:last-child { border: 0; }
.home-v2 .changed-list .changed-item a { color: inherit; text-decoration: none; display: block; }
.home-v2 .changed-list .changed-item .arrow { color: var(--secondary, #b7221e); font-weight: 700; margin-right: 6px; }
.home-v2 .changed-list .changed-item h4 { font-family: var(--serif); font-size: 16px; font-weight: 600; line-height: 1.3; margin-bottom: 4px; color: var(--ink, #000); }
.home-v2 .changed-list .changed-item .ctx { font-size: 12px; color: var(--muted); display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-family: var(--sans); }
.home-v2 .changed-list .changed-item .ctx .mono { font-family: var(--mono); }

/* ── lead cluster ─────────────────────────────────────────────────────── */
.home-v2 .lead-cluster { padding: 20px 16px; border-bottom: 2px solid var(--ink, #000); background: var(--paper, #fff); }
@media (max-width: 1023px) {
  .home-v2 .lead-cluster { margin: 0 16px; padding: 18px 16px 20px; }
  .home-v2 .lead-cluster h2 { font-size: 23px; line-height: 1.08; }
}
.home-v2 .lead-cluster .meta-row { display: flex; gap: 8px; align-items: center; margin-bottom: 12px; flex-wrap: wrap; font-family: var(--sans); }
.home-v2 .lead-cluster .eyebrow { font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); font-weight: 700; font-family: var(--mono); }
.home-v2 .lead-cluster h2 { font-family: var(--serif); font-size: 28px; font-weight: 700; line-height: 1.1; letter-spacing: -0.02em; margin-bottom: 12px; color: var(--ink, #000); }
.home-v2 .lead-cluster h2 a { color: inherit; text-decoration: none; }
.home-v2 .lead-cluster p { font-size: 15px; color: var(--ink-2); line-height: 1.5; margin-bottom: 14px; font-family: var(--serif); }
.home-v2 .lead-cluster .source-strip { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; font-size: 11px; color: var(--muted); margin-bottom: 12px; font-family: var(--sans); }
.home-v2 .lead-cluster .crests-stack { display: flex; }
.home-v2 .lead-cluster .crests-stack .crest { margin-right: -6px; border: 2px solid var(--paper, #fff); }
.home-v2 .lead-cluster .changed-tag { background: var(--checking-bg); border-left: 3px solid var(--checking); padding: 10px 12px; font-size: 13px; font-family: var(--sans); }
.home-v2 .lead-cluster .changed-tag strong { color: var(--checking); display: block; font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 4px; font-family: var(--mono); }
.home-v2 .lead-cluster .actions { display: flex; gap: 8px; margin-top: 14px; }
.home-v2 .lead-cluster .actions a.primary,
.home-v2 .lead-cluster .actions button.primary { flex: 1; padding: 11px; background: var(--ink, #000); color: var(--paper, #fff); border: 0; font-size: 13px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; text-align: center; text-decoration: none; cursor: pointer; font-family: var(--sans); }

/* ── section rule + story rows ────────────────────────────────────────── */
.home-v2 .section-rule { display: flex; align-items: baseline; justify-content: space-between; padding: 0 0 10px; border-bottom: 2px solid var(--ink, #000); margin-bottom: 16px; }
.home-v2 .section-rule h2 { font-family: var(--serif); font-weight: 700; font-size: 22px; letter-spacing: -0.01em; color: var(--ink, #000); }
.home-v2 .section-rule .more,
.home-v2 .section-rule .meta { font-size: 11px; color: var(--ink-3); font-weight: 500; font-family: var(--sans); letter-spacing: 0.12em; text-transform: uppercase; }
@media (min-width: 1024px) { .home-v2 .section-rule h2 { font-size: 28px; } }

.home-v2 .story-row { padding: 16px 0; border-bottom: 1px solid var(--outline-soft); display: grid; grid-template-columns: 1fr 88px; gap: 14px; }
@media (max-width: 1023px) {
  .home-v2 section[style="padding:16px;"],
  .home-v2 .records-strip,
  .home-v2 .contribution-block,
  .home-v2 .under-list,
  .home-v2 .trending,
  .home-v2 .mood-block { margin: 0 16px; }
  .home-v2 .story-row { grid-template-columns: 1fr 88px; }
}
.home-v2 .story-row > a { display: contents; color: inherit; text-decoration: none; }
.home-v2 .story-row .meta-row { display: flex; gap: 8px; align-items: center; margin-bottom: 6px; flex-wrap: wrap; font-size: 11px; color: var(--muted); font-family: var(--sans); }
.home-v2 .story-row h3 { font-family: var(--serif); font-weight: 600; font-size: 17px; line-height: 1.25; letter-spacing: -0.005em; color: var(--ink, #000); }
.home-v2 .story-row .lede { color: var(--ink-3); font-size: 13px; margin-top: 4px; line-height: 1.5; font-family: var(--serif); }
.home-v2 .story-row .thumb { width: 88px; height: 88px; background: var(--paper-3); border: 1px solid var(--outline-soft); display: grid; place-items: center; color: var(--muted); font-size: 10px; overflow: hidden; }
.home-v2 .story-row .thumb img { width: 100%; height: 100%; object-fit: cover; }
.home-v2 .story-row .footer-row { display: flex; gap: 8px; align-items: center; margin-top: 8px; font-size: 11px; color: var(--muted); flex-wrap: wrap; font-family: var(--sans); }
@media (min-width: 1024px) {
    .home-v2 .story-row { grid-template-columns: 1fr 200px; gap: 24px; padding: 22px 0; }
    .home-v2 .story-row h3 { font-size: 22px; }
    .home-v2 .story-row .lede { font-size: 15px; }
    .home-v2 .story-row .thumb { width: 200px; height: 140px; }
}

/* ── public records strip ─────────────────────────────────────────────── */
.home-v2 .records-strip { padding: 16px; background: var(--paper-2); }
.home-v2 .records-grid { display: grid; grid-template-columns: 1fr; gap: 0; }
@media (min-width: 1024px) { .home-v2 .records-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; } }
.home-v2 .record-tile { padding: 14px; border-top: 1px solid var(--outline-soft); border-left: 3px solid var(--record); background: var(--paper, #fff); }
@media (min-width: 1024px) { .home-v2 .record-tile { border-top: 1px solid var(--outline-soft); } }
.home-v2 .record-tile a { color: inherit; text-decoration: none; }
.home-v2 .record-tile .eyebrow { color: var(--record); margin-bottom: 8px; font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; font-family: var(--mono); }
.home-v2 .record-tile h4 { font-family: var(--serif); font-size: 16px; font-weight: 600; line-height: 1.3; margin-bottom: 5px; color: var(--ink, #000); }
.home-v2 .record-tile .meta { font-size: 12px; color: var(--muted); font-family: var(--sans); }

/* ── who-added-what comparison ────────────────────────────────────────── */
.home-v2 .contribution-block { padding: 16px; background: var(--paper, #fff); border-top: 2px solid var(--ink, #000); }
.home-v2 .contribution-block .head { margin-bottom: 12px; }
.home-v2 .contribution-block .head h3 { font-family: var(--serif); font-size: 19px; font-weight: 700; margin-bottom: 4px; color: var(--ink, #000); }
.home-v2 .contribution-block .head p { font-size: 12px; color: var(--muted); font-family: var(--sans); }
.home-v2 .contribution-row { padding: 12px 0; border-bottom: 1px solid var(--outline-faint); display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; }
.home-v2 .contribution-row .src-cell { display: flex; align-items: center; gap: 8px; font-weight: 700; font-size: 13px; min-width: 110px; font-family: var(--sans); }
.home-v2 .contribution-row .what { font-size: 13px; color: var(--ink-2); line-height: 1.5; font-family: var(--sans); }
.home-v2 .contribution-row .what .label { display: inline-block; margin-top: 4px; }

/* ── undercovered ─────────────────────────────────────────────────────── */
.home-v2 .under-list { background: var(--paper, #fff); padding: 16px; }
.home-v2 .under-row { padding: 14px 0; border-bottom: 1px solid var(--outline-soft); display: grid; grid-template-columns: 36px 1fr; gap: 12px; align-items: start; }
.home-v2 .under-row .num { font-family: var(--serif); font-size: 24px; font-weight: 700; color: var(--muted); line-height: 1; }
.home-v2 .under-row h4 { font-size: 14px; font-weight: 600; line-height: 1.35; margin-bottom: 4px; font-family: var(--serif); color: var(--ink, #000); }
.home-v2 .under-row .ctx { font-size: 11px; color: var(--muted); margin-bottom: 6px; font-family: var(--sans); }
.home-v2 .under-row .signal-tag { display: inline-block; padding: 2px 6px; background: var(--secondary-soft); color: var(--secondary, #b7221e); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 700; font-family: var(--sans); }

/* ── side rail ───────────────────────────────────────────────────────── */
.home-v2 .home-side-rail { display: flex; flex-direction: column; gap: 14px; }
.home-v2 .side-card { background: var(--paper, #fff); border: 1px solid var(--outline-soft); padding: 16px; }
.home-v2 .side-card__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--outline-faint); }
.home-v2 .side-card__head h3 { margin: 0; font-family: var(--mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--secondary, #b7221e); }
.home-v2 .side-card__head a { font-family: var(--mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); }
.home-v2 .side-card__lead { display: block; margin-bottom: 10px; color: inherit; text-decoration: none; }
.home-v2 .side-card__lead strong { display: block; margin-top: 8px; font-family: var(--serif); font-size: 21px; line-height: 1.15; color: var(--ink, #000); text-wrap: balance; }
.home-v2 .side-card__lede { margin: 0 0 12px; font-family: var(--serif); font-size: 14px; line-height: 1.5; color: var(--ink-3); }
.home-v2 .side-card__meta { display: flex; flex-wrap: wrap; gap: 6px 10px; margin-bottom: 12px; font-size: 11px; color: var(--muted); font-family: var(--sans); }
.home-v2 .side-card__list { display: flex; flex-direction: column; gap: 10px; }
.home-v2 .side-card__item { display: grid; grid-template-columns: 44px 1fr; gap: 10px; align-items: start; padding-top: 10px; border-top: 1px solid var(--outline-faint); }
.home-v2 .side-card__time { font-family: var(--mono); font-size: 10px; color: var(--muted); padding-top: 2px; }
.home-v2 .side-card__item a { color: var(--ink, #000); text-decoration: none; font-family: var(--sans); font-size: 13px; line-height: 1.45; }
.home-v2 .mini-list,
.home-v2 .video-tease__list { display: flex; flex-direction: column; gap: 12px; }
.home-v2 .mini-story { display: grid; grid-template-columns: 1fr; gap: 10px; }
.home-v2 .mini-story.has-thumb { grid-template-columns: 88px 1fr; align-items: start; }
.home-v2 .mini-story__thumb { width: 88px; height: 72px; overflow: hidden; border: 1px solid var(--outline-soft); background: var(--paper-3); }
.home-v2 .mini-story__thumb img { width: 100%; height: 100%; object-fit: cover; }
.home-v2 .mini-story__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 4px; font-size: 10px; color: var(--muted); font-family: var(--mono); text-transform: uppercase; letter-spacing: 0.08em; }
.home-v2 .mini-story h4 { margin: 0; font-family: var(--serif); font-size: 16px; line-height: 1.25; color: var(--ink, #000); }
.home-v2 .mini-story h4 a { color: inherit; text-decoration: none; }
.home-v2 .side-card--video .video-tease__media { display: block; margin-bottom: 12px; border: 1px solid var(--outline-soft); overflow: hidden; background: var(--paper-3); }
.home-v2 .side-card--video .video-tease__media img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.home-v2 .video-tease__title { margin: 0 0 8px; font-family: var(--serif); font-size: 20px; line-height: 1.15; color: var(--ink, #000); }
.home-v2 .video-tease__title a { color: inherit; text-decoration: none; }
.home-v2 .video-tease__lede { margin: 0 0 12px; font-family: var(--serif); font-size: 14px; line-height: 1.5; color: var(--ink-3); }
.home-v2 .lead-cluster h2,
.home-v2 .story-row h3,
.home-v2 .mini-story h4,
.home-v2 .side-card__lead strong,
.home-v2 .video-tease__title,
.home-v2 .under-row h4,
.home-v2 .record-tile h4 {
  overflow-wrap: anywhere;
  text-wrap: balance;
}

/* ── trending entities (column 3) ─────────────────────────────────────── */
.home-v2 .trending { background: var(--paper, #fff); padding: 16px; border-top: 1px solid var(--outline-soft); }
.home-v2 .trending h3 { font-family: var(--serif); font-size: 18px; font-weight: 700; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--outline-soft); color: var(--ink, #000); }
.home-v2 .trend-row { padding: 9px 0; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px dashed var(--outline-faint); }
.home-v2 .trend-row:last-child { border: 0; }
.home-v2 .trend-row a { color: inherit; text-decoration: none; display: contents; }
.home-v2 .trend-row .name { font-size: 13px; font-weight: 600; font-family: var(--sans); color: var(--ink, #000); }
.home-v2 .trend-row .role { font-size: 10px; color: var(--muted); margin-top: 2px; font-family: var(--sans); }
.home-v2 .trend-row .delta { font-size: 12px; color: var(--secondary, #b7221e); font-weight: 700; font-family: var(--mono); }

/* ── public mood (column 3) ───────────────────────────────────────────── */
.home-v2 .mood-block { background: var(--paper, #fff); padding: 16px; border-top: 1px solid var(--outline-soft); margin-top: 14px; }
.home-v2 .mood-block h3 { font-family: var(--serif); font-size: 18px; font-weight: 700; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--outline-soft); color: var(--ink, #000); }
.home-v2 .mood-row { padding: 9px 0; }
.home-v2 .mood-row .topic { font-size: 13px; font-weight: 600; margin-bottom: 4px; font-family: var(--sans); color: var(--ink, #000); }
.home-v2 .mood-row .bar { height: 4px; background: var(--paper-3); }
.home-v2 .mood-row .fill { height: 100%; background: var(--secondary, #b7221e); }
.home-v2 .mood-row .ctx { font-size: 10px; color: var(--muted); margin-top: 3px; font-family: var(--sans); }
.home-v2 .mood-block .disclaimer { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--outline-faint); font-size: 10px; color: var(--muted); font-family: var(--sans); }

/* ── empty state ──────────────────────────────────────────────────────── */
.home-v2 .empty-soft { padding: 24px 16px; color: var(--muted); font-family: var(--serif); font-style: italic; font-size: 13px; }

/* ── dark mode overrides ──────────────────────────────────────────────── */
html[data-theme="dark"] .home-v2 {
  --paper-2: #14171a;
  --paper-3: #1d2125;
  --paper-4: #2b3036;
  --ink: #fff;
  --ink-2: #e0e0e0;
  --ink-3: #b0b0b0;
  --muted: #888;
  --outline-soft: #2d333b;
  --outline-faint: #22272e;
  --secondary-soft: #381b1b;
  --confirmed: #34d399;
  --confirmed-bg: #064e3b;
  --checking: #fbbf24;
  --checking-bg: #78350f;
  --record: #60a5fa;
  --record-bg: #1e3a8a;
}
html[data-theme="dark"] .home-v2 .changed-strip,
html[data-theme="dark"] .home-v2 .lead-cluster,
html[data-theme="dark"] .home-v2 .record-tile,
html[data-theme="dark"] .home-v2 .contribution-block,
html[data-theme="dark"] .home-v2 .under-list,
html[data-theme="dark"] .home-v2 .side-card,
html[data-theme="dark"] .home-v2 .trending,
html[data-theme="dark"] .home-v2 .mood-block {
  background: var(--paper, #0e1014);
}
html[data-theme="dark"] .home-v2 .records-strip {
  background: var(--paper-2);
}
html[data-theme="dark"] .home-v2 .thumb,
html[data-theme="dark"] .home-v2 .mini-story__thumb,
html[data-theme="dark"] .home-v2 .video-tease__media {
  border-color: var(--outline-soft);
  background: var(--paper-3);
}
