:root { --bg:#101612; --panel:#18211b; --panel-2:#1d2921; --line:#2c3a2f; --text:#f1f5ef; --muted:#9eaba0; --green:#8fddba; --green-strong:#58c995; --danger:#f07e71; --yellow:#e9bd6b; font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--text); background:var(--bg); }
.scope-note { max-width:760px; margin:8px 0 0; color:var(--muted); font-size:12px; line-height:1.55; }
.route[hidden] { display:none!important; }
.shell:has(.route:target) .route.active { display:none; }.shell:has(.route:target) .route:target { display:block; }
#home > .section-block { order:6; }
.balances-total-row td { border-bottom:0; background:rgba(143,221,186,.06); font-size:14px; font-weight:750; }.balances-total-row td:last-child { color:var(--green); white-space:nowrap; }.balances-total-row small { display:block; margin-top:3px; color:var(--muted); font-weight:500; font-size:11px; }
#home { display:flex; flex-direction:column; }.start-guide { order:2; margin-top:18px; padding:24px; }.primary-chart { order:3; }.research-card { order:4; }.summary-grid { order:5; }.dashboard-next-step { order:6; margin-top:18px; padding:22px; }.dashboard-next-step h2 { margin:0; font-size:22px; }.next-step-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:18px; }.connections-panel { margin-top:20px; padding:22px; }.connections-panel h2 { margin:0; font-size:19px; }.connections-panel .button { display:grid; gap:4px; text-align:left; }.connections-panel .button small { color:var(--muted); font-weight:500; }.builder-mode { display:inline-flex; padding:4px; margin-bottom:12px; border:1px solid var(--line); border-radius:10px; background:#121a14; }.builder-mode button { border:0; border-radius:7px; padding:8px 12px; color:var(--muted); background:transparent; font-size:13px; font-weight:750; }.builder-mode button.active { color:#122117; background:var(--green); }.builder-mode + .subtle { margin-top:0; margin-bottom:20px; }
.start-guide-heading { max-width:680px; }.start-guide-heading h2 { margin:0; font-size:25px; }.start-guide-heading .subtle { margin-bottom:0; }.intent-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; margin-top:22px; }.intent-card { display:flex; min-height:156px; flex-direction:column; align-items:flex-start; gap:8px; border:1px solid var(--line); border-radius:14px; padding:18px; color:var(--text); background:#121b15; text-align:left; text-decoration:none; transition:transform .16s ease, border-color .16s ease, background .16s ease; }.intent-card:hover { transform:translateY(-2px); border-color:#5ec8a0; background:#17251d; }.intent-card.featured { border-color:#69d8ae; background:linear-gradient(135deg, #193428, #142019); cursor:pointer; }.intent-card span { color:var(--green); font-size:12px; font-weight:800; letter-spacing:.1em; }.intent-card b { font-size:18px; }.intent-card small { color:var(--muted); font-size:14px; line-height:1.45; }.intent-card em { margin-top:auto; color:var(--green); font-size:13px; font-style:normal; font-weight:750; }.dashboard-next-step[data-state="attention"] { border-color:#bd9b52; }.dashboard-next-step[data-state="position"] { border-color:#4b967b; } @media (max-width:760px) { .intent-grid { grid-template-columns:1fr; }.intent-card { min-height:0; } }
.summary-card { cursor:pointer; transition:border-color .18s ease, transform .18s ease, background .18s ease; }.summary-card:hover,.summary-card:focus-visible { border-color:var(--green); background:#203026; transform:translateY(-2px); outline:0; }.summary-detail-list { display:grid; gap:8px; }.summary-detail-row { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:12px 0; border-bottom:1px solid var(--line); }.summary-detail-row small { display:block; color:var(--muted); margin-top:3px; }.summary-detail-row b { text-align:right; }
.market-reference { margin:12px 0 0; color:var(--green); font-size:12px; min-height:18px; }
.research-card { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:21px 22px; margin:18px 0; }.research-card h2 { margin:0; font-size:20px; letter-spacing:-.5px; }
.research-recommendation { margin:9px 0 0; color:var(--green); font-weight:780; font-size:18px; letter-spacing:-.25px; }
.research-controls { display:flex; align-items:end; gap:12px; }.research-controls label { color:var(--muted); font-size:13px; font-weight:650; letter-spacing:.1px; }.research-controls input,.research-controls select { display:block; width:138px; margin-top:7px; padding:10px 11px; color:var(--text); font-size:14px; background:#111913; border:1px solid var(--line); border-radius:8px; }
.timeframes { display:flex; gap:4px; margin-left:auto; }.timeframes button { border:0; background:transparent; color:var(--muted); padding:6px 8px; border-radius:6px; font-size:12px; }.timeframes button.active,.timeframes button:hover { color:var(--green); background:#263a2b; }.chart-tooltip { position:absolute; pointer-events:none; z-index:2; min-width:170px; padding:10px; border:1px solid #476b51; border-radius:8px; color:var(--text); background:#101812f2; box-shadow:0 8px 24px #0008; font-size:11px; line-height:1.55; }.chart-tooltip b { color:var(--green); }.chart-tooltip .levels { color:var(--muted); margin-top:5px; max-width:260px; }.chart .grid-level { stroke:#e9bd6b; stroke-width:1; stroke-dasharray:4 4; opacity:.72; }.chart .crosshair { stroke:#b8d9c3; stroke-width:1; stroke-dasharray:3 3; opacity:.65; }
.chart .candle-wick { stroke-width:1.2; }.chart .candle-body.up,.chart .candle-wick.up { fill:#8fddba; stroke:#8fddba; }.chart .candle-body.down,.chart .candle-wick.down { fill:#f07e71; stroke:#f07e71; }
.chart .axis-label { fill:var(--muted); font-size:10px; font-family:inherit; }
.chart .sr-level { stroke-width:1.1; stroke-dasharray:6 4; opacity:.9; }.chart .sr-level.support { stroke:#70d9b0; }.chart .sr-level.resistance { stroke:#ef9a79; }.chart .sr-label { font-size:9px; font-family:inherit; font-weight:750; paint-order:stroke; stroke:#152018; stroke-width:3px; stroke-linejoin:round; }.chart .sr-label.support { fill:#84dfbc; }.chart .sr-label.resistance { fill:#f4aa8c; }
.primary-chart { margin-bottom:18px; }.primary-chart .chart { height:330px; }.chart-market-selectors { display:flex; gap:7px; margin-top:5px; }.chart-quote-select,.chart-pair-select { padding:7px 10px; color:#fff; font-size:15px; font-weight:700; background:#101612; border:1px solid var(--line); border-radius:8px; outline:0; }.chart-quote-select { width:100px; }.chart-pair-select { min-width:142px; }.chart-quote-select option,.chart-pair-select option { color:#fff; background:#101612; }.language-select select { color:var(--text); background:#202c23; border:1px solid var(--line); border-radius:7px; padding:6px 8px; font-size:12px; font-weight:750; }
.sr-summary { display:grid; grid-template-columns:auto auto; column-gap:9px; align-content:center; min-height:37px; padding:3px 10px; border-left:1px solid var(--line); color:var(--muted); font-size:10px; line-height:1.45; white-space:nowrap; }.sr-summary span { grid-row:1 / span 2; padding-right:3px; font-weight:750; letter-spacing:.02em; }.sr-summary span small { display:block; font-weight:500; }.sr-summary b { font-size:11px; }.sr-summary b.support { color:#84dfbc; }.sr-summary b.resistance { color:#f4aa8c; }
.sr-history { align-self:center; min-height:35px; padding:6px 7px; color:var(--text); font-size:11px; font-weight:700; background:#101612; border:1px solid var(--line); border-radius:7px; }
.live-readiness { margin-top:20px; padding:22px; }.live-readiness h2 { margin:0; font-size:19px; }.live-readiness .subtle { max-width:660px; }.live-requirements { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:16px; padding-top:15px; border-top:1px solid var(--line); }.live-requirements b { width:100%; color:#f4aa8c; }.live-requirements span { color:var(--muted); font-size:12px; }.live-requirements span.complete { color:var(--green); }
.signed-in-user { max-width:150px; overflow:hidden; color:var(--muted); font-size:12px; text-overflow:ellipsis; white-space:nowrap; }.sign-out { border:0; padding:0; color:var(--muted); font-size:12px; background:transparent; }.sign-out:hover { color:var(--text); }.form-body label + label { margin-top:15px; }.form-body label input { display:block; width:100%; margin-top:6px; padding:10px; color:var(--text); background:#111913; border:1px solid var(--line); border-radius:8px; }.form-error { margin:14px 0 0; color:var(--danger); font-size:13px; }
.testnet-validation { display:grid; gap:5px; margin-top:16px; padding-top:15px; border-top:1px solid var(--line); }.testnet-validation b { color:#f4aa8c; }.testnet-validation b.complete { color:var(--green); }.testnet-validation span { color:var(--muted); font-size:12px; }
.bot-drawer { position:fixed; z-index:10; top:0; right:0; width:min(460px, 100vw); height:100vh; overflow-y:auto; padding:24px; border-left:1px solid var(--line); background:#111913; box-shadow:-18px 0 60px #0009; transform:translateX(0); transition:transform .22s ease; }.bot-drawer.hidden { display:block; transform:translateX(105%); pointer-events:none; }.drawer-head { display:flex; justify-content:space-between; align-items:start; gap:16px; }.drawer-head h2 { margin:0; font-size:25px; }.drawer-tabs { display:flex; gap:4px; margin:24px 0 16px; border-bottom:1px solid var(--line); }.drawer-tabs button { border:0; color:var(--muted); background:transparent; padding:10px 11px; font-size:13px; }.drawer-tabs button.active { color:var(--green); border-bottom:2px solid var(--green); }.drawer-section { padding:17px 0; }.drawer-section h3 { margin:0 0 12px; font-size:15px; }.drawer-metrics { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.drawer-metrics div { padding:11px; border:1px solid var(--line); border-radius:9px; }.drawer-metrics span,.level-row small { display:block; color:var(--muted); font-size:11px; }.drawer-metrics b { display:block; margin-top:4px; }.drawer-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }.level-row { display:flex; justify-content:space-between; align-items:center; padding:11px 0; border-bottom:1px solid var(--line); }.level-row b { font-size:14px; }.level-row em { color:var(--muted); font-size:11px; font-style:normal; }.level-row em.buy { color:var(--green); }.level-row em.sell { color:var(--yellow); }.drawer-note { color:var(--muted); font-size:12px; line-height:1.5; }.drawer-activity { list-style:none; padding:0; margin:0; }.drawer-activity li { padding:10px 0; border-bottom:1px solid var(--line); font-size:13px; }.drawer-activity small { display:block; color:var(--muted); margin-top:3px; }
@media (max-width:800px) { .research-card,.research-controls { align-items:stretch; flex-direction:column; }.research-controls input,.research-controls select { width:100%; }.primary-chart .chart { height:258px; }.chart-panel .section-heading { flex-wrap:wrap; }.chart-market-selectors { flex-wrap:wrap; }.sr-summary { border-left:0; border-top:1px solid var(--line); width:calc(100% - 65px); padding:8px 0 0; }.sr-history { align-self:end; margin-top:8px; }.timeframes { margin-left:0; order:4; }.price { margin-left:auto; } }
.backtest-results { margin-top:20px; padding:16px; border:1px solid var(--line); border-radius:10px; background:#111913; }.backtest-results h3 { margin:0 0 13px; font-size:14px; }.backtest-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }.backtest-grid span { display:block; color:var(--muted); font-size:11px; }.backtest-grid b { display:block; margin-top:4px; font-size:15px; }
* { box-sizing:border-box; } body { margin:0; min-width:320px; background:radial-gradient(800px 520px at 92% -10%, #213d2a 0%, transparent 70%), var(--bg); } button, input, select { font:inherit; } button { cursor:pointer; } .topbar { height:72px; border-bottom:1px solid var(--line); display:flex; align-items:center; gap:48px; padding:0 max(24px, calc((100vw - 1240px)/2)); background:rgba(16,22,18,.88); backdrop-filter:blur(16px); position:sticky; top:0; z-index:5; } .brand { color:var(--text); text-decoration:none; font-size:22px; font-weight:800; letter-spacing:-1px; display:flex; align-items:center; gap:8px; }.brand-mark { display:grid; place-items:center; width:27px; height:27px; border-radius:9px; color:#102017; background:var(--green); font-size:17px; } nav { display:flex; gap:6px; flex:1; }.nav-link { color:var(--muted); text-decoration:none; padding:9px 12px; border-radius:8px; font-size:14px; }.nav-link:hover,.nav-link.active { color:var(--text); background:#202c23; }.topbar-right { display:flex; align-items:center; gap:18px; }.environment { color:var(--muted); font-size:13px; }.environment i { width:8px; height:8px; display:inline-block; border-radius:100%; background:var(--yellow); margin-right:6px; }.shell { width:min(1240px, calc(100% - 48px)); margin:56px auto 100px; }.route { display:none; }.route.active { display:block; }.intro { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:34px; }.intro.compact { align-items:center; }.eyebrow { color:var(--green); font-size:11px; letter-spacing:1.4px; font-weight:750; margin:0 0 9px; }.intro h1 { font-size:42px; letter-spacing:-1.8px; margin:0; }.subtle { color:var(--muted); margin:9px 0 0; line-height:1.5; }.button { border:0; border-radius:10px; padding:12px 16px; color:var(--text); font-weight:700; }.button.primary { background:var(--green); color:#102017; }.button.primary:hover { background:#b0efce; }.button.secondary { background:#28362c; }.button.danger { color:#351210; background:var(--danger); }.button.small { padding:9px 13px; font-size:13px; }.panel,.stat { border:1px solid var(--line); background:linear-gradient(145deg, rgba(34,48,38,.85), rgba(22,30,24,.85)); border-radius:15px; }.market-status { display:flex; align-items:center; gap:17px; padding:22px; margin-bottom:18px; }.regime-icon { width:44px; height:44px; display:grid; place-items:center; font-size:27px; border-radius:12px; background:#253e30; color:var(--green); }.market-status h2,.section-heading h2,.actions-panel h2 { margin:0; font-size:20px; letter-spacing:-.5px; }.market-status p:not(.eyebrow) { color:var(--muted); margin:5px 0 0; font-size:14px; }.status-meta { margin-left:auto; display:grid; text-align:right; gap:6px; color:var(--muted); font-size:12px; }.confidence { color:var(--green); font-weight:700; }.summary-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:18px; }.stat { padding:18px; }.stat span,.stat small { display:block; color:var(--muted); font-size:12px; }.stat strong { display:block; margin:9px 0 5px; font-size:25px; letter-spacing:-.8px; }.positive { color:var(--green)!important; }.negative { color:var(--danger)!important; }.content-grid { display:grid; grid-template-columns:1.7fr 1fr; gap:18px; }.chart-panel { overflow:hidden; }.section-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; }.chart-panel .section-heading { padding:22px 22px 0; }.price { text-align:right; }.price strong,.price span { display:block; }.price strong { font-size:17px; }.price span { font-size:12px; margin-top:4px; }.chart { height:258px; margin:12px 0 0; position:relative; }.chart svg { width:100%; height:100%; }.grid-line { stroke:#2e4033; stroke-width:1; }.area { fill:url(#fill); }.line { fill:none; stroke:var(--green); stroke-width:3; vector-effect:non-scaling-stroke; }.chart-label { position:absolute; right:21%; padding:4px 7px; border-radius:5px; font-size:10px; color:#cbf8dd; background:#244531; }.label-buy { bottom:36%; }.label-sell { top:24%; }.chart-footer { display:flex; justify-content:space-between; gap:12px; border-top:1px solid var(--line); padding:13px 22px; color:var(--muted); font-size:11px; }.chart-footer b { color:var(--text); }.actions-panel { padding:23px; }.actions-panel h2 { font-size:24px; }.action-row { width:100%; display:grid; grid-template-columns:38px 1fr auto; text-align:left; gap:12px; align-items:center; padding:14px 0; border:0; border-bottom:1px solid var(--line); color:var(--text); background:none; margin-top:12px; }.action-row b,.action-row small { display:block; }.action-row small { color:var(--muted); font-size:12px; margin-top:3px; }.action-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:9px; background:#264330; color:var(--green); font-size:20px; }.action-icon.warning { background:#453426; color:var(--yellow); }.section-block { margin-top:48px; }.text-link { color:var(--green); font-size:13px; text-decoration:none; }.bot-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:15px; margin-top:16px; }.bot-card { padding:20px; position:relative; }.bot-card-header { display:flex; justify-content:space-between; align-items:flex-start; }.bot-card h3 { margin:5px 0 3px; font-size:18px; }.bot-card p { color:var(--muted); font-size:13px; margin:0; }.tag { font-size:10px; color:var(--green); border:1px solid #3d674a; padding:5px 7px; border-radius:20px; }.tag.paused { color:var(--yellow); border-color:#67543d; }.bot-metrics { display:grid; grid-template-columns:repeat(3,1fr); margin:23px 0 18px; }.bot-metrics span { display:block; color:var(--muted); font-size:11px; }.bot-metrics b { display:block; margin-top:4px; font-size:14px; }.bot-actions { display:flex; align-items:center; gap:8px; }.link-button { border:0; background:none; color:var(--green); padding:8px 0; font-size:13px; font-weight:700; }.link-button.muted { color:var(--muted); margin-left:auto; }.table-wrap { overflow:auto; } table { width:100%; border-collapse:collapse; min-width:650px; } th,td { padding:15px 19px; text-align:left; border-bottom:1px solid var(--line); font-size:13px; } th { color:var(--muted); font-size:11px; font-weight:600; letter-spacing:.4px; } td b { font-size:13px; } td small { display:block; color:var(--muted); margin-top:3px; }.activity-list { margin-top:16px; }.activity { display:flex; align-items:center; gap:14px; padding:17px 20px; border-bottom:1px solid var(--line); }.activity:last-child { border:0; }.activity-dot { width:9px; height:9px; border-radius:50%; background:var(--green); }.activity-dot.pause { background:var(--yellow); }.activity p { margin:0; flex:1; font-size:14px; }.activity time { color:var(--muted); font-size:12px; } dialog { border:1px solid var(--line); border-radius:16px; color:var(--text); background:var(--panel); width:min(590px, calc(100% - 28px)); padding:0; box-shadow:0 22px 80px #000a; } dialog::backdrop { background:#071009b8; backdrop-filter:blur(3px); }.dialog-head,.dialog-footer { display:flex; justify-content:space-between; align-items:center; padding:21px 24px; }.dialog-head { border-bottom:1px solid var(--line); }.dialog-head h2 { margin:0; font-size:23px; }.dialog-footer { border-top:1px solid var(--line); gap:10px; justify-content:flex-end; }.icon-button { border:0; color:var(--muted); background:none; font-size:28px; line-height:1; }.form-body { padding:24px; }.form-body > label,.form-body label { color:var(--muted); font-size:12px; display:block; }.strategy-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:8px 0 20px; }.strategy { padding:15px; color:var(--text); border:1px solid var(--line); background:var(--panel-2); border-radius:10px; text-align:left; }.strategy.selected { border-color:var(--green); background:#203a29; }.strategy b,.strategy small { display:block; }.strategy small { color:var(--muted); margin-top:4px; font-size:12px; }.two-col { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:15px; }.two-col input,.two-col select { display:block; width:100%; color:var(--text); background:#111913; border:1px solid var(--line); border-radius:8px; padding:10px; margin-top:6px; }.notice { margin-top:20px; border-radius:9px; padding:12px; color:#cad8cc; background:#26342a; font-size:12px; line-height:1.5; }.hidden { display:none; } #toast { position:fixed; right:24px; bottom:24px; background:#d8f7e5; color:#16311f; font-weight:700; border-radius:10px; padding:13px 16px; transform:translateY(100px); opacity:0; transition:.25s; box-shadow:0 8px 24px #0005; } #toast.show { transform:translateY(0); opacity:1; }
@media (max-width:800px) { .topbar { gap:12px; padding:0 16px; }.topbar nav { display:none; }.topbar-right { margin-left:auto; }.environment { display:none; }.shell { width:min(100% - 28px, 620px); margin-top:30px; }.intro h1 { font-size:33px; }.summary-grid,.content-grid,.bot-grid { grid-template-columns:1fr; }.market-status { align-items:flex-start; }.status-meta { display:none; }.chart-footer span:last-child { display:none; }.two-col { grid-template-columns:1fr; }.intro { align-items:flex-start; }.button.primary { white-space:nowrap; } }
