:root{--bg: #f6f7f9;--card: #fff;--text: #14181f;--muted: #667085;--border: #e3e6ea;--grid: #eceff2;--accent: #2563eb;--ok: #15803d;--warn: #b45309;--crit: #b91c1c;--off: #667085;--ok-bg: #dcfce7;--warn-bg: #fef3c7;--crit-bg: #fee2e2;--off-bg: #eceff2;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #0f1216;--card: #171b21;--text: #e8ebef;--muted: #98a2b3;--border: #262c35;--grid: #232830;--accent: #60a5fa;--ok: #4ade80;--warn: #fbbf24;--crit: #f87171;--off: #98a2b3;--ok-bg: #12351f;--warn-bg: #3a2a0a;--crit-bg: #3f1616;--off-bg: #232830}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,sans-serif}h1{font-size:20px;margin:0}h2{font-size:15px;margin:0 0 4px}.page{max-width:1280px;margin:0 auto;padding:24px 16px 48px;display:grid;gap:16px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:16px}.muted{color:var(--muted);margin:2px 0 8px}.small{font-size:12px}.error{color:var(--crit)}.mono{font-family:ui-monospace,Menlo,monospace;font-size:12px}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap}td.small{white-space:normal;max-width:280px}th{font-size:12px;color:var(--muted);font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums}tr.group td{background:var(--bg)}.badge{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--warn-bg);color:var(--warn)}.badge.crit{background:var(--crit-bg);color:var(--crit)}.badge.off{background:var(--off-bg);color:var(--off)}.gauge-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.big{font-size:28px}.bar{height:10px;background:var(--grid);border-radius:999px;overflow:hidden;margin:8px 0}.fill{height:100%}.fill.ok{background:var(--ok)}.fill.warn{background:var(--warn)}.fill.crit{background:var(--crit)}button{background:var(--accent);color:#fff;border:0;border-radius:6px;padding:8px 14px;font:inherit;cursor:pointer}button:disabled{opacity:.6}button.link{background:none;color:var(--accent);padding:0 4px}.login{min-height:100vh;display:grid;place-items:center;padding:16px}.login form{width:100%;max-width:360px;display:grid;gap:12px}label{display:grid;gap:4px;font-size:13px}input{padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);flex-wrap:wrap}.tabs a{padding:8px 14px;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs a.on{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0 12px}.stat{border:1px solid var(--border);border-radius:8px;padding:10px 12px}.big.ok{color:var(--ok)}.big.warn{color:var(--warn)}.big.crit{color:var(--crit)}.toolbar{display:flex;gap:8px;align-items:center}button.chip{background:var(--card);color:var(--text);border:1px solid var(--border);padding:4px 12px}button.chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}.cron-block h3{font-size:13px;margin:12px 0 0}code{font-family:ui-monospace,Menlo,monospace;font-size:12px}.form-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pill{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--grid);font-size:12px;margin:0 4px 2px 0}.check{display:inline-flex;grid-template-columns:none;align-items:center;gap:6px;margin-right:12px}.check input{width:auto}input.narrow,select.narrow{width:90px}select{padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit}textarea{width:100%;min-height:140px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:13px/1.4 ui-monospace,Menlo,monospace}button.secondary{background:var(--card);color:var(--text);border:1px solid var(--border)}button.danger{background:var(--crit)}button.small-btn{padding:3px 10px;font-size:12px}tr.expand td{background:var(--bg);white-space:normal}td.wrap{white-space:normal}
