:root,:root[data-theme=light]{--bg: #f7f5ef;--bg-soft: #ffffff;--panel: #ffffff;--panel-2: #faf8f2;--panel-3: #ece8dd;--border: #d9d4c5;--border-soft: #e6e2d5;--text: #1a1a1a;--muted: #6b6b6b;--muted-2: #9a968b;--accent: #1a1a1a;--accent-ink: #f7f5ef;--signal: #2a6db0;--signal-2: #2a8f5a;--warn: #b8860b;--danger: #b03a3a;--rule: 1px solid var(--border);--shadow: 0 10px 30px -18px rgba(26, 26, 26, .12);--font-display: "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}:root[data-theme=dark]{--bg: #0a0d12;--bg-soft: #0e131a;--panel: #131a22;--panel-2: #1a2330;--panel-3: #202c3b;--border: #24303e;--border-soft: #1c2632;--text: #e6edf3;--muted: #8d9bab;--muted-2: #5f6b7a;--accent: #d6c6a8;--accent-ink: #0a0d12;--signal: #3fa7d6;--signal-2: #2fb574;--warn: #f0b429;--danger: #e5484d;--shadow: 0 24px 60px -28px rgba(0, 0, 0, .6)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;letter-spacing:-.005em;transition:background-color .3s ease,color .3s ease}a{color:var(--signal);text-decoration:none}a:hover{color:var(--accent)}button{font-family:inherit;color:inherit;background:none;border:none;cursor:pointer}.app{min-height:100%;padding:28px clamp(28px,5vw,72px) 56px;max-width:1560px;margin:0 auto}.masthead{display:grid;grid-template-columns:1fr auto;align-items:end;gap:18px;padding-bottom:16px;margin-bottom:22px;border-bottom:var(--rule);position:relative}.masthead .eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-2);margin-bottom:6px;display:flex;align-items:center;gap:10px}.masthead .eyebrow:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border),transparent);max-width:180px}.masthead h1{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(22px,2.4vw,30px);line-height:1.05;letter-spacing:-.02em}.masthead h1 em{font-style:normal;color:var(--muted);font-weight:400}:root[data-theme=dark] .masthead h1 em,:root[data-theme=dark] .section-head h2 em{color:var(--accent)}.masthead .meta{margin-top:6px;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.02em;display:flex;flex-wrap:wrap;gap:4px 12px}.masthead .meta .sep{color:var(--muted-2)}.masthead .actions{display:flex;align-items:center;gap:10px}.control-inline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}.control-inline .spacer{flex:1}.segmented{display:inline-flex;align-items:stretch;height:30px;box-sizing:border-box;padding:3px;background:var(--bg-soft);border:var(--rule);border-radius:8px;gap:2px}.segmented button{padding:5px 11px;border-radius:6px;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.005em;transition:color .18s ease,background .18s ease;white-space:nowrap}.segmented button:hover{color:var(--text)}.segmented button.active{color:var(--accent-ink);background:var(--accent)}.segmented.mono button{font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;padding:5px 9px}.date-input{height:30px;box-sizing:border-box;padding:0 10px;font-family:var(--font-mono);font-size:12px;line-height:1;color:var(--text);background:var(--bg-soft);border:var(--rule);border-radius:8px;color-scheme:dark}.date-input:focus{outline:none;border-color:var(--accent)}.range-arrow{color:var(--muted-2);font-family:var(--font-mono);font-size:14px}.icon-btn{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;font-size:12px;font-weight:500;color:var(--text);background:var(--panel);border:var(--rule);border-radius:7px;transition:border-color .15s ease,background .15s ease,color .15s ease}.icon-btn:hover{border-color:var(--accent);color:var(--accent)}.icon-btn:disabled{opacity:.55;cursor:not-allowed}.icon-btn .dot{width:6px;height:6px;border-radius:50%;background:var(--signal-2);box-shadow:0 0 0 3px #2fb5742e}.icon-btn.is-loading .dot{background:var(--warn);animation:pulse 1.2s ease-in-out infinite}.icon-btn svg{width:14px;height:14px}.icon-btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.icon-btn.primary:hover{filter:brightness(1.05)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.tabs{display:flex;gap:2px;border-bottom:var(--rule);margin-bottom:14px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{position:relative;padding:9px 16px 10px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap;transition:color .18s ease}.tab .tab-num{font-size:9px;color:var(--muted-2);margin-right:8px}.tab:hover,.tab.active{color:var(--text)}.tab.active .tab-num{color:var(--accent)}.tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.section{margin-bottom:32px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:6px;border-bottom:1px solid var(--border-soft)}.section-head h2{margin:0;font-family:var(--font-display);font-weight:600;font-size:15px;letter-spacing:-.01em}.section-head h2 em{font-style:normal;color:var(--muted);font-weight:400}.section-head .section-index{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2)}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.card{position:relative;background:var(--panel);border:var(--rule);border-radius:8px;padding:16px 18px 18px;transition:border-color .2s ease}.card:hover{border-color:var(--muted-2)}.card .label{color:var(--muted);font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}.card .value{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.05;color:var(--text);font-variant-numeric:tabular-nums}.card .hint{color:var(--muted);font-family:var(--font-mono);font-size:10.5px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border-soft)}.card.provider .badge{position:absolute;top:11px;right:13px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.alert{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:13.5px;border-left:3px solid}.alert.warn{background:#f0b42914;border-color:var(--warn);color:#f4c663}.alert.danger{background:#e5484d14;border-color:var(--danger);color:#ff8688}.alert.info{background:#3fa7d60f;border-color:var(--signal);color:#aad9ee}table{width:100%;border-collapse:collapse;font-size:13.5px}table th,table td{padding:11px 12px;border-bottom:1px solid var(--border-soft);text-align:left}table th{color:var(--muted);font-family:var(--font-mono);font-weight:500;font-size:10.5px;text-transform:uppercase;letter-spacing:.12em}table tbody tr{transition:background .12s ease}table tbody tr:hover{background:#d6c6a808}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;background:#ffffff0a;color:var(--muted);border:1px solid var(--border-soft)}.pill.green{background:#2fb5741f;color:#6bdc9e;border-color:#2fb57433}.pill.red{background:#e5484d1f;color:#ff8c8e;border-color:#e5484d33}.status-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.status-row .pill{padding:6px 12px;background:var(--panel-2);color:var(--text)}.chart-wrap{width:100%;height:320px;background:var(--panel);border:var(--rule);border-radius:10px;padding:18px 14px 10px}.loading{color:var(--muted);font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:40px;text-align:center;border:1px dashed var(--border);border-radius:12px}.footer{margin-top:22px;padding-top:12px;border-top:var(--rule);color:var(--muted-2);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;text-align:center}.subtle-divider{height:1px;background:linear-gradient(to right,transparent,var(--border),transparent);margin:12px 0}details{color:var(--muted)}details summary{cursor:pointer;-webkit-user-select:none;user-select:none}@media (max-width: 900px){.masthead{grid-template-columns:1fr}.masthead .actions{justify-content:flex-start}.control-inline{gap:8px}.section-head{flex-direction:column;align-items:flex-start;gap:6px}}.nav-title{display:inline-flex;align-items:baseline;gap:18px;flex-wrap:wrap}.nav-link{font:inherit;font-family:var(--font-display);font-weight:600;color:var(--muted);padding:0;background:none;border:none;cursor:pointer;letter-spacing:-.02em;line-height:inherit;transition:color .15s ease}.nav-link:hover,.nav-link.active{color:var(--text)}.nav-sep{display:inline-block;width:1px;align-self:stretch;background:var(--border);margin-top:.3em;margin-bottom:.18em}.vlist{display:flex;flex-direction:column;gap:14px}.vlist-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.vlist-search{flex:1;min-width:260px;max-width:520px;font-family:var(--font-body);font-size:14px;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:9px 12px;outline:none;transition:border-color .15s ease}.vlist-search:focus{border-color:var(--accent)}.vlist-search::placeholder{color:var(--muted-2)}.vlist-bar-right{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}.vlist-btn{font-family:var(--font-body);font-size:13px;font-weight:500;color:var(--text);background:var(--panel);border:1px solid var(--border);padding:8px 14px;border-radius:6px;cursor:pointer;transition:all .15s ease;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.vlist-btn:hover{border-color:var(--accent)}.vlist-btn:disabled{opacity:.45;cursor:not-allowed}.vlist-btn.solid{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.vlist-btn.solid:hover{background:color-mix(in srgb,var(--accent) 88%,transparent)}.vlist-empty{padding:40px 0;text-align:center;color:var(--muted);font-size:14px;border:1px dashed var(--border);border-radius:8px}.vlist-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--border)}.vrow{border-bottom:1px solid var(--border);transition:background-color .15s ease}.vrow:hover{background:color-mix(in srgb,var(--panel-2) 50%,transparent)}.vrow.open{background:var(--panel-2)}.vrow-head{display:grid;grid-template-columns:24px auto 1fr auto;align-items:center;gap:14px;width:100%;padding:14px 16px;text-align:left;background:transparent;border:none;cursor:pointer;color:var(--text);font:inherit}.vrow-chev{font-family:var(--font-mono);font-size:16px;color:var(--muted);transition:transform .2s ease;display:inline-block;width:16px;text-align:center;line-height:1}.vrow-chev.open{transform:rotate(90deg);color:var(--text)}.vrow-ver{font-family:var(--font-mono);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.005em;color:var(--text);padding:2px 8px;background:var(--panel-3);border-radius:4px;white-space:nowrap}.vrow-title{font-size:14px;color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vrow-dim{color:var(--muted-2);font-weight:400;font-style:normal}.vrow-actions{display:inline-flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease}.vrow:hover .vrow-actions,.vrow.open .vrow-actions{opacity:1}.vrow-action{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--muted);cursor:pointer;border-radius:4px;font-size:15px;line-height:1;text-decoration:none;transition:background-color .15s ease,color .15s ease}.vrow-action:hover{background:var(--panel-3);color:var(--text)}.vrow-action.danger:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}.vrow-body{padding:4px 16px 18px 54px;animation:vrow-in .2s ease}@keyframes vrow-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.vrow-body pre{margin:0;font-family:var(--font-mono);font-size:13px;line-height:1.65;color:var(--text);white-space:pre-wrap;word-break:break-word;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:14px 16px;max-height:480px;overflow-y:auto}.vrow-body .md{font-size:13.5px;line-height:1.65;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:14px 18px;max-height:560px;overflow-y:auto}.vrow-body .md>*:first-child{margin-top:0}.vrow-body .md>*:last-child{margin-bottom:0}.vrow-body .md h1,.vrow-body .md h2,.vrow-body .md h3,.vrow-body .md h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;margin:18px 0 8px;line-height:1.25}.vrow-body .md h1{font-size:18px}.vrow-body .md h2{font-size:16px}.vrow-body .md h3{font-size:14.5px}.vrow-body .md h4{font-size:13.5px;color:var(--muted)}.vrow-body .md p{margin:8px 0}.vrow-body .md ul,.vrow-body .md ol{margin:8px 0;padding-left:22px}.vrow-body .md li{margin:3px 0}.vrow-body .md li::marker{color:var(--muted-2)}.vrow-body .md a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.vrow-body .md code{font-family:var(--font-mono);font-size:.9em;padding:1px 5px;background:var(--panel-2);border:1px solid var(--border-soft);border-radius:4px}.vrow-body .md pre{max-height:none;margin:10px 0;padding:12px 14px;background:var(--panel-2)}.vrow-body .md pre code{padding:0;background:transparent;border:0;font-size:12.5px}.vrow-body .md blockquote{margin:10px 0;padding:2px 12px;color:var(--muted);border-left:3px solid var(--border)}.vrow-body .md hr{margin:14px 0;border:0;border-top:1px solid var(--border-soft)}.vrow-body .md table{width:100%;border-collapse:collapse;margin:10px 0;font-size:12.5px}.vrow-body .md th,.vrow-body .md td{padding:6px 10px;border:1px solid var(--border-soft);text-align:left}.vrow-body .md th{background:var(--panel-2);font-weight:600}.vlist-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#000 55%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:100;animation:vlist-fade .15s ease}@keyframes vlist-fade{0%{opacity:0}to{opacity:1}}.vlist-modal{background:var(--bg-soft);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);width:min(720px,100%);max-height:90vh;display:flex;flex-direction:column}.vlist-modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--border);gap:10px}.vlist-modal-head h3{margin:0;font-family:var(--font-display);font-weight:600;font-size:17px}.vlist-modal-body{padding:18px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.vlist-modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px 18px;border-top:1px solid var(--border)}.vlist-field-row{display:grid;grid-template-columns:1fr 160px;gap:12px}.vlist-field{display:flex;flex-direction:column;gap:6px}.vlist-field>span{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}.vlist-input{font-family:var(--font-body);font-size:14px;color:var(--text);background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:9px 12px;outline:none;transition:border-color .15s ease;width:100%}.vlist-input:focus{border-color:var(--accent)}.vlist-version-row{display:flex;align-items:stretch;gap:6px}.vlist-version-row .vlist-input{flex:1}.vlist-bump{flex:0 0 auto;width:38px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;color:var(--muted);background:var(--panel);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.vlist-bump:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:var(--panel-2)}.vlist-bump:disabled{opacity:.4;cursor:not-allowed}.vlist-textarea{font-family:var(--font-mono);font-size:13px;line-height:1.55;resize:vertical;min-height:220px}@media (max-width: 640px){.vrow-head{grid-template-columns:20px auto 1fr}.vrow-actions{grid-column:1 / -1;opacity:1;justify-content:flex-end;padding-top:4px}.vrow-body{padding-left:16px}.vlist-field-row{grid-template-columns:1fr}}.login-shell{min-height:100vh;display:grid;place-items:center;padding:40px 20px;background:radial-gradient(60% 50% at 20% 10%,color-mix(in srgb,var(--accent) 6%,transparent),transparent 70%),radial-gradient(50% 40% at 80% 90%,color-mix(in srgb,var(--accent) 5%,transparent),transparent 70%),var(--bg)}.login-checking{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.login-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:14px;padding:30px 32px 28px;background:var(--panel);border:var(--rule);border-radius:14px;box-shadow:0 20px 50px -30px color-mix(in srgb,var(--accent) 40%,transparent)}.login-brand{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted-2);margin-bottom:4px}.login-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.login-mark{line-height:1}.login-title{margin:0;font-family:var(--font-display);font-size:26px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.login-sub{margin:-6px 0 8px;font-size:13px;line-height:1.45;color:var(--muted)}.login-field{display:flex;flex-direction:column;gap:6px}.login-field>span{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.login-input{font-family:var(--font-body);font-size:14px;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:10px 12px;outline:none;transition:border-color .15s ease,background .15s ease}.login-input:focus{border-color:var(--accent);background:var(--panel)}.login-err{font-size:12.5px;color:var(--danger, #e5484d);background:color-mix(in srgb,var(--danger, #e5484d) 8%,transparent);border:1px solid color-mix(in srgb,var(--danger, #e5484d) 35%,transparent);border-radius:6px;padding:8px 10px}.login-submit{margin-top:6px;padding:11px 14px;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--accent-ink);background:var(--accent);border:1px solid var(--accent);border-radius:8px;cursor:pointer;transition:filter .15s ease,opacity .15s ease}.login-submit:hover:not(:disabled){filter:brightness(1.06)}.login-submit:disabled{opacity:.5;cursor:not-allowed}
