@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800;900&family=Rajdhani:wght@300;400;500;600;700&family=Share+Tech+Mono&display=swap";:root{--bg-deep: #050508;--bg: #0a0a10;--bg-panel: #0f0f18;--bg-panel-alt: #12121f;--border: #1f1f2e;--border-neon: #ffd000;--text: #e8e8f0;--text-muted: #7a7a90;--yellow: #ffd000;--yellow-dim: rgba(255, 208, 0, .15);--yellow-glow: rgba(255, 208, 0, .4);--buy: #ffd000;--sell: #8a8e9e;--green: #39ff14;--red: #ff3333;--all-passed-bg: rgba(100, 180, 255, .12);--all-passed-border: rgba(100, 180, 255, .4);--cyberpunk-gray: #8a8e9e;--font-display: "Orbitron", sans-serif;--font-body: "Rajdhani", sans-serif;--font-mono: "Share Tech Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}body{background:var(--bg-deep);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}.text-xs{font-size:15px}.app{display:flex;flex-direction:column;height:100vh;height:100dvh;width:100%}.app-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#0f0f18fa,#0a0a10f2);flex-shrink:0;position:relative}.app-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--yellow);opacity:.5}.app-title{font-family:var(--font-display);font-size:18px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--yellow);text-shadow:0 0 12px var(--yellow-glow)}.meta{display:flex;gap:14px;align-items:center;font-size:12px;color:var(--text-muted);font-family:var(--font-mono)}.status{padding:4px 14px;border-radius:2px;font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:1.5px;font-family:var(--font-display);border:1px solid var(--border)}.status-open{background:var(--yellow-dim);color:var(--buy);border-color:var(--yellow-glow)}.status-connecting{background:#ffffff0d;color:var(--text-muted);border-color:var(--border)}.status-closed{background:#ff44441a;color:var(--sell);border-color:#f446}.symbol{font-weight:700;color:var(--text);font-family:var(--font-display);letter-spacing:1px}.candles{color:var(--yellow);font-family:var(--font-mono)}.error{padding:10px 20px;background:#ff333314;color:var(--red);font-size:13px;border-bottom:1px solid rgba(255,51,51,.2);font-family:var(--font-mono);letter-spacing:.5px}.stats-bar{display:flex;gap:24px;padding:10px 20px;background:var(--bg-panel);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:12px;flex-shrink:0;flex-wrap:wrap}.stats-bar:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:1px;background:var(--yellow);opacity:.2}.stat{display:flex;align-items:center;gap:8px}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:600}.stat-value{color:var(--text);font-weight:600}.stat-value.positive{color:var(--green)}.stat-value.negative{color:var(--red)}.content{display:grid;grid-template-columns:1fr 360px;gap:0;flex:1;min-height:0;background:var(--border)}.main{background:var(--bg);overflow-y:auto;min-height:0;padding:20px;display:flex;flex-direction:column;gap:16px}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-family:var(--font-mono);font-size:13px;letter-spacing:1px;text-align:center}.detail-panel{display:flex;flex-direction:column;gap:16px}.detail-title{font-family:var(--font-display);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--text);display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.badge{padding:4px 12px;border-radius:2px;font-size:10px;font-weight:700;letter-spacing:1.5px;border:1px solid}.badge-buy{background:var(--yellow-dim);color:var(--buy);border-color:var(--yellow-glow)}.badge-sell{background:#ff44441a;color:var(--sell);border-color:#f446}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.detail-row{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-panel);border:1px solid var(--border);border-radius:2px}.detail-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-weight:600}.detail-value{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--text)}.detail-value.mono{font-size:12px;color:var(--text-muted);font-weight:400}.detail-value.sl{color:var(--sell)}.detail-value.tp{color:var(--green)}.levels-section{display:flex;flex-direction:column;gap:10px}.levels-title{font-family:var(--font-display);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.levels-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.level-card{display:flex;flex-direction:column;gap:4px;padding:14px;background:var(--bg-panel);border:1px solid var(--border);border-radius:2px;position:relative}.level-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--yellow);opacity:.6}.level-label{font-family:var(--font-display);font-size:10px;letter-spacing:1.5px;color:var(--yellow);text-transform:uppercase}.level-price{font-family:var(--font-mono);font-size:18px;font-weight:700;color:var(--text)}.level-vol{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.level-time{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.level-delta{font-family:var(--font-mono);font-size:11px;font-weight:700}.level-delta.positive{color:var(--green)}.level-delta.negative{color:var(--red)}.sidebar{background:var(--bg-panel);display:flex;flex-direction:column;overflow:hidden;border-left:1px solid var(--border)}.signals{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column;position:relative}.signals:before{content:"";position:absolute;top:0;left:0;right:0;height:50px;background:linear-gradient(180deg,rgba(255,208,0,.02),transparent);pointer-events:none;z-index:1}.signals h2{font-family:var(--font-display);font-size:11px;margin:0;padding:14px 16px 10px;display:flex;align-items:center;gap:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text);border-bottom:1px solid var(--border);position:relative;flex-shrink:0}.signals h2:after{content:"";position:absolute;bottom:-1px;left:16px;width:40px;height:1px;background:var(--yellow);opacity:.7}.count{background:var(--yellow-dim);color:var(--yellow);border:1px solid var(--yellow-glow);border-radius:2px;padding:1px 8px;font-size:10px;font-family:var(--font-mono)}.muted{color:var(--text-muted);font-size:13px;padding:20px;text-align:center;font-family:var(--font-mono);letter-spacing:.5px}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}th{color:var(--text-muted);font-weight:600;position:sticky;top:0;background:var(--bg-panel);font-family:var(--font-display);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;z-index:2}tbody tr{cursor:pointer}tbody tr:hover{background:var(--yellow-dim)}tbody tr.all-passed{background:var(--all-passed-bg)}tbody tr.all-passed:hover{background:#64b4ff33}tbody tr.all-passed.selected{background:#64b4ff40}.row-buy td{border-left:2px solid var(--buy)}.row-sell td{border-left:2px solid var(--sell)}.row-buy.selected,.row-sell.selected{background:var(--yellow-dim)}.row-buy.selected td{border-left-color:var(--yellow)}.row-sell.selected td{border-left-color:var(--sell)}.side{font-weight:700;letter-spacing:1px}.side-buy{color:var(--buy)}.side-sell{color:var(--sell)}.footprint-panel{border-top:1px solid var(--border);background:var(--bg-panel);display:flex;flex-direction:column;max-height:40%;flex-shrink:0}.footprint-header{padding:10px;font-family:var(--font-display);font-size:10px;letter-spacing:1.5px;color:var(--yellow);text-transform:uppercase;border-bottom:1px solid var(--border);background:var(--yellow-dim);text-align:center}.footprint-body{padding:4px 0;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.footprint-body::-webkit-scrollbar{width:4px}.footprint-body::-webkit-scrollbar-track{background:transparent}.footprint-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.footprint-row{display:flex;align-items:center;padding:3px 10px;font-family:var(--font-mono);font-size:10px;border-bottom:1px solid rgba(31,31,46,.5);gap:6px}.footprint-price{width:50px;text-align:right;color:var(--text-muted);flex-shrink:0}.footprint-bar-wrap{flex:1;height:14px;position:relative;display:flex;align-items:center;background:#0000004d;border-radius:1px;overflow:hidden}.footprint-ask{position:absolute;right:0;height:100%;background:#ff444480;border-left:1px solid rgba(255,68,68,.7)}.footprint-bid{position:absolute;left:0;height:100%;background:#ffd00080;border-right:1px solid rgba(255,208,0,.7)}.footprint-delta{width:50px;text-align:right;flex-shrink:0;font-weight:700}.footprint-delta.positive{color:var(--green)}.footprint-delta.negative{color:var(--red)}.footprint-empty{padding:20px;text-align:center;color:var(--text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.5px}.footprint-footer{padding:6px 10px;border-top:1px solid var(--border);display:flex;gap:12px;align-items:center;font-family:var(--font-mono);font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.footprint-legend-bid{width:10px;height:10px;background:var(--yellow)}.footprint-legend-ask{width:10px;height:10px;background:var(--sell)}@media (max-width: 900px){.content{grid-template-columns:1fr;grid-template-rows:1fr auto}.sidebar{border-left:none;border-top:1px solid var(--border);max-height:45vh}.main{padding:16px}.stats-bar{gap:16px;padding:10px 16px}.app-header{padding:10px 16px;flex-wrap:wrap;gap:8px}.meta{gap:10px;font-size:11px}}@media (max-width: 480px){.stats-bar{gap:12px;padding:8px 12px}.stat{flex-direction:column;align-items:flex-start;gap:2px}.detail-grid,.levels-grid{grid-template-columns:1fr}.app-title{font-size:15px;letter-spacing:2px}.meta{gap:8px;font-size:10px}}.settings-btn-icon{background:transparent;border:1px solid var(--border);color:var(--text-muted);font-size:14px;width:28px;height:28px;border-radius:2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease;font-family:var(--font-mono)}.settings-btn-icon:hover{color:var(--yellow);border-color:var(--yellow-glow);background:var(--yellow-dim)}.zone{color:var(--text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.5px}.timeframe{position:relative;display:inline-flex}.timeframe-btn{background:var(--bg-panel);border:1px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1px;padding:6px 10px;border-radius:2px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease;text-transform:uppercase}.timeframe-btn:hover:not(:disabled){color:var(--yellow);border-color:var(--yellow-glow);background:var(--yellow-dim)}.timeframe-btn:disabled{opacity:.6;cursor:default}.timeframe-chevron{font-size:9px;color:var(--text-muted)}.timeframe-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:110px;background:var(--bg-panel);border:1px solid var(--border);border-radius:2px;box-shadow:0 8px 24px #00000080;z-index:50;overflow:hidden;animation:fadeIn .12s ease}.timeframe-option{width:100%;background:transparent;border:none;color:var(--text-muted);font-family:var(--font-mono);font-size:12px;padding:8px 12px;cursor:pointer;text-align:left;transition:all .12s ease;letter-spacing:.5px}.timeframe-option:hover:not(:disabled){background:var(--yellow-dim);color:var(--yellow)}.timeframe-option.active{background:var(--yellow-dim);color:var(--yellow);font-weight:700}.timeframe-option:disabled{opacity:.5;cursor:default}.timeframe-empty{padding:10px 12px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);text-align:center}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.settings-modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;width:min(560px,92vw);max-height:88vh;display:flex;flex-direction:column;box-shadow:0 0 40px #ffd00026}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--yellow-dim)}.settings-header h2{font-family:var(--font-display);font-size:12px;letter-spacing:2px;color:var(--yellow);text-transform:uppercase;margin:0}.settings-close{background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;line-height:1;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:2px}.settings-close:hover{color:var(--sell);background:#ff44441a}.settings-body{padding:18px;overflow-y:auto;display:flex;flex-direction:column;gap:16px}.settings-current{font-size:12px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.5px;margin:0}.settings-current strong{color:var(--yellow);font-weight:700}.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px}.settings-zone{background:var(--bg);border:1px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:11px;padding:8px 10px;border-radius:2px;cursor:pointer;transition:all .15s ease;letter-spacing:.5px}.settings-zone:hover{border-color:var(--yellow-glow);background:var(--yellow-dim);color:var(--yellow)}.settings-zone.active{background:var(--yellow-dim);border-color:var(--yellow);color:var(--yellow);box-shadow:0 0 12px #ffd00040}.settings-preview{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:2px}.settings-preview-label{font-family:var(--font-display);font-size:9px;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase}.settings-preview-value{font-family:var(--font-mono);font-size:14px;color:var(--yellow);font-weight:700}.settings-footer{padding:12px 18px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.settings-btn{background:var(--yellow-dim);border:1px solid var(--yellow-glow);color:var(--yellow);font-family:var(--font-display);font-size:11px;letter-spacing:1.5px;padding:8px 18px;border-radius:2px;cursor:pointer;text-transform:uppercase;transition:all .15s ease}.settings-btn:hover{background:var(--yellow);color:var(--bg-deep)}.filters-count{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--yellow)}.signal-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease}.signal-detail-modal{background:var(--bg-panel);border:1px solid var(--border);border-radius:4px;width:min(480px,92vw);max-height:80vh;display:flex;flex-direction:column;box-shadow:0 0 40px #ffd00033;animation:slideUp .2s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--yellow-dim)}.modal-header h3{font-family:var(--font-display);font-size:11px;letter-spacing:1.5px;color:var(--yellow);text-transform:uppercase;margin:0;display:flex;align-items:center;gap:10px}.modal-close{background:transparent;border:none;color:var(--text-muted);font-size:20px;cursor:pointer;line-height:1;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:2px}.modal-close:hover{color:var(--sell);background:#ff44441a}.modal-content{padding:16px;overflow-y:auto}.filters-table{width:100%;border-collapse:collapse;font-size:11px}.filters-table th,.filters-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}.filters-table th{color:var(--text-muted);font-weight:600;font-family:var(--font-display);font-size:8px;letter-spacing:1.5px;text-transform:uppercase}.filters-table tbody tr{transition:background .1s ease}.filters-table tbody tr:hover{background:var(--yellow-dim)}.filters-table tbody tr.passed td{border-left:2px solid var(--green)}.filters-table tbody tr.failed td{border-left:2px solid var(--red)}.status-badge{display:inline-block;padding:2px 8px;border-radius:2px;font-size:9px;font-weight:700;font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase}.status-badge.passed{background:#39ff1426;color:var(--green);border:1px solid rgba(57,255,20,.3)}.status-badge.failed{background:#ff333326;color:var(--red);border:1px solid rgba(255,51,51,.3)}.filters-section{margin-top:8px}.filters-title{font-family:var(--font-display);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.filters-table.compact{font-size:11px}.filters-table.compact th,.filters-table.compact td{padding:6px 8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
