:root{--ink:#1a1721;--paper:#faf8f5;--sub:#6b6572;--line:#e5e0da;--accent:#c2452d;--accent-soft:#f6e8e4}
@media (prefers-color-scheme:dark){:root{--ink:#ece8e3;--paper:#17141c;--sub:#9a93a3;--line:#2e2937;--accent:#e0664c;--accent-soft:#2b1e1c}}
*{margin:0;padding:0;box-sizing:border-box}
body{background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;line-height:1.7}
.wrap{max-width:720px;margin:0 auto;padding:0 20px}
header.site{padding:28px 0 20px;border-bottom:1px solid var(--line)}
header.site a{color:var(--ink);text-decoration:none}
.brand{font-size:1.35rem;font-weight:700;letter-spacing:-.02em}
.brand small{color:var(--accent);font-weight:700;margin-left:8px;font-size:.85rem}
.tagline{color:var(--sub);font-size:.85rem;margin-top:4px}
main{padding:36px 0 64px}
h1{font-size:1.55rem;letter-spacing:-.02em;line-height:1.35;margin-bottom:6px}
.meta{color:var(--sub);font-size:.85rem;margin-bottom:28px}
h2{font-size:1.05rem;margin:36px 0 14px;color:var(--accent)}
table{width:100%;border-collapse:collapse;font-size:.95rem}
td,th{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:baseline}
th{color:var(--sub);font-weight:500;font-size:.78rem}
td.rank{width:2.4em;color:var(--sub);font-variant-numeric:tabular-nums}
td.count{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
td.count small{color:var(--sub)}
.up{color:var(--accent);font-weight:700}
.new{background:var(--accent-soft);color:var(--accent);font-size:.7rem;padding:1px 6px;border-radius:3px;margin-left:6px;font-weight:700}
.note{color:var(--sub);font-size:.82rem;margin-top:26px;padding-top:14px;border-top:1px solid var(--line)}
.note a{color:var(--accent)}
footer{border-top:1px solid var(--line);padding:22px 0 48px;color:var(--sub);font-size:.8rem}
footer a{color:var(--sub)}
ul.archive{list-style:none}
ul.archive li{padding:10px 0;border-bottom:1px solid var(--line)}
ul.archive a{color:var(--ink);text-decoration:none}
ul.archive a:hover{color:var(--accent)}
.pill{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:2px 10px;font-size:.75rem;color:var(--sub);margin-right:6px}
table.facts{margin-top:18px;font-size:.85rem}
table.facts td small{color:var(--sub);display:block}