:root{--bg:#f6f7f9;--fg:#1b1f24;--muted:#5b6470;--card:#fff;--line:#d9dde3;--acc:#1f3864;--hd:#1f3864}
@media (prefers-color-scheme:dark){:root{--bg:#14171b;--fg:#e8eaed;--muted:#9aa3ad;--card:#1d2126;--line:#30363d;--acc:#8fb3ff;--hd:#16243f}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:15px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--fg)}
header{padding:16px;background:var(--hd);color:#fff}header h1{margin:0;font-size:20px}header p{margin:6px 0 0;opacity:.85;font-size:13px}
main{max-width:1300px;margin:0 auto;padding:12px 16px}
.tabs{display:flex;gap:6px;margin:8px 0;flex-wrap:wrap}
.tabs button{padding:9px 12px;border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:6px;cursor:pointer;font:inherit}
.tabs button.on{background:var(--hd);color:#fff;border-color:var(--hd)}
.panel{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}
label{font-size:12px;color:var(--muted);display:block;margin-bottom:2px}
input,select{width:100%;padding:8px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--fg);font-size:16px}
table{width:100%;border-collapse:collapse;font-size:13px}th,td{border-bottom:1px solid var(--line);padding:7px;text-align:left;vertical-align:top}
th{position:sticky;top:0;background:var(--card)}.wrap{overflow-x:auto;max-height:72vh}
.note{font-size:12px;color:var(--muted);margin:8px 0}small{color:var(--muted)}a{color:var(--acc)}
details summary{cursor:pointer;color:var(--acc)}
footer{max-width:1300px;margin:0 auto;padding:4px 16px 24px;font-size:12px;color:var(--muted)}
@media (max-width:760px){
 .wrap{max-height:none}.rt thead{display:none}.rt,.rt tbody,.rt tr,.rt td{display:block;width:100%}
 .rt tr{border:1px solid var(--line);border-radius:8px;margin:0 0 10px;padding:6px 8px;background:var(--bg)}
 .rt td{border:0;padding:3px 0}.rt td::before{content:attr(data-l);display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
 .rt td:empty{display:none}}
