:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,sans-serif;background:#0c0e12;color:#e8e6df;font-synthesis:none;text-rendering:geometricPrecision;--bg: #0c0e12;--panel: rgba(20,23,28,.92);--card: rgba(26,30,36,.95);--line: rgba(255,255,255,.07);--text: #e8e6df;--muted: #8b9299;--soft: #5c6369;--accent: #a78bfa;--accent2: #818cf8;--up: #34d399;--down: #f87171;--gold: #fbbf24;--cyan: #67e8f9;--r: 10px;--shadow: 0 2px 12px rgba(0,0,0,.2);font-size:13px}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg)}button,a{font:inherit}button{color:inherit}.app-shell{max-width:520px;margin:0 auto;padding:8px 10px 20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:36px;margin-bottom:8px}.brand-lockup{display:flex;align-items:center;gap:7px}.brand-mark,.share-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(167,139,250,.3);border-radius:8px;color:var(--accent);background:#a78bfa1a}.brand-lockup strong{display:block;font-size:.8rem}.brand-lockup small{display:block;color:var(--muted);font-size:.65rem}.topbar-actions{display:flex;align-items:center;gap:5px}.mode-switch{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;padding:2px;border:1px solid var(--line);border-radius:8px;background:#ffffff08}.mode-switch button,.icon-button{min-height:26px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.mode-switch button{padding:0 7px;font-size:.7rem;font-weight:800}.mode-switch button.active{color:#0c0e12;background:var(--accent)}.mode-switch button:hover{color:var(--text)}.icon-button{display:grid;place-items:center;width:28px;border:1px solid var(--line);text-decoration:none}.icon-button:hover{color:var(--text);border-color:var(--accent)}.hero-board{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px}.leader-panel,.countdown-panel,.share-card,.metric-panel,.spark-panel,.book-panel,.details-panel,.notice{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);box-shadow:var(--shadow)}.leader-panel{padding:10px 12px;position:relative;overflow:hidden;min-height:0}.leader-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(167,139,250,.08),transparent 50%)}.hero-board.up .leader-panel:after,.hero-board.down .leader-panel:after{content:"";position:absolute;inset:auto 0 0;height:2px}.hero-board.up .leader-panel:after{background:var(--up)}.hero-board.down .leader-panel:after{background:var(--down)}.eyebrow-row{position:relative;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.6rem;font-weight:900;text-transform:uppercase}.live-dot{width:5px;height:5px;border-radius:50%;background:var(--soft)}.live-dot.streaming{background:var(--up);box-shadow:0 0 8px #34d399cc}.live-dot.connecting,.live-dot.reconnecting,.live-dot.fallback{background:var(--gold);box-shadow:0 0 8px #fbbf2499}.live-dot.error{background:var(--down);box-shadow:0 0 8px #f87171b3}.leader-panel h1{position:relative;margin:6px 0 8px;font-size:clamp(.85rem,3vw,1.1rem);line-height:1.15;letter-spacing:-.01em}.direction-line{position:relative;display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;color:var(--muted);font-size:.72rem;font-weight:700}.direction-line strong{color:var(--text);font-size:clamp(1.3rem,6vw,1.8rem);line-height:.9}.hero-board.up .direction-line strong{color:var(--up)}.hero-board.down .direction-line strong{color:var(--down)}.confidence-meter{position:relative;width:100%;height:4px;margin-top:8px;border-radius:4px;overflow:hidden;background:#ffffff0f}.confidence-meter span{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--accent),var(--cyan));transition:width .18s ease}.countdown-panel{display:flex;flex-direction:column;justify-content:space-between;gap:6px;padding:10px 12px;background:linear-gradient(180deg,#67e8f90d,#a78bfa08),var(--card)}.panel-title,.section-title{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.6rem;font-weight:900;text-transform:uppercase}.countdown-panel strong{font-variant-numeric:tabular-nums;font-size:clamp(1.4rem,6vw,2rem);line-height:.9}.progress-rail{height:4px;border-radius:4px;overflow:hidden;background:#ffffff0f}.progress-rail span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--accent),var(--down));transition:width .28s linear}.countdown-panel small{color:var(--muted);font-size:.62rem}.notice{display:flex;align-items:center;gap:6px;margin:0 0 6px;padding:7px 9px;color:#fca5a5;border-color:#f8717140;background:#4c171880;font-size:.72rem}.share-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px}.share-card{padding:10px;overflow:hidden;position:relative}.share-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--up)}.share-card.down:before{background:var(--down)}.share-heading{display:flex;align-items:center;gap:7px}.share-heading h2{margin:0;font-size:.78rem}.share-heading p{margin:1px 0 0;color:var(--muted);font-family:SFMono-Regular,Consolas,monospace;font-size:.58rem}.share-card.up .share-icon{color:var(--up);border-color:#34d39940;background:#0c3f2a59}.share-card.down .share-icon{color:var(--down);border-color:#f8717140;background:#4c171859}.share-price{display:flex;align-items:flex-end;gap:6px;margin:8px 0}.share-price strong{font-size:clamp(1.4rem,6vw,1.8rem);line-height:.86;font-variant-numeric:tabular-nums;transition:color .12s}.share-card.up .share-price strong{color:var(--up)}.share-card.down .share-price strong{color:var(--down)}.share-price span{color:var(--muted);font-size:.7rem;font-weight:800;padding-bottom:2px}.quote-grid,.metric-list,.details-list{display:grid;gap:4px;margin:0}.quote-grid{grid-template-columns:repeat(3,1fr)}.quote-grid div,.metric-list div,.details-list div{padding:5px 6px;border:1px solid var(--line);border-radius:6px;background:#ffffff06}dt{color:var(--muted);font-size:.55rem;font-weight:800;text-transform:uppercase}dd{margin:2px 0 0;font-size:.76rem;font-weight:800;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.metric-panel,.spark-panel,.book-panel,.details-panel{padding:8px 10px}.metric-panel,.spark-panel,.book-panel{grid-column:span 1}.details-panel{grid-column:span 2}.section-title{justify-content:space-between;margin-bottom:6px}.section-title h2{margin:0 auto 0 0;color:var(--text);font-size:.7rem;letter-spacing:0}.section-title span{color:var(--soft);text-transform:none;font-size:.6rem}.metric-list{grid-template-columns:1fr 1fr}.metric-list dt{display:flex;align-items:center;gap:4px}.sparkline{height:80px;border:1px solid var(--line);border-radius:6px;background:#ffffff05;overflow:hidden}.sparkline svg{width:100%;height:100%;display:block}.spark-grid{fill:none;stroke:#ffffff0f;stroke-width:1}.spark-up,.spark-down{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.spark-up{stroke:var(--up)}.spark-down{stroke:var(--down)}.legend-row{display:flex;align-items:center;gap:8px;margin-top:5px;color:var(--muted);font-size:.62rem;font-weight:800}.legend-row span:before{content:"";display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%}.legend-row .up:before{background:var(--up)}.legend-row .down:before{background:var(--down)}.book-columns{display:grid;grid-template-columns:1fr 1fr;gap:4px}.book-header,.book-row{display:grid;grid-template-columns:1fr auto;gap:4px;align-items:center}.book-header{margin-bottom:3px;color:var(--muted);font-size:.55rem;font-weight:900;text-transform:uppercase}.book-row{position:relative;min-height:20px;margin-bottom:2px;padding:0 5px;border:1px solid rgba(255,255,255,.04);border-radius:4px;overflow:hidden;font-size:.7rem;font-variant-numeric:tabular-nums}.book-row strong,.book-row em{position:relative;z-index:1}.book-row em{color:var(--muted);font-style:normal}.book-bar{position:absolute;inset:0 auto 0 0;opacity:.15;transition:width .12s}.book-row.bid .book-bar{background:var(--up)}.book-row.ask .book-bar{background:var(--down)}.empty-book{min-height:36px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:6px;color:var(--muted);font-size:.65rem}.details-list{grid-template-columns:1fr 1fr;margin-bottom:6px}.details-panel p{margin:0;color:var(--muted);font-size:.68rem;line-height:1.4}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sim-panel{margin-top:8px;padding:10px 12px;border:1px solid rgba(167,139,250,.2);border-radius:var(--r);background:linear-gradient(140deg,rgba(167,139,250,.05),rgba(129,140,248,.03),transparent 55%),var(--panel);box-shadow:0 4px 20px #a78bfa0f;animation:fadeUp .35s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sim-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.sim-header-left{display:flex;align-items:center;gap:8px}.sim-bot-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;box-shadow:0 2px 8px #8b5cf659;font-size:.75rem}.sim-header h2{margin:0;font-size:.8rem;display:flex;align-items:center;gap:5px}.sim-header small{display:block;color:var(--muted);font-size:.6rem}.sim-badge{padding:1px 5px;border-radius:4px;background:#a78bfa26;border:1px solid rgba(167,139,250,.25);color:var(--accent);font-size:.5rem;font-weight:900;letter-spacing:.05em}.sim-controls{display:flex;gap:4px}.sim-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--line);border-radius:6px;background:#ffffff0a;color:var(--text);font-size:.68rem;font-weight:700;cursor:pointer;transition:all .12s}.sim-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.sim-btn:active{transform:translateY(0)}.sim-btn-start{background:#34d3991a;border-color:#34d39940;color:var(--up)}.sim-btn-start:hover{background:#34d3992e}.sim-btn-pause{background:#fbbf2414;border-color:#fbbf2433;color:var(--gold)}.sim-btn-stop{background:#f8717114;border-color:#f8717126;color:var(--down);padding:4px 6px}.sim-status-strip{display:flex;align-items:center;gap:5px;padding:4px 8px;border-radius:6px;background:#ffffff06;border:1px solid var(--line);font-size:.62rem;font-weight:700;color:var(--muted);margin-bottom:6px;overflow:hidden}.sim-status-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;animation:pulse 1.8s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.sim-market-name{margin-left:auto;color:var(--soft);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;font-size:.58rem}.sim-countdown-row{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:6px}.sim-cd-item{display:flex;align-items:center;gap:4px;padding:5px 7px;border-radius:6px;background:#ffffff06;border:1px solid var(--line);font-size:.62rem;color:var(--muted)}.sim-cd-item strong{margin-left:auto;font-variant-numeric:tabular-nums;font-size:.78rem;color:var(--text)}.sim-cd-item.accent{border-color:#a78bfa33;background:#a78bfa0a}.sim-cd-item.accent strong{color:var(--accent)}.sim-balance-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:6px}.sim-balance-main{display:flex;align-items:center;gap:5px;padding:8px;border-radius:8px;border:1px solid var(--line);background:#ffffff06}.sim-balance-main strong{font-size:1.1rem;font-variant-numeric:tabular-nums}.sim-pnl-up{color:var(--up)!important;font-weight:700;font-size:.68rem}.sim-pnl-down{color:var(--down)!important;font-weight:700;font-size:.68rem}.sim-balance-chart{padding:4px;border-radius:8px;border:1px solid var(--line);background:#ffffff04;overflow:hidden}.sim-sparkline-svg{width:100%;height:44px;display:block}.sim-spark-empty{height:44px;display:grid;place-items:center;color:var(--soft);font-size:.6rem}.sim-pulse-dot{animation:pulse 1.5s ease infinite}.sim-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:6px}.sim-metrics-grid>div{padding:5px;border-radius:6px;border:1px solid var(--line);background:#ffffff05;text-align:center}.sim-metrics-grid small{display:block;color:var(--soft);font-size:.5rem;font-weight:800;text-transform:uppercase;margin-bottom:1px}.sim-metrics-grid strong{font-size:.72rem;font-variant-numeric:tabular-nums}.sim-section{margin-bottom:6px}.sim-section-title{display:flex;align-items:center;gap:4px;margin-bottom:4px;color:var(--muted);font-size:.58rem;font-weight:900;text-transform:uppercase}.sim-prob-scanner{padding:4px 0}.sim-prob-bar-wrap{position:relative;height:6px;border-radius:4px;background:#ffffff0d;overflow:visible;margin-bottom:3px}.sim-prob-zone{position:absolute;top:0;height:100%;border-radius:4px;background:linear-gradient(90deg,#34d39926,#a78bfa26);border:1px solid rgba(52,211,153,.15)}.sim-prob-needle{position:absolute;top:-2px;width:2px;height:10px;border-radius:1px;background:var(--gold);box-shadow:0 0 6px #fbbf2480;transform:translate(-50%);transition:left .3s}.sim-prob-labels{display:flex;justify-content:space-between;font-size:.55rem;color:var(--soft);font-weight:700}.sim-prob-labels .in-range{color:var(--up)}.sim-prob-labels .out-range{color:var(--down)}.sim-prob-empty{text-align:center;color:var(--soft);font-size:.6rem;padding:6px}.sim-recovery-block{padding:0}.sim-recovery-header{display:flex;justify-content:space-between;align-items:center;font-size:.58rem;font-weight:800;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.sim-recovery-header span{display:flex;align-items:center;gap:3px}.sim-recovery-bar{height:5px;border-radius:4px;background:#f871711f;overflow:hidden;margin-bottom:3px}.sim-recovery-bar span{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--up),var(--accent));transition:width .3s}.sim-recovery-stats{display:flex;gap:8px;font-size:.55rem;color:var(--soft);font-weight:600}.sim-trade-feed{display:flex;flex-direction:column;gap:3px;max-height:180px;overflow-y:auto}.sim-trade-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:5px;border:1px solid var(--line);background:#ffffff04;animation:slideIn .2s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.sim-trade-icon{width:20px;height:20px;display:grid;place-items:center;border-radius:5px;flex-shrink:0;font-size:.65rem}.sim-trade-item.win .sim-trade-icon{background:#34d3991f;color:var(--up)}.sim-trade-item.loss .sim-trade-icon{background:#f871711f;color:var(--down)}.sim-trade-item.skip .sim-trade-icon{background:#ffffff0a;color:var(--soft)}.sim-trade-info{flex:1;min-width:0}.sim-trade-info strong{display:block;font-size:.65rem}.sim-trade-info small{color:var(--soft);font-size:.55rem}.sim-trade-pnl{font-size:.7rem;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.sim-trade-pnl.win{color:var(--up)}.sim-trade-pnl.loss{color:var(--down)}.sim-trade-pnl.skip{color:var(--soft)}.sim-log-toggle{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:4px;border:1px solid var(--line);border-radius:5px;background:#ffffff04;color:var(--soft);font-size:.6rem;font-weight:700;cursor:pointer;transition:background .12s}.sim-log-toggle:hover{background:#ffffff0a;color:var(--muted)}.sim-log-feed{margin-top:4px;max-height:140px;overflow-y:auto;display:flex;flex-direction:column;gap:1px}.sim-log-item{display:flex;align-items:center;gap:4px;padding:2px 4px;font-size:.58rem;border-radius:3px}.sim-log-icon{flex-shrink:0;opacity:.5}.sim-log-msg{flex:1;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sim-log-ago{color:var(--soft);font-size:.5rem;flex-shrink:0;font-variant-numeric:tabular-nums}.sim-log-item.trade{color:var(--cyan)}.sim-log-item.error{color:var(--down)}.sim-log-item.injection{color:var(--accent)}.sim-log-item.recovery{color:var(--up)}.sim-empty{text-align:center;padding:8px;color:var(--soft);font-size:.6rem}.sim-config-panel{display:flex;flex-direction:column;gap:5px;padding:8px;margin-bottom:6px;border-radius:6px;background:#ffffff05;border:1px solid var(--line)}.sim-config-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.sim-config-row label{font-size:.6rem;font-weight:700;color:var(--muted)}.sim-config-row input{width:50px;padding:3px 5px;font-size:.6rem;font-family:inherit;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);background:#0003;border:1px solid var(--line);border-radius:4px;text-align:right}.sim-config-row input:focus{outline:none;border-color:var(--accent)}@media(min-width:768px){.app-shell{max-width:680px}.analytics-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.app-shell{max-width:900px}.hero-board{grid-template-columns:1fr minmax(200px,240px)}.analytics-grid{grid-template-columns:repeat(12,1fr)}.metric-panel,.spark-panel{grid-column:span 4}.book-panel{grid-column:span 6}.details-panel{grid-column:span 8}}.sim-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;display:grid;place-items:center;animation:fadeIn .2s ease}.sim-modal{background:var(--panel);border:1px solid var(--line);border-radius:10px;width:90%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #00000080;animation:slideUp .2s ease;overflow:hidden}.sim-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line);background:#ffffff05}.sim-modal-header h3{margin:0;font-size:.9rem;color:var(--text)}.sim-modal-close{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:1.2rem;line-height:1;padding:0 4px}.sim-modal-close:hover{color:var(--text)}.sim-modal-content{padding:16px;overflow-y:auto;font-size:.75rem}.sim-modal-content dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.sim-modal-content dt{color:var(--muted);margin-bottom:2px}.sim-modal-content dd{font-size:.85rem;color:var(--text)}.sim-modal-list{display:flex;flex-direction:column;gap:8px}.sim-modal-list-item{padding:8px;border:1px solid var(--line);border-radius:6px;background:#ffffff05;cursor:pointer}.sim-modal-list-item:hover{border-color:var(--accent);background:#a78bfa0d}.sim-modal-list-item strong{display:block;font-size:.8rem;margin-bottom:2px}.sim-modal-list-item small{color:var(--muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bot-manager{display:flex;flex-direction:column;gap:12px}.bot-create-form{background:#ffffff08;border:1px solid var(--accent);border-radius:var(--r);padding:12px;animation:slideIn .2s ease;box-shadow:0 4px 20px #a78bfa1a}.bot-create-form h3{margin:0 0 10px;color:var(--text);font-size:.85rem}.bot-form-grid{display:flex;flex-direction:column;gap:8px}.bot-form-select{background:#0003;border:1px solid var(--line);color:var(--text);border-radius:4px;padding:3px 5px;font-size:.65rem}.bot-pwd-input{background:#0003;border:1px solid var(--line);color:var(--text);border-radius:4px;padding:4px 8px;font-size:.65rem}.bot-form-footer{margin-top:4px;padding-top:8px;border-top:1px solid var(--line);display:flex;justify-content:flex-end}.bot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.bot-card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 10px #0003}.bot-card:hover{transform:translateY(-2px);border-color:#ffffff26;box-shadow:0 6px 16px #0000004d}.bot-card-header{display:flex;align-items:center;gap:8px}.bot-card-avatar{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;color:#fff;font-size:.7rem;font-weight:700}.bot-card-title{display:flex;flex-direction:column;flex:1}.bot-card-title strong{font-size:.75rem;line-height:1}.bot-card-badge{font-size:.55rem;color:var(--muted)}.bot-card-status{padding:4px;background:#ffffff08;border-radius:4px}.bot-card-body{display:flex;flex-direction:column;gap:4px;padding:6px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.bot-card-row{display:flex;justify-content:space-between;align-items:center;font-size:.65rem}.bot-card-label{color:var(--muted)}.bot-card-empty{font-size:.65rem;color:var(--soft);text-align:center;padding:8px 0}.bot-card-spark{height:24px;opacity:.7}.bot-card-spark svg{width:100%;height:100%}.bot-detail-modal{width:95%;max-width:500px;max-height:90vh}.bot-detail-modal .sim-modal-header{border-bottom:2px solid var(--accent)}
