:root{--ink:#2a2e35;--ink-2:#3a3f47;--paper:#f6f7f5;--panel:#ffffff;--line:#e6e7e3;--line-strong:#cfd1cc;--soft:#f2f3f0;--text:#2a2e35;--muted:#697079;--accent:#1e7ab0;--accent-hover:#186a99;--accent-ink:#186a99;--accent-soft:#e7f2f9;--cyan:#3fa9d8;--magenta:#d95b9b;--yellow:#eec646;--key:#7b808a;--ok:#2e7a56;--warn:#8a6608;--bad:#b5434f;--radius:10px;--font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,monospace}*{box-sizing:border-box}body,html{background:var(--paper)}body{margin:0;font:15px/1.5 var(--font);color:var(--text);-webkit-font-smoothing:antialiased}::selection{background:var(--accent-soft);color:var(--ink)}a{color:inherit}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:4px}.num,td.n,th.n{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.top{background:var(--panel);color:var(--text);border-bottom:1px solid var(--line)}.top-in{max-width:1240px;margin:0 auto;padding:14px 20px;display:flex;align-items:baseline;gap:16px;justify-content:space-between;flex-wrap:wrap}.brand{font-weight:650;font-size:17px;letter-spacing:.01em;text-decoration:none}.muted-on-dark{color:var(--muted);font-size:13px}.cmyk{display:grid;grid-template-columns:repeat(4,1fr);height:4px}.cmyk i:first-child{background:var(--cyan)}.cmyk i:nth-child(2){background:var(--magenta)}.cmyk i:nth-child(3){background:var(--yellow)}.cmyk i:nth-child(4){background:var(--key)}main{max-width:1240px;margin:0 auto;padding:28px 20px 64px}.bar{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:end;justify-content:space-between;margin-bottom:20px}h1{font-size:clamp(22px,3vw,30px);line-height:1.15;margin:0 0 6px;font-weight:650;text-wrap:balance;letter-spacing:-.01em}.sub{color:var(--muted);margin:0;max-width:68ch}.seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:8px;overflow:hidden;background:var(--panel)}.seg a{padding:8px 16px;text-decoration:none;font-size:14px;font-weight:550;border-right:1px solid var(--line);min-height:40px;display:flex;align-items:center}.seg a:last-child{border-right:0}.seg a:hover{background:var(--soft)}.seg a[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.totals{display:flex;flex-wrap:wrap;gap:8px 32px;padding:14px 0;border-block:1px solid var(--line);margin-bottom:22px}.totals div{display:flex;flex-direction:column}.totals b{font-size:22px;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.totals span{font-size:12px;color:var(--muted)}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:0}.dot.c{background:var(--cyan)}.dot.m{background:var(--magenta)}.dot.y{background:var(--yellow)}.dot.k{background:var(--key)}.note{background:#fcf4dd;border:1px solid #eedc9f;color:#6b4f05;padding:10px 14px;border-radius:var(--radius);margin-bottom:18px;font-size:14px}.wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:10px 14px;border-bottom:1px solid var(--line);white-space:nowrap}th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;background:var(--soft);position:-webkit-sticky;position:sticky;top:0}th a{text-decoration:none}th a:hover{color:var(--ink)}tbody tr:hover{background:#fafbf9}tbody tr:last-child td{border-bottom:0}td.m{font-family:var(--mono)}td.m,td.sub2{font-size:13px}td.sub2{color:var(--muted)}tfoot td{font-weight:650;background:var(--soft);border-top:1px solid var(--line-strong);border-bottom:0}.serial{font-family:var(--mono);font-size:13px;text-decoration:none;border-bottom:1px solid var(--line)}.serial:hover{border-color:var(--ink)}.empty{padding:40px 20px;text-align:center}.empty,.how{color:var(--muted)}.how{margin-top:28px;font-size:13px;max-width:78ch}.how code{font-family:var(--mono);background:var(--soft);padding:1px 5px;border-radius:4px}.crumb{font-size:14px;margin-bottom:14px}@media (max-width:640px){main{padding:20px 16px 48px}.totals b{font-size:19px}}.muted-on-dark a{color:var(--accent-ink)}form.inline{display:inline}button.link{background:none;border:0;padding:0;margin-left:6px;font:inherit;color:var(--accent-ink);text-decoration:underline;cursor:pointer}.login{max-width:380px;margin:8vh auto 0}.login form{display:grid;grid-gap:14px;gap:14px;margin-top:22px}.login label{display:grid;grid-gap:6px;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}.login input{font:inherit;font-size:16px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--panel);color:var(--text);min-height:44px}.login button[type=submit]{font:inherit;font-weight:600;min-height:44px;border:0;border-radius:8px;background:var(--accent);color:#fff;cursor:pointer}.login button[type=submit]:hover{background:var(--accent-hover)}.err{color:var(--bad)}.err,.okmsg{margin:0;font-size:14px}.okmsg{color:var(--ok)}.stale{color:var(--bad);font-size:13px;font-weight:600}td.ok{color:var(--ok)}td.ok,td.warn{font-weight:650}td.warn{color:var(--warn)}td.bad{color:var(--bad);font-weight:650}.tabs{display:inline-flex;gap:6px;margin-left:24px}.tabs a{color:var(--muted);text-decoration:none;padding:6px 14px;border:1px solid var(--line);border-radius:8px;font-size:14px;font-weight:550}.tabs a:hover{background:var(--soft);color:var(--text)}.tabs a[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.chk,.filters{align-items:center}.chk{display:inline-flex;gap:7px;padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer;font-size:14px;min-height:36px}.chk input{accent-color:var(--accent)}.chk.ok span{color:var(--ok)}.chk.warn span{color:var(--warn)}.chk.bad span{color:var(--bad)}.chk.mute span{color:var(--muted)}.find{margin-left:auto;padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font:inherit;min-width:200px}.dtab td{white-space:normal;vertical-align:top;padding:8px 14px}.dtab td.n div{white-space:nowrap}.dtab small{font-weight:400;text-transform:none;letter-spacing:0}.dtab small,.dtab td.mute{color:var(--muted)}.dtab td .bad,.dtab td .warn{font-weight:650}.dtab .bad{color:var(--bad)}.dtab .warn{color:var(--warn)}