@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary:#0a0b0f;--bg-secondary:#12131a;--bg-card:#161722;--bg-card-hover:#1c1d2e;--bg-glass:#161722b8;--border:#ffffff0f;--border-glow:#6366f140;--text-primary:#e8e9f0;--text-secondary:#8b8d9e;--text-muted:#4e5064;--accent-indigo:#6366f1;--accent-cyan:#06b6d4;--accent-emerald:#10b981;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--accent-violet:#8b5cf6;--gradient-primary:linear-gradient(135deg, #6366f1, #8b5cf6);--gradient-success:linear-gradient(135deg, #10b981, #06b6d4);--gradient-danger:linear-gradient(135deg, #f43f5e, #f97316);--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 8px 32px #0009;--shadow-glow:0 0 24px #6366f126;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}#root{min-height:100vh}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{padding:var(--space-md) var(--space-xl);background:var(--bg-secondary);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.topbar-left{align-items:center;gap:var(--space-md);display:flex}.logo{background:var(--gradient-primary);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:800}.topbar-right{align-items:center;gap:var(--space-md);display:flex}.connection-badge{align-items:center;gap:var(--space-xs);letter-spacing:.5px;text-transform:uppercase;border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:500;display:flex}.connection-badge.live{color:var(--accent-emerald);background:#10b9811f;border:1px solid #10b98133}.connection-badge.offline{color:var(--accent-rose);background:#f43f5e1f;border:1px solid #f43f5e33}.connection-badge.api{color:var(--accent-amber);background:#fbbf241f;border:1px solid #fbbf2433}.dot{border-radius:50%;width:6px;height:6px}.dot.live{background:var(--accent-emerald);box-shadow:0 0 8px var(--accent-emerald);animation:2s ease-in-out infinite pulse-dot}.dot.offline{background:var(--accent-rose)}.dot.api{background:var(--accent-amber);box-shadow:0 0 6px var(--accent-amber);animation:3s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.main-content{gap:var(--space-lg);padding:var(--space-xl);flex-direction:column;width:100%;max-width:1400px;margin:0 auto;display:flex}.stat-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-lg);gap:var(--space-sm);flex-direction:column;transition:all .2s;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--gradient-primary);opacity:0;height:2px;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.stat-card:hover{background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:var(--shadow-glow)}.stat-card:hover:before{opacity:1}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:var(--space-sm);font-size:.75rem;font-weight:500;display:flex}.stat-value{letter-spacing:-.5px;font-family:JetBrains Mono,monospace;font-size:1.75rem;font-weight:700}.stat-value.positive{color:var(--accent-emerald)}.stat-value.negative{color:var(--accent-rose)}.stat-value.neutral{color:var(--text-primary)}.stat-value.accent{color:var(--accent-cyan)}.stat-sub{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.75rem}.panel-grid{gap:var(--space-lg);grid-template-columns:2fr 1fr;display:grid}@media (width<=900px){.panel-grid{grid-template-columns:1fr}}.panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.panel-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.panel-title{align-items:center;gap:var(--space-sm);font-size:.875rem;font-weight:600;display:flex}.panel-body{padding:var(--space-md);max-height:400px;overflow-y:auto}.panel-body::-webkit-scrollbar{width:4px}.panel-body::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:2px}.signal-item{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);border-bottom:1px solid var(--border);transition:background .15s;display:flex}.signal-item:last-child{border-bottom:none}.signal-item:hover{background:#ffffff05}.signal-icon{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;display:flex}.signal-icon.detected{color:var(--accent-indigo);background:#6366f11f}.signal-icon.trade{color:var(--accent-emerald);background:#10b9811f}.signal-icon.risk{color:var(--accent-rose);background:#f43f5e1f}.signal-icon.system{color:var(--accent-amber);background:#f59e0b1f}.signal-content{flex:1;min-width:0}.signal-name{color:var(--text-primary);font-size:.8125rem;font-weight:500}.signal-meta{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.6875rem}.signal-time{color:var(--text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.6875rem}.trade-table{border-collapse:collapse;width:100%;font-size:.8125rem}.trade-table th{text-align:left;padding:var(--space-sm) var(--space-md);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);font-size:.6875rem;font-weight:500}.trade-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border);font-family:JetBrains Mono,monospace}.trade-table tr:last-child td{border-bottom:none}.trade-table tr:hover td{background:#ffffff05}.badge{border-radius:999px;align-items:center;padding:2px 8px;font-size:.6875rem;font-weight:500;display:inline-flex}.badge.complete{color:var(--accent-emerald);background:#10b9811f}.badge.failed{color:var(--accent-rose);background:#f43f5e1f}.badge.pending{color:var(--accent-amber);background:#f59e0b1f}.chart-container{padding:var(--space-md);height:280px}.circuit-banner{border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);background:linear-gradient(90deg,#f43f5e14,#f9731614);border:1px solid #f43f5e33;justify-content:space-between;align-items:center;animation:.3s slide-down;display:flex}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.circuit-text{align-items:center;gap:var(--space-md);color:var(--accent-rose);font-weight:600;display:flex}.btn-reset{border-radius:var(--radius-sm);color:var(--accent-rose);cursor:pointer;background:#f43f5e1a;border:1px solid #f43f5e4d;padding:6px 16px;font-size:.75rem;font-weight:600;transition:all .15s}.btn-reset:hover{background:#f43f5e33;border-color:#f43f5e80}.empty-state{padding:var(--space-2xl);color:var(--text-muted);justify-content:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.empty-state svg{opacity:.3}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.fade-in{animation:.5s fade-in}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:3px}.btn-wallet{color:var(--accent-indigo);border-radius:var(--radius-sm);cursor:pointer;background:#6366f11a;border:1px solid #6366f14d;align-items:center;gap:8px;padding:6px 14px;font-family:JetBrains Mono,monospace;font-size:.8125rem;font-weight:600;transition:all .2s;display:flex}.btn-wallet:hover:not(:disabled){background:#6366f133;border-color:#6366f180;box-shadow:0 0 12px #6366f133}.btn-wallet.connected{color:var(--accent-emerald);background:#10b9811a;border-color:#10b9814d}.btn-wallet.connected:hover{color:var(--accent-rose);background:#f43f5e1a;border-color:#f43f5e4d}.btn-wallet:disabled{opacity:.6;cursor:not-allowed}.logo-sub{color:var(--text-muted);letter-spacing:.3px;font-size:.75rem;font-weight:400}.stat-grid{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.sarb-engine-row{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:1fr 340px;display:grid}@media (width<=860px){.sarb-engine-row{grid-template-columns:1fr}}.sarb-body{padding:var(--space-md)}.sarb-limit{color:var(--text-muted);font-size:.7rem}.sarb-numbers{align-items:baseline;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.sarb-used{letter-spacing:-1px;font-family:JetBrains Mono,monospace;font-size:1.5rem;font-weight:700}.sarb-of{color:var(--text-muted);font-size:.8rem}.sarb-track{height:8px;margin-bottom:var(--space-xs);background:#ffffff0f;border-radius:99px;position:relative;overflow:visible}.sarb-fill{border-radius:99px;min-width:4px;height:100%;transition:width .5s}.sarb-alert-line{background:var(--accent-amber);opacity:.6;border-radius:2px;width:2px;position:absolute;top:-4px;bottom:-4px;transform:translate(-50%)}.sarb-labels{justify-content:space-between;margin-top:4px;display:flex}.sarb-warning{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);color:var(--accent-amber);background:#f59e0b1a;border:1px solid #f59e0b33;font-size:.75rem}.engine-body{padding:var(--space-sm) var(--space-md);gap:var(--space-xs);flex-direction:column;display:flex}.engine-row{padding:var(--space-xs) 0;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.engine-row:last-child{border-bottom:none}.engine-info{align-items:center;gap:var(--space-sm);display:flex}.engine-name{color:var(--text-primary);min-width:96px;font-size:.85rem;font-weight:500}.engine-status{letter-spacing:.8px;border-radius:999px;padding:2px 8px;font-size:.65rem;font-weight:600}.engine-status.on{color:var(--accent-emerald);background:#10b9811f;border:1px solid #10b98133}.engine-status.off{color:var(--text-muted);border:1px solid var(--border);background:#4e506426}.toggle-btn{cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;transition:opacity .2s;display:flex}.toggle-btn.on{color:var(--accent-emerald)}.toggle-btn.off{color:var(--text-muted)}.toggle-btn:hover{opacity:.8}.engine-breakdown{gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.engine-breakdown-card{align-items:center;gap:var(--space-sm);display:flex}.breakdown-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.breakdown-info{flex-direction:column;gap:1px;display:flex}.breakdown-label{color:var(--text-muted);font-size:.7rem}.breakdown-pnl{font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:600}.breakdown-trades{color:var(--text-muted);font-size:.65rem}.engine-chip{letter-spacing:.3px;color:var(--accent-indigo);text-transform:uppercase;background:#6366f11f;border:1px solid #6366f126;border-radius:4px;padding:1px 6px;font-size:.65rem;font-weight:600;display:inline-block}.infra-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;margin-bottom:16px;padding:16px 20px}.infra-panel-header{align-items:center;gap:10px;margin-bottom:14px;display:flex}.infra-panel-title{letter-spacing:.8px;text-transform:uppercase;color:var(--text-secondary);font-size:.7rem;font-weight:600}.infra-panel-badge{letter-spacing:.5px;text-transform:uppercase;color:var(--accent-emerald);background:#10b9811a;border:1px solid #10b98133;border-radius:4px;padding:1px 6px;font-size:.6rem;font-weight:700}.infra-panel-body{flex-wrap:wrap;gap:20px;display:flex}.infra-group{flex-direction:column;gap:6px;min-width:160px;display:flex}.infra-group-title{letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);padding-bottom:4px;font-size:.6rem;font-weight:700}.infra-group-chips{flex-direction:column;gap:5px;display:flex}.infra-chip{border:1px solid var(--border);background:#ffffff05;border-radius:6px;align-items:flex-start;gap:7px;padding:4px 8px;transition:background .15s;display:flex}.infra-chip:hover{background:#ffffff0a}.infra-chip-body{flex-direction:column;gap:1px;display:flex}.infra-chip-label{color:var(--text-secondary);font-size:.7rem;font-weight:500;line-height:1.2}.infra-chip-sub{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.6rem;line-height:1.2}.infra-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:3px;display:inline-block}.infra-dot--pulse{animation:2.4s ease-in-out infinite infra-pulse}@keyframes infra-pulse{0%,to{opacity:1;box-shadow:0 0}50%{opacity:.8;box-shadow:0 0 4px 2px}}
