:root{--color-bg:#faf8f5;--color-surface:#fff;--color-text:#1c1a17;--color-text-muted:#6b665d;--color-border:#e4ded3;--color-accent:#a13d2f;--color-accent-soft:#a13d2f22;--color-dead:#d8d0c2;--color-alive:#2f4a3d;--color-projected:#b8ac97;--color-compare-1:#b07d2b;--color-compare-2:#4a6a8a;--color-compare-3:#8a4a78;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--measure:42rem;--radius:10px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:#17140f;--color-surface:#211d17;--color-text:#f2ede3;--color-text-muted:#a89e8c;--color-border:#3a352b;--color-accent:#e08469;--color-accent-soft:#e0846933;--color-dead:#3a352b;--color-alive:#7fae95;--color-projected:#5b5544;--color-compare-1:#d9a84e;--color-compare-2:#86a8cc;--color-compare-3:#c689b4}}:root[data-theme=dark]{--color-bg:#17140f;--color-surface:#211d17;--color-text:#f2ede3;--color-text-muted:#a89e8c;--color-border:#3a352b;--color-accent:#e08469;--color-accent-soft:#e0846933;--color-dead:#3a352b;--color-alive:#7fae95;--color-projected:#5b5544;--color-compare-1:#d9a84e;--color-compare-2:#86a8cc;--color-compare-3:#c689b4}*{box-sizing:border-box}html{color-scheme:light dark}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}main{max-width:var(--measure);margin:0 auto;padding:2.5rem 1rem 4rem}h1,h2,h3{font-family:var(--font-display);margin:0 0 .5em;font-weight:600;line-height:1.15}p{color:var(--color-text-muted)}a{color:inherit}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 .75rem;font-size:.8rem}.form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin:1.5rem 0 2.5rem;padding:1.25rem;display:flex}.field{flex-direction:column;flex:10rem;gap:.3rem;display:flex}.field.hidden{display:none}fieldset.field{border:0;min-width:0;margin:0;padding:0}.field label,.field legend{color:var(--color-text-muted);padding:0;font-size:.75rem}.field legend{margin-bottom:.3rem}.field.narrow{flex:0 7rem}.form-hint{flex-basis:100%;margin:0;font-size:.8rem}.form-hint:empty{display:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}[hidden]{display:none!important}.home-link{text-decoration:none}button,.share-buttons a{font:inherit;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;border-radius:6px;padding:.45rem .7rem;font-size:.85rem;text-decoration:none}button:disabled{cursor:default;opacity:.45}button.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-surface)}button.link-button{color:var(--color-text-muted);background:0 0;border:0;padding:.1rem .3rem;text-decoration:underline}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.field input,.field select{font:inherit;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);border-radius:6px;padding:.5rem .6rem;font-size:1rem}.toggle-group{gap:.35rem;display:flex}.toggle-group button{font:inherit;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;border-radius:6px;padding:.5rem .7rem;font-size:.85rem}.toggle-group button[aria-pressed=true]{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-text)}.headline{margin:2rem 0}.headline .number{font-family:var(--font-display);color:var(--color-accent);margin:0;font-size:clamp(3rem,12vw,5.5rem);line-height:1}.headline .caption{margin-top:.5rem;font-size:1.05rem}.headline .note{margin-top:.5rem;font-size:.85rem}.grid-wrap{margin:2rem 0}.person-grid{grid-template-columns:repeat(10,1fr);gap:4px;max-width:22rem;display:grid}.person-grid .dot{aspect-ratio:1;background:var(--color-alive);border-radius:50%}.person-grid .dot.dead{background:var(--color-dead)}@media (prefers-reduced-motion:no-preference){.person-grid .dot{animation:.24s ease-out both dot-in}}@keyframes dot-in{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.chart-wrap{margin:2.5rem 0}.chart-wrap svg{width:100%;height:auto;overflow:visible}.chart-legend{color:var(--color-text-muted);flex-wrap:wrap;gap:.4rem 1.1rem;margin:-1.5rem 0 .5rem;padding:0;font-size:.8rem;list-style:none;display:flex}.chart-legend li,.compare-list li{align-items:center;gap:.4rem;display:flex}.swatch{flex:none;width:1.2rem;height:.6rem;display:inline-block}.swatch-line{background:var(--color-alive);height:3px}.swatch-dashed{border-top:2.5px dashed var(--color-alive);opacity:.75;height:0}.swatch-dot{background:var(--color-accent);border-radius:50%;width:.6rem}.swatch-band{background:var(--color-text);opacity:.12}.chart-readout{color:var(--color-text-muted);min-height:1.2em;font-size:.85rem}.share{margin:2rem 0}.share textarea{width:100%;font:inherit;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);resize:vertical;border-radius:6px;padding:.5rem .6rem;font-size:.9rem;display:block}.share-buttons{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.share-status{min-height:1.2em;margin:.4rem 0 0;font-size:.8rem}.compare{margin:2.5rem 0}.compare-presets{flex-wrap:wrap;gap:.4rem;display:flex}.compare-list{margin:1rem 0;padding:0;font-size:.9rem;list-style:none}.compare-list:empty{display:none}.compare-list li{padding:.3rem 0}.compare-list li span:nth-child(2){flex:1}.compare-custom{flex-wrap:wrap;align-items:flex-end;gap:.6rem;margin-top:1rem;display:flex}.compare-custom .field input,.compare-custom .field select{padding:.4rem .5rem;font-size:.9rem}.ahead{margin:2.5rem 0}.ahead-milestones{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.6rem;margin:.75rem 0 1rem;padding:0;list-style:none;display:grid}.ahead-milestones li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;padding:.75rem;display:flex}.ahead-age{color:var(--color-text-muted);font-size:.75rem}.ahead-age:before{content:"Age "}.ahead-value{font-family:var(--font-display);color:var(--color-text);font-size:1.5rem}.ahead-year{color:var(--color-text-muted);font-size:.75rem}.ahead .note{font-size:.8rem}.world{margin:2.5rem 0}.map-wrap{min-height:8rem;margin:1rem 0 .5rem;position:relative}.map-wrap svg{width:100%;height:auto;display:block}.map-country{stroke:var(--color-bg);stroke-width:.5px}.map-country.clickable{cursor:pointer}.map-country.clickable:hover{stroke:var(--color-text);stroke-width:1px}.map-country.selected{stroke:var(--color-accent);stroke-width:1.5px}.map-nodata-bg{fill:var(--color-bg)}.map-nodata-line{stroke:var(--color-border);stroke-width:1.5px}.map-tooltip{z-index:1;pointer-events:none;background:var(--color-surface);border:1px solid var(--color-border);white-space:nowrap;border-radius:6px;padding:.35rem .55rem;font-size:.8rem;position:absolute;box-shadow:0 2px 8px #0000001f}.map-tooltip-hmd,.hmd-mark{letter-spacing:.04em;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:4px;margin-left:.4rem;padding:0 .25rem;font-size:.65rem}.map-legend{color:var(--color-text-muted);align-items:center;gap:.4rem;font-size:.75rem;display:flex}.map-ramp{background:linear-gradient(in oklab to right, var(--color-dead), var(--color-alive));border-radius:2px;width:8rem;height:.6rem}.map-nodata{border:1px solid var(--color-border);background:repeating-linear-gradient(45deg, var(--color-bg) 0 2px, var(--color-border) 2px 3px);width:.9rem;height:.6rem;margin-left:.8rem}.country-table{margin-top:1rem;font-size:.9rem}.country-table summary{cursor:pointer;color:var(--color-text-muted)}.country-table>div{max-height:24rem;margin-top:.5rem;overflow-y:auto}.country-table table{border-collapse:collapse;width:100%}.country-table th,.country-table td{border-bottom:1px solid var(--color-border);text-align:left;padding:.3rem .4rem;font-weight:400}.country-table thead th{background:var(--color-bg);position:sticky;top:0}.country-table thead button{color:var(--color-text-muted);background:0 0;border:0;padding:0;font-size:.8rem;font-weight:600}.country-table .num{text-align:right;font-variant-numeric:tabular-nums}.methodology{border-top:1px solid var(--color-border);margin-top:3rem;padding-top:1.5rem;font-size:.9rem}.methodology summary{cursor:pointer;font-family:var(--font-display);color:var(--color-text);padding-left:1rem;font-size:1.1rem;list-style:none;position:relative}.methodology summary::-webkit-details-marker{display:none}.methodology summary:before{content:"▸";color:var(--color-text-muted);font-size:.75em;transition:transform .15s;position:absolute;top:.2em;left:0}.methodology[open] summary:before{transform:rotate(90deg)}.methodology p{margin:1rem 0 0 1rem}
