:root{--bg:#060a17;--fg:#eef1f8;--mut:#a3adc8;--card:#0d1328;--bd:#1a2342;--ok:#3fb950;--bad:#f85149;--warn:#d29922;--acc:#ff8a80}html{color-scheme:dark}

*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 system-ui,sans-serif}
main{max-width:980px;margin:0 auto;padding:16px}h1{font-size:1.5rem;margin:.2em 0}h2{font-size:1.1rem;margin:0 0 .5em}
.card{background:var(--card);border:1px solid var(--bd);border-radius:8px;padding:14px;margin:14px 0}
.banner{border-left:4px solid var(--warn)}.mut{color:var(--mut)}code,pre{font:12.5px ui-monospace,monospace}
pre{background:var(--bg);border:1px solid var(--bd);border-radius:6px;padding:8px;overflow:auto;max-height:260px}
button{background:var(--acc);color:#fff;border:0;border-radius:6px;padding:7px 12px;margin:3px 3px 3px 0;cursor:pointer;font:inherit}
button.sec{background:transparent;color:var(--acc);border:1px solid var(--acc)}button.dng{background:var(--bad)}button:disabled{opacity:.5}
input,select{background:var(--bg);color:var(--fg);border:1px solid var(--bd);border-radius:6px;padding:6px;font:inherit;max-width:100%}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.node{border:1px solid var(--bd);border-radius:6px;padding:8px}
.ok{color:var(--ok);font-weight:600}.bad{color:var(--bad);font-weight:600}.warn{color:var(--warn);font-weight:600}
table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--bd);padding:4px 6px;text-align:left;vertical-align:top}
a{color:var(--acc)}nav a{margin-right:12px}label{display:block;margin:6px 0 2px}
