/* T10 data dashboards (remaining-168, 2026-09-15). Scoped under body.db-page.
 * Compact source and date framing beside a left-aligned opening, a calm
 * measure strip that keeps each denominator next to its number, and chart
 * panels on one surface with even spacing. Chart renderers are untouched.
 */
body.db-page main .container { max-width: 1180px; }

/* Opening: title and purpose on the left, how the data is built beside it. */
body.db-page .db-back { display: inline-block; margin: .25rem 0 .75rem; font-size: .92rem; color: var(--color-primary); }
body.db-page .db-head { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem 2.5rem; align-items: start; margin: 0 0 1.5rem; }
body.db-page .db-head-copy > .db-eyebrow { color: var(--color-accent); font-family: var(--font-sans); font-size: .78rem; font-weight: 800; letter-spacing: .11em; margin: 0 0 .3rem; text-transform: uppercase; }
body.db-page .db-head h1 { margin: 0 0 .5rem; text-align: left; }
body.db-page .db-head-copy > p:not(.db-eyebrow) { color: var(--color-text-muted); font-size: 1rem; line-height: 1.6; margin: 0; max-width: 65ch; text-align: left; }
body.db-page .db-head .bva-method { margin: 0; max-width: none; padding: .9rem 1.1rem; background: var(--color-surface); border: 1px solid var(--color-border); border-left: 4px solid var(--color-accent); border-radius: var(--radius-md); }
body.db-page .db-head .bva-method p { text-align: left; font-size: .9rem; line-height: 1.55; margin: 0 0 .5rem; }
body.db-page .db-head .bva-method .bva-meta { margin: 0; font-weight: 600; color: var(--color-text); }
@media (min-width: 1024px) {
  body.db-page .db-head { grid-template-columns: minmax(0, 1fr) minmax(0, 440px); }
}

/* Measure strip: one surface, a divider between measures, denominators kept. */
body.db-page .bvas-kpis { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); gap: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 0 .5rem; overflow: hidden; }
body.db-page .bvas-kpi { background: none; border-radius: 0; border-left: 1px solid var(--color-border); padding: .9rem 1.1rem; }
body.db-page .bvas-kpi:first-child { border-left: 0; }
body.db-page .bvas-kpi-label { font-size: .85rem; font-weight: 600; }
body.db-page .bvas-kpi-val { font-size: 1.6rem; }
body.db-page .bvas-kpi-sub { font-size: .8rem; }
@media (max-width: 640px) {
  body.db-page .bvas-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.db-page .bvas-kpi:nth-child(3) { border-left: 0; }
  body.db-page .bvas-kpi:nth-child(n+3) { border-top: 1px solid var(--color-border); }
}
body.db-page .bvas-ov-note { font-size: .88rem; margin: 0 0 1.25rem; }

/* Chart panels */
body.db-page .bvas-ov-grid2 { gap: 20px; margin-bottom: 20px; }
body.db-page .bvas-ov-card { background: var(--color-surface); box-shadow: var(--shadow-sm); padding: 1.1rem 1.25rem 1.25rem; }
body.db-page .bvas-ov-full { margin-bottom: 20px; }
body.db-page .bvas-ov-card h4 { font-size: 1.1rem; margin: 0 0 .75rem; text-align: left; }
body.db-page .bvas-ov-card .bvas-pie-legend { font-size: .85rem; }
body.db-page .bvc-legend { font-size: .85rem; }
body.db-page .db-source { color: var(--color-text-muted); font-size: .88rem; line-height: 1.55; margin: 1.5rem 0 1rem; max-width: 80ch; }
body.db-page .db-source a { color: var(--color-primary); }

/* Shared: an opening side panel, cards that are hidden by a filter. */
@media (min-width: 1024px) { body.db-page .db-head:has(> .db-side) { grid-template-columns: minmax(0, 1fr) minmax(0, 380px); } }
body.db-page .dc-hero.db-head-copy { text-align: left; margin: 0; padding: 0; }
body.db-page .dc-hero.db-head-copy h1, body.db-page .dc-hero.db-head-copy p { text-align: left; margin-left: 0; margin-right: 0; }
body.db-page [hidden] { display: none !important; }
body.db-page .guide-section h2 { text-align: left; }

