:root{--bg: #FBFAF4;--bg-sunk: #f0ede5;--bg-raise: #ffffff;--line: #e6e3da;--line-strong: #d4d1c7;--fg: #1A1A1A;--fg-mid: #4f4f4a;--fg-dim: #6B6B66;--primary: #123C2B;--primary-hover: #0C2A1E;--on-primary: #ffffff;--on-primary-secondary: color-mix(in srgb, var(--on-primary) 70%, transparent);--on-primary-faint: color-mix(in srgb, var(--on-primary) 14%, transparent);--focus-ring: color-mix(in srgb, var(--primary) 22%, transparent);--ok: #157347;--ok-bg: #e8f6ec;--warn: #a35b00;--warn-bg: #fdf1e0;--crit: #b3261e;--crit-bg: #fdeceb;--info: #1f5f9e;--info-bg: #e8f0f8;--idle: #8a8a83;--idle-bg: #efece4;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--r: 4px}@media(prefers-color-scheme:dark){:root{--bg: #121714;--bg-sunk: #18201b;--bg-raise: #1b231e;--line: #29322c;--line-strong: #3a453e;--fg: #e7ebe8;--fg-mid: #a7b0aa;--fg-dim: #7c867f;--primary-hover: #1b5a40;--ok: #5fce93;--ok-bg: #16301f;--warn: #e0a458;--warn-bg: #33260f;--crit: #f28b82;--crit-bg: #3a1d1b;--info: #7fb2e5;--info-bg: #16283a;--idle: #8a948d;--idle-bg: #212923}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}a.link{color:var(--info);text-decoration:none}a.link:hover{text-decoration:underline}code,.mono,td.mono{font-family:var(--mono);font-size:12.5px}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:20px;padding:0 20px;height:48px;background:var(--bg-raise);border-bottom:1px solid var(--line)}.topbar .brand,.sidebar .brand{font-weight:600;letter-spacing:-.01em;white-space:nowrap}.topbar .brand small,.sidebar .brand small{color:var(--fg-dim);font-weight:400;margin-left:8px}.topbar nav{display:flex;gap:2px;flex:1;overflow-x:auto}.topbar nav a,.sidebar nav a{padding:6px 10px;border-radius:var(--r);text-decoration:none;color:var(--fg-mid);white-space:nowrap}.topbar nav a:hover{background:var(--bg-sunk);color:var(--fg)}.topbar nav a.active{background:var(--bg-sunk);color:var(--fg);font-weight:600}.topbar nav a .pip{display:inline-block;min-width:16px;text-align:center;margin-left:6px;padding:0 4px;border-radius:8px;font-size:11px;font-weight:600;font-family:var(--mono)}main{flex:1;padding:20px;max-width:1500px;width:100%;margin:0 auto}.shell{display:flex;min-height:100vh}.shell>.app{flex:1;min-width:0}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;width:200px;flex:none;display:flex;flex-direction:column;gap:20px;padding:14px 10px;background:var(--primary);color:var(--on-primary)}.sidebar .brand{padding:0 10px;font-size:16px}.sidebar .brand small{color:var(--on-primary-secondary)}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav a{color:var(--on-primary-secondary)}.sidebar nav a:hover{color:var(--on-primary)}.sidebar nav a.active{background:var(--on-primary-faint);color:var(--on-primary);font-weight:600}aside.sidebar nav h2{padding:0 10px;margin-bottom:4px;color:var(--on-primary-secondary);font-size:11.5px}aside.sidebar button{background:transparent;color:var(--on-primary-secondary);border-color:var(--on-primary-faint)}aside.sidebar button:hover{color:var(--on-primary);border-color:var(--on-primary-secondary)}@media(max-width:720px){.shell{flex-direction:column}.sidebar{position:static;height:auto;width:auto}}main.narrow{max-width:82ch;margin:0}.signin{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--primary)}.signin .card{width:100%;max-width:360px;padding:20px}.signin .brand{font-size:16px;font-weight:600;margin-bottom:4px}.signin .brand small{color:var(--fg-dim);font-weight:400;margin-left:8px}.signin .note{margin:0 0 14px}.signin .filters{flex-direction:column;align-items:stretch;margin-bottom:0}.signin .filters input,.signin .filters button{font-size:14px;padding:8px 10px}.signin .banner{margin:12px 0 0}.page-head{margin-bottom:18px}.page-head h1{margin:0 0 4px;font-size:20px;letter-spacing:-.02em}.page-head p{margin:0;color:var(--fg-mid);max-width:78ch}.crumbs{display:flex;gap:6px;align-items:center;color:var(--fg-dim);font-size:12.5px;margin-bottom:8px}.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}.range{display:flex;align-items:center;gap:6px}.range button,.filters button,.sidebar button{font:inherit;font-size:12.5px;padding:4px 9px;border:1px solid var(--line-strong);background:var(--bg-raise);color:var(--fg-mid);border-radius:var(--r);cursor:pointer}.range button:hover,.filters button:hover,.sidebar button:hover{border-color:var(--fg-dim);color:var(--fg)}.range button.on,.filters button.on{background:var(--primary);color:var(--on-primary);border-color:var(--primary);font-weight:600}.range button.on:hover,.filters button.on:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.filters button.danger{background:var(--crit);color:var(--on-primary);border-color:var(--crit);font-weight:600}.filters button:disabled{opacity:.62;cursor:default}.range input[type=date]{font:inherit;font-size:12.5px;padding:3px 6px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--bg-raise);color:var(--fg)}.range input:focus,.filters input:focus,.filters select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.range button:focus-visible,.filters button:focus-visible,.sidebar button:focus-visible,.sidebar nav a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:none}.s-ok{background:var(--ok)}.s-warn{background:var(--warn)}.s-crit{background:var(--crit)}.s-info{background:var(--info)}.s-idle{background:var(--idle)}.tag{display:inline-flex;align-items:center;gap:5px;padding:1px 7px;border-radius:10px;font-size:11.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap}.t-ok{background:var(--ok-bg);color:var(--ok)}.t-warn{background:var(--warn-bg);color:var(--warn)}.t-crit{background:var(--crit-bg);color:var(--crit)}.t-info{background:var(--info-bg);color:var(--info)}.t-idle{background:var(--idle-bg);color:var(--fg-mid)}.verdict{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border-radius:var(--r);border:1px solid var(--line);margin-bottom:20px}.verdict.v-ok{border-color:var(--ok);background:var(--ok-bg)}.verdict.v-warn{border-color:var(--warn);background:var(--warn-bg)}.verdict.v-crit{border-color:var(--crit);background:var(--crit-bg)}.verdict h2{margin:0 0 3px;font-size:16px}.verdict p{margin:0;color:var(--fg-mid)}.verdict .tally{margin-left:auto;display:flex;gap:8px;align-items:center}section.block{margin-bottom:26px}section.block>header{margin-bottom:10px}section.block>header h2,.sidebar nav h2{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-mid)}section.block>header p{margin:3px 0 0;color:var(--fg-dim);font-size:12.5px}.grid{display:grid;gap:10px}.grid.c2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.grid.c3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid.c4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.card{border:1px solid var(--line);border-radius:var(--r);background:var(--bg-raise);padding:11px 13px}.card.tight{padding:9px 11px}.check{border-left:3px solid var(--idle)}.check.c-ok{border-left-color:var(--ok)}.check.c-warn{border-left-color:var(--warn)}.check.c-crit{border-left-color:var(--crit)}.check.c-info{border-left-color:var(--info)}.check .row1{display:flex;align-items:baseline;gap:8px}.check .row1 .title{font-weight:600}.check .row1 .n{margin-left:auto;font-family:var(--mono);font-size:16px;font-weight:600}.check .headline{color:var(--fg-mid);margin-top:2px;font-size:13px}.check .why{margin-top:8px;padding-top:8px;border-top:1px dashed var(--line);color:var(--fg-dim);font-size:12.5px}.check .foot{margin-top:8px;display:flex;gap:10px;align-items:center;font-size:12px}.check.quiet{opacity:.62}.check.quiet:hover{opacity:1}.stat .k{color:var(--fg-dim);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.stat .v{font-family:var(--mono);font-size:20px;font-weight:600;line-height:1.25}.stat .sub{color:var(--fg-dim);font-size:12px}.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--bg-raise)}table{border-collapse:collapse;width:100%;font-size:13px}thead th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-dim);font-weight:600;padding:7px 10px;background:var(--bg-sunk);border-bottom:1px solid var(--line);white-space:nowrap}tbody td{padding:6px 10px;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--bg-sunk)}td.num,th.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}td.zero{color:var(--fg-dim)}td.nowrap{white-space:nowrap}.rowlink{cursor:pointer}.chips{display:flex;gap:3px;flex-wrap:wrap}.chip{font-family:var(--mono);font-size:11px;padding:1px 5px;border-radius:3px;border:1px solid transparent;white-space:nowrap}.chip.k-succeeded{background:var(--ok-bg);color:var(--ok)}.chip.k-failed{background:var(--crit-bg);color:var(--crit)}.chip.k-aborted,.chip.k-partial{background:var(--warn-bg);color:var(--warn)}.chip.k-skipped{background:var(--idle-bg);color:var(--fg-dim);border-color:var(--line)}.chip.k-running{background:var(--info-bg);color:var(--info)}.chip.k-stale{background:var(--idle-bg);color:var(--fg-mid)}.chip.k-missed{background:var(--crit-bg);color:var(--crit)}.chip.k-pending{background:var(--bg-sunk);color:var(--fg-dim);border-color:var(--line);border-style:dashed}.sched{display:grid;grid-template-columns:max-content 1fr;gap:0 16px;align-items:center}.sched .jobcell{padding:7px 0;border-bottom:1px solid var(--line)}.sched .jobcell:last-of-type,.sched .slots:last-of-type{border-bottom:none}.sched .jobcell .name{font-weight:600}.sched .jobcell .cron{color:var(--fg-dim);font-size:12px;font-family:var(--mono)}.sched .slots{display:flex;gap:3px;flex-wrap:wrap;padding:7px 0;border-bottom:1px solid var(--line)}.slot{width:26px;height:22px;border-radius:3px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:10px;font-family:var(--mono);cursor:default}.slot.k-succeeded{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}.slot.k-failed{background:var(--crit-bg);border-color:var(--crit);color:var(--crit)}.slot.k-aborted,.slot.k-partial{background:var(--warn-bg);border-color:var(--warn);color:var(--warn)}.slot.k-running{background:var(--info-bg);border-color:var(--info);color:var(--info)}.slot.k-stale{background:var(--idle-bg);border-color:var(--line-strong);color:var(--fg-mid)}.slot.k-missed{background:var(--crit-bg);border-color:var(--crit);color:var(--crit);border-style:dashed}.slot.k-pending{background:transparent;border-style:dashed;color:var(--fg-dim)}.metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.metric{background:var(--bg-raise);padding:8px 10px}.metric .mk{font-size:11.5px;color:var(--fg-dim);display:flex;align-items:center;gap:5px}.metric .mv{font-family:var(--mono);font-size:17px;font-weight:600;font-variant-numeric:tabular-nums}.metric .mv.dim{color:var(--fg-dim);font-weight:400}.metric .mv.txt{font-size:12.5px;font-weight:400;word-break:break-all}.metric.m-anomaly .mv,.metric.m-dead .mv{color:var(--warn)}.metric.m-anomaly.hot .mv,.metric.m-dead.hot .mv{color:var(--crit)}.metric.m-queue.hot .mv{color:var(--warn)}.metric .mn{font-size:11.5px;color:var(--fg-dim);margin-top:5px;line-height:1.4}.kindkey{display:inline-block;width:6px;height:6px;border-radius:1px}.kindkey.k-volume{background:var(--fg-mid)}.kindkey.k-outcome{background:var(--ok)}.kindkey.k-queue{background:var(--info)}.kindkey.k-anomaly{background:var(--warn)}.kindkey.k-dead{background:var(--crit)}.kindkey.k-context,.kindkey.k-timing{background:var(--line-strong)}.ident{font-size:12.5px;padding:6px 10px;border-radius:var(--r);background:var(--bg-sunk);margin-bottom:6px;font-family:var(--mono);display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.ident.bad{background:var(--crit-bg);color:var(--crit)}.ident .eq{color:var(--fg-dim)}.bar{display:flex;height:8px;border-radius:2px;overflow:hidden;background:var(--bg-sunk)}.bar>span{display:block}.json{margin:0;padding:10px 12px;background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--r);font-family:var(--mono);font-size:12px;line-height:1.5;overflow-x:auto;white-space:pre;color:var(--fg-mid)}details.raw{margin-top:10px}details.raw>summary{cursor:pointer;color:var(--fg-dim);font-size:12.5px;-webkit-user-select:none;user-select:none}details.raw>summary:hover{color:var(--fg)}details.raw[open]>summary{margin-bottom:6px}.empty{padding:26px;text-align:center;color:var(--fg-dim);border:1px dashed var(--line);border-radius:var(--r)}.banner{padding:9px 12px;border-radius:var(--r);border:1px solid var(--crit);background:var(--crit-bg);color:var(--crit);margin-bottom:14px}.note{color:var(--fg-dim);font-size:12.5px}.muted{color:var(--fg-dim)}.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.filters select,.filters input{font:inherit;font-size:12.5px;padding:4px 7px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--bg-raise);color:var(--fg)}.filters label{color:var(--fg-dim);font-size:12px}.spacer{flex:1}.prose{max-width:82ch}.prose h2{font-size:15px;margin:22px 0 6px}.prose h3{font-size:13.5px;margin:16px 0 4px}.prose p,.prose li{color:var(--fg-mid)}.prose ul{padding-left:20px}.prose li{margin-bottom:5px}.prose strong{color:var(--fg)}.help{color:var(--fg-dim);cursor:help;border-bottom:1px dotted var(--line-strong)}
