:root{--bg-base:#06060c;--bg-surface:#0c0c16;--bg-raised:#121224;--bg-overlay:#1a1a32;--amber-100:#e0f2fe;--amber-400:#06b6d4;--amber-500:#8b5cf6;--amber-600:#6d28d9;--amber-glow:#8b5cf626;--green-400:#10b981;--green-glow:#10b9811f;--red-400:#f43f5e;--red-glow:#f43f5e1f;--orange-400:#f97316;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#475569;--text-accent:var(--amber-400);--border-subtle:#8b5cf614;--border-default:#8b5cf626;--border-strong:#8b5cf640;--border-accent:#06b6d44d;--font-ui:"Space Grotesk", system-ui, sans-serif;--font-mono:"Space Mono", "Fira Code", monospace;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.35s;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 20px #0009;--shadow-lg:0 10px 30px #000c}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-ui);min-height:100vh;font-size:.9375rem;line-height:1.6}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--bg-overlay);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}h1,h2,h3,h4,h5,h6{font-family:var(--font-ui);letter-spacing:-.02em;color:var(--text-primary);font-weight:600;line-height:1.2}.mono{font-family:var(--font-mono)}.text-sm{font-size:.8125rem}.text-xs{font-size:.75rem}.text-muted{color:var(--text-secondary)}.text-accent{color:var(--text-accent)}.page-shell{grid-template-rows:auto 1fr;grid-template-columns:260px 1fr;min-height:100vh;display:grid}.page-topbar{align-items:center;gap:var(--sp-4);padding:var(--sp-4) var(--sp-6);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:40;grid-column:1/-1;display:flex;position:sticky;top:0}.page-sidebar{background:var(--bg-surface);border-right:1px solid var(--border-subtle);padding:var(--sp-6);gap:var(--sp-6);flex-direction:column;display:flex}.page-main{padding:var(--sp-8) var(--sp-10);gap:var(--sp-10);flex-direction:column;display:flex;overflow-y:auto}.brand{align-items:center;gap:var(--sp-3);display:flex}.brand-icon{background:var(--amber-500);border-radius:var(--radius-sm);flex-shrink:0;place-items:center;width:32px;height:32px;font-size:1rem;display:grid}.brand-name{letter-spacing:-.03em;color:var(--text-primary);font-size:1rem;font-weight:700}.brand-version{font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-overlay);border:1px solid var(--border-subtle);border-radius:99px;padding:2px 6px;font-size:.6875rem}.status-badge{align-items:center;gap:var(--sp-1);font-size:.75rem;font-family:var(--font-mono);border-radius:99px;padding:3px 8px;font-weight:400;display:inline-flex}.status-badge.healthy{color:var(--green-400);background:var(--green-glow);border:1px solid #34d39933}.status-badge.degraded{color:var(--red-400);background:var(--red-glow);border:1px solid #f8717133}.status-badge.pending{color:var(--text-secondary);background:var(--bg-overlay);border:1px solid var(--border-subtle)}.status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.status-dot.pulse{animation:2s ease-in-out infinite pulse-ring}@keyframes pulse-ring{0%,to{opacity:1}50%{opacity:.4}}.stat-stack{gap:var(--sp-2);flex-direction:column;display:flex}.stat-item{padding:var(--sp-3) var(--sp-4);background:var(--bg-raised);border-radius:var(--radius-md);border:1px solid var(--border-subtle);transition:border-color var(--dur-base) var(--ease-out);flex-direction:column;gap:2px;display:flex}.stat-item:hover{border-color:var(--border-default)}.stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.6875rem;font-family:var(--font-mono)}.stat-value{color:var(--text-primary);font-size:1.375rem;font-weight:700;line-height:1}.stat-value.accent{color:var(--amber-400)}.stat-value.green{color:var(--green-400)}.stat-value.red{color:var(--red-400)}.stat-sub{color:var(--text-secondary);margin-top:2px;font-size:.75rem}.section-header{justify-content:space-between;align-items:baseline;gap:var(--sp-4);margin-bottom:var(--sp-5);display:flex}.section-title{letter-spacing:-.02em;font-size:1.0625rem;font-weight:600}.section-count{font-family:var(--font-mono);color:var(--text-muted);background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:99px;padding:2px 8px;font-size:.75rem}.table-wrap{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-surface);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table thead{z-index:10;position:sticky;top:0}.data-table thead th{background:var(--bg-raised);padding:var(--sp-3) var(--sp-4);text-align:left;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap;font-size:.6875rem;font-weight:400}.data-table thead th:first-child{padding-left:var(--sp-5)}.data-table thead th:last-child{padding-right:var(--sp-5)}.data-table tbody tr{border-bottom:1px solid var(--border-subtle);transition:background-color var(--dur-fast) var(--ease-out)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:var(--bg-raised)}.data-table tbody td{padding:var(--sp-3) var(--sp-4);vertical-align:middle}.data-table tbody td:first-child{padding-left:var(--sp-5)}.data-table tbody td:last-child{padding-right:var(--sp-5)}.td-name{color:var(--text-primary);max-width:280px;font-weight:500}.td-name a{color:inherit;transition:color var(--dur-fast);text-decoration:none}.td-name a:hover{color:var(--amber-400)}.td-price{font-family:var(--font-mono);color:var(--amber-400);white-space:nowrap;font-size:.9375rem;font-weight:700}.td-currency{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem}.td-ts{font-family:var(--font-mono);color:var(--text-secondary);white-space:nowrap;font-size:.75rem}.stock-pill{font-size:.75rem;font-family:var(--font-mono);white-space:nowrap;border-radius:99px;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.stock-pill.in{color:var(--green-400);background:var(--green-glow);border:1px solid #34d39933}.stock-pill.out{color:var(--text-muted);background:var(--bg-raised);border:1px solid var(--border-subtle)}.timeline{flex-direction:column;gap:0;display:flex;position:relative}.timeline:before{content:"";background:var(--border-subtle);width:1px;position:absolute;top:0;bottom:0;left:19px}.timeline-item{gap:var(--sp-4);padding-bottom:var(--sp-5);animation:fade-up var(--dur-slow) var(--ease-out) both;grid-template-columns:40px 1fr;display:grid;position:relative}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.timeline-dot{border:2px solid var(--bg-base);z-index:1;border-radius:50%;flex-shrink:0;width:18px;height:18px;margin-top:3px;margin-left:11px;position:relative}.timeline-dot.unresolved{background:var(--red-400);box-shadow:0 0 8px #f8717166}.timeline-dot.resolved{background:var(--green-400);box-shadow:0 0 8px #34d3994d}.timeline-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--sp-4) var(--sp-5);transition:border-color var(--dur-base) var(--ease-out)}.timeline-card:hover{border-color:var(--border-default)}.timeline-card.unresolved{border-left:3px solid var(--red-400)}.timeline-card.resolved{border-left:3px solid var(--green-400)}.timeline-meta{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2);flex-wrap:wrap;display:flex}.timeline-time{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem}.timeline-desc{color:var(--text-secondary);word-break:break-word;font-size:.875rem;line-height:1.5}.empty-state{padding:var(--sp-12) var(--sp-8);text-align:center;color:var(--text-muted)}.empty-state-icon{margin-bottom:var(--sp-3);opacity:.4;font-size:2rem}.empty-state-title{color:var(--text-secondary);margin-bottom:var(--sp-2);font-size:.9375rem;font-weight:500}.empty-state-sub{color:var(--text-muted);font-size:.8125rem}.dev-banner{border:1px solid var(--border-accent);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);align-items:center;gap:var(--sp-3);color:var(--amber-400);margin-bottom:var(--sp-6);background:linear-gradient(90deg,#f5c84214,#0000);font-size:.8125rem;display:flex}.sidebar-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:var(--sp-2);font-size:.625rem}.divider{background:var(--border-subtle);height:1px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.gap-4{gap:var(--sp-4)}.w-full{width:100%}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:900px){.page-shell{grid-template-rows:auto auto 1fr;grid-template-columns:1fr}.page-sidebar{border-right:none;border-bottom:1px solid var(--border-subtle);padding:var(--sp-5);gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.sidebar-label,.divider{display:none}.page-main{padding:var(--sp-6)}}@media (max-width:560px){.page-topbar{padding:var(--sp-3) var(--sp-4)}.page-main{padding:var(--sp-4);gap:var(--sp-6)}.td-ts,.td-currency{display:none}}.price-cell{flex-direction:column;gap:2px;display:flex}.price-delta{font-family:var(--font-mono);letter-spacing:.02em;cursor:help;font-size:.6875rem;font-weight:600}.price-up{color:var(--red-400)}.price-down{color:var(--green-400)}.name-cell,.stock-cell{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.change-badge{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:99px;align-items:center;padding:1px 6px;font-size:.625rem;font-weight:700;display:inline-flex}.new-product{color:var(--amber-400);background:#f5c84226;border:1px solid #f5c8424d}.stock-flip{color:var(--orange-400);background:#fb923c26;border:1px solid #fb923c4d}.data-table tbody tr.row-changed{background:#f5c84209}.data-table tbody tr.row-changed:hover{background:#f5c84212}.change-summary-bar{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-3);border-radius:var(--radius-md);color:var(--text-secondary);background:#f5c8420f;border:1px solid #f5c84233;font-size:.875rem;display:flex}.change-summary-icon{font-size:1rem}.timeline-chips{gap:var(--sp-2);margin-top:var(--sp-3);flex-wrap:wrap;display:flex}.heal-chip{font-family:var(--font-mono);letter-spacing:.03em;border:1px solid #0000;border-radius:99px;align-items:center;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-flex}.heal-chip.error-type-empty_result{color:var(--red-400);background:#f871711f;border-color:#f8717140}.heal-chip.error-type-missing_fields,.heal-chip.error-type-type_mismatch{color:var(--orange-400);background:#fb923c1f;border-color:#fb923c40}.heal-chip.error-type-cli_auth,.heal-chip.error-type-collector_gone{color:var(--red-400);background:#f871712e;border-color:#f8717159}.heal-chip.error-type-unknown{color:var(--text-muted);background:#5a5a5a2e;border-color:#5a5a5a4d}.heal-chip.method-real{color:var(--green-400);background:#34d3991a;border-color:#34d39940}.heal-chip.method-simulated{color:var(--amber-400);background:#f5c8421a;border-color:#f5c84240}.heal-chip.attempt-retry{color:var(--red-400);background:#f871711a;border-color:#f8717133}.heal-chip.duration{color:var(--text-secondary);background:#5a5a5a1f;border-color:#5a5a5a33}.timeline-dot.simulated{background:var(--amber-400);box-shadow:0 0 8px var(--amber-glow)}.timeline-card.simulated{background:#f5c8420a;border-color:#f5c84233}.status-badge.mock{color:var(--amber-400);background:#f5c8421f;border:1px solid #f5c84240}.runs-table .td-runid{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:.75rem;overflow:hidden}.td-num{text-align:center;font-family:var(--font-mono);font-size:.8125rem}.delta-nonzero{color:var(--amber-400);font-weight:600}.delta-zero{color:var(--text-muted)}.heal-resolved{color:var(--green-400);font-family:var(--font-mono);font-size:.8125rem}.heal-unresolved{color:var(--red-400);font-family:var(--font-mono);font-size:.8125rem}.run-row.status-degraded{background:#f5c84208}.run-row.status-failed{background:#f871710a}.run-row.status-running{background:#34d39908}.status-badge.running{color:var(--green-400);background:#34d3991f;border:1px solid #34d39940}.status-badge.failed{color:var(--red-400);background:#f871711f;border:1px solid #f8717140}.hero-section{border-radius:var(--radius-xl);padding:var(--sp-8) var(--sp-10);box-shadow:var(--shadow-lg), inset 0 1px 0 #ffffff0d;background:radial-gradient(120% 120% at 0 0,#8b5cf614 0%,#06b6d408 50%,#0000 100%);border:1px solid #8b5cf626;position:relative;overflow:hidden}.hero-glow{filter:blur(40px);pointer-events:none;background:radial-gradient(circle,#8b5cf640 0%,#0000 70%);width:250px;height:250px;position:absolute;top:-80px;left:-80px}.hero-content{z-index:10;position:relative}.hero-badge{color:#a78bfa;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--sp-4);background:#8b5cf61f;border:1px solid #8b5cf640;border-radius:99px;padding:4px 12px;font-size:.6875rem;font-weight:700;display:inline-flex}.hero-title{letter-spacing:-.04em;background:linear-gradient(135deg,#fff 0%,#a78bfa 55%,#06b6d4 100%);-webkit-text-fill-color:transparent;margin-bottom:var(--sp-2);-webkit-background-clip:text;font-size:3rem;font-weight:800;line-height:1.1}.hero-tagline{color:var(--text-primary);margin-bottom:var(--sp-4);letter-spacing:-.01em;opacity:.95;font-size:1.1875rem;font-weight:500}.hero-desc{color:var(--text-secondary);max-width:800px;margin-bottom:var(--sp-8);font-size:.875rem;line-height:1.6}.hero-features{gap:var(--sp-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.feature-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--sp-5);transition:all var(--dur-base) var(--ease-out);background:#ffffff04}.feature-card:hover{background:#ffffff09;border-color:#06b6d440;transform:translateY(-2px);box-shadow:0 4px 12px #06b6d40d}.feature-emoji{margin-bottom:var(--sp-2);font-size:1.5rem;display:block}.feature-card h4{margin-bottom:var(--sp-1);color:var(--text-primary);font-size:.875rem;font-weight:600}.feature-card p{color:var(--text-secondary);font-size:.75rem;line-height:1.4}