/* The automatic Related rail on dashboards: five cards lay out 3 + 2. */
@media (min-width: 900px) {
  body.db-page .rel-cards:has(> .rel-card:nth-child(5):last-child) { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  body.db-page .rel-cards:has(> .rel-card:nth-child(5):last-child) > .rel-card { grid-column: span 2; }
  body.db-page .rel-cards:has(> .rel-card:nth-child(5):last-child) > .rel-card:nth-child(n+4) { grid-column: span 3; }
}

/* BVA Insights: the method panel sits beside the opening (div wrapper, not header). */
body.db-page .db-head > .bva-method { margin: 0; max-width: none; padding: .9rem 1.1rem; background: var(--color-surface); border: 1px solid var(--color-border); border-left: 4px solid var(--color-accent); border-radius: var(--radius-md); }
body.db-page .db-head > .bva-method p { text-align: left; font-size: .9rem; line-height: 1.55; margin: 0 0 .5rem; }
body.db-page .db-head > .bva-method p:last-child { margin-bottom: 0; }
body.db-page .bva-hero.db-head-copy { text-align: left; margin: 0; }
body.db-page .bva-hero.db-head-copy p { margin-left: 0; margin-right: 0; }

/* Number rows: one calm strip with dividers instead of separate large cards. */
body.db-page .bva-stats-grid { gap: 1px; background: var(--color-border); border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; margin-bottom: 1.5rem; }
body.db-page .bva-stat-card { border: 0; border-radius: 0; background: var(--color-surface); text-align: left; padding: .9rem 1.1rem; }
body.db-page .bva-stat-number { font-size: 1.6rem; font-weight: 700; color: var(--color-text); line-height: 1.15; }
body.db-page .bva-stat-label { font-size: .85rem; }

/* Callouts on a calm surface in both themes. */
body.db-page .bva-crosslink { background: var(--color-surface); color: var(--color-text); border: 1px solid var(--color-border); border-left: 4px solid var(--color-accent); border-radius: var(--radius-md); padding: 1.1rem 1.25rem; margin: 1.5rem 0; }
body.db-page .bva-crosslink h2 { color: var(--color-text); font-size: 1.15rem; text-align: left; }
body.db-page .bva-crosslink-cta { color: var(--color-primary); }
body.db-page .bva-crosslink-cta:hover, body.db-page .bva-crosslink-cta:focus-visible { outline-color: var(--color-primary); }
body.db-page .bva-crosslink-tag { font-size: .75rem; }
body.db-page .db-related { margin: 2rem 0 1.5rem; }
body.db-page .db-related-h { font-size: 1.3rem; margin: 0 0 .9rem; text-align: left; }
body.db-page .db-related-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
body.db-page .db-related-grid > .bva-crosslink { margin: 0; }
body.db-page .db-related-grid .bva-crosslink-cta + .bva-crosslink-cta { margin-left: 1rem; }
@media (min-width: 900px) { body.db-page .db-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Pulse pages: report date, cross-link and email signup beside the opening. */
body.db-page .pulse-side { background: var(--color-surface); border: 1px solid var(--color-border); border-left: 4px solid var(--color-accent); border-radius: var(--radius-md); padding: 1rem 1.15rem; display: grid; gap: .6rem; }
body.db-page .pulse-side .pulse-meta, body.db-page .pulse-side .pulse-date { margin: 0; font-size: .95rem; color: var(--color-text); }
body.db-page .pulse-side > a { justify-content: center; }
body.db-page .pulse-side form { display: flex !important; justify-content: flex-start !important; }
body.db-page .pulse-side form input { flex: 1 1 160px; min-height: 44px !important; }
body.db-page .pulse-side form button { min-height: 44px !important; }
body.db-page .pulse-side #pulse-email-status, body.db-page .pulse-side .pulse-status { margin: 0; min-height: 0; font-size: .85rem; }
body.db-page .pulse-fine { margin: 0; font-size: .82rem; color: var(--color-text-muted); }
body.db-page .db-head-copy details.pp-fold > p { text-align: left; }
body.db-page .cp-subtitle { font-style: italic; color: var(--color-text-muted); margin: 0 0 .6rem; }
body.db-page .cp-about-p { color: var(--color-text); line-height: 1.65; margin: 0; max-width: 72ch; }
body.db-page .cp-lede { font-size: .9rem; color: var(--color-text); margin: 0 0 1rem; max-width: 72ch; line-height: 1.6; }
body.db-page .cp-h2 { font-size: 1.25rem; color: var(--color-text); text-align: left; }
body.db-page .cp-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: var(--color-border); border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; margin: 0 0 2rem; }
body.db-page .cp-kpis > p { grid-column: 1 / -1; background: var(--color-surface); margin: 0; padding: .9rem 1.1rem; }
body.db-page .cp-kpi { background: var(--color-surface); padding: .9rem 1.1rem; }
body.db-page .cp-kpi-label { font-size: .85rem; font-weight: 600; color: var(--color-text); }
body.db-page .cp-kpi-val { font-size: 1.6rem; font-weight: 700; line-height: 1.15; margin: .15rem 0; }
body.db-page .cp-kpi-sub { font-size: .8rem; color: var(--color-text-muted); }
@media (max-width: 640px) { body.db-page .cp-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 360px) { body.db-page .cp-kpis { grid-template-columns: minmax(0, 1fr); } }

/* The injected Share control lands after the opening copy: keep it under the copy, the side panel beside both. */
@media (min-width: 1024px) {
  body.db-page .db-head > .db-head-copy { grid-column: 1; grid-row: 1; }
  body.db-page .db-head > .rmv-share-mount { grid-column: 1; grid-row: 2; align-self: start; }
  body.db-page .db-head > .db-side, body.db-page .db-head > .bva-method { grid-column: 2; grid-row: 1 / span 2; }
}
body.db-page .db-head > .rmv-share-mount { margin: 0; }

/* BVA Insights factor cards: fit a 320px phone, and the sample-size line meets the 12px floor. */
body.db-page .bva-factor-cards { grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr)); }
body.db-page .bva-factor-n { font-size: .78rem; }

/* BVA Insights grant-rate-by-year bars: 12px labels; on phones the ten bars scroll sideways inside their card. */
body.db-page .bva-trend-rate, body.db-page .bva-trend-year { font-size: .75rem; }
body.db-page .bva-trend-rate { top: -1.15rem; }
body.db-page .bva-factor-card-wide { min-width: 0; }
@media (max-width: 560px) {
  body.db-page .bva-trend-chart { overflow-x: auto; overflow-y: hidden; gap: .4rem; padding-top: 1.3rem; height: 170px; }
  body.db-page .bva-trend-col { flex: 0 0 44px; }
  body.db-page .bva-trend-rate { display: block; }
}
body.db-page .bva-section .btn { max-width: 100%; white-space: normal; text-align: center; }
