:root{--bg:#f6f7f9;--surface:#fff;--ink:#16222e;--ink2:#4a5a69;--line:#d7dee5;--accent:#0b5c8a;--sunken:#eaeef2;
  --font:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic UI",Meiryo,sans-serif}
@media (prefers-color-scheme:dark){:root{--bg:#0f1720;--surface:#17212c;--ink:#e6edf3;--ink2:#9db0c1;--line:#2b3a49;--accent:#6cb6e6;--sunken:#1d2936;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.75 var(--font);padding-inline:16px;padding-block:28px 56px}
.wrap{max-width:860px;margin-inline:auto;display:flex;flex-direction:column;gap:28px}
h1{font-size:clamp(22px,4vw,28px);margin:0 0 8px;line-height:1.4}
h2{font-size:18px;margin:0 0 10px}
.lead{margin:0;color:var(--ink2)}
.caution{margin:12px 0 0;padding:10px 14px;border-radius:8px;background:var(--sunken);font-size:14px}
.meta{margin:8px 0 0;font-size:13px;color:var(--ink2)}
.search{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:8px}
.search label{font-weight:600;font-size:14px}
input[type=search]{font:inherit;padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);width:100%}
input[type=search]:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.hint{margin:0;font-size:13px;color:var(--ink2)}
.count{font-size:13px;font-weight:500;color:var(--ink2);margin-left:6px}
.tabs{display:flex;gap:4px;border-bottom:2px solid var(--line);margin-bottom:-16px;flex-wrap:wrap}
.tabs button{font:inherit;font-weight:600;font-size:15px;color:var(--ink2);background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;padding:10px 16px;cursor:pointer;border-radius:8px 8px 0 0}
.tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.tabs button:hover{background:var(--sunken)}
.tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.tabs .count{margin-left:4px}
section[hidden]{display:none}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);max-height:520px;overflow-y:auto}
table{border-collapse:collapse;width:100%;font-size:14px;min-width:560px}
th,td{padding:9px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{position:sticky;top:0;background:var(--sunken);font-size:12px;color:var(--ink2);white-space:nowrap}
td:first-child,td:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}
td:nth-child(3){min-width:8em}
tr:last-child td{border-bottom:none}
.empty{color:var(--ink2);font-size:14px;margin:8px 0 0}
footer{font-size:12px;color:var(--ink2);border-top:1px solid var(--line);padding-top:14px}
footer p{margin:0}
