:root{--bg:#0b0e11;--bg-panel:#11151a;--bg-raised:#161b21;--border:#1c2128;--border-strong:#2b323b;--text:#e6edf3;--text-muted:#7d8590;--text-dim:#555d66;--green:#26d07c;--green-dim:#0f3d27;--red:#ff5c5c;--red-dim:#46181c;--amber:#f0b429;--amber-dim:#3d2f0d;--blue:#58a6ff;--blue-dim:#122c4a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Monaco,Cascadia Mono,monospace;font-size:13px;line-height:1.55}*{box-sizing:border-box}body{min-height:100vh;margin:0}h1{letter-spacing:.08em;text-transform:uppercase;color:var(--text);font-size:15px;font-weight:700}h2{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .7rem;font-size:11px;font-weight:700}h3{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:700}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}input,select,button{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:4px;padding:.35rem .55rem}input:focus,select:focus{border-color:var(--green);outline:none}button{cursor:pointer;background:var(--bg-raised);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:600}button:hover:not(:disabled){border-color:var(--green);color:var(--green)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--green-dim);border-color:var(--green);color:var(--green)}button.danger{background:var(--red-dim);border-color:var(--red);color:var(--red)}button.danger:hover:not(:disabled){border-color:var(--red);color:#fff}button.link{color:var(--blue);text-transform:none;background:0 0;border:none;padding:0;font-weight:400}::selection{background:var(--green-dim)}.app-shell{max-width:1280px;margin:0 auto;padding:0 1rem 3rem}.app-header{border-bottom:1px solid var(--border);align-items:center;gap:1.4rem;margin-bottom:1.2rem;padding:.55rem 0;display:flex}.brand{letter-spacing:.12em;color:var(--green);align-items:center;gap:.5rem;font-weight:800;display:inline-flex}.brand-logo{object-fit:contain;width:26px;height:26px}.app-header nav{flex:1;gap:1.1rem;display:flex}.app-header nav a{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:600}.app-header nav a:hover{color:var(--text);text-decoration:none}.mode-tag{letter-spacing:.1em;border:1px solid;border-radius:3px;padding:.15rem .55rem;font-size:10px;font-weight:700}.mode-select{letter-spacing:.1em;border:1px solid var(--border);background:var(--bg-panel);color:var(--text-muted);border-radius:3px;padding:.15rem .3rem;font-size:10px;font-weight:700}.mode-select.live{color:var(--red);border-color:var(--red)}.mode-select:disabled{opacity:.55;cursor:not-allowed}.mode-backtest{color:var(--text-muted);border-color:var(--border-strong);background:var(--bg-raised)}.mode-paper{color:var(--blue);border-color:var(--blue);background:var(--blue-dim)}.mode-live{color:var(--red);border-color:var(--red);background:var(--red-dim)}.app-header .user{color:var(--text-dim);font-size:11px;text-decoration:none}.app-header .user:hover{color:var(--green)}.icon-btn{border:1px solid var(--border);background:var(--bg-panel);color:var(--text-muted);cursor:pointer;border-radius:3px;padding:.3rem .5rem;font-size:13px;line-height:1}.icon-btn:hover,.icon-btn.primary{color:var(--green);border-color:var(--green)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn.live-clone{color:var(--red);border-color:var(--red);letter-spacing:.06em;font-weight:700}.series-legend{color:var(--text-muted);flex-wrap:wrap;gap:.3rem 1rem;margin-bottom:.4rem;font-size:11px;display:flex}.series-legend-item{align-items:center;gap:.35rem;display:inline-flex}.series-legend-swatch{border-radius:2px;width:10px;height:10px;display:inline-block}.list-head{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin:1.4rem 0 .5rem;font-size:12px}.list-head.live-head{color:var(--red)}.inline-label{color:var(--text-muted);flex-direction:column;gap:.2rem;font-size:11px;display:flex}.qr-box{background:#fff;border-radius:4px;width:180px;padding:8px}.qr-box svg{width:164px;height:164px;display:block}.recovery-codes{background:var(--bg-panel);border:1px solid var(--border);letter-spacing:.08em;-webkit-user-select:all;user-select:all;padding:.8rem}.card{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;margin-bottom:.8rem;padding:.8rem 1rem}.login-page{justify-content:center;padding-top:14vh;display:flex}.login-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;flex-direction:column;gap:.8rem;width:320px;padding:1.6rem;display:flex}.login-card h1{color:var(--green);text-align:center;margin:0 0 .4rem}.login-logo{object-fit:contain;align-self:center;width:140px;height:140px;margin-top:.2rem}.login-card label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-direction:column;gap:.25rem;font-size:11px;display:flex}.cockpit-grid{grid-template-columns:1fr 360px;align-items:start;gap:.8rem;display:grid}@media (width<=980px){.cockpit-grid{grid-template-columns:1fr}}.stat-row{flex-wrap:wrap;gap:1.6rem;padding:.4rem 0 .6rem;display:flex}.stat{flex-direction:column;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);font-size:10px}.stat-value{font-size:16px;font-weight:700}.feed{flex-direction:column;max-height:70vh;display:flex;overflow-y:auto}.feed-row{border-bottom:1px solid var(--border);align-items:baseline;gap:.6rem;padding:.28rem 0;font-size:12px;display:flex}.feed-row:last-child{border-bottom:none}.feed-time{color:var(--text-dim);white-space:nowrap}.feed-tag{letter-spacing:.06em;white-space:nowrap;border-radius:3px;padding:0 .35rem;font-size:10px;font-weight:700}.tag-buy{color:var(--green);background:var(--green-dim)}.tag-sell{color:var(--red);background:var(--red-dim)}.tag-order{color:var(--blue);background:var(--blue-dim)}.tag-sys{color:var(--amber);background:var(--amber-dim)}.feed-text{color:var(--text-muted);overflow-wrap:anywhere}.params-form{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem;display:grid}.param-field{flex-direction:column;gap:.2rem;display:flex}.param-label{text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.param-help{color:var(--text-dim);font-size:11px;line-height:1.45}.field-row{flex-wrap:wrap;gap:.8rem;margin-bottom:.8rem;display:flex}.field-row label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-direction:column;gap:.2rem;font-size:10px;display:flex}.strategy-picker{flex-wrap:wrap;gap:.5rem;margin-bottom:.6rem;display:flex}.strategy-option.active{border-color:var(--green);color:var(--green);background:var(--green-dim)}.strategy-description{color:var(--text-muted);font-size:12px}.action-row{gap:.8rem;margin-top:.8rem;display:flex}.runs-table,.params-table,.mini-table{border-collapse:collapse;width:100%;font-size:12px}.runs-table th,.mini-table th{text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}.mini-table th{cursor:default}.runs-table th,.runs-table td,.params-table td,.mini-table th,.mini-table td{border-bottom:1px solid var(--border);padding:.32rem .5rem}.runs-table td.num,.mini-table td.num,.mini-table th.num{text-align:right}.pos{color:var(--green)}.neg{color:var(--red)}.metrics-cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;margin:.8rem 0;display:grid}.metric-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;flex-direction:column;padding:.6rem .8rem;display:flex}.metric-value{font-size:15px;font-weight:700}.metric-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-size:10px}.chart{width:100%}.chart-legend{text-transform:none;letter-spacing:normal;margin-left:.6rem;font-size:11px;font-weight:400}.error{color:var(--red);font-size:12px}.success{color:var(--green);font-size:12px}.hint,.empty-state{color:var(--text-dim);font-size:12px}.run-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.loading{text-align:center;color:var(--text-dim);padding-top:20vh}.page-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.bot-card{padding:.6rem 1rem}.bot-row{flex-wrap:wrap;align-items:center;gap:1.1rem;padding:.2rem 0;font-size:12px;display:flex}.bot-title{flex-direction:column;min-width:190px;display:flex}.bot-title .hint{font-size:11px}.bot-actions{gap:.45rem;margin-left:auto;display:flex}.bot-detail{border-top:1px solid var(--border);flex-direction:column;gap:.7rem;margin-top:.5rem;padding-top:.5rem;display:flex}.status-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid;border-radius:3px;padding:.05rem .5rem;font-size:10px;font-weight:700}.status-running{background:var(--green-dim);color:var(--green);border-color:var(--green)}.status-paused{background:var(--amber-dim);color:var(--amber);border-color:var(--amber)}.status-stopped{background:var(--bg-raised);color:var(--text-muted);border-color:var(--border-strong)}.status-error{background:var(--red-dim);color:var(--red);border-color:var(--red)}.status-restarting{background:var(--blue-dim);color:var(--blue);border-color:var(--blue)}.row-spark{width:150px;min-width:150px}.panel-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.live-ticker{color:var(--text-dim);white-space:nowrap;font-size:11px}.mcp-block{border-top:1px solid var(--border);margin-top:1rem;padding-top:.8rem}.toggle-row{color:var(--text-muted);align-items:center;gap:.5rem;margin:.5rem 0 .8rem;font-size:12px;display:flex}.copy-field{margin-bottom:.6rem}.copy-row{align-items:center;gap:.5rem;display:flex}.copy-row code{background:var(--bg);border:1px solid var(--border);white-space:nowrap;color:var(--text-muted);border-radius:4px;flex:1;padding:.35rem .55rem;font-size:11px;overflow-x:auto}.instructions-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-direction:column;gap:.3rem;margin-top:.6rem;font-size:10px;display:flex}.instructions-label textarea{font:inherit;text-transform:none;letter-spacing:normal;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);resize:vertical;border-radius:4px;padding:.5rem .6rem;font-size:12px}.warn-box{border:1px solid var(--amber);background:var(--amber-dim);color:var(--amber);border-radius:4px;padding:.5rem .7rem}.live-confirm{border:1px solid var(--red);background:var(--red-dim);border-radius:4px;margin-top:.8rem;padding:.6rem .8rem}.live-inline{margin-left:.5rem;font-size:9px}.journal-entry{padding:.6rem 1rem}.journal-head{align-items:baseline;gap:.8rem;margin-bottom:.3rem;display:flex}.journal-summary{color:var(--text);margin:.2rem 0;font-size:12px}.journal-recs{color:var(--text-muted);margin:.3rem 0 0;padding-left:1.2rem;font-size:12px}.bell-wrap{position:relative}.bell{color:var(--text-dim);background:0 0;border:none;padding:.1rem .3rem;font-size:15px;position:relative}.bell-active{color:var(--amber)}.bell-badge{background:var(--red);color:#fff;border-radius:99px;padding:0 4px;font-size:9px;font-weight:700;line-height:1.5;position:absolute;top:-4px;right:-7px}.bell-panel{z-index:100;background:var(--bg-panel);border:1px solid var(--border-strong);z-index:50;border-radius:4px;width:360px;max-height:60vh;padding:.7rem .9rem;position:absolute;top:28px;right:0;overflow-y:auto}.bell-panel-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.bell-item{border-bottom:1px solid var(--border);align-items:baseline;gap:.6rem;padding:.3rem 0;font-size:11px;display:flex}.bell-item:last-child{border-bottom:none}.bell-item .bell-text{color:var(--text-muted)}.bell-item.unseen .bell-text{color:var(--amber)}.panel-controls{align-items:center;gap:.8rem;display:flex}.range-select{padding:.15rem .4rem;font-size:11px}.pulse{background:var(--green);border-radius:50%;width:7px;height:7px;margin-right:.35rem;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}@media (width<=720px){.app-shell{padding:0 .6rem 2rem}.app-header{flex-wrap:wrap;gap:.6rem .9rem;padding:.5rem 0}.app-header nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:100%;order:10;gap:.9rem;padding-bottom:.2rem;overflow-x:auto}.app-header nav::-webkit-scrollbar{display:none}.app-header nav a{white-space:nowrap}h1{font-size:1.15rem}.page-head{flex-wrap:wrap}.runs-table,.mini-table{-webkit-overflow-scrolling:touch;white-space:nowrap;display:block;overflow-x:auto}.field-row{flex-direction:column;gap:.6rem}.field-row label{width:100%}.field-row input,.field-row select{box-sizing:border-box;width:100%}.bot-row{gap:.5rem .9rem;font-size:11px}.bot-title{flex:60%;min-width:0}.bot-actions{flex-wrap:wrap;flex:100%;justify-content:flex-end;margin-left:0}.icon-btn{padding:.45rem .65rem}.bell-panel{width:auto;max-height:70vh;position:fixed;top:52px;left:8px;right:8px}.action-row{flex-wrap:wrap}.live-confirm input{max-width:100%}}
