@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg-base:#080a0f;--bg-surface:#0e1117;--bg-elevated:#141820;--bg-glass:#0e1117b3;--bg-glass-light:#ffffff0a;--bg-glass-hover:#ffffff12;--border:#ffffff12;--border-accent:#00d4aa4d;--border-glow:#00d4aa99;--accent:#00d4aa;--accent-dim:#00d4aa26;--accent-glow:0 0 20px #00d4aa4d;--accent-dark:#009e7f;--profit:#00d4aa;--profit-dim:#00d4aa1a;--loss:#ff4d6d;--loss-dim:#ff4d6d1a;--warning:#ffab40;--warning-dim:#ffab401a;--neutral:#7b8fa3;--text-primary:#f0f4f8;--text-secondary:#89a;--text-muted:#567;--text-accent:#00d4aa;--agent-research:#6c63ff;--agent-strategy:#00b4d8;--agent-execution:#f77f00;--agent-journal:#7b2d8b;--gradient-brand:linear-gradient(135deg, #00d4aa 0%, #00b4d8 50%, #6c63ff 100%);--gradient-profit:linear-gradient(135deg, #00d4aa 0%, #009e7f 100%);--gradient-loss:linear-gradient(135deg, #ff4d6d 0%, #c9184a 100%);--gradient-surface:linear-gradient(180deg, #141820 0%, #0e1117 100%);--shadow-sm:0 2px 8px #0006;--shadow-md:0 4px 24px #00000080;--shadow-lg:0 8px 48px #0009;--shadow-glow:0 0 40px #00d4aa26;--sidebar-width:240px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{background-color:var(--bg-base);color:var(--text-primary);background-image:radial-gradient(at 20%,#00d4aa0a 0%,#0000 50%),radial-gradient(at 80% 20%,#6c63ff0a 0%,#0000 50%);min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-weight:700;line-height:1.3}p{line-height:1.7}a{color:var(--accent);text-decoration:none;transition:opacity .2s}a:hover{opacity:.8}code,pre{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875em}.app-shell{min-height:100vh;display:flex}.page-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh;padding:24px}.page-header{margin-bottom:28px}.page-title{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;font-size:1.75rem;font-weight:800}.page-subtitle{color:var(--text-secondary);font-size:.9rem}.grid-2{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.learn-layout{grid-template-columns:240px 1fr;align-items:start;gap:16px;min-height:calc(100vh - 180px);display:grid}.items-start{align-items:flex-start}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.gap-6{gap:6px}.gap-20{gap:20px}.gap-24{gap:24px}.mb-6{margin-bottom:6px}.mb-28{margin-bottom:28px}.mt-4{margin-top:4px}.text-center{text-align:center}.text-right{text-align:right}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.min-w-0{min-width:0}.card{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:border-color .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow-md);border-color:#ffffff1f}.card-accent{border-color:var(--border-accent);box-shadow:0 0 0 1px #00d4aa1a, var(--shadow-sm)}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-size:.8rem;font-weight:600}.card-value{letter-spacing:-.03em;font-size:2rem;font-weight:800;line-height:1}.metric-card{position:relative;overflow:hidden}.metric-card:before{content:"";background:var(--gradient-brand);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.metric-card:hover:before{opacity:1}.metric-icon{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;display:flex}.metric-change{border-radius:20px;align-items:center;gap:3px;margin-top:6px;padding:2px 8px;font-size:.8rem;font-weight:600;display:inline-flex}.metric-change.positive{color:var(--profit);background:var(--profit-dim)}.metric-change.negative{color:var(--loss);background:var(--loss-dim)}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:10px 14px;font-size:.75rem;font-weight:600}.data-table td{color:var(--text-secondary);border-bottom:1px solid #ffffff0a;padding:12px 14px;transition:background .15s}.data-table tr:hover td{background:var(--bg-glass-hover);color:var(--text-primary)}.data-table td:first-child{color:var(--text-primary);font-weight:600}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-buy{background:var(--profit-dim);color:var(--profit)}.badge-sell{background:var(--loss-dim);color:var(--loss)}.badge-hold{color:var(--neutral);background:#7b8fa31a}.badge-open{background:var(--accent-dim);color:var(--accent)}.badge-closed{color:var(--text-muted);background:#ffffff0d}.status-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.status-dot.live{background:var(--profit);animation:2s infinite pulse-dot;box-shadow:0 0 #00d4aa66}.status-dot.offline{background:var(--neutral)}.status-dot.warning{background:var(--warning)}.status-dot.danger{background:var(--loss)}@keyframes pulse-dot{0%{box-shadow:0 0 #00d4aa66}70%{box-shadow:0 0 0 8px #00d4aa00}to{box-shadow:0 0 #00d4aa00}}.btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:8px 16px;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#000}.btn-primary:hover{background:var(--accent-dark);box-shadow:var(--accent-glow);transform:translateY(-1px)}.btn-ghost{background:var(--bg-glass-light);color:var(--text-primary);border-color:var(--border)}.btn-ghost:hover{background:var(--bg-glass-hover);border-color:var(--accent)}.btn-danger{background:var(--loss-dim);color:var(--loss);border-color:#ff4d6d4d}.btn-danger:hover{background:#ff4d6d33}.chart-container{width:100%;height:300px;margin-top:12px}.chart-container-tall{width:100%;height:400px}.score-bar-wrap{align-items:center;gap:8px;display:flex}.score-bar{background:#ffffff12;border-radius:3px;flex:1;height:6px;overflow:hidden}.score-bar-fill{border-radius:3px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px #00d4aa33}50%{box-shadow:0 0 40px #00d4aa66}}.animate-in{animation:.5s forwards fadeInUp}.loading-shimmer{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff08 25%,#ffffff12 50%,#ffffff08 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}.live-feed{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;gap:8px;max-height:400px;display:flex;overflow-y:auto}.live-feed::-webkit-scrollbar{width:4px}.live-feed::-webkit-scrollbar-track{background:0 0}.live-feed::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.feed-item{background:var(--bg-glass-light);border-radius:var(--radius-sm);border-left:3px solid #0000;gap:10px;padding:10px 12px;font-size:.825rem;transition:background .2s;animation:.3s fadeInUp;display:flex}.feed-item:hover{background:var(--bg-glass-hover)}.feed-item.type-order_placed{border-left-color:var(--profit)}.feed-item.type-order_failed{border-left-color:var(--loss)}.feed-item.type-kill_switch{border-left-color:var(--warning)}.feed-item.type-cycle_complete{border-left-color:var(--accent)}.feed-time{color:var(--text-muted);white-space:nowrap;padding-top:1px;font-family:JetBrains Mono,monospace;font-size:.75rem}.feed-type{text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:700}.sidebar{width:var(--sidebar-width);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--border);z-index:100;flex-direction:column;padding:20px 0;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-logo{border-bottom:1px solid var(--border);margin-bottom:16px;padding:0 20px 24px}.sidebar-logo-text{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.1rem;font-weight:800}.sidebar-logo-sub{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:500}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:0 12px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background:var(--bg-glass-light);color:var(--text-primary)}.nav-item.active{background:var(--accent-dim);color:var(--accent);border:1px solid var(--border-accent)}.nav-icon{text-align:center;width:20px;font-size:1rem}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding:16px 20px 0}.market-status-pill{background:var(--bg-glass-light);border-radius:var(--radius-sm);border:1px solid var(--border);align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;display:flex}.recharts-tooltip-wrapper .custom-tooltip{background:var(--bg-elevated)!important;border:1px solid var(--border)!important;border-radius:var(--radius-sm)!important;box-shadow:var(--shadow-md)!important;padding:10px 14px!important;font-family:Inter,sans-serif!important;font-size:.8rem!important}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#ffffff0d!important}.text-profit{color:var(--profit)}.text-loss{color:var(--loss)}.text-warning{color:var(--warning)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-accent{color:var(--accent)}.font-mono{font-family:JetBrains Mono,monospace}.font-bold{font-weight:700}.font-sm{font-size:.8rem}.font-xs{font-size:.75rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mb-4{margin-bottom:4px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-20{margin-bottom:20px}.mb-24{margin-bottom:24px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.w-full{width:100%}.h-full{height:100%}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}.kill-switch-banner{border-radius:var(--radius-md);background:linear-gradient(135deg,#ff4d6d33,#c9184a1a);border:1px solid #ff4d6d66;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 20px;animation:2s infinite glow-pulse;display:flex}.kill-switch-banner .text{color:var(--loss);font-weight:700}.paper-badge{color:var(--warning);text-transform:uppercase;letter-spacing:.06em;background:#ffab401a;border:1px solid #ffab404d;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.mobile-header{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:1000;justify-content:space-between;align-items:center;height:60px;padding:0 16px;display:none;position:fixed;top:0;left:0;right:0}.mobile-toggle{border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.2rem;display:flex}.mobile-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.2rem;display:none}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:998;background:#0009;display:none;position:fixed;inset:0}@media (max-width:1023px){.grid-4{grid-template-columns:repeat(2,1fr)}.learn-layout{grid-template-columns:200px 1fr}}@media (max-width:767px){.mobile-header{display:flex}.mobile-close-btn,.sidebar-overlay{display:block}.sidebar{z-index:999;width:280px;height:100vh;box-shadow:var(--shadow-lg);transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.page-content{width:100%;max-width:100%;overflow-x:hidden;margin-left:0!important;padding:76px 14px 32px!important}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr!important}.learn-layout{min-height:unset;grid-template-columns:1fr!important}.page-title{font-size:1.3rem}.page-subtitle{white-space:normal;word-break:break-word;font-size:.8rem}.card{padding:14px}.card-value{font-size:1.4rem}.kill-switch-banner{flex-direction:column;align-items:flex-start}.data-table{font-size:.8rem}.data-table th,.data-table td{white-space:nowrap;padding:8px 10px}.score-bar-wrap{min-width:80px!important}}@media (max-width:479px){.page-content{padding:70px 10px 28px!important}.card{padding:12px}.card-value{font-size:1.25rem}.page-title{font-size:1.15rem}.data-table th,.data-table td{padding:7px 8px;font-size:.75rem}}
