:root{--gray-1: #0a0a0a;--gray-2: #111111;--gray-3: #161616;--gray-4: #1c1c1c;--gray-5: #232323;--gray-6: #2a2a2a;--gray-7: #3a3a3a;--gray-8: #525252;--gray-9: #737373;--gray-10: #a3a3a3;--gray-11: #d4d4d4;--gray-12: #ededed;--accent-1: #3aed8a;--accent-1-dim: #1a9758;--accent-2: #2c9eff;--accent-2-dim: #1c64a8;--accent-warn: #f5a524;--accent-warn-dim: #a16a0c;--accent-danger: #f43f5e;--accent-danger-dim: #9f1d36;--accent-purple: #a78bfa;--accent-purple-dim: #6f4cd1;--bg: var(--gray-1);--bg-elev: var(--gray-2);--bg-card: var(--gray-2);--bg-card-hover: var(--gray-3);--bg-input: var(--gray-3);--border: var(--gray-5);--border-strong: var(--gray-7);--border-subtle: var(--gray-3);--text: var(--gray-12);--text-secondary: var(--gray-10);--text-muted: var(--gray-9);--text-disabled: var(--gray-8);--shadow-sm: 0 1px 0 0 rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px -4px rgba(0, 0, 0, .5), 0 1px 0 0 rgba(255, 255, 255, .03) inset;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-xl: 14px;--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1)}@media (prefers-color-scheme: light){:root:not([data-theme=dark]){--gray-1: #ffffff;--gray-2: #fafafa;--gray-3: #f4f4f5;--gray-4: #ededed;--gray-5: #e5e5e5;--gray-6: #d4d4d4;--gray-7: #a3a3a3;--gray-8: #737373;--gray-9: #525252;--gray-10: #404040;--gray-11: #262626;--gray-12: #0a0a0a;--accent-1-dim: #117a45;--accent-2-dim: #155591;--bg: var(--gray-1);--bg-elev: var(--gray-2);--bg-card: var(--gray-1);--bg-card-hover: var(--gray-2);--bg-input: var(--gray-2);--text: var(--gray-12);--text-secondary: var(--gray-10);--text-muted: var(--gray-9);--shadow-sm: 0 1px 0 0 rgba(0, 0, 0, .06);--shadow-md: 0 6px 20px -6px rgba(0, 0, 0, .08), 0 1px 0 0 rgba(0, 0, 0, .02)}}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01","cv11"}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;background:none;border:none;cursor:pointer;color:inherit}h1,h2,h3,h4,h5,h6{font-weight:600;margin:0;letter-spacing:-.011em}h1{font-size:28px;letter-spacing:-.025em;line-height:1.2}h2{font-size:18px;letter-spacing:-.014em}h3{font-size:14px;letter-spacing:-.005em}p{margin:0}code,.mono{font-family:var(--font-mono);font-size:.92em}*{scrollbar-width:thin;scrollbar-color:var(--gray-6) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-6);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-7)}.cluster{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.stack{display:flex;flex-direction:column;gap:12px}.muted{color:var(--text-muted)}.subtle{color:var(--text-secondary)}.divider{height:1px;background:var(--border);border:0}.hairline{border:1px solid var(--border);border-radius:var(--radius-md)}.shell{min-height:100%;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px)}.brand{display:flex;align-items:center;gap:10px;font-weight:600;letter-spacing:-.02em;font-size:15px}.brand-dot{width:9px;height:9px;border-radius:999px;background:var(--accent-1);box-shadow:0 0 14px color-mix(in srgb,var(--accent-1) 50%,transparent)}.topbar-meta{display:flex;gap:18px;align-items:center;color:var(--text-muted);font-size:12px;font-family:var(--font-mono)}.topbar-meta strong{color:var(--text);font-weight:500}.content{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:32px 24px 64px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:24px}.page-head-text h1{margin-bottom:4px}.page-head-text p{color:var(--text-muted);font-size:13px}.section{display:flex;flex-direction:column;gap:16px;margin-bottom:36px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.section-head h2{font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.grid.cols-6{grid-template-columns:repeat(6,1fr)}.grid.split-2-1{grid-template-columns:2fr 1fr}@media (max-width: 980px){.grid.cols-3,.grid.cols-4,.grid.cols-6{grid-template-columns:repeat(2,1fr)}.grid.split-2-1{grid-template-columns:1fr}}@media (max-width: 600px){.grid.cols-2,.grid.cols-3,.grid.cols-4,.grid.cols-6{grid-template-columns:1fr}.content{padding:20px 14px 48px}.topbar{padding:10px 14px;flex-wrap:wrap;gap:6px}.topbar-meta{width:100%;font-size:11px;gap:8px;flex-wrap:wrap}.brand{font-size:14px}.page-head{align-items:flex-start;gap:12px}.page-head-text h1{font-size:22px;line-height:1.25}.page-head-text p{font-size:12px}.section{margin-bottom:28px}.section-head h2{font-size:11px}}.footer{padding:20px 24px 32px;text-align:center;color:var(--text-muted);font-size:11px;font-family:var(--font-mono);border-top:1px solid var(--border-subtle);margin-top:32px}.footer a{color:var(--text-secondary);text-decoration:underline;text-decoration-color:var(--gray-7);text-underline-offset:2px}.card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:18px 20px;transition:border-color .2s var(--ease-out)}.card.tight{padding:14px 16px}.card.flat{background:transparent;border-color:var(--border-subtle)}.card:hover{border-color:var(--border)}.card-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:500;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.kpi{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:18px 20px;position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:transparent;transition:background .2s var(--ease-out)}.kpi[data-accent=primary]:before{background:var(--accent-1)}.kpi[data-accent=blue]:before{background:var(--accent-2)}.kpi[data-accent=warn]:before{background:var(--accent-warn)}.kpi[data-accent=danger]:before{background:var(--accent-danger)}.kpi[data-accent=purple]:before{background:var(--accent-purple)}.kpi-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-weight:500;display:flex;align-items:center;gap:6px}.kpi-value{font-size:32px;font-weight:600;letter-spacing:-.03em;line-height:1.1;margin-top:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi-value .unit{color:var(--text-muted);font-size:18px;font-weight:500;margin-left:4px;letter-spacing:0}.kpi-sub{margin-top:8px;font-size:12px;color:var(--text-muted);display:flex;gap:8px;align-items:center}.badge{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:999px;background:var(--gray-3);border:1px solid var(--border);color:var(--text-secondary);font-size:11px;font-weight:500;font-family:var(--font-mono);white-space:nowrap}.badge[data-tone=success]{background:color-mix(in srgb,var(--accent-1) 12%,transparent);border-color:color-mix(in srgb,var(--accent-1) 28%,var(--border));color:var(--accent-1)}.badge[data-tone=info]{background:color-mix(in srgb,var(--accent-2) 12%,transparent);border-color:color-mix(in srgb,var(--accent-2) 28%,var(--border));color:var(--accent-2)}.badge[data-tone=warn]{background:color-mix(in srgb,var(--accent-warn) 14%,transparent);border-color:color-mix(in srgb,var(--accent-warn) 32%,var(--border));color:var(--accent-warn)}.badge[data-tone=danger]{background:color-mix(in srgb,var(--accent-danger) 14%,transparent);border-color:color-mix(in srgb,var(--accent-danger) 32%,var(--border));color:var(--accent-danger)}.badge[data-tone=neutral]{background:var(--gray-3);border-color:var(--border);color:var(--text-muted)}.dot{width:6px;height:6px;border-radius:999px;background:currentColor;flex-shrink:0}.table-wrap{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;background:var(--bg-card)}.table{width:100%;min-width:720px;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.table thead th{position:sticky;top:0;text-align:left;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:12px 14px;background:var(--bg-elev);border-bottom:1px solid var(--border)}.table tbody td{padding:12px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--bg-card-hover)}.table td.num{text-align:right;font-family:var(--font-mono)}.table td.mono,.table th.mono{font-family:var(--font-mono)}.chart-frame{width:100%;height:260px}.chart-frame.lg{height:320px}.chart-frame.sm{height:200px}.tabs{display:inline-flex;background:var(--bg-elev);border:1px solid var(--border-subtle);border-radius:999px;padding:3px;gap:2px}.tab{border-radius:999px;padding:6px 12px;font-size:12px;font-weight:500;color:var(--text-muted);transition:all .15s var(--ease-out)}.tab:hover{color:var(--text-secondary)}.tab[data-active=true]{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-sm)}.loading-wrap,.error-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:60vh;text-align:center;padding:32px}.spinner{width:22px;height:22px;border:2px solid var(--gray-5);border-top-color:var(--accent-1);border-radius:999px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-wrap .err-code{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase}.error-wrap h1{font-size:20px}.empty{padding:32px 12px;text-align:center;color:var(--text-muted);font-size:13px}.funnel-step{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.funnel-step:last-child{border-bottom:none}.funnel-step .label{font-size:13px;color:var(--text-secondary)}.funnel-step .count{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.funnel-step .bar{flex:1;height:8px;background:var(--gray-3);border-radius:999px;overflow:hidden;margin:0 16px}.funnel-step .bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent-1-dim),var(--accent-1));border-radius:inherit;transition:width .6s var(--ease-out)}@media (max-width: 600px){.card{padding:14px}.card.tight{padding:12px}.kpi{padding:14px}.kpi-value{font-size:26px}.kpi-value .unit{font-size:15px}.chart-frame{height:220px}.chart-frame.lg{height:240px}.chart-frame.sm{height:180px}.table thead th,.table tbody td{padding:10px 12px;font-size:12px}.funnel-step{flex-wrap:wrap;padding:12px 14px;row-gap:8px}.funnel-step .label{flex-basis:100%;min-width:0}.funnel-step .bar{flex:1 1 auto;margin:0 12px 0 0}.funnel-step .count{min-width:auto}}
