:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0d0d;--surface-1:#1a1a19;--surface-2:#232321;--surface-3:#2c2c2a;--hover:#ffffff0d;--border:#ffffff1a;--border-strong:#ffffff2e;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#9a9890;--grid:#2c2c2a;--axis:#383835;--accent:#3987e5;--accent-strong:#5598e7;--accent-wash:#3987e524;--focus:#86b6ef;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--good:#0ca30c;--good-text:#3fcf3f;--warning:#fab219;--serious:#ec835a;--critical:#d03b3b;--critical-text:#f07272;--neutral:#898781;--radius-sm:6px;--radius:10px;--radius-lg:14px;--shadow:0 8px 30px #00000073;--sidebar-w:236px;--topbar-h:56px;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Code", Consolas, monospace}*,:before,:after{box-sizing:border-box}html,body{background:var(--page);color:var(--text-primary);font:14px/1.5 var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:600}h1{font-size:22px}h2{font-size:16px}h3{font-size:14px}p{margin:0 0 8px}code,.mono{font-family:var(--mono);font-size:12.5px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--accent);color:#fff;border-radius:var(--radius-sm);padding:8px 12px;position:absolute;top:-40px;left:8px}.skip-link:focus{top:8px}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{background:var(--surface-1);border-right:1px solid var(--border);flex-direction:column;gap:2px;height:100vh;padding:14px 10px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{color:var(--text-primary);align-items:center;gap:10px;padding:4px 10px 16px;font-weight:600;display:flex}.brand:hover{text-decoration:none}.brand small{color:var(--text-muted);font-size:12px;font-weight:400;display:block}.nav-section{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:12px 10px 4px;font-size:11px}.nav-link{border-radius:var(--radius-sm);color:var(--text-secondary);align-items:center;gap:10px;padding:7px 10px;font-weight:500;display:flex}.nav-link:hover{background:var(--hover);color:var(--text-primary);text-decoration:none}.nav-link.active{background:var(--accent-wash);color:var(--text-primary)}.nav-link svg{opacity:.9;flex:none}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar-h);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#0d0d0deb;align-items:center;gap:12px;padding:0 20px;display:flex;position:sticky;top:0}.topbar .spacer{flex:1}.topbar .menu-button{display:none}.content{width:100%;max-width:1480px;padding:22px 24px 48px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.page-head p{color:var(--text-secondary);margin:4px 0 0}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.backdrop{display:none}@media (width<=899px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:40;width:min(280px,85vw);box-shadow:var(--shadow);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.shell.drawer-open .sidebar{transform:none}.shell.drawer-open .backdrop{z-index:30;background:#0000008c;display:block;position:fixed;inset:0}.topbar .menu-button{display:inline-flex}.topbar{gap:8px;padding:0 12px}.content{padding:16px 14px 40px}.hide-mobile{display:none!important}}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-2);height:34px;color:var(--text-primary);font:inherit;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-3);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover:not(:disabled){background:var(--accent-strong)}.btn.danger{color:var(--critical-text);border-color:#d03b3b80}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){background:var(--hover)}.btn.small{height:28px;padding:0 9px;font-size:13px}.btn.icon{width:34px;padding:0}.input,.select,textarea.input{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-1);height:34px;color:var(--text-primary);font:inherit;min-width:0;padding:0 10px}textarea.input{resize:vertical;width:100%;height:auto;min-height:80px;padding:8px 10px}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 15px),calc(100% - 10px);background-repeat:no-repeat;background-size:5px 5px;padding-right:28px}.input:hover,.select:hover{border-color:#ffffff47}.input::placeholder{color:var(--text-muted)}.search{align-items:center;display:flex;position:relative}.search svg{color:var(--text-muted);pointer-events:none;position:absolute;left:10px}.search .input{width:100%;padding-left:32px}.field{flex-direction:column;gap:5px;margin-bottom:14px;display:flex}.field>label,.field-label{color:var(--text-secondary);font-size:13px;font-weight:500}.field .hint{color:var(--text-muted);font-size:12.5px}.field .error-text{color:var(--critical-text);font-size:12.5px}.check{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.check input{width:16px;height:16px;accent-color:var(--accent)}.switch{cursor:pointer;align-items:center;gap:10px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;width:36px;height:20px;margin:0;position:absolute}.switch .track{background:var(--surface-3);border:1px solid var(--border-strong);border-radius:999px;flex:none;width:36px;height:20px;transition:background .15s;position:relative}.switch .track:after{content:"";background:var(--text-secondary);border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.switch input:checked+.track{background:var(--accent);border-color:var(--accent)}.switch input:checked+.track:after{background:#fff;transform:translate(16px)}.switch input:focus-visible+.track{outline:2px solid var(--focus);outline-offset:2px}.switch input:disabled+.track{opacity:.5}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--border-strong);height:30px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:13px;display:inline-flex}.chip:hover{background:var(--hover)}.chip[aria-pressed=true]{background:var(--accent-wash);border-color:var(--accent);color:var(--text-primary)}.chip .count{color:var(--text-muted);font-variant-numeric:tabular-nums}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.filters .search{flex:240px;max-width:360px}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:16px}.card+.card{margin-top:0}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.card-head p{color:var(--text-muted);margin:2px 0 0;font-size:12.5px}.grid{gap:14px;display:grid}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.stats{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}@media (width<=1100px){.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.grid.cols-2,.grid.cols-3{grid-template-columns:minmax(0,1fr)}.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.stack{flex-direction:column;gap:14px;display:flex}.stat{color:inherit;flex-direction:column;gap:4px;padding:14px 16px;display:flex}a.stat:hover{border-color:var(--border-strong);background:var(--surface-2);text-decoration:none}.stat .label{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.stat .value{font-size:26px;font-weight:600;line-height:1.2}.stat .hint{color:var(--text-muted);font-size:12.5px}.facts{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 20px;margin:0;display:grid}.facts dt{color:var(--text-muted);font-size:12.5px}.facts dd{overflow-wrap:anywhere;margin:2px 0 0}.banner{border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface-1);align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.banner.warning{border-color:#fab21973}.banner.critical{border-color:#d03b3b8c}.banner.info{border-color:#3987e580}.banner svg{flex:none;margin-top:2px}.badge{white-space:nowrap;border:1px solid var(--border-strong);height:22px;color:var(--text-secondary);background:var(--surface-2);border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge svg{flex:none}.badge.good svg{color:var(--good)}.badge.warning svg{color:var(--warning)}.badge.serious svg{color:var(--serious)}.badge.critical svg{color:var(--critical)}.badge.neutral svg{color:var(--neutral)}.badge.info svg{color:var(--accent)}.badge.good{border-color:#0ca30c73}.badge.warning{border-color:#fab21973}.badge.serious{border-color:#ec835a73}.badge.critical{border-color:#d03b3b8c}.dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.table-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-1);overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:13.5px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:9px 12px}.table th{color:var(--text-muted);white-space:nowrap;background:var(--surface-1);font-size:12.5px;font-weight:500;position:sticky;top:0}.table tbody tr:last-child td{border-bottom:0}.table tbody tr.clickable{cursor:pointer}.table tbody tr:hover td{background:var(--hover)}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.sub{color:var(--text-muted);overflow-wrap:anywhere;font-size:12px;display:block}.table .nowrap{white-space:nowrap}.sort-btn{all:unset;cursor:pointer;align-items:center;gap:4px;display:inline-flex}.sort-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sort-btn[aria-sort=none] svg{opacity:.35}.pagination{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 2px 0;font-size:13px;display:flex}.pagination .pages{align-items:center;gap:6px;display:flex}.tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:2px;margin-bottom:16px;display:flex;overflow-x:auto}.tab{color:var(--text-secondary);white-space:nowrap;border-bottom:2px solid #0000;padding:9px 13px;font-weight:500}.tab:hover{color:var(--text-primary);text-decoration:none}.tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.state{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:36px 16px;display:flex}.state svg{color:var(--text-muted)}.state.compact{padding:16px}.state h3{color:var(--text-primary)}.spinner{border:2px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--surface-2), var(--surface-3), var(--surface-2));border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.chart{height:220px}.chart.tall{height:280px}.chart-legend{color:var(--text-secondary);flex-wrap:wrap;gap:4px 14px;margin-bottom:8px;font-size:12.5px;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.legend-key{border-radius:2px;width:12px;height:3px}.legend-key.box{border-radius:3px;width:10px;height:10px}.chart-tooltip{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow);min-width:140px;padding:8px 10px;font-size:12.5px}.chart-tooltip .t{color:var(--text-muted);margin-bottom:4px}.chart-tooltip .row{justify-content:space-between;align-items:center;gap:8px;display:flex}.chart-tooltip .row span:first-child{color:var(--text-secondary);align-items:center;gap:6px;display:inline-flex}.chart-tooltip .row b{font-variant-numeric:tabular-nums;font-weight:600}.chart-table{max-height:220px;overflow:auto}.recharts-wrapper:focus,.recharts-surface:focus{outline:none}.bars{flex-direction:column;gap:9px;display:flex}.bar-row{grid-template-columns:minmax(90px,160px) minmax(0,1fr) auto;align-items:center;gap:10px;font-size:13px;display:grid}.bar-row .name{text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary);overflow:hidden}.bar-track{background:0 0;border-radius:0 4px 4px 0;gap:2px;height:10px;display:flex}.bar-fill{border-radius:0 4px 4px 0;min-width:2px;height:100%}.bar-fill.first{border-radius:0}.bar-row .val{font-variant-numeric:tabular-nums;color:var(--text-primary);text-align:right;min-width:48px}.meter{background:var(--surface-3);border-radius:4px;height:8px;overflow:hidden}.meter>div{background:var(--accent);border-radius:4px;height:100%}.muted{color:var(--text-muted)}.secondary{color:var(--text-secondary)}.good-text{color:var(--good-text)}.critical-text{color:var(--critical-text)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.between{justify-content:space-between}.wrap-anywhere{overflow-wrap:anywhere}.ellipsis{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:320px;display:inline-block;overflow:hidden}hr.sep{border:0;border-top:1px solid var(--border);margin:16px 0}.kbd{font-family:var(--mono);border:1px solid var(--border-strong);background:var(--surface-2);border-radius:4px;padding:1px 5px;font-size:12px}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-bottom:1px solid var(--border);grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px 2px;display:grid}.timeline li:last-child{border-bottom:0}.timeline .icon{color:var(--text-muted);margin-top:2px}.timeline .when{color:var(--text-muted);white-space:nowrap;font-size:12.5px}.timeline .title{font-weight:500}.timeline .detail{color:var(--text-secondary);overflow-wrap:anywhere;font-size:13px}pre.json{background:var(--surface-2);border-radius:var(--radius-sm);max-height:280px;font-family:var(--mono);color:var(--text-secondary);margin:0;padding:10px;font-size:12px;overflow:auto}dialog.modal{border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text-primary);width:min(520px,100vw - 32px);box-shadow:var(--shadow);padding:0}dialog.modal::backdrop{background:#0009}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.modal-body{padding:16px}.modal-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.toasts{z-index:60;flex-direction:column;gap:8px;width:min(360px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow);align-items:flex-start;gap:10px;padding:11px 12px;animation:.18s toast-in;display:flex}.toast .body{flex:1;min-width:0}.toast .body strong{display:block}.toast .body span{color:var(--text-secondary);overflow-wrap:anywhere;font-size:13px}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}}.auth-page{place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{width:min(400px,100%)}.auth-card .brand{padding:0 0 18px}.secret-box{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--mono);overflow-wrap:anywhere;align-items:center;gap:8px;padding:10px 12px;display:flex}.qr{border-radius:var(--radius-sm);background:#fff;width:180px;height:180px;padding:8px}.live-indicator{color:var(--text-secondary);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.global-search{width:min(380px,40vw);position:relative}.global-search .results{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow);z-index:50;max-height:380px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.global-search .result{border-radius:var(--radius-sm);color:var(--text-primary);flex-direction:column;padding:7px 9px;display:flex}.global-search .result:hover,.global-search .result[aria-selected=true]{background:var(--hover);text-decoration:none}.global-search .result small{color:var(--text-muted)}.menu{position:relative}.menu-list{background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);min-width:220px;box-shadow:var(--shadow);z-index:50;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.menu-list .menu-item{border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:8px 10px;display:flex}.menu-list .menu-item:hover{background:var(--hover);text-decoration:none}.menu-list .who{border-bottom:1px solid var(--border);margin-bottom:6px;padding:6px 10px 10px}.menu-list .who small{color:var(--text-muted);display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.badge,.chip,.btn{border:1px solid canvastext}}
