/* Only loaded by Born and Die. Reuses the established page palette and type. */
.demographic-summary{margin:0 0 40px;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}
.demographic-summary h2{margin:0;font-size:1.35rem;letter-spacing:-.025em}
.demographic-summary>p{color:var(--muted);font-size:.875rem;margin:8px 0 18px}
.demographic-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.demographic-cards a{display:block;border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;min-width:0;background:var(--bg)}
.demographic-cards a:hover{border-color:var(--blue)}
.demographic-cards small,.demographic-cards span{display:block;color:var(--muted);font-size:.875rem}
.demographic-cards strong{display:block;color:var(--blue);font-size:clamp(1.45rem,3.6vw,2rem);font-variant-numeric:tabular-nums;letter-spacing:-.04em;overflow-wrap:anywhere}
.demographic-nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin:16px 0 0;font-size:.875rem}
.demographic-nav a{color:var(--blue);text-underline-offset:3px}
.demographic-details{font-size:1rem;line-height:1.75}
.demographic-details section{scroll-margin-top:24px}
.demographic-details h2{font-size:clamp(1.45rem,3.5vw,2rem);line-height:1.2}
.demographic-details .demographic-answer{font-size:1.1rem;color:var(--ink)}
.demographic-answer strong{color:var(--blue);font-variant-numeric:tabular-nums}
.demographic-details .formula{font-size:.9rem;padding:14px 16px;background:var(--soft);border-radius:10px}
.demographic-details table{border-collapse:collapse;width:100%;font-size:.95rem}
.demographic-details th,.demographic-details td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.demographic-details td:not(:first-child),.demographic-details th:not(:first-child){text-align:right}
.demographic-table{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.demographic-details caption{text-align:left;padding:12px 10px;color:var(--muted);font-size:.875rem}
.demographic-note{font-size:.875rem;color:var(--muted)}
[data-demographic-warning]:not([hidden]){border-left:3px solid var(--blue);padding:14px;background:var(--soft)}
@media(max-width:560px){.demographic-summary{padding:18px}.demographic-cards{grid-template-columns:1fr}.demographic-cards a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px}.demographic-cards strong{grid-column:2;grid-row:1/3}.demographic-cards small,.demographic-cards span{grid-column:1}.demographic-details th,.demographic-details td{padding:10px 8px;font-size:.875rem}}
