:root{--bg:#f5f1ea;--ink:#1b1b1b;--muted:#8a8377;--muted-2:#b5ae9f;--accent:#c8102e;--rule:#d9d2c2}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}body{background:var(--bg);color:var(--ink);padding:4rem 1.5rem;padding:max(4rem, env(safe-area-inset-top)) max(1.5rem, env(safe-area-inset-right)) max(4rem, env(safe-area-inset-bottom)) max(1.5rem, env(safe-area-inset-left));-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,sans-serif;line-height:1.5}main{max-width:640px;margin:0 auto}.masthead{text-align:center;margin-bottom:3.5rem}.masthead h1{letter-spacing:-.04em;font-size:clamp(2.75rem,12vw,4rem);font-weight:800;line-height:1}.masthead h1 a{color:inherit;transition:color .12s}.masthead h1 a:hover,.masthead h1 a:focus-visible{color:var(--accent);outline:none}.pronunciation{color:var(--muted);letter-spacing:.02em;margin-top:1.25rem;font-size:.875rem}.pronunciation em{font-style:italic}.subtitle{color:var(--muted);letter-spacing:.05em;margin-top:1.5rem;margin-bottom:1.75rem;font-size:.8125rem}.blurb{max-width:30ch;margin:0 auto;font-size:clamp(1rem,4vw,1.0625rem);line-height:1.5}.board h2,.graveyard h3{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:1.25rem;font-size:.75rem;font-weight:600}.people{border-top:1px solid var(--rule);list-style:none}.person{border-bottom:1px solid var(--rule);grid-template-columns:1.75rem 2.75rem 1fr auto auto;align-items:center;gap:.5rem .85rem;padding:.7rem 0;display:grid}.person-prime{padding:.95rem 0}.people .person-prime+.person:not(.person-prime){border-top:1px solid var(--rule);padding-top:.85rem}.rank{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8125rem}.person-prime .rank{color:var(--ink);font-weight:600}.trend{font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;min-width:1.5rem;color:var(--muted);background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:2px 7px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.75rem;font-weight:600;transition:transform .12s;display:inline-flex}.trend-up{color:#2d5c1e;background:#4f8a3a24}.trend-down{color:#8a6a3a;background:#8a6a3a1f}.trend-flat{color:var(--muted-2);background:0 0;padding:2px 4px}.trend-new{color:var(--accent);letter-spacing:.06em;text-transform:lowercase;background:#c8102e17;font-size:.625rem}.person:hover .trend-up,.person:hover .trend-down,.person:hover .trend-new{transform:translateY(-1px)}.name{overflow-wrap:anywhere;min-width:0;font-weight:500;transition:color .12s}.name:hover{color:var(--accent)}.person-prime .name{font-weight:600}.itness{font-variant-numeric:tabular-nums;white-space:nowrap;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.9375rem;font-weight:600}.badge{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);border:1px solid var(--accent);white-space:nowrap;border-radius:1px;padding:2px 6px;font-size:.625rem;font-weight:700}.honorable{text-align:center;margin-top:2rem;padding-top:1.5rem}.honorable .divider{color:var(--muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:1rem;font-size:.6875rem}.honorable .person{text-align:left;border-bottom:none}.graveyard{opacity:.78;margin-top:4rem}.graveyard ul{border-top:1px dashed var(--rule);list-style:none}.graveyard li{border-bottom:1px dashed var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;padding:.625rem 0;font-size:.875rem;display:flex}.eulogy{color:var(--muted);font-size:.8125rem;font-style:italic}footer{border-top:1px solid var(--rule);text-align:center;color:var(--muted);margin-top:5rem;padding-top:2rem;font-size:.8125rem}footer p+p{margin-top:.5rem}footer a{color:var(--accent);border-bottom:1px solid}.meta{letter-spacing:.05em;font-size:.6875rem}@media (width<=520px){body{padding:2.5rem 1rem}.masthead{margin-bottom:2.5rem}.person{grid-template-columns:1.25rem 2.5rem 1fr auto;gap:.5rem .625rem;padding:.7rem 0}.badge{grid-column:3/-1;justify-self:start;margin-top:4px}footer{margin-top:4rem}}@media (width<=360px){body{padding:2rem .875rem}.person{grid-template-columns:1rem 2.25rem 1fr auto;gap:.5rem}.itness{font-size:.875rem}.trend{padding:2px 5px;font-size:.6875rem}.trend-new{font-size:.5625rem}}
