body.admin{min-height:100dvh}.adm{grid-template-columns:232px 1fr;min-height:100dvh;display:grid}.adm-rail{border-inline-end:1px solid color-mix(in srgb, var(--line) 60%, transparent);background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);flex-direction:column;gap:4px;height:100dvh;padding:28px 16px;display:flex;position:sticky;top:0}.adm-brand{letter-spacing:-.02em;padding:0 12px 20px;font-size:19px;font-weight:700}.adm-brand span{color:var(--text-2);letter-spacing:-.01em;font-size:13px;font-weight:500;display:block}.adm-link{color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:9px 12px;font-size:15px;font-weight:500;display:flex}.adm-link:hover{background:color-mix(in srgb, var(--text) 6%, transparent);text-decoration:none}.adm-link[aria-current=page]{background:var(--surface);box-shadow:var(--shadow);font-weight:600}.adm-link svg{width:18px;height:18px;color:var(--text-2);flex:none}.adm-link[aria-current=page] svg{color:var(--accent)}.adm-foot{color:var(--text-2);margin-top:auto;padding:12px;font-size:13px}.adm-main{width:100%;max-width:1180px;padding:40px 48px 80px}.adm-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:32px;display:flex}.adm-head h1{letter-spacing:-.035em;margin:0;font-size:40px;font-weight:700;line-height:1.05}.adm-head p{color:var(--text-2);margin:6px 0 0;font-weight:500}.adm-live{color:var(--text-2);align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.adm-live i{background:var(--good);width:8px;height:8px;box-shadow:0 0 0 0 color-mix(in srgb, var(--good) 60%, transparent);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{70%{box-shadow:0 0 0 8px #0000}to{box-shadow:0 0 #0000}}.grid{gap:16px;display:grid}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.span2{grid-column:span 2}.tile{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);min-width:0;padding:22px 24px}.tile h2{letter-spacing:-.01em;margin:0 0 4px;font-size:15px;font-weight:600}.tile .sub{color:var(--text-2);margin:0 0 16px;font-size:13px}.stat-label{color:var(--text-2);margin:0;font-size:14px;font-weight:500}.stat-value{letter-spacing:-.03em;margin:6px 0 2px;font-size:34px;font-weight:700;line-height:1.1}.stat-note{color:var(--text-2);margin:0;font-size:13px}.hero{letter-spacing:-.04em;margin:8px 0 12px;font-size:64px;font-weight:700;line-height:1}.meter{background:color-mix(in srgb, var(--m,var(--accent)) 16%, transparent);border-radius:6px;height:10px;overflow:hidden}.meter>span{background:var(--m,var(--accent));border-radius:6px;height:100%;display:block}.meter.warn{--m:#b25000}.meter.crit{--m:var(--bad)}@media (prefers-color-scheme:dark){.meter.warn{--m:#ff9f0a}}.status{border-radius:980px;align-items:center;gap:6px;padding:3px 10px;font-size:13px;font-weight:600;display:inline-flex}.status.ok{color:var(--good);background:var(--good-bg)}.status.bad{color:var(--bad);background:var(--bad-bg)}.status.warn{color:#9a4500;background:#fff4e5}@media (prefers-color-scheme:dark){.status.warn{color:#ffb340;background:#ff9f0a24}}.tbl-wrap{margin:0 -8px;overflow-x:auto}table.tbl{border-collapse:collapse;width:100%;font-size:14px}.tbl th{text-align:start;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);white-space:nowrap;padding:8px;font-size:12px;font-weight:600}.tbl td{border-bottom:1px solid color-mix(in srgb, var(--line) 55%, transparent);vertical-align:top;padding:11px 8px}.tbl tr:last-child td{border-bottom:0}.tbl .num{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.tbl a{color:var(--text);font-weight:500}.tbl tr:hover td{background:color-mix(in srgb, var(--text) 3%, transparent)}.pill{background:var(--bg);color:var(--text-2);border-radius:980px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.pill.accent{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent)}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px}.muted{color:var(--text-2)}.search{gap:8px;max-width:420px;display:flex}.search input{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text);font:inherit;border-radius:980px;flex:1;padding:8px 14px;font-size:15px}.chart{position:relative}.chart svg{width:100%;display:block;overflow:visible}.chart .grid-line{stroke:color-mix(in srgb, var(--line) 70%, transparent);stroke-width:1px}.chart .tick{fill:var(--text-2);font-variant-numeric:tabular-nums;font-size:11px}.chart .bar{fill:var(--accent)}.chart .hit{fill:#0000;cursor:default}.chart .hit:hover+.bar,.chart .hit:focus+.bar{fill:var(--accent-hover)}.chart .tip{pointer-events:none;background:var(--text);color:var(--bg);white-space:nowrap;box-shadow:var(--shadow);border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;position:absolute;transform:translate(-50%,-100%)}details.table-view summary{cursor:pointer;color:var(--accent);margin-top:10px;font-size:13px;list-style:none}details.table-view summary::-webkit-details-marker{display:none}.hbars{flex-direction:column;gap:10px;display:flex}.hbar{grid-template-columns:minmax(120px,34%) 1fr auto;align-items:center;gap:12px;font-size:14px;display:grid}.hbar .track{height:12px}.hbar .fill{background:var(--accent);border-radius:0 4px 4px 0;min-width:2px;height:12px}.hbar .v{font-variant-numeric:tabular-nums;text-align:end;min-width:64px;font-weight:600}@media (max-width:900px){.adm{grid-template-columns:1fr}.adm-rail{height:auto;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);z-index:20;flex-direction:row;justify-content:space-around;position:fixed;inset:auto 0 0}.adm-brand,.adm-foot{display:none}.adm-link{flex-direction:column;gap:2px;padding:6px;font-size:11px}.adm-link[aria-current=page]{box-shadow:none;color:var(--accent);background:0 0}.adm-main{padding:24px 16px 100px}.adm-head h1{font-size:30px}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3,.g2{grid-template-columns:1fr}.hbar{grid-template-columns:minmax(84px,32%) 1fr auto}.adm-link.desk-only{display:none}.tile{padding:18px}.stat-value{font-size:28px}.span2{grid-column:auto}.hero{font-size:48px}}
