:root{--bg: #f7f8fa;--fg: #1c2024;--muted: #60666e;--card: #fff;--line: #dde1e6;--accent: #2563eb;--accent-fg: #fff;--link: #2563eb;--sel: #e8f0fe;--err: #b91c1c;color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root[data-theme=dark]{--bg: #0f1216;--fg: #e6e8eb;--muted: #9aa1ab;--card: #171b21;--line: #2a3038;--link: #7aa7ff;--sel: #1b2a44;--err: #f87171}@media(prefers-color-scheme:dark){:root:not([data-theme]){--bg: #0f1216;--fg: #e6e8eb;--muted: #9aa1ab;--card: #171b21;--line: #2a3038;--link: #7aa7ff;--sel: #1b2a44;--err: #f87171}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.45 system-ui,sans-serif}main{max-width:1100px;margin:0 auto;padding:16px 16px 160px}h1{margin:0 0 4px;font-size:1.6rem}header p,.note{color:var(--muted);margin-top:0}.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:16px 0}.toolbar input[type=search],select{padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:inherit;min-width:200px}.table-wrap{background:var(--card);border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse}th,td{padding:8px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}th:first-child,td:first-child{width:1%}.num{white-space:nowrap}th button{all:unset;cursor:pointer;font-weight:600}tbody tr{cursor:pointer}tbody tr:hover{background:color-mix(in srgb,var(--sel) 50%,transparent)}tr.sel{background:var(--sel)}.num{text-align:right;font-variant-numeric:tabular-nums}.mono{font-family:ui-monospace,monospace}.error{color:var(--err)}.bar{position:fixed;inset:auto 0 0;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end;padding:12px 16px;background:var(--card);border-top:1px solid var(--line)}.bar span{margin-right:auto}button{padding:8px 14px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:inherit;font:inherit;cursor:pointer;text-decoration:none}button.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}button:disabled{opacity:.45;pointer-events:none}@media(max-width:760px){.hide-sm{display:none}th,td{padding:8px}}dialog{width:min(900px,94vw);max-height:86vh;padding:0;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--fg)}dialog[open]{display:flex;flex-direction:column}dialog::backdrop{background:#00000080}.dlg-head{display:flex;gap:10px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}.dlg-head span{margin-right:auto;color:var(--muted)}dialog pre{margin:0;padding:12px 16px;overflow:auto;font:13px/1.5 ui-monospace,monospace;white-space:pre}dialog p{padding:12px 16px;margin:0}a.ext{color:var(--link);text-decoration:none;margin-left:2px}a.ext:hover{text-decoration:underline}.muted{color:var(--muted);font-size:.85em}.warn{margin-top:16px;padding:12px 16px;border:1px solid var(--err);border-radius:10px;background:color-mix(in srgb,var(--err) 8%,var(--card))}.warn ul{margin:6px 0 0;padding-left:20px}.bar-msg{flex-basis:100%;margin:0;font-size:.9em}.bar-msg a{color:inherit}.warn{scroll-margin-bottom:160px}dialog.small{width:min(440px,94vw)}.dlg-foot{display:flex;justify-content:flex-end;padding:0 16px 16px}.title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.controls{display:flex;gap:8px}.seg{display:flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{border:0;border-radius:0;padding:6px 12px;background:var(--card)}.seg button.active{background:var(--accent);color:var(--accent-fg)}
