*{box-sizing:border-box;margin:0;padding:0}
body{background:#0f0f1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#e2e8f0;min-height:100vh}
#app{display:flex;min-height:100vh}
.sidebar{width:220px;background:#1a1a2e;border-right:1px solid #2a2a4a;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100}
.main{margin-left:220px;flex:1;display:flex;flex-direction:column;min-height:100vh}
.sidebar-logo{padding:24px 20px 20px;border-bottom:1px solid #2a2a4a}
.sidebar-logo h1{color:#fff;font-size:22px;font-weight:800;letter-spacing:-0.5px}
.sidebar-logo h1 span{color:#6366f1}
.sidebar-sub{color:#4b5563;font-size:11px;margin-top:4px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px}
.sidebar-nav{flex:1;padding:12px 0;overflow-y:auto}
.nav-item{display:flex;align-items:center;gap:10px;padding:11px 20px;color:#6b7280;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;text-decoration:none;border-left:3px solid transparent}
.nav-item svg{width:18px;height:18px;fill:currentColor;flex-shrink:0}
.nav-item:hover{color:#e2e8f0;background:#ffffff08}
.nav-item.active{color:#a5b4fc;background:#6366f115;border-left-color:#6366f1}
.sidebar-footer{padding:16px;border-top:1px solid #2a2a4a}
.sidebar-user{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.user-avatar{width:32px;height:32px;background:#6366f1;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0}
.user-name{font-size:12px;font-weight:700;color:#e2e8f0}
.user-role{font-size:10px;color:#4b5563;text-transform:uppercase;letter-spacing:0.5px;margin-top:2px}
.logout-btn{width:100%;padding:8px;background:transparent;border:1px solid #2a2a4a;border-radius:6px;color:#6b7280;font-size:12px;cursor:pointer;transition:all 0.15s}
.logout-btn:hover{border-color:#6366f1;color:#a5b4fc}
.topbar{padding:20px 28px;border-bottom:1px solid #1e1e38;display:flex;align-items:center;justify-content:space-between;background:#0f0f1a;position:sticky;top:0;z-index:50}
.topbar-left{display:flex;align-items:center;gap:16px}
.page-title{font-size:20px;font-weight:800;color:#fff}
.exchange-status{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.dot-green{background:#22c55e;box-shadow:0 0 6px #22c55e}
.dot-red{background:#ef4444}
.dot-grey{background:#374151}
.topbar-right{display:flex;align-items:center;gap:12px}
.last-update{font-size:11px;color:#374151}
.refresh-btn{padding:7px 14px;background:#1e1e38;border:1px solid #2a2a4a;border-radius:6px;color:#9ca3af;font-size:12px;cursor:pointer;transition:all 0.15s}
.refresh-btn:hover{border-color:#6366f1;color:#a5b4fc}
.hero-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:24px 28px;border-bottom:1px solid #1e1e38}
.hero-card{border-radius:12px;padding:20px;position:relative;overflow:hidden}
.hero-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.8px;opacity:0.7;margin-bottom:8px}
.hero-value{font-size:26px;font-weight:800;line-height:1}
.hero-sub{font-size:12px;margin-top:8px;opacity:0.7}
.hero-purple{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}
.hero-dark{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;border:1px solid #2a2a4a}
.hero-teal{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff}
.hero-green{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff}
.hero-blue{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}
.hero-orange{background:linear-gradient(135deg,#ea580c,#c2410c);color:#fff}
.hero-indigo{background:linear-gradient(135deg,#4f46e5,#3730a3);color:#fff}
.hero-emerald{background:linear-gradient(135deg,#059669,#047857);color:#fff}
.hero-pct{display:inline-block;background:rgba(255,255,255,0.2);border-radius:4px;padding:2px 7px;font-size:11px;font-weight:700;margin-left:6px;vertical-align:middle}
.pct-pos{background:rgba(34,197,94,0.3)}
.pct-neg{background:rgba(239,68,68,0.3)}
.tab-content{padding:24px 28px;flex:1}
.tab-content.hidden{display:none}
.loading{color:#4b5563;font-size:14px;padding:40px 0;text-align:center}
.card{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:12px;padding:20px;margin-bottom:16px}
.card-title{font-size:14px;font-weight:700;color:#e2e8f0;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:left;padding:10px 12px;color:#4b5563;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;border-bottom:1px solid #2a2a4a}
td{padding:10px 12px;border-bottom:1px solid #1e1e38;color:#d1d5db}
tr:last-child td{border-bottom:none}
tr:hover td{background:#ffffff05}
.badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase}
.badge-green{background:#14532d;color:#4ade80}
.badge-red{background:#450a0a;color:#f87171}
.badge-grey{background:#1f2937;color:#6b7280}
.badge-blue{background:#1e3a5f;color:#60a5fa}
.pos{color:#4ade80}
.neg{color:#f87171}
.pnl-pos{color:#4ade80;font-weight:700}
.pnl-neg{color:#f87171;font-weight:700}
.btn{padding:8px 16px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;border:none;transition:all 0.15s}
.btn-primary{background:#6366f1;color:#fff}
.btn-primary:hover{background:#4f46e5}
.btn-danger{background:#dc2626;color:#fff}
.btn-danger:hover{background:#b91c1c}
.btn-ghost{background:transparent;border:1px solid #2a2a4a;color:#9ca3af}
.btn-ghost:hover{border-color:#6366f1;color:#a5b4fc}
.bot-running{display:inline-flex;align-items:center;gap:5px;color:#4ade80;font-size:12px;font-weight:600}
.bot-running::before{content:'';width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}
.inv-card{background:#1a1a2e;border:1px solid #2a2a4a;border-radius:12px;padding:20px;margin-bottom:16px}
.inv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:10px}
.inv-name{font-size:16px;font-weight:700;color:#fff}
.inv-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.inv-stat{background:#0f0f1a;border-radius:8px;padding:12px;text-align:center}
.inv-stat-label{font-size:10px;color:#4b5563;text-transform:uppercase;font-weight:700;letter-spacing:0.5px}
.inv-stat-value{font-size:18px;font-weight:700;margin-top:4px}
.regime-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:700}
.regime-bullish{background:#14532d;color:#4ade80}
.regime-bearish{background:#450a0a;color:#f87171}
.regime-neutral{background:#1f2937;color:#9ca3af}
.intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:900px){.intel-grid{grid-template-columns:1fr}}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:#0f0f1a}
::-webkit-scrollbar-thumb{background:#2a2a4a;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#3a3a5a}
input{outline:none}
