*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--white:#fff;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--black:#0a0a0a;--accent:#2563eb;--accent-light:#eff6ff;--accent-hover:#1d4ed8;--positive:#16a34a;--positive-bg:#f0fdf4;--negative:#dc2626;--negative-bg:#fef2f2;--warning:#d97706;--warning-bg:#fffbeb;--chart-1:#2563eb;--chart-2:#7c3aed;--chart-3:#ea580c;--chart-4:#0891b2;--chart-5:#4f46e5;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;--sidebar-width:240px;--topbar-height:56px;--border:#e5e7eb;--border-light:#f3f4f6;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #0000000d, 0 2px 4px #0000000a}html{font-family:var(--font-sans);color:var(--gray-900);background:var(--white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}body{min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--gray-900);font-weight:600;line-height:1.3}h1{letter-spacing:-.025em;font-size:1.5rem}h2{letter-spacing:-.015em;font-size:1.125rem}h3{font-size:1rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.text-secondary{color:var(--gray-500)}.text-tertiary{color:var(--gray-400)}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.text-mono{font-family:var(--font-mono)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.metric-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;padding:20px 24px}.metric-card .metric-label{color:var(--gray-500);margin-bottom:8px;font-size:.8125rem;font-weight:500}.metric-card .metric-value{color:var(--gray-900);letter-spacing:-.03em;align-items:baseline;gap:8px;font-size:1.75rem;font-weight:700;line-height:1;display:flex}.metric-card .metric-trend{border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.metric-card .metric-trend.up{color:var(--positive);background:var(--positive-bg)}.metric-card .metric-trend.down{color:var(--negative);background:var(--negative-bg)}.data-table{border-collapse:collapse;width:100%;font-size:.9375rem}.data-table th{text-align:left;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--gray-50);padding:10px 16px;font-size:.8125rem;font-weight:500}.data-table td{border-bottom:1px solid var(--border-light);color:var(--gray-700);padding:12px 16px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--gray-50)}.badge{text-transform:uppercase;letter-spacing:.03em;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-flex}.badge.blue{background:var(--accent-light);color:var(--accent)}.badge.green{background:var(--positive-bg);color:var(--positive)}.badge.red{background:var(--negative-bg);color:var(--negative)}.badge.orange{background:var(--warning-bg);color:var(--warning)}.badge.gray{background:var(--gray-100);color:var(--gray-600)}.btn{border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:500;font-family:var(--font-sans);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 16px;transition:all .15s;display:inline-flex}.btn-primary{background:var(--gray-900);color:var(--white);border-color:var(--gray-900)}.btn-primary:hover{background:var(--gray-800)}.btn-secondary{background:var(--white);color:var(--gray-700);border-color:var(--border)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-300)}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.empty-state .empty-icon{width:48px;height:48px;color:var(--gray-300);margin-bottom:16px}.empty-state h3{color:var(--gray-700);margin-bottom:4px}.empty-state p{color:var(--gray-400);font-size:.875rem}html{scroll-behavior:smooth}
