:root{color-scheme:light dark;--bg: #f7f6f2;--fg: #1c1b18;--muted: #6b6860;--line: #e2dfd6;--panel: #ffffff;--alive: #1f8a4c;--alive-soft: #d9f2e3;--closed: #b9452e;--closed-soft: #f7dcd5;--accent: #2f5dd0;--label-w: 200px}@media (prefers-color-scheme: dark){:root{--bg: #14130f;--fg: #ecebe6;--muted: #9c998f;--line: #2b2a24;--panel: #1c1b16;--alive: #45c47a;--alive-soft: #163a25;--closed: #ee7a5f;--closed-soft: #3f1d15;--accent: #7ea0ff}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.page{max-width:1100px;margin:0 auto;padding:32px 20px 64px}.hero h1{font-size:30px;margin:0 0 6px;letter-spacing:-.01em}.brand{font-weight:800;color:var(--accent);margin-right:10px}.sub{margin:0 0 18px;color:var(--muted);max-width:640px}.stats{display:flex;gap:10px;flex-wrap:wrap}.stat{border:1px solid var(--line);background:var(--panel);color:var(--fg);border-radius:10px;padding:8px 14px;cursor:pointer;font:inherit;display:flex;align-items:baseline;gap:6px}.stat b{font-size:20px}.stat span{color:var(--muted)}.stat.alive b{color:var(--alive)}.stat.closed b{color:var(--closed)}.stat.active{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}.controls{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 16px}.controls input,.controls select{font:inherit;color:var(--fg);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px 12px}.controls input{flex:1 1 260px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{font:inherit;background:var(--panel);color:var(--muted);border:0;padding:8px 14px;cursor:pointer}.seg button[aria-selected=true]{background:var(--fg);color:var(--bg)}.muted{color:var(--muted)}.error{color:var(--closed)}.timeline-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.timeline{min-width:820px}.axis,.row{display:grid;grid-template-columns:var(--label-w) 1fr}.axis{position:sticky;top:0;z-index:2;background:var(--panel);border-bottom:1px solid var(--line)}.axis-years{position:relative;height:28px}.axis-years span{position:absolute;top:4px;transform:translate(-50%);font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.row{border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.row:hover{background:color-mix(in srgb,var(--fg) 4%,transparent)}.row-label{padding:6px 12px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-label a,.row-label span{font-weight:600;overflow:hidden;text-overflow:ellipsis}.row-label small{color:var(--muted);font-size:11px}.row-track{position:relative;height:40px}.grid{position:absolute;top:0;bottom:0;width:1px;background:var(--line);opacity:.6}.grid.major{opacity:1}.bar{position:absolute;top:9px;height:22px;border-radius:6px;display:flex;align-items:center;padding:0 8px;overflow:hidden;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.bar.alive{background:var(--alive-soft);color:var(--alive);border-left:3px solid var(--alive)}.bar.closed{background:var(--closed-soft);color:var(--closed);border-left:3px solid var(--closed);border-right:3px solid var(--closed)}.year{margin:22px 0}.year h2{font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.year ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.card.closed{border-left:4px solid var(--closed)}.card.alive{border-left:4px solid var(--alive)}.card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.card h3{margin:0;font-size:17px}.card p{margin:6px 0 0}.meta{color:var(--muted);font-size:13px}.note{color:var(--muted);font-size:13px;font-style:italic}.pill{font-size:12px;padding:2px 8px;border-radius:999px;white-space:nowrap}.pill.alive{background:var(--alive-soft);color:var(--alive)}.pill.closed{background:var(--closed-soft);color:var(--closed)}footer{margin-top:28px;color:var(--muted);font-size:13px}@media (max-width: 600px){:root{--label-w: 140px}.hero h1{font-size:24px}}
