:root{--bg: #12151b;--panel: #181c24;--panel-2: #1d222b;--line: #2a303b;--hover: #222833;--text: #e8eaed;--muted: #9aa3b0;--accent: #d4a84b;--selected: #39d0ff;--bad: #e0695a;--good: #6fbf8b;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1{font-size:24px;margin:0 0 16px}h2{font-size:18px;margin:28px 0 10px}h3{font-size:15px;margin:20px 0 8px}p.caption,.caption{color:var(--muted);font-size:13px;margin:4px 0 12px}a{color:var(--accent)}input,select,button{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:5px 8px}button{cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);color:#111;border-color:var(--accent);font-weight:600}input[type=checkbox]{accent-color:var(--accent);padding:0}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:12px 0 20px}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.split{display:grid;grid-template-columns:3fr 2fr;gap:20px;margin-bottom:20px}@media(max-width:1100px){.two,.split{grid-template-columns:minmax(0,1fr)}}.controls{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin-bottom:14px}.controls label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}.segmented button{border:0;border-radius:0;background:transparent}.segmented button.on{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.note{background:var(--panel);border-left:3px solid var(--accent);padding:8px 12px;border-radius:4px;color:var(--muted);font-size:13px;margin:10px 0}.warn{background:color-mix(in srgb,var(--bad) 10%,transparent);border-left:3px solid var(--bad);padding:8px 12px;border-radius:4px;font-size:13px;margin:10px 0}.spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
