@import"https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=Exo+2:wght@300;400;600;700;900&family=Inter:wght@400;500;600;700&display=swap";:root{--bg: #080c18;--surface: #0e1525;--surface2: #141e35;--surface3: #1a2744;--border: #1e3050;--border2: #2a4570;--accent: #38bdf8;--accent2: #34d399;--accent3: #fbbf24;--red: #f87171;--green: #4ade80;--text: #e2e8f0;--text2: #94a3b8;--dim: #475569;--glow: 0 0 16px rgba(56,189,248,.35);--glow2: 0 0 16px rgba(52,211,153,.35);--glow3: 0 0 16px rgba(251,191,36,.35);--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--shadow-card: 0 4px 24px rgba(0,0,0,.4);--shadow-panel: 0 2px 12px rgba(0,0,0,.3)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}#root{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch}body{background:var(--bg);color:var(--text);font-family:Inter,"Exo 2",sans-serif;font-size:13px;line-height:1.5}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--dim)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes slideIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes blobMove{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-20px,30px) scale(.97)}}@keyframes notifIn{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@keyframes fadeText{0%{opacity:.5}to{opacity:1}}.loading-screen{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;background:var(--bg);color:var(--accent);font-family:Share Tech Mono,monospace;font-size:14px}.loading-spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.app-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.main-grid{display:grid;grid-template-columns:290px 1fr 370px;flex:1;overflow:hidden;min-height:0}.topbar{background:linear-gradient(180deg,#0d1628,#080c18);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 18px;height:52px;flex-shrink:0;gap:12px;z-index:50;box-shadow:0 1px #38bdf812,0 2px 12px #0006}.topbar-logo{font-family:Share Tech Mono,monospace;font-size:16px;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:2px;white-space:nowrap;text-shadow:none;filter:drop-shadow(0 0 8px rgba(56,189,248,.4))}.topbar-logo span{background:linear-gradient(135deg,var(--accent2),var(--accent));-webkit-background-clip:text}.topbar-center{display:flex;align-items:center;gap:8px;flex:1;justify-content:center}.topbar-right{display:flex;align-items:center;gap:8px}.account-badge{background:var(--surface2);border:1px solid var(--border2);border-radius:8px;padding:5px 12px;font-family:Share Tech Mono,monospace;font-size:11px;color:var(--accent);cursor:pointer;transition:all .2s}.account-badge:hover{border-color:var(--accent);box-shadow:var(--glow)}.balance-badge{background:linear-gradient(135deg,var(--surface2),var(--surface3));border:1px solid var(--accent2);border-radius:8px;padding:5px 14px;display:flex;align-items:center;gap:8px;box-shadow:0 0 10px #34d39933}.balance-badge .lbl{color:var(--dim);font-size:9px;text-transform:uppercase;letter-spacing:1px}.balance-badge .val{color:var(--accent2);font-family:Share Tech Mono,monospace;font-size:15px;font-weight:700}.mode-tabs{display:flex;gap:3px;background:var(--surface);border-radius:10px;padding:3px;border:1px solid var(--border)}.mode-tab{padding:5px 16px;border-radius:8px;cursor:pointer;font-weight:700;font-size:11px;letter-spacing:.5px;transition:all .2s;border:1px solid transparent;color:var(--dim);background:transparent}.mode-tab:hover{color:var(--text2)}.mode-tab.active-real{background:#f871711f;border-color:var(--red);color:var(--red);box-shadow:0 0 10px #f8717133}.mode-tab.active-sim{background:#fbbf241f;border-color:var(--accent3);color:var(--accent3);box-shadow:0 0 10px #fbbf2433}.mode-tab.active-virtual{background:#38bdf81f;border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px #38bdf833}.btn-icon{background:var(--surface2);border:1px solid var(--border);color:var(--dim);padding:6px 12px;border-radius:var(--r-sm);cursor:pointer;font-size:12px;transition:all .2s;display:flex;align-items:center;gap:5px;font-family:Inter,sans-serif;font-weight:500}.btn-icon:hover{border-color:var(--accent);color:var(--accent);background:#38bdf80f}.btn-icon.danger:hover{border-color:var(--red);color:var(--red)}.conn-dot{width:8px;height:8px;border-radius:50%;background:var(--border);flex-shrink:0}.conn-dot.on{background:var(--accent2);box-shadow:var(--glow2);animation:pulse 1.5s infinite}.conn-dot.err{background:var(--red);box-shadow:0 0 8px #f8717166}.left-panel{border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.panel-section{padding:16px;border-bottom:1px solid var(--border)}.panel-section:last-child{border-bottom:none}.panel-title{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--dim);margin-bottom:14px;display:flex;align-items:center;gap:8px}.panel-title:before{content:"";width:3px;height:14px;background:linear-gradient(to bottom,var(--accent),var(--accent2));border-radius:2px;flex-shrink:0}.panel-title.green:before{background:linear-gradient(to bottom,var(--accent2),#06b6d4)}.panel-title.amber:before{background:linear-gradient(to bottom,var(--accent3),#f97316)}.field-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:8px}.field-label{color:var(--text2);font-size:11px;font-weight:500;white-space:nowrap;margin-bottom:5px;display:block}.field-val{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:var(--r-sm);font-size:13px;width:100%;outline:none;font-family:Share Tech Mono,monospace;transition:border-color .2s,box-shadow .2s;min-width:0}.field-val:focus{border-color:var(--accent);box-shadow:0 0 0 3px #38bdf81a}select.field-val{cursor:pointer}.symbol-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px}.sym-btn{background:var(--bg);border:1px solid var(--border);color:var(--dim);padding:6px 4px;border-radius:var(--r-sm);cursor:pointer;font-size:9px;text-align:center;transition:all .2s;font-family:Share Tech Mono,monospace;line-height:1.3}.sym-btn.active{background:#38bdf81a;border-color:var(--accent);color:var(--accent);box-shadow:0 0 8px #38bdf826}.sym-btn:hover:not(.active){border-color:var(--border2);color:var(--text2)}.bot-list{display:flex;flex-direction:column;gap:6px}.bot-item{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .2s}.bot-item:hover:not(.active){border-color:var(--border2);background:var(--surface2)}.bot-item.active{border-color:var(--accent2);background:#34d39912}.bot-name{font-size:12px;color:var(--text);font-weight:600}.bot-type-lbl{font-size:9px;color:var(--dim);margin-top:2px}.bot-dot{width:9px;height:9px;border-radius:50%;background:var(--border);flex-shrink:0}.bot-item.active .bot-dot{background:var(--accent2);box-shadow:var(--glow2)}.stat-mini{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04)}.stat-mini:last-child{border-bottom:none}.stat-mini .lbl{color:var(--dim)}.stat-mini .val-green{color:var(--green);font-family:Share Tech Mono,monospace;font-weight:700}.stat-mini .val-red{color:var(--red);font-family:Share Tech Mono,monospace;font-weight:700}.field-sub-label{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px}.btn-start,.btn-stop{width:100%;padding:12px;border-radius:var(--r-md);font-family:Inter,sans-serif;font-weight:700;font-size:13px;cursor:pointer;letter-spacing:.5px;transition:all .2s;margin-top:5px}.btn-start{background:linear-gradient(135deg,#34d39926,#34d39914);border:1px solid var(--accent2);color:var(--accent2)}.btn-start:hover{background:linear-gradient(135deg,#34d39940,#34d39926);box-shadow:var(--glow2)}.btn-stop{background:linear-gradient(135deg,#f8717126,#f8717114);border:1px solid var(--red);color:var(--red)}.btn-stop:hover{background:linear-gradient(135deg,#f8717140,#f8717126)}.center-panel{display:flex;flex-direction:column;overflow:hidden;background:var(--bg);border-right:1px solid var(--border)}.toolbar-row{display:flex;align-items:center;gap:3px;padding:7px 10px;border-bottom:1px solid var(--border);flex-wrap:wrap;background:var(--surface);flex-shrink:0}.tb-btn{background:var(--surface2);border:1px solid var(--border);border-radius:var(--r-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;transition:all .2s;position:relative}.tb-btn:hover{border-color:var(--accent);background:#38bdf814;transform:translateY(-1px)}.tb-btn.active{border-color:var(--accent2);background:#34d3991a}.tb-sep{width:1px;height:20px;background:var(--border);margin:0 4px}.tb-sym-btn{background:transparent;border:1px solid var(--border);color:var(--dim);padding:3px 8px;border-radius:var(--r-sm);cursor:pointer;font-size:12px;font-family:Share Tech Mono,monospace;transition:all .15s}.tb-sym-btn:hover{border-color:var(--accent);color:var(--accent);background:#38bdf80d}.editor-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface);padding:0 8px}.etab{padding:8px 18px;font-size:12px;font-weight:600;cursor:pointer;color:var(--dim);border-bottom:2px solid transparent;transition:all .2s}.etab.active{color:var(--accent);border-color:var(--accent)}.etab:hover:not(.active){color:var(--text2)}.editor-area{flex:1;overflow:hidden;position:relative;min-height:0}.strategy-editor{width:100%;height:100%;background:var(--bg);border:none;color:#93c5fd;font-family:Share Tech Mono,monospace;font-size:13px;padding:18px 20px;outline:none;resize:none;line-height:1.8}.strategy-editor::placeholder{color:var(--border2)}.bottom-bar{height:54px;border-top:1px solid var(--border);background:linear-gradient(180deg,var(--surface) 0%,var(--bg) 100%);display:flex;align-items:center;gap:10px;padding:0 16px;flex-shrink:0;overflow:hidden}.digit-seq{display:flex;gap:4px;align-items:center;flex-shrink:0}.seq-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Share Tech Mono,monospace;font-size:11px;font-weight:700;border:2px solid;transition:all .3s;flex-shrink:0}.seq-circle.high{border-color:var(--green);color:var(--green);background:#4ade801a}.seq-circle.mid{border-color:var(--accent3);color:var(--accent3);background:#fbbf241a}.seq-circle.low{border-color:var(--red);color:var(--red);background:#f871711a}.bot-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.btn-on,.btn-stop-sq,.btn-off{padding:6px 16px;border-radius:20px;font-weight:700;font-size:11px;cursor:pointer;transition:all .2s;font-family:Inter,sans-serif;letter-spacing:.5px}.btn-on{background:#4ade801f;border:2px solid var(--green);color:var(--green)}.btn-on:hover{background:#4ade8033;box-shadow:var(--glow2)}.btn-stop-sq{background:var(--surface2);border:2px solid var(--dim);color:var(--dim);width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:8px}.btn-stop-sq.active{border-color:var(--red);color:var(--red);background:#f871711a}.btn-off{background:var(--surface2);border:2px solid var(--border);color:var(--dim)}.btn-off.active{border-color:var(--red);color:var(--red)}.price-val{font-family:Share Tech Mono,monospace;font-size:18px;color:var(--text);min-width:72px;text-align:center}.btn-refresh{background:transparent;border:none;color:var(--dim);cursor:pointer;font-size:16px;padding:4px;transition:all .2s}.btn-refresh:hover{color:var(--accent)}.price-history{display:flex;gap:4px;align-items:center}.ph-chip{background:var(--surface2);border:1px solid var(--border);border-radius:5px;padding:2px 7px;font-family:Share Tech Mono,monospace;font-size:10px;color:var(--dim);transition:all .2s}.ph-chip.latest{border-color:var(--accent);color:var(--accent);background:#38bdf812}.bb-stats{display:flex;gap:18px;margin-left:auto;flex-shrink:0}.bb-stat{display:flex;flex-direction:column;align-items:center}.bb-stat .lbl{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px}.bb-stat .val{font-family:Share Tech Mono,monospace;font-size:11px;color:var(--text)}.right-panel{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.mode-header{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--surface2)}.mode-tabs-right{display:flex;gap:3px;background:var(--bg);border-radius:10px;padding:3px;border:1px solid var(--border)}.mode-label{padding:5px 16px;font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--dim);cursor:pointer;border-radius:8px;border:1px solid transparent;transition:all .2s}.mode-label:hover{color:var(--text2)}.mode-label.active-sim{background:#fbbf241f;border-color:var(--accent3);color:var(--accent3)}.mode-label.active-real{background:#f871711f;border-color:var(--red);color:var(--red)}.mode-label.active-virtual{background:#38bdf81f;border-color:var(--accent);color:var(--accent)}.digit-chart-wrapper{padding:10px 14px 6px;flex-shrink:0;border-bottom:1px solid var(--border)}.digit-bars{display:flex;gap:3px;align-items:flex-end;height:88px;padding:0 2px;position:relative}.digit-bar-col{display:flex;flex-direction:column;align-items:center;flex:1;height:100%;justify-content:flex-end}.digit-bar{width:100%;border-radius:4px 4px 0 0;transition:height .4s ease;min-height:4px;background:linear-gradient(to top,#0369a1,var(--accent))}.digit-bar.highest{background:linear-gradient(to top,#059669,var(--green));box-shadow:0 0 8px #4ade804d}.digit-bar.lowest{background:linear-gradient(to top,#b91c1c,var(--red))}.digit-bar-lbl{font-size:9px;color:var(--dim);margin-top:3px;font-family:Share Tech Mono,monospace}.active-rule-text{font-family:Share Tech Mono,monospace;font-size:11px;color:var(--text2);text-align:center;padding:4px 0;animation:fadeText 3s ease infinite alternate}.prob-row{display:flex;align-items:center;padding:8px 12px;gap:6px;border-bottom:1px solid var(--border);flex-shrink:0}.prob-extreme{display:flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:52px}.prob-extreme .lbl{font-size:8px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.prob-extreme .val{font-family:Share Tech Mono,monospace;font-size:18px}.prob-extreme .pct{font-size:9px;font-family:Share Tech Mono,monospace}.prob-extreme.highest .val,.prob-extreme.highest .pct{color:var(--green)}.prob-extreme.lowest .val,.prob-extreme.lowest .pct{color:var(--red)}.digit-circles{display:flex;gap:5px;align-items:center;flex:1;justify-content:center;flex-wrap:wrap}.dig-circle{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Share Tech Mono,monospace;font-size:12px;font-weight:700;border:2px solid;cursor:default;transition:all .3s}.dig-circle.high{border-color:var(--green);color:var(--green);background:#4ade801a}.dig-circle.mid-high{border-color:#86efac;color:#86efac;background:#86efac14}.dig-circle.mid{border-color:var(--accent3);color:var(--accent3);background:#fbbf241a}.dig-circle.mid-low{border-color:#fb923c;color:#fb923c;background:#fb923c14}.dig-circle.low{border-color:var(--red);color:var(--red);background:#f871711a}.prob-bar-row{display:flex;align-items:center;gap:8px;padding:4px 12px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.top-n-select{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:2px 6px;border-radius:4px;font-size:11px;outline:none;cursor:pointer}.prob-bar-track{flex:1;height:5px;border-radius:3px;background:var(--border);overflow:hidden}.prob-bar-fill{height:100%;border-radius:3px;background:linear-gradient(to right,var(--red),var(--accent3),var(--green));transition:width .4s ease}.stats-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.stat-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);padding:6px 8px;text-align:center}.stat-card .sc-lbl{font-size:8px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}.stat-card .sc-val{font-family:Share Tech Mono,monospace;font-size:14px;font-weight:700}.stat-card .sc-val.pos{color:var(--green)}.stat-card .sc-val.neg{color:var(--red)}.stat-card .sc-val.neu{color:var(--text)}.stat-card .sc-val.pct{color:var(--accent3)}.trades-section{flex:1;overflow:hidden;display:flex;flex-direction:column}.trades-split{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px 10px;flex-shrink:0;border-bottom:1px solid var(--border)}.trades-box{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-md);padding:8px}.trades-box-title{font-size:9px;text-transform:uppercase;letter-spacing:1px;font-weight:700;text-align:center;margin-bottom:6px}.trades-box-title.real{color:var(--red)}.trades-box-title.sim{color:var(--accent3)}.wl-row{display:flex;gap:6px;justify-content:center}.wl-box{display:flex;flex-direction:column;align-items:center;flex:1;gap:3px}.wl-box .wl-lbl{font-size:9px;color:var(--dim)}.wl-chip{border-radius:var(--r-sm);padding:3px 12px;font-family:Share Tech Mono,monospace;font-size:13px;font-weight:700;min-width:36px;text-align:center}.wl-chip.wins{background:#4ade801a;border:1px solid var(--green);color:var(--green)}.wl-chip.losses{background:#f871711a;border:1px solid var(--red);color:var(--red)}.trade-log-list{flex:1;overflow-y:auto;padding:6px 8px}.trade-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--r-sm);margin-bottom:3px;background:var(--bg);border:1px solid var(--border);animation:slideIn .25s ease;font-size:11px}.trade-row:hover{border-color:var(--border2)}.tr-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.tr-dot.w{background:var(--green);box-shadow:0 0 5px #4ade8080}.tr-dot.l{background:var(--red);box-shadow:0 0 5px #f8717180}.tr-dot.sim{background:#facc15;box-shadow:0 0 5px #facc1580}.tr-type{color:var(--accent);font-family:Share Tech Mono,monospace;width:58px;flex-shrink:0}.tr-detail{color:var(--text2);flex:1;font-family:Share Tech Mono,monospace}.tr-profit{font-family:Share Tech Mono,monospace;flex-shrink:0}.tr-profit.w{color:var(--green)}.tr-profit.l{color:var(--red)}.tr-profit.sim{color:#facc15}.trade-row-sim{background:#facc150a!important;border-color:#facc1533!important}.tr-time{color:var(--dim);flex-shrink:0;font-size:10px}.trade-log-empty{text-align:center;padding:32px 12px;color:var(--dim);font-size:11px}.trade-log-empty .icon{font-size:32px;margin-bottom:10px;opacity:.4}.notif-container{position:fixed;top:60px;right:16px;z-index:900;display:flex;flex-direction:column;gap:6px;pointer-events:none}.notif{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--r-md);padding:9px 16px;font-size:12px;font-weight:500;animation:notifIn .25s ease;min-width:190px;max-width:280px;pointer-events:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-card)}.notif.win{border-color:var(--green);color:var(--green)}.notif.loss{border-color:var(--red);color:var(--red)}.notif.info{border-color:var(--accent);color:var(--accent)}.notif.error{border-color:var(--red);color:var(--red);background:#f8717114}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:auto;position:relative;background:#07091a}.login-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 700px 500px at 15% 50%,rgba(99,102,241,.18) 0%,transparent 70%),radial-gradient(ellipse 600px 400px at 85% 20%,rgba(56,189,248,.14) 0%,transparent 70%),radial-gradient(ellipse 500px 600px at 60% 90%,rgba(52,211,153,.1) 0%,transparent 70%);animation:blobMove 18s ease-in-out infinite;pointer-events:none;z-index:0}.login-wrapper{position:relative;z-index:1;width:100%;max-width:440px;padding:24px 16px;animation:fadeUp .5s ease}.login-card{background:#0e1525d9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(56,189,248,.12);border-radius:24px;padding:40px 36px;box-shadow:0 24px 80px #0009,0 0 0 1px #ffffff08}.login-logo{text-align:center;margin-bottom:6px}.login-logo .logo-icon{font-size:44px;display:block;margin-bottom:10px}.login-logo .logo-text{font-family:Share Tech Mono,monospace;font-size:24px;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:3px;filter:drop-shadow(0 0 10px rgba(56,189,248,.5))}.login-logo .logo-text span{background:linear-gradient(135deg,var(--accent2),var(--accent));-webkit-background-clip:text}.login-subtitle{color:var(--dim);font-size:12px;text-align:center;margin-bottom:28px;line-height:1.6}.login-tabs{display:flex;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:3px;margin-bottom:24px}.ltab{flex:1;padding:8px;text-align:center;cursor:pointer;font-size:12px;font-weight:600;color:var(--dim);border-radius:9px;border:1px solid transparent;transition:all .2s}.ltab.active{background:var(--surface2);border-color:var(--border2);color:var(--text)}.form-group{margin-bottom:16px}.form-label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--text2);margin-bottom:6px;text-transform:uppercase;letter-spacing:.8px}.form-input{width:100%;background:#080c18cc;border:1px solid var(--border);color:var(--text);padding:11px 14px;border-radius:var(--r-md);font-family:Inter,sans-serif;font-size:13px;outline:none;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #38bdf81f}.form-input::placeholder{color:var(--border2)}.btn-submit{width:100%;padding:13px;border-radius:var(--r-md);font-family:Inter,sans-serif;font-weight:700;font-size:14px;cursor:pointer;letter-spacing:.5px;transition:all .25s;margin-top:4px;background:linear-gradient(135deg,#0284c7,#0ea5e9,#38bdf8);border:1px solid rgba(56,189,248,.4);color:#fff;box-shadow:0 4px 16px #38bdf840}.btn-submit:hover{box-shadow:0 6px 24px #38bdf866;transform:translateY(-1px)}.btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-oauth{width:100%;padding:12px;border-radius:var(--r-md);font-family:Inter,sans-serif;font-weight:700;font-size:13px;cursor:pointer;letter-spacing:.3px;transition:all .25s;margin-top:6px;background:linear-gradient(135deg,#7f1d1d,#b91c1c,#dc2626);border:1px solid rgba(248,113,113,.35);color:#fff;box-shadow:0 4px 16px #dc262640;display:flex;align-items:center;justify-content:center;gap:8px}.btn-oauth:hover{box-shadow:0 6px 24px #dc262666;transform:translateY(-1px)}.divider{display:flex;align-items:center;gap:12px;margin:18px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(to right,transparent,var(--border),transparent)}.divider span{color:var(--dim);font-size:11px;white-space:nowrap}.form-msg{font-size:12px;padding:9px 13px;border-radius:var(--r-sm);margin-top:10px;text-align:center}.form-msg.error{background:#f871711a;border:1px solid var(--red);color:var(--red)}.form-msg.success{background:#4ade801a;border:1px solid var(--green);color:var(--green)}.login-footer{text-align:center;margin-top:20px;font-size:11px;color:var(--dim)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--surface2);border:1px solid var(--border2);color:var(--text);font-size:10px;padding:4px 9px;border-radius:var(--r-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;z-index:200;font-family:Inter,sans-serif;box-shadow:var(--shadow-card)}[data-tooltip]:hover:after{opacity:1}.check-row{display:flex;align-items:center;gap:7px;margin-bottom:6px}.check-row input[type=checkbox]{accent-color:var(--accent2);width:13px;height:13px;cursor:pointer}.check-row label{font-size:11px;color:var(--text2);cursor:pointer}.strategy-btns-row{display:flex;align-items:center;gap:6px;padding:8px 10px;flex-wrap:wrap;row-gap:6px;flex-shrink:0}.strategy-edit-group{display:flex;align-items:center;gap:6px;flex:1 1 auto;flex-wrap:wrap;min-width:0}.strategy-btn{display:flex;align-items:center;gap:5px;border-radius:7px;padding:5px 12px;cursor:pointer;font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0;transition:opacity .15s,background .15s}.strategy-btn:hover{opacity:.85}.strategy-btn-validate{background:#00e5ff0f;border:1px solid rgba(0,229,255,.3);color:var(--accent)}.strategy-btn-ai{background:#8250ff14;border:1px solid rgba(130,80,255,.35);color:#a680ff}.strategy-btn-save{background:#00e58212;border:1px solid rgba(0,229,130,.3);color:var(--green, #00e582);max-width:200px;overflow:hidden}.strategy-btn-save.disabled{background:#ffffff08;border-color:var(--border);color:var(--dim);cursor:not-allowed}.strategy-btn-save-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:110px;display:inline-block;vertical-align:text-bottom}.strategy-btn-start{background:#00e5ff14;border:1px solid rgba(0,229,255,.3);color:var(--accent);padding:5px 14px;font-weight:700;margin-left:auto}.strategy-btn-start.ready{background:#00e5821f;border-color:#00e58266;color:var(--green, #00e582)}.strategy-btn-start.locked{opacity:.5;cursor:not-allowed}.strategy-btn-stop{background:#ff3b5c1f;border:1px solid rgba(255,59,92,.4);color:var(--red, #ff3b5c);padding:5px 14px;font-weight:700;margin-left:auto}@media(max-width:767px){html{overflow:hidden}body{overflow:hidden;height:100dvh}#root{height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.app-layout.mobile{display:flex;flex-direction:column;height:100dvh;overflow:hidden}.mobile-panel-area{flex:1;overflow:hidden;position:relative;min-height:0}.mobile-panel{display:none;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.mobile-panel.visible{display:flex;flex-direction:column}.mobile-panel .left-panel,.mobile-panel .right-panel,.mobile-panel .center-panel{width:100%!important;height:100%!important;border:none!important;border-radius:0!important}.topbar{height:52px;padding:0 12px;gap:8px}.topbar-logo{font-size:13px;letter-spacing:1px}.topbar-center{display:none}.topbar-mobile-mode{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:3px 8px;border-radius:6px;border:1px solid transparent}.topbar-mobile-mode.real{background:#f871711f;border-color:var(--red);color:var(--red)}.topbar-mobile-mode.sim{background:#fbbf241f;border-color:var(--accent3);color:var(--accent3)}.topbar-mobile-mode.virtual{background:#38bdf81f;border-color:var(--accent);color:var(--accent)}.account-badge span:nth-child(3),.account-badge span:nth-child(4){display:none}.account-badge{padding:4px 8px;font-size:10px}.balance-badge .lbl{display:none}.balance-badge .val{font-size:13px}.balance-badge{padding:4px 10px;gap:4px}.btn-icon>span:last-child{display:none}.mobile-footer{display:flex;align-items:center;justify-content:space-between;padding:0 14px;height:52px;background:linear-gradient(180deg,var(--surface) 0%,var(--bg) 100%);border-top:1px solid var(--border);flex-shrink:0;gap:8px}.mobile-footer-stats{display:flex;flex-direction:column;align-items:center;gap:1px;flex:1}.mobile-footer-controls{display:flex;align-items:center;gap:6px;flex-shrink:0}.mobile-btn-on{display:flex;align-items:center;gap:5px;padding:7px 18px;border-radius:20px;font-weight:700;font-size:12px;letter-spacing:1px;background:#4ade801a;border:2px solid rgba(74,222,128,.4);color:var(--green);font-family:Inter,sans-serif;transition:all .2s;min-width:64px;justify-content:center}.mobile-btn-on:active{background:#4ade8033}.mobile-pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);animation:pulse 1.2s infinite;flex-shrink:0}.mobile-btn-stop{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#f871711a;border:2px solid rgba(248,113,113,.4);color:var(--red);font-size:13px;transition:all .2s}.mobile-btn-stop:active{background:#f8717133}.mobile-nav{display:flex;align-items:stretch;height:60px;background:var(--surface);border-top:1px solid var(--border);flex-shrink:0}.mobile-nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:transparent;border:none;cursor:pointer;color:var(--dim);transition:all .18s;position:relative;padding:6px 0}.mobile-nav-btn.active{color:var(--accent);background:#38bdf812;border-top:2px solid var(--accent)}.mobile-nav-btn:active{background:#38bdf81f}.mobile-nav-icon{font-size:18px;line-height:1}.mobile-nav-label{font-size:10px;font-weight:600;letter-spacing:.3px;font-family:Inter,sans-serif}.mobile-nav-live{position:absolute;top:6px;right:calc(50% - 14px);width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);animation:pulse 1.2s infinite}.left-panel,.right-panel{overflow-y:auto}.center-panel{overflow:hidden}input,select,textarea,button{min-height:36px;font-size:14px!important}select{font-size:14px!important}input[type=checkbox]{width:18px!important;height:18px!important}.notif-container{bottom:130px!important}.strategy-btns-row{padding:8px;row-gap:8px}.strategy-edit-group{flex:1 1 100%;justify-content:flex-start}.strategy-btn{font-size:12px!important;padding:7px 12px!important}.strategy-btn-save-name{max-width:60px}.strategy-btn-start,.strategy-btn-stop{flex:1 1 100%;margin-left:0!important;justify-content:center;font-size:14px!important;padding:9px 16px!important;font-weight:700;border-radius:8px}}.fx-main-area{display:grid;grid-template-columns:220px 1fr 240px;flex:1;min-height:0;overflow:hidden}.fx-market-panel{display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);overflow:hidden}.fx-market-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.fx-market-title{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim)}.fx-market-count{display:flex;align-items:center;gap:4px;font-size:9px;font-weight:600;color:var(--dim)}.fx-pulse{animation:blink 1s infinite;color:var(--dim)}.fx-search-wrap{padding:7px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.fx-search{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:11px;color:var(--text);box-sizing:border-box}.fx-search:focus{outline:none;border-color:var(--accent)}.fx-filter-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:5px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.fx-filter{background:none;border:1px solid var(--border);color:var(--dim);font-size:9px;font-weight:600;padding:3px 7px;border-radius:12px;cursor:pointer;transition:all .12s}.fx-filter:hover{border-color:var(--accent);color:var(--text)}.fx-filter.active{background:color-mix(in srgb,var(--accent) 20%,transparent);border-color:var(--accent);color:var(--accent)}.fx-updated{margin-left:auto;font-size:8px;color:var(--dim);cursor:help;white-space:nowrap}.fx-market-list{flex:1;overflow-y:auto}.fx-group{border-bottom:1px solid var(--border)}.fx-group-btn{width:100%;display:flex;justify-content:space-between;align-items:center;padding:7px 10px;background:none;border:none;color:var(--dim);font-size:10px;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:background .1s,color .1s}.fx-group-btn:hover{background:var(--bg);color:var(--text)}.fx-group-right{display:flex;align-items:center;gap:6px}.fx-gopen{display:flex;align-items:center;gap:3px;font-size:9px;color:#22c55e;font-weight:600}.fx-sym-list{padding:2px 0 6px}.fx-sym{width:100%;display:flex;justify-content:space-between;align-items:center;padding:5px 10px 5px 16px;background:none;border:none;cursor:pointer;transition:background .1s;gap:4px}.fx-sym:hover{background:var(--bg)}.fx-sym.active{background:color-mix(in srgb,var(--accent) 15%,transparent)}.fx-sym.dim{opacity:.55}.fx-sym-left{display:flex;align-items:center;gap:6px;min-width:0}.fx-sym-name{font-size:11px;color:var(--text);font-weight:500;white-space:nowrap}.fx-sym.active .fx-sym-name{color:var(--accent)}.fx-sym-time{font-size:9px;font-family:monospace;white-space:nowrap}.fx-sym-time.open{color:#22c55e}.fx-sym-time.closed{color:#ef4444}.fx-empty{padding:20px 12px;color:var(--dim);font-size:11px;text-align:center}.fx-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;position:relative}.fx-dot-open{background:#22c55e;box-shadow:0 0 4px #22c55e88}.fx-dot-closed{background:#ef4444}.fx-dot-sus{background:#f59e0b}.fx-dot-unk{background:#4b5563}.fx-dot-tip-wrap{cursor:help}.fx-dot-tip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e2736;border:1px solid var(--border);border-radius:7px;padding:8px 10px;font-size:11px;white-space:nowrap;color:var(--text);line-height:1.6;z-index:999;box-shadow:0 4px 16px #0006;pointer-events:none;min-width:140px}.fx-dot-tip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--border)}.fx-center{display:flex;flex-direction:column;min-height:0;overflow:hidden}.fx-tabs{display:flex;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.fx-tab{padding:9px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--dim);font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.fx-tab:hover{color:var(--text)}.fx-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.fx-tab-body{flex:1;overflow-y:auto;min-height:0}.fx-matrix-loading,.fx-matrix-empty{display:flex;align-items:center;justify-content:center;gap:14px;padding:40px 20px;color:var(--dim);font-size:12px;flex-direction:column}.fx-spin{width:22px;height:22px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fx-matrix-wrap{display:flex;flex-direction:column;gap:0}.fx-agg-signal{display:flex;align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface)}.fx-agg-signal.buy{background:color-mix(in srgb,#22c55e 8%,var(--surface));border-bottom-color:#22c55e33}.fx-agg-signal.sell{background:color-mix(in srgb,#ef4444 8%,var(--surface));border-bottom-color:#ef444433}.fx-agg-arrow{font-size:44px;font-weight:900;line-height:1;min-width:52px;text-align:center}.fx-agg-signal.buy .fx-agg-arrow{color:#22c55e}.fx-agg-signal.sell .fx-agg-arrow{color:#ef4444}.fx-agg-signal.neutral .fx-agg-arrow{color:#6b7280}.fx-agg-meta{flex:1;min-width:0}.fx-agg-label{font-size:17px;font-weight:800;color:var(--text);margin-bottom:4px}.fx-agg-signal.buy .fx-agg-label{color:#22c55e}.fx-agg-signal.sell .fx-agg-label{color:#ef4444}.fx-agg-detail{font-size:11px;color:var(--dim)}.fx-confluence-bar-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:70px}.fx-conf-label{font-size:8px;font-weight:700;letter-spacing:1px;color:var(--dim);text-transform:uppercase}.fx-conf-track{width:60px;height:8px;background:var(--bg);border-radius:4px;overflow:hidden}.fx-conf-fill{height:100%;border-radius:4px;transition:width .3s}.fx-conf-pct{font-size:12px;font-weight:700;color:var(--text);font-family:monospace}.fx-ind-table{width:100%;border-collapse:collapse;font-size:11px}.fx-ind-table thead tr{background:var(--bg);border-bottom:1px solid var(--border)}.fx-ind-table th{padding:7px 12px;text-align:left;font-size:9px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--dim)}.fx-ind-row{border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);transition:background .1s}.fx-ind-row:hover{background:var(--bg)}.fx-ind-row.buy{border-left:3px solid #22c55e44}.fx-ind-row.sell{border-left:3px solid #ef444444}.fx-ind-name{padding:9px 12px;white-space:nowrap}.fx-ind-icon{margin-right:5px}.fx-ind-sig{padding:9px 12px;font-size:12px;white-space:nowrap}.fx-ind-str{padding:9px 12px;display:flex;align-items:center;gap:8px;white-space:nowrap}.fx-str-track{width:60px;height:5px;background:var(--bg);border-radius:3px;overflow:hidden}.fx-str-fill{height:100%;border-radius:3px;transition:width .3s}.fx-ind-desc{padding:9px 12px;color:var(--dim);font-size:10px;max-width:260px}.fx-ind-config{display:flex;flex-direction:column;gap:8px;padding:12px}.fx-ind-card{border:1px solid var(--border);border-radius:9px;overflow:hidden;background:var(--bg);transition:border-color .15s}.fx-ind-card.enabled{border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.fx-ind-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;gap:10px}.fx-ind-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;flex:1}.fx-ind-toggle input{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.fx-ind-card-icon{font-size:18px}.fx-ind-card-name{font-size:12px;font-weight:700;color:var(--text)}.fx-ind-card-cat{font-size:9px;color:var(--dim);text-transform:uppercase;letter-spacing:.5px;margin-top:1px}.fx-ind-card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.fx-weight-wrap{display:flex;align-items:center;gap:5px}.fx-weight-label{font-size:9px;color:var(--dim);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.fx-weight-input{width:40px;background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:3px 6px;font-size:11px;color:var(--text);text-align:center}.fx-edit-btn{background:var(--surface);border:1px solid var(--border);color:var(--dim);font-size:12px;padding:4px 9px;border-radius:6px;cursor:pointer;transition:all .15s}.fx-edit-btn:hover,.fx-edit-btn.active{background:color-mix(in srgb,var(--accent) 15%,transparent);border-color:var(--accent);color:var(--accent)}.fx-ind-params{padding:10px 14px 14px;border-top:1px solid var(--border);background:var(--surface)}.fx-ind-desc-text{font-size:11px;color:var(--dim);margin-bottom:10px;line-height:1.5}.fx-params-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fx-param-row{display:flex;flex-direction:column;gap:4px}.fx-param-row label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--dim)}.fx-param-input{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12px;color:var(--text);width:100%;box-sizing:border-box}.fx-param-input:focus{outline:none;border-color:var(--accent)}.fx-bot-settings{padding:14px}.fx-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fx-srow{display:flex;flex-direction:column;gap:5px}.fx-sfull{grid-column:1/-1}.fx-srow label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--dim)}.fx-sinput{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 9px;font-size:12px;color:var(--text);width:100%;box-sizing:border-box}.fx-sinput:focus{outline:none;border-color:var(--accent)}.fx-stoggle{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text);cursor:pointer;font-weight:500}.fx-stoggle input{accent-color:var(--accent);width:15px;height:15px}.fx-ssep{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim);padding:6px 0 2px;border-bottom:1px solid var(--border)}.fx-log-list{display:flex;flex-direction:column;padding:8px;gap:3px}.fx-log-empty{display:flex;align-items:center;justify-content:center;height:100px;color:var(--dim);font-size:12px}.fx-log-row{display:flex;gap:10px;padding:5px 8px;border-left:2px solid transparent;border-radius:0 5px 5px 0;background:var(--bg);font-size:11px;align-items:baseline}.fx-log-time{color:var(--dim);font-family:monospace;font-size:10px;white-space:nowrap;flex-shrink:0}.fx-trade-panel{display:flex;flex-direction:column;gap:0;background:var(--surface);border-left:1px solid var(--border);overflow-y:auto}.fx-tp-symbol{padding:12px 14px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:3px}.fx-tp-sym-name{font-size:18px;font-weight:800;color:var(--text)}.fx-tp-sym-code{font-size:9px;color:var(--dim);font-family:monospace}.fx-tp-signal{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 14px;border-bottom:1px solid var(--border)}.fx-tp-signal.buy{background:color-mix(in srgb,#22c55e 10%,transparent);border-bottom-color:#22c55e33}.fx-tp-signal.sell{background:color-mix(in srgb,#ef4444 10%,transparent);border-bottom-color:#ef444433}.fx-tp-sig-arrow{font-size:48px;font-weight:900;line-height:1}.fx-tp-signal.buy .fx-tp-sig-arrow{color:#22c55e}.fx-tp-signal.sell .fx-tp-sig-arrow{color:#ef4444}.fx-tp-signal.neutral .fx-tp-sig-arrow{color:#6b7280}.fx-tp-sig-label{font-size:13px;font-weight:700;color:var(--text)}.fx-tp-sig-conf{font-size:10px;color:var(--dim)}.fx-tp-exec-btns{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px;border-bottom:1px solid var(--border)}.fx-exec-buy,.fx-exec-sell{padding:11px 8px;border:none;border-radius:8px;font-size:11px;font-weight:800;cursor:pointer;transition:opacity .15s,transform .1s;text-align:center}.fx-exec-buy{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.fx-exec-sell{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.fx-exec-buy:hover:not(:disabled),.fx-exec-sell:hover:not(:disabled){opacity:.88;transform:scale(1.02)}.fx-exec-buy:disabled,.fx-exec-sell:disabled{opacity:.3;cursor:not-allowed}.fx-active-contract{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;margin:0 12px;border-radius:7px;font-size:11px;font-weight:600}.fx-active-contract.buy{background:#22c55e1f;border:1px solid #22c55e44;color:#22c55e}.fx-active-contract.sell{background:#ef44441f;border:1px solid #ef444444;color:#ef4444}.fx-tp-field{padding:8px 12px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:4px}.fx-tp-field label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--dim)}.fx-tp-input{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12px;color:var(--text);width:100%;box-sizing:border-box}.fx-tp-input:focus{outline:none;border-color:var(--accent)}.fx-conn-badge{display:flex;align-items:center;gap:6px;margin:8px 12px 4px;padding:7px 10px;border-radius:7px;font-size:10px;font-weight:600}.fx-conn-badge.connected{background:#22c55e1a;color:#86efac}.fx-conn-badge.disconnected{background:#ef44441a;color:#fca5a5}.fx-conn-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.fx-conn-badge.connected .fx-conn-dot{background:#22c55e;box-shadow:0 0 5px #22c55e;animation:pulse 1.5s infinite}.fx-conn-badge.disconnected .fx-conn-dot{background:#ef4444}.fx-tp-analyze{margin:6px 12px 4px;padding:9px;background:var(--bg);border:1px solid var(--border);border-radius:7px;color:var(--text);font-size:11px;font-weight:600;cursor:pointer;text-align:center;transition:border-color .15s,color .15s}.fx-tp-analyze:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.fx-tp-analyze:disabled{opacity:.4;cursor:not-allowed}.fx-tp-startstop{margin:0 12px 10px;padding:11px;border:none;border-radius:8px;font-size:12px;font-weight:800;cursor:pointer;text-align:center;transition:opacity .15s}.fx-tp-startstop.start{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.fx-tp-startstop.stop{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.fx-tp-startstop:hover{opacity:.88}.fx-tp-stats{display:flex;flex-direction:column;padding:0 12px 12px;gap:4px}.fx-tp-stat{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);font-size:11px}.fx-tp-stat span:first-child{color:var(--dim)}.fx-tp-stat span:last-child{font-weight:700;color:var(--text)}.fx-sym-badge{display:flex;align-items:center;gap:6px;font-size:11px;padding:4px 11px;border-radius:20px;border:1px solid var(--border);white-space:nowrap;background:var(--bg)}.fx-sym-badge.open{border-color:#22c55e44;color:#22c55e;background:#22c55e14}.fx-sym-badge.closed{border-color:#ef444444;color:#ef4444;background:#ef444414}.fx-sym-badge strong{font-weight:700}.fx-mode-cards{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0 12px}.fx-mode-card{flex:1;min-width:120px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:10px 8px;background:var(--bg);border:1px solid var(--border);border-radius:9px;cursor:pointer;transition:all .15s}.fx-mode-card:hover{border-color:var(--accent)}.fx-mode-card.active{background:color-mix(in srgb,var(--accent) 15%,transparent);border-color:var(--accent)}.fx-mode-icon{font-size:20px}.fx-mode-label{font-size:12px;font-weight:700;color:var(--text)}.fx-mode-desc{font-size:9px;color:var(--dim);line-height:1.4}.fx-mode-card.active .fx-mode-label{color:var(--accent)}.fx-tp-sl-info{font-size:10px;color:var(--dim);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 10px;line-height:1.6;margin-bottom:4px}.fx-tp-ratio{font-size:11px;color:var(--dim);padding:4px 0}.fx-ratio-warn{color:#f59e0b;font-size:10px}.fx-martingale-warn{font-size:10px;color:#f59e0b;background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:6px;padding:8px 10px;line-height:1.5}.fx-tp-position{margin:8px 12px;border-radius:9px;overflow:hidden;border:1px solid var(--border)}.fx-tp-position.long{border-color:#22c55e44}.fx-tp-position.short{border-color:#ef444444}.fx-pos-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;font-size:11px;font-weight:700;background:var(--bg)}.fx-tp-position.long .fx-pos-header{color:#22c55e}.fx-tp-position.short .fx-pos-header{color:#ef4444}.fx-pos-id{font-size:9px;color:var(--dim);font-family:monospace}.fx-pos-pnl{font-size:28px;font-weight:900;text-align:center;padding:8px 0;font-family:Share Tech Mono,monospace}.fx-pos-details{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0 12px 8px;font-size:10px}.fx-pos-details>div{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent)}.fx-pos-details span:first-child{color:var(--dim)}.fx-pos-details span:last-child{font-weight:600;color:var(--text)}.fx-close-pos-btn{width:calc(100% - 24px);margin:8px 12px 12px;padding:8px;background:#ef44441a;border:1px solid #ef444455;color:#ef4444;border-radius:7px;font-size:11px;font-weight:700;cursor:pointer;transition:background .15s}.fx-close-pos-btn:hover{background:#ef444438}.fx-tp-day-done{margin:8px 12px;padding:12px;text-align:center;background:#22c55e14;border:1px solid rgba(34,197,94,.25);border-radius:10px;display:flex;flex-direction:column;gap:4px}.fx-tp-day-done .fx-day-done-icon{font-size:22px}.fx-tp-day-done .fx-day-done-msg{font-size:11px;font-weight:600;color:#86efac;line-height:1.4}.fx-tp-day-done small{font-size:10px;color:#6b7280}.fx-daily-progress{margin:8px 12px;padding:10px 12px;background:#ffffff08;border:1px solid var(--border);border-radius:10px}.fx-dp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.fx-dp-label{font-size:10px;color:#6b7280;font-weight:500}.fx-dp-value{font-size:13px;font-weight:700}.fx-dp-value.gain{color:#22c55e}.fx-dp-value.loss{color:#ef4444}.fx-dp-bar-track{height:5px;background:#ffffff14;border-radius:4px;overflow:hidden}.fx-dp-bar-fill{height:100%;border-radius:4px;transition:width .4s ease}.fx-dp-footer{display:flex;justify-content:space-between;font-size:9px;color:#6b7280;margin-top:5px}.fx-tp-paused{margin:8px 12px;padding:10px 12px;text-align:center;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;font-size:11px;color:#f59e0b;line-height:1.6}.fx-ssep-conservador{flex-direction:column;align-items:flex-start;gap:2px;background:linear-gradient(90deg,rgba(5,150,105,.12),transparent);border-left:3px solid #059669;color:#34d399}.fx-ssep-tip{font-size:9px;font-weight:400;color:#6b7280;text-transform:none;letter-spacing:0}.fx-sinput-with-hint{display:flex;align-items:center;gap:6px}.fx-sinput-with-hint .fx-sinput{flex:1}.fx-sinput-hint{font-size:10px;color:#6b7280;white-space:nowrap}.fx-stake-preview{padding:8px 10px;background:#05966914;border:1px solid rgba(5,150,105,.2);border-radius:8px;font-size:11px;color:#6b7280}.fx-stake-preview strong{color:#34d399}.fx-tp-mode-badge{display:inline-flex;align-items:center;gap:4px;margin-top:2px;font-size:9px;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:10px;padding:2px 8px;align-self:flex-start}@media(max-width:1100px){.fx-main-area{grid-template-columns:180px 1fr 210px}}@media(max-width:860px){.fx-main-area{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.fx-market-panel{max-height:160px;border-right:none;border-bottom:1px solid var(--border)}.fx-trade-panel{border-left:none;border-top:1px solid var(--border)}}.fxh-wrap{display:flex;flex-direction:column;height:100%;min-height:0}.fxh-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;color:#6b7280;text-align:center;padding:24px}.fxh-empty p{font-size:13px;color:#94a3b8}.fxh-empty small{font-size:11px;color:#4b5563}.fxh-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--border);background:#ffffff05;flex-shrink:0}.fxh-sum-item{display:flex;flex-direction:column;align-items:center;min-width:50px}.fxh-sum-item span{font-size:9px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.fxh-sum-item strong{font-size:14px;font-weight:700}.fxh-filter-btns{display:flex;gap:4px;margin-left:auto}.fxh-flt{padding:4px 10px;border-radius:6px;font-size:10px;font-weight:600;border:1px solid var(--border);background:transparent;color:#6b7280;cursor:pointer;transition:all .15s}.fxh-flt:hover{color:#e2e8f0;border-color:#475569}.fxh-flt.active{background:var(--accent);color:#fff;border-color:var(--accent)}.fxh-table-wrap{flex:1;overflow-y:auto;min-height:0}.fxh-table{width:100%;border-collapse:collapse;font-size:11px;table-layout:fixed}.fxh-table thead tr{position:sticky;top:0;z-index:1;background:var(--bg-secondary,#0f172a)}.fxh-table th{padding:6px 8px;text-align:left;font-weight:600;color:#475569;font-size:9px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fxh-table td{padding:5px 8px;border-bottom:1px solid rgba(255,255,255,.04);color:#cbd5e1;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fxh-table tr.fxh-win{background:#22c55e08}.fxh-table tr.fxh-loss{background:#ef444408}.fxh-table tr:hover td{background:#ffffff0a}.fxh-td-time{font-size:10px;line-height:1.3}.fxh-td-sub{color:#4b5563;font-size:9px}.fxh-td-sym{font-weight:600;color:#e2e8f0}.fxh-td-bal{color:#64748b}.fxh-dir{font-size:10px;font-weight:600;padding:2px 5px;border-radius:4px}.fxh-dir.long{color:#22c55e;background:#22c55e1a}.fxh-dir.short{color:#ef4444;background:#ef44441a}.fxh-mode-tag{font-size:9px;padding:2px 5px;border-radius:4px;background:#6366f11f;color:#a5b4fc}.fxh-profit{font-weight:700;font-size:12px}.fxh-profit.win{color:#22c55e}.fxh-profit.loss{color:#ef4444}.fxh-reason{font-size:10px;font-weight:500}.fxh-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px;border-top:1px solid var(--border);flex-shrink:0;font-size:11px;color:#6b7280}.fxh-pagination button{padding:4px 12px;border-radius:6px;border:1px solid var(--border);background:transparent;color:#94a3b8;cursor:pointer;font-size:11px;transition:all .15s}.fxh-pagination button:hover:not(:disabled){color:#e2e8f0;border-color:#475569}.fxh-pagination button:disabled{opacity:.35;cursor:not-allowed}@supports (padding: max(0px)){@media(max-width:767px){.mobile-nav{padding-bottom:env(safe-area-inset-bottom);height:calc(60px + env(safe-area-inset-bottom))}.topbar{padding-top:env(safe-area-inset-top)}}}.template-nav-btn{display:inline-flex;align-items:center;gap:5px;background:color-mix(in srgb,var(--accent) 15%,transparent);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);color:var(--accent);font-size:12px;font-weight:700;padding:6px 14px;border-radius:7px;cursor:pointer;transition:background .15s,border-color .15s,transform .1s;white-space:nowrap;letter-spacing:.2px;flex-shrink:0}.template-nav-btn:hover{background:color-mix(in srgb,var(--accent) 25%,transparent);border-color:var(--accent);transform:translate(-2px)}.template-nav-btn:active{transform:translate(0)}.dashboard-subheader{display:flex;align-items:center;gap:12px;padding:7px 14px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.dashboard-subheader-info{display:flex;align-items:center;gap:7px;flex:1;min-width:0;overflow:hidden}.dashboard-subheader-icon{font-size:14px;flex-shrink:0}.dashboard-subheader-name{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap}.dashboard-subheader-sep{color:var(--border);font-size:12px}.dashboard-subheader-desc{font-size:11px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-running-badge{font-size:10px;font-weight:700;padding:4px 11px;border-radius:20px;border:1px solid var(--border);color:var(--dim);white-space:nowrap;flex-shrink:0}.dashboard-running-badge.running{color:#22c55e;border-color:#22c55e55;background:#22c55e14}.rf-subheader{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.rf-back-btn{background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent);font-size:11px;font-weight:700;padding:5px 12px;border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;letter-spacing:.3px}.rf-back-btn:hover{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:var(--accent);color:var(--text)}.rf-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dim);flex:1;min-width:0;overflow:hidden}.rf-bc-icon{font-size:14px}.rf-bc-sep{color:var(--border)}.rf-bc-symbol,.rf-bc-type{color:var(--text);font-weight:600}.rf-bot-running-dot{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 10px;border-radius:20px;border:1px solid var(--border);color:var(--text);white-space:nowrap}.rf-bot-running-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.rf-sym-status-badge{display:flex;align-items:center;gap:6px;font-size:11px;padding:4px 11px;border-radius:20px;border:1px solid var(--border);white-space:nowrap;background:var(--bg)}.rf-sym-status-badge.open{border-color:#22c55e44;color:#22c55e;background:#22c55e14}.rf-sym-status-badge.closed{border-color:#ef444444;color:#ef4444;background:#ef444414}.rf-sym-status-badge strong{font-weight:700}.rf-stats-bar{display:flex;align-items:center;gap:0;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.rf-stat-item{display:flex;flex-direction:column;align-items:center;padding:8px 18px;border-right:1px solid var(--border);min-width:90px}.rf-stat-label{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim);margin-bottom:3px}.rf-stat-value{font-size:14px;font-weight:700;color:var(--text);font-family:Share Tech Mono,monospace}.rf-main-area{display:grid;grid-template-columns:220px 1fr 220px;flex:1;min-height:0;overflow:hidden}.rf-market-panel{display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border);overflow:hidden}.rf-market-header{padding:8px 10px;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.rf-market-status-badge{display:flex;align-items:center;gap:4px;font-size:9px;font-weight:600;color:var(--dim);letter-spacing:0;text-transform:none}.rf-mkt-loading{font-size:10px;color:var(--dim);animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.rf-market-search-wrap{padding:8px;border-bottom:1px solid var(--border);flex-shrink:0}.rf-market-search{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:11px;color:var(--text);box-sizing:border-box}.rf-market-search:focus{outline:none;border-color:var(--accent)}.rf-market-list{flex:1;overflow-y:auto}.rf-market-group{border-bottom:1px solid var(--border)}.rf-market-group-btn{width:100%;display:flex;justify-content:space-between;align-items:center;padding:7px 10px;background:none;border:none;color:var(--dim);font-size:10px;font-weight:700;letter-spacing:.5px;cursor:pointer;text-align:left;transition:background .1s,color .1s}.rf-market-group-btn:hover{background:var(--bg);color:var(--text)}.rf-chevron{font-size:10px}.rf-market-symbols{padding:2px 0 6px}.rf-market-filters{display:flex;align-items:center;gap:4px;padding:5px 8px;border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.rf-mkt-filter-btn{background:none;border:1px solid var(--border);color:var(--dim);font-size:9px;font-weight:600;padding:3px 7px;border-radius:12px;cursor:pointer;transition:all .12s}.rf-mkt-filter-btn:hover{border-color:var(--accent);color:var(--text)}.rf-mkt-filter-btn.active{background:color-mix(in srgb,var(--accent) 20%,transparent);border-color:var(--accent);color:var(--accent)}.rf-mkt-updated{margin-left:auto;font-size:8px;color:var(--dim);cursor:help;white-space:nowrap}.rf-group-open-count{display:flex;align-items:center;gap:3px;font-size:9px;color:#22c55e;font-weight:600}.rf-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0;position:relative}.rf-dot-open{background:#22c55e;box-shadow:0 0 4px #22c55e88}.rf-dot-closed{background:#ef4444}.rf-dot-suspended{background:#f59e0b}.rf-dot-unknown{background:#4b5563}.rf-dot-interactive{cursor:help}.rf-dot-tip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e2736;border:1px solid var(--border);border-radius:7px;padding:8px 10px;font-size:11px;white-space:nowrap;color:var(--text);line-height:1.6;z-index:999;box-shadow:0 4px 16px #0006;pointer-events:none;min-width:140px}.rf-dot-tip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--border)}.rf-symbol-btn{width:100%;display:flex;justify-content:space-between;align-items:center;padding:5px 10px 5px 16px;background:none;border:none;cursor:pointer;transition:background .1s;gap:4px}.rf-symbol-btn:hover{background:var(--bg)}.rf-symbol-btn.active{background:color-mix(in srgb,var(--accent) 15%,transparent)}.rf-symbol-btn.rf-symbol-closed{opacity:.55}.rf-symbol-main{display:flex;align-items:center;gap:6px;min-width:0}.rf-symbol-right{flex-shrink:0}.rf-symbol-label{font-size:11px;color:var(--text);font-weight:500;white-space:nowrap}.rf-symbol-btn.active .rf-symbol-label{color:var(--accent)}.rf-sym-time{font-size:9px;font-family:monospace;white-space:nowrap}.rf-sym-open{color:#22c55e}.rf-sym-closed{color:#ef4444}.rf-center-area{display:flex;flex-direction:column;min-height:0;overflow:hidden}.rf-tab-bar{display:flex;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0}.rf-tab{padding:9px 18px;background:none;border:none;border-bottom:2px solid transparent;color:var(--dim);font-size:11px;font-weight:600;cursor:pointer;transition:color .15s,border-color .15s}.rf-tab:hover{color:var(--text)}.rf-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.rf-tab-content{flex:1;overflow-y:auto;min-height:0}.rf-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}.rf-cfg-row{display:flex;flex-direction:column;gap:5px}.rf-cfg-full{grid-column:1 / -1}.rf-cfg-row label{font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--dim);text-transform:uppercase}.rf-cfg-input{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 9px;font-size:12px;color:var(--text);width:100%;box-sizing:border-box}.rf-cfg-input:focus{outline:none;border-color:var(--accent)}.rf-cfg-select{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 9px;font-size:12px;color:var(--text);flex:1}.rf-cfg-select:focus{outline:none;border-color:var(--accent)}.rf-cfg-symbol-display{display:flex;align-items:center;gap:10px;padding:7px 10px;background:color-mix(in srgb,var(--accent) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:6px}.rf-cfg-symbol-name{font-weight:700;font-size:13px;color:var(--accent)}.rf-cfg-symbol-code{font-size:10px;color:var(--dim);font-family:monospace}.rf-cfg-divider{grid-column:1 / -1;font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim);padding:6px 0 2px;border-bottom:1px solid var(--border)}.rf-toggle-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text);cursor:pointer;font-weight:500;text-transform:none;letter-spacing:0}.rf-contract-type-grid{display:flex;flex-direction:column;gap:8px}.rf-contract-group{display:flex;flex-direction:column;gap:4px}.rf-contract-group-label{font-size:9px;font-weight:700;color:var(--dim);letter-spacing:.5px;text-transform:uppercase}.rf-contract-type-row{display:flex;flex-wrap:wrap;gap:5px}.rf-ct-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;background:var(--bg);border:1px solid var(--border);border-radius:7px;font-size:10px;color:var(--dim);cursor:pointer;transition:all .15s;min-width:60px}.rf-ct-btn span:first-child{font-size:14px}.rf-ct-btn:hover{border-color:var(--accent);color:var(--text)}.rf-ct-btn.active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent);color:var(--accent);font-weight:700}.rf-ct-desc{font-size:10px;color:var(--dim);margin-top:4px;font-style:italic}.rf-signal-card{display:flex;align-items:flex-start;gap:16px;padding:16px;border-radius:10px;border:1px solid var(--border);background:var(--surface)}.rf-signal-idle,.rf-signal-analyzing{justify-content:center;align-items:center;gap:12px;color:var(--dim);font-size:12px;padding:32px}.rf-signal-call{border-color:#22c55e44;background:color-mix(in srgb,#22c55e 8%,var(--surface))}.rf-signal-put{border-color:#ef444444;background:color-mix(in srgb,#ef4444 8%,var(--surface))}.rf-signal-neutral{border-color:#6b728044}.rf-signal-direction{font-size:40px;font-weight:900;line-height:1;min-width:48px;text-align:center}.rf-signal-call .rf-signal-direction{color:#22c55e}.rf-signal-put .rf-signal-direction{color:#ef4444}.rf-signal-meta{flex:1;min-width:0}.rf-signal-type{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}.rf-signal-reason{font-size:11px;color:var(--dim);margin-bottom:8px}.rf-signal-indicators{display:flex;flex-wrap:wrap;gap:5px}.rf-ind-badge{font-size:9px;font-weight:600;padding:2px 7px;border-radius:4px;background:var(--bg);border:1px solid var(--border);color:var(--dim);font-family:monospace}.rf-signal-strength{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:60px}.rf-strength-label{font-size:8px;font-weight:700;letter-spacing:1px;color:var(--dim);text-transform:uppercase}.rf-strength-bar-wrap{width:8px;height:80px;background:var(--bg);border-radius:4px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.rf-strength-bar{width:100%;border-radius:4px;transition:height .3s}.rf-strength-pct{font-size:10px;font-weight:700;color:var(--text);font-family:monospace}.rf-signal-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.rf-active-contract{display:flex;align-items:center;gap:10px;padding:10px 14px;background:color-mix(in srgb,var(--accent) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:8px;font-size:11px;flex-wrap:wrap}.rf-ac-label{font-weight:700;color:var(--dim);font-size:9px;text-transform:uppercase;letter-spacing:1px}.rf-ac-id{font-family:monospace;color:var(--dim);font-size:10px}.rf-ac-dir{font-weight:800;font-size:13px}.rf-ac-dir.call{color:#22c55e}.rf-ac-dir.put{color:#ef4444}.rf-ac-stake,.rf-ac-exp{color:var(--text);font-weight:600}.rf-log-list{display:flex;flex-direction:column;padding:8px;gap:3px}.rf-log-empty{display:flex;align-items:center;justify-content:center;height:120px;color:var(--dim);font-size:12px}.rf-log-row{display:flex;gap:10px;padding:5px 8px;border-left:2px solid transparent;border-radius:0 5px 5px 0;background:var(--bg);font-size:11px;align-items:baseline}.rf-log-time{color:var(--dim);font-family:monospace;font-size:10px;white-space:nowrap;flex-shrink:0}.rf-log-msg{line-height:1.4}.rf-right-panel{display:flex;flex-direction:column;gap:0;background:var(--surface);border-left:1px solid var(--border);overflow-y:auto}.rf-right-section{padding:14px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.rf-right-title{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim);margin-bottom:4px}.rf-ctrl-btn{width:100%;padding:9px 12px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;border:none;transition:opacity .15s,transform .1s;text-align:center}.rf-ctrl-btn:active{transform:scale(.97)}.rf-ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.rf-ctrl-analyze{background:var(--bg);border:1px solid var(--border);color:var(--text)}.rf-ctrl-analyze:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.rf-ctrl-execute{background:color-mix(in srgb,#8b5cf6 20%,transparent);border:1px solid #8b5cf655;color:#a78bfa}.rf-ctrl-start{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.rf-ctrl-stop{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.rf-cfg-summary{display:flex;flex-direction:column;gap:5px}.rf-cs-row{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding:3px 0;border-bottom:1px solid var(--border)}.rf-cs-row span:first-child{color:var(--dim)}.rf-cs-row span:last-child{color:var(--text);font-weight:600;text-align:right;max-width:110px;word-break:break-word}.rf-section-title{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--dim);margin-bottom:8px}.rf-mode-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rf-mode-card{display:flex;flex-direction:column;gap:5px;padding:10px 10px 8px;background:var(--bg);border:1.5px solid var(--border);border-radius:9px;cursor:pointer;transition:border-color .15s,background .15s,transform .1s;text-align:left}.rf-mode-card:hover{border-color:var(--mc);transform:translateY(-1px)}.rf-mode-card.active{border-color:var(--mc);background:color-mix(in srgb,var(--mc) 12%,var(--bg))}.rf-mc-top{display:flex;align-items:center;gap:5px}.rf-mc-emoji{font-size:16px}.rf-mc-label{font-size:12px;font-weight:700;color:var(--text)}.rf-mc-warn{font-size:10px;margin-left:auto}.rf-mc-desc{font-size:9px;color:var(--dim);line-height:1.4}.rf-mc-params{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}.rf-mc-params span{font-size:8px;font-weight:600;padding:2px 5px;border-radius:4px;background:color-mix(in srgb,var(--mc) 15%,transparent);border:1px solid color-mix(in srgb,var(--mc) 30%,transparent);color:var(--mc)}.rf-mode-warning{margin-top:6px;padding:8px 10px;border-radius:7px;background:#ef444414;border:1px solid rgba(239,68,68,.3);font-size:11px;color:#ef4444;line-height:1.4}.rf-autotrade-toggle{padding:10px 12px;background:color-mix(in srgb,var(--accent) 8%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:8px}.rf-daily-progress{display:flex;flex-direction:column;gap:8px}.rf-dp-row{display:flex;flex-direction:column;gap:4px}.rf-dp-label{display:flex;justify-content:space-between;font-size:10px;color:var(--dim)}.rf-dp-bar-wrap{height:5px;background:var(--border);border-radius:3px;overflow:hidden}.rf-dp-bar{height:100%;border-radius:3px;transition:width .4s}.rf-dp-goal{background:#22c55e}.rf-dp-stop{background:#ef4444}.rf-pause-banner{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#f59e0b1f;border-bottom:1px solid rgba(245,158,11,.3);font-size:12px;color:#f59e0b;flex-shrink:0}.rf-pause-countdown{font-size:16px;font-weight:700;font-family:monospace}.rf-tab-badge{display:inline-block;font-size:9px;font-weight:700;padding:1px 5px;border-radius:8px;margin-left:4px;background:var(--bg);border:1px solid var(--border);color:var(--dim)}.rf-tab-badge.ok{background:#22c55e26;border-color:#22c55e55;color:#22c55e}.rf-score-card{border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden}.rf-score-card.call{border-color:#22c55e44;background:color-mix(in srgb,#22c55e 5%,var(--surface))}.rf-score-card.put{border-color:#ef444444;background:color-mix(in srgb,#ef4444 5%,var(--surface))}.rf-sc-header{display:flex;align-items:center;gap:12px;padding:14px 16px 10px}.rf-sc-direction{font-size:36px;font-weight:900;line-height:1;min-width:44px;text-align:center}.rf-score-card.call .rf-sc-direction{color:#22c55e}.rf-score-card.put .rf-sc-direction{color:#ef4444}.rf-score-card.neutral .rf-sc-direction{color:#6b7280}.rf-sc-meta{flex:1;min-width:0}.rf-sc-signal{font-size:15px;font-weight:700;color:var(--text);margin-bottom:3px}.rf-sc-reason{font-size:10px;color:var(--dim);line-height:1.4}.rf-sc-score-circle{width:48px;height:48px;border-radius:50%;border:2px solid;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}.rf-sc-score-num{font-size:18px;font-weight:900;line-height:1;font-family:monospace}.rf-sc-score-max{font-size:9px;color:var(--dim)}.rf-sc-bar-wrap{height:4px;background:var(--border);margin:0 16px;border-radius:2px;overflow:visible;position:relative}.rf-sc-bar{height:100%;border-radius:2px;transition:width .4s}.rf-sc-min-mark{position:absolute;top:-3px;bottom:-3px;width:2px;background:#f59e0b;border-radius:2px}.rf-sc-indicators{padding:10px 8px;display:flex;flex-direction:column;gap:2px}.rf-ind-row{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:6px;font-size:10px;transition:background .1s}.rf-ind-row.aligned{background:#22c55e14}.rf-ind-row.blocked{background:#ef444414}.rf-ind-row.mismatched{background:#f59e0b0f}.rf-ind-row.neutral{opacity:.7}.rf-ind-icon{font-size:12px;flex-shrink:0}.rf-ind-label{font-size:10px;font-weight:600;color:var(--text);min-width:80px;flex-shrink:0}.rf-ind-desc{flex:1;font-size:9px;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rf-ind-badge2{font-size:12px;flex-shrink:0}.rf-adv-toggle-btn{width:100%;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:7px;color:var(--dim);font-size:11px;font-weight:600;cursor:pointer;text-align:left;transition:border-color .1s,color .1s}.rf-adv-toggle-btn:hover{border-color:var(--accent);color:var(--text)}.rf-adv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0 0}.rf-ind-toggles{display:flex;flex-direction:column;gap:5px}.rf-ind-toggle-row{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--text);cursor:pointer;font-weight:500}@media(max-width:1100px){.rf-main-area{grid-template-columns:180px 1fr 190px}}@media(max-width:860px){.rf-main-area{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.rf-market-panel{max-height:180px;border-right:none;border-bottom:1px solid var(--border)}.rf-right-panel{border-left:none;border-top:1px solid var(--border)}}@media(max-width:600px){.rf-stats-bar{flex-wrap:wrap}.rf-stat-item{min-width:80px}.rf-config-grid{grid-template-columns:1fr}.rf-cfg-full{grid-column:1}}.fx-root{display:flex;flex-direction:column;height:100vh;background:var(--bg);overflow:hidden}@media(max-width:767px){.fx-root{height:auto;min-height:100dvh;overflow:visible}.fx-root .topbar{position:sticky;top:0;z-index:50;flex-shrink:0}.fx-root .dashboard-subheader{position:sticky;top:52px;z-index:49;flex-shrink:0}.fx-root .fx-main-area{display:flex;flex-direction:column;height:auto;overflow:visible;min-height:0}.fx-root .fx-market-panel{max-height:200px;overflow-y:auto;-webkit-overflow-scrolling:touch;border-right:none;border-bottom:1px solid var(--border);flex-shrink:0}.fx-root .fx-center{display:flex;flex-direction:column;min-height:0;overflow:visible}.fx-root .fx-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0}.fx-root .fx-tabs::-webkit-scrollbar{display:none}.fx-root .fx-tab-body{height:auto;overflow:visible;min-height:300px}.fx-root .fx-trade-panel{width:100%;max-width:100%;border-left:none;border-top:1px solid var(--border);overflow:visible}.fx-root .fx-settings-grid{grid-template-columns:1fr}.fx-root .fx-sfull{grid-column:1}.fx-root .fx-mode-cards{grid-template-columns:1fr 1fr}}.rf-root{display:flex;flex-direction:column;height:100vh;background:var(--bg);overflow:hidden}@media(max-width:767px){.rf-root{height:auto;min-height:100dvh;overflow:visible}.rf-root .topbar{position:sticky;top:0;z-index:50;flex-shrink:0}.rf-root .rf-subheader{position:sticky;top:52px;z-index:49;flex-shrink:0}.rf-root .rf-stats-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-shrink:0;scrollbar-width:none}.rf-root .rf-stats-bar::-webkit-scrollbar{display:none}.rf-root .rf-main-area{display:flex;flex-direction:column;height:auto;overflow:visible}.rf-root .rf-market-panel{max-height:220px;overflow-y:auto;-webkit-overflow-scrolling:touch;border-right:none;border-bottom:1px solid var(--border);flex-shrink:0}.rf-root .rf-center-area{display:flex;flex-direction:column;min-height:400px;overflow:visible}.rf-root .rf-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:0}.rf-root .rf-tabs::-webkit-scrollbar{display:none}.rf-root .rf-tab-body{height:auto;overflow:visible;min-height:300px}.rf-root .rf-right-panel{border-left:none;border-top:1px solid var(--border);overflow:visible}}.template-page{min-height:100vh;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px}@media(max-width:767px){.template-page{justify-content:flex-start;padding:32px 16px 48px;align-items:stretch;min-height:100dvh}.template-page>*{width:100%;max-width:100%}.template-page [style*=grid]{display:flex!important;flex-direction:column!important}.template-page>div:first-child{text-align:center;margin-bottom:28px!important}}@media(max-width:767px){.login-page{min-height:100dvh;height:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding-top:max(40px,10vh);padding-bottom:40px}.login-card{width:100%!important;max-width:100%!important;margin:0 16px}}@media(max-width:767px){.fx-root .topbar,.rf-root .topbar{box-shadow:0 2px 12px #0006}.dashboard-subheader,.rf-subheader{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;min-height:44px;gap:8px}.dashboard-subheader::-webkit-scrollbar,.rf-subheader::-webkit-scrollbar{display:none}.dashboard-subheader-desc,.rf-bc-symbol{display:none}.template-nav-btn{font-size:11px;padding:5px 10px;white-space:nowrap;flex-shrink:0}.dashboard-running-badge,.rf-bot-running-dot{font-size:10px;padding:4px 8px;white-space:nowrap;flex-shrink:0;margin-left:auto}.fx-buy-btn,.fx-sell-btn{min-height:52px;font-size:14px}.fx-sinput,.fx-tp-input,.rf-select,.rf-input{min-height:40px;font-size:14px}.fxh-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.fxh-table{min-width:600px}}
