
:root{color-scheme:light dark;--bg:light-dark(#f6f5f0,#171b20);--panel:light-dark(#fff,#212830);--ink:light-dark(#182c37,#edf0ee);--muted:light-dark(#52616a,#b7c5c8);--line:light-dark(#d7ddd9,#465159);--accent:light-dark(#175d68,#9bdddf);--soft:light-dark(#eaf1ee,#2b4145)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}header,main,footer{max-width:1500px;margin:auto;padding:28px 32px}header{padding-top:40px;padding-bottom:15px}h1{font:500 clamp(29px,4vw,46px)/1.1 Georgia,serif;margin:10px 0 16px}h2{font:500 27px/1.25 Georgia,serif;margin:18px 0}h3{font-size:18px;font-weight:600}p{max-width:85ch}.eyebrow{color:var(--accent);font-size:13px;letter-spacing:.1em;text-transform:uppercase}.subtitle,.muted{color:var(--muted)}a{color:var(--accent);text-underline-offset:3px}button,input,select{font:inherit;color:var(--ink)}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);padding:9px 14px;border-radius:5px}button:hover{background:var(--soft)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}nav{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}nav button[aria-selected=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.controls{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:20px 0}.controls label{display:grid;gap:5px;color:var(--muted);font-size:14px}input,select{border:1px solid var(--line);border-radius:4px;padding:9px 12px;background:var(--panel)}input[type=search]{min-width:260px}.status{font-size:14px;color:var(--muted)}.notice{border-left:3px solid var(--accent);padding:4px 16px;margin:18px 0;max-width:100ch}.table-wrap{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:6px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;background:var(--soft);vertical-align:bottom;border-bottom:1px solid var(--line)}th button{font-size:13px;font-weight:600;display:block;width:100%;border:none;background:transparent;text-align:left;padding:14px 12px;white-space:nowrap;border-radius:0}td{border-bottom:1px solid var(--line);padding:14px 12px;vertical-align:top}tbody tr:last-child td{border-bottom:0}.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.name{font-weight:600;min-width:195px}.name button{border:none;background:transparent;padding:0;text-align:left;font-weight:600;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.period{display:block;min-width:185px;white-space:nowrap}.tag{display:inline-block;font-size:12px;white-space:nowrap;border-radius:3px;padding:2px 6px;background:var(--soft)}.detail td{background:var(--bg);padding:20px 26px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail p{margin-top:8px}.detail ul{margin:8px 0;padding-left:22px}.detail table{background:var(--panel)}.detail th{padding:8px 12px}.detail td{padding:8px 12px;background:var(--panel)}.prose{max-width:1050px}.prose li{margin:10px 0}.event{display:grid;grid-template-columns:95px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:17px 0}.event time{color:var(--accent);font-weight:600}.event p{margin:0}.event small{display:block;margin-top:5px}.source-list li{overflow-wrap:anywhere}.year-card{padding:20px 24px;background:var(--panel);border:1px solid var(--line);border-radius:6px;max-width:900px}.year-card ul{columns:2;padding-left:24px}.year-card li{margin:10px 0;break-inside:avoid}.linklike{border:0;background:transparent;padding:0;color:var(--accent);text-decoration:underline}.counts{font-size:14px;display:flex;gap:20px;flex-wrap:wrap;color:var(--muted)}footer{font-size:13px;color:var(--muted);border-top:1px solid var(--line);margin-top:30px}details{margin:18px 0}summary{cursor:pointer;color:var(--accent)}[hidden]{display:none!important}
@media(max-width:700px){header,main,footer{padding:20px 16px}header{padding-top:30px}.detail-grid{grid-template-columns:1fr}.controls{gap:10px}input[type=search]{min-width:0;width:100%}.controls label{width:100%}.event{grid-template-columns:75px 1fr;gap:12px}.year-card ul{columns:1}.detail td{padding:16px}.period{min-width:175px}.counts{gap:8px 16px}}
@media print{nav,.controls,button#export,#reset{display:none}body{background:#fff;color:#000}header,main{padding:10px}table{font-size:10px}.table-wrap{overflow:visible}th button{font-size:10px;padding:5px}td{padding:5px}.detail{display:none}.name button{color:#000;text-decoration:none}footer{font-size:10px}}

caption{ text-align:left;padding:12px }
.review{background:var(--soft);padding:12px 16px;border-left:3px solid var(--accent)}
button:disabled{cursor:default;opacity:.55}
