@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--white: #ffffff;--black: #000000;--gray-50: #fafafa;--gray-100: #f4f4f5;--gray-200: #e4e4e7;--gray-300: #d4d4d8;--gray-400: #a1a1aa;--gray-500: #71717a;--gray-600: #52525b;--gray-700: #3f3f46;--gray-800: #27272a;--gray-900: #18181b;--gray-950: #09090b;--accent-green: #00D26A;--accent-green-dark: #00B85C;--accent-green-light: rgba(0, 210, 106, .1);--accent-green-glow: rgba(0, 210, 106, .15);--accent-red: #FF3B30;--accent-red-dark: #E6352B;--accent-red-light: rgba(255, 59, 48, .1);--accent-red-glow: rgba(255, 59, 48, .15);--success: var(--accent-green);--success-light: var(--accent-green-light);--error: var(--accent-red);--error-light: var(--accent-red-light);--warning: #FFCC00;--warning-light: rgba(255, 204, 0, .1);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Fira Code", "Consolas", monospace;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .03);--shadow-glow-green: 0 0 20px var(--accent-green-glow);--shadow-glow-red: 0 0 20px var(--accent-red-glow);--radius-xs: 4px;--radius-sm: 6px;--radius: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--transition-fast: .1s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-spring: .4s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-tooltip: 400}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);background:var(--gray-50);color:var(--gray-900);line-height:1.5;letter-spacing:-.01em}#root{min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit}::selection{background:var(--black);color:var(--white)}.font-mono{font-family:var(--font-mono)}.text-data{font-family:var(--font-mono);font-weight:500;letter-spacing:-.02em;font-feature-settings:"tnum" on,"lnum" on}.text-value{font-family:var(--font-mono);font-weight:600;letter-spacing:-.03em}.text-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.bg-grid{background-image:linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.03) 1px,transparent 1px);background-size:24px 24px}.bg-grid-dark{background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:24px 24px}.bg-dots{background-image:radial-gradient(rgba(0,0,0,.08) 1px,transparent 1px);background-size:16px 16px}.bg-dots-dark{background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:16px 16px}.bg-gradient-radial{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(0,0,0,.05),transparent)}.card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);transition:all var(--transition-base)}.card:hover{border-color:var(--gray-300);box-shadow:var(--shadow-md)}.card-dark{background:var(--gray-900);border:1px solid var(--gray-800)}.card-elevated{background:var(--white);border:1px solid var(--gray-100);box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:500;border-radius:var(--radius);transition:all var(--transition-base);cursor:pointer;white-space:nowrap}.btn-primary{background:var(--black);color:var(--white);border:1px solid var(--black)}.btn-primary:hover{background:var(--gray-800);border-color:var(--gray-800);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--white);color:var(--gray-700);border:1px solid var(--gray-200)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-300)}.btn-success{background:var(--accent-green);color:var(--white);border:1px solid var(--accent-green)}.btn-success:hover{background:var(--accent-green-dark);box-shadow:var(--shadow-glow-green)}.btn-danger{background:var(--accent-red);color:var(--white);border:1px solid var(--accent-red)}.btn-danger:hover{background:var(--accent-red-dark);box-shadow:var(--shadow-glow-red)}.btn-ghost{background:transparent;color:var(--gray-600);border:1px solid transparent}.btn-ghost:hover{background:var(--gray-100);color:var(--gray-900)}.input{width:100%;padding:10px 14px;font-size:14px;color:var(--gray-900);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);outline:none;transition:all var(--transition-base)}.input:focus{border-color:var(--gray-400);box-shadow:0 0 0 3px #0000000d}.input-dark{background:var(--gray-900);border-color:var(--gray-700);color:var(--white)}.input-dark:focus{border-color:var(--gray-500);box-shadow:0 0 0 3px #ffffff0d}.stat-value{font-family:var(--font-mono);font-size:32px;font-weight:600;letter-spacing:-.03em;line-height:1;color:var(--gray-900)}.stat-value-sm{font-family:var(--font-mono);font-size:24px;font-weight:600;letter-spacing:-.03em}.stat-label{font-size:12px;font-weight:500;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em}.stat-change{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:12px;font-weight:500}.stat-change-positive{color:var(--accent-green)}.stat-change-negative{color:var(--accent-red)}.badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:11px;font-weight:500;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.badge-success{background:var(--accent-green-light);color:var(--accent-green-dark)}.badge-error{background:var(--accent-red-light);color:var(--accent-red-dark)}.badge-neutral{background:var(--gray-100);color:var(--gray-600)}.table-container{overflow-x:auto;border:1px solid var(--gray-200);border-radius:var(--radius-lg);background:var(--white)}.table{width:100%;border-collapse:collapse}.table th{padding:12px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);text-align:left;background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.table td{padding:14px 16px;font-size:14px;color:var(--gray-700);border-bottom:1px solid var(--gray-100)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--gray-50)}.table .cell-mono{font-family:var(--font-mono);font-size:13px;font-weight:500}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--accent-green-glow)}50%{box-shadow:0 0 20px var(--accent-green-glow),0 0 30px var(--accent-green-glow)}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .4s ease-out}.animate-slide-down{animation:slideDown .3s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin .8s linear infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.skeleton{background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-50) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.glass-dark{background:#000000b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.border-subtle{border:1px solid var(--gray-200)}.border-glow-green{border:1px solid var(--accent-green);box-shadow:var(--shadow-glow-green)}.border-glow-red{border:1px solid var(--accent-red);box-shadow:var(--shadow-glow-red)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px){.hide-desktop{display:none!important}}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:60px;background:var(--white);border-bottom:1px solid var(--gray-200);z-index:var(--z-sticky);padding:0 16px;align-items:center;justify-content:space-between}.mobile-menu-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast)}.mobile-menu-btn:hover{background:var(--gray-100)}.mobile-overlay{position:fixed;inset:0;background:#00000080;z-index:var(--z-modal);opacity:0;visibility:hidden;transition:all var(--transition-base)}.mobile-overlay.active{opacity:1;visibility:visible}.mobile-sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;background:var(--white);z-index:calc(var(--z-modal) + 1);transform:translate(-100%);transition:transform var(--transition-slow);overflow-y:auto}.mobile-sidebar.active{transform:translate(0)}@media(max-width:768px){.mobile-header{display:flex}.desktop-sidebar{display:none!important}.main-content{margin-left:0!important;padding-top:60px}.stat-value{font-size:24px}.stat-value-sm{font-size:18px}.btn{padding:12px 16px;font-size:14px}.btn-sm{padding:8px 12px;font-size:12px}.card{border-radius:var(--radius)}.table th,.table td{padding:10px 12px;font-size:13px}.container{padding:0 16px}}@media(min-width:769px)and (max-width:1024px){.stat-value{font-size:28px}}@media(hover:none)and (pointer:coarse){.btn{min-height:44px}.input{min-height:44px;font-size:16px}.mobile-menu-btn{min-width:44px;min-height:44px}}
