:root { color-scheme: dark; --bg:#090b0e; --panel:#11151a; --line:#252c34; --text:#f3f5f7; --muted:#8d99a5; --green:#78f0a7; --blue:#80a8ff; --danger:#ff7a7a; }
* { box-sizing: border-box; }
body { margin:0; background:radial-gradient(circle at 80% 5%,#15231c 0,transparent 28%),var(--bg); color:var(--text); font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; min-height:100vh; }
.topbar { height:72px; padding:0 max(24px,calc((100vw - 1180px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; gap:12px; align-items:center; font-weight:700; letter-spacing:.02em; }.mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid #456554;color:var(--green);border-radius:9px;font-size:12px}.mode,.step,.eyebrow{font-size:11px;letter-spacing:.16em;color:var(--green);font-weight:700}.mode{padding:7px 10px;border:1px solid #31523e;border-radius:99px}
main { max-width:1180px; margin:auto; padding:74px 24px 100px; }.hero{max-width:870px;margin-bottom:56px}.hero h1{font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-.055em;margin:14px 0 22px}.hero h1 span{color:#77818b}.subtitle{font-size:18px;line-height:1.65;color:var(--muted);max-width:760px}
.card{border:1px solid var(--line);background:rgba(17,21,26,.9);border-radius:18px}.connect-card{padding:30px;display:grid;grid-template-columns:1fr 1.2fr;gap:54px;align-items:center}.card h2,.dashboard h2{font-size:28px;margin:7px 0 9px}.muted{color:var(--muted);line-height:1.55}label{display:block;font-size:13px;color:#c6cdd4;margin-bottom:9px}.token-row{display:flex;gap:10px}input,select,button{font:inherit;border-radius:10px;border:1px solid var(--line)}input,select{background:#090c0f;color:var(--text);padding:13px 15px}input{width:100%}input:focus,select:focus{outline:2px solid #49745c;outline-offset:1px}button{padding:12px 20px;background:var(--green);color:#07100b;font-weight:750;cursor:pointer;white-space:nowrap}button:disabled{opacity:.55;cursor:wait}.secondary{background:#17231c;color:var(--green);border-color:#31523e}.ghost{background:transparent;color:var(--muted)}.status{min-height:22px;margin:10px 0 0;color:var(--muted);font-size:13px}.status.error{color:var(--danger)}
.hidden{display:none}.dashboard{margin-top:60px}.dashboard-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.actions{display:flex;gap:8px}.metrics{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:12px;margin:20px 0}.metric{border:1px solid var(--line);border-radius:15px;padding:20px;background:#101419}.metric.primary{background:linear-gradient(145deg,#18261e,#101719);border-color:#31523e}.metric span{display:block;color:var(--muted);font-size:12px;margin-bottom:18px}.metric strong{font-size:27px;letter-spacing:-.03em}.metric small{color:var(--muted);margin-left:5px}.table-card{overflow:hidden}.table-title{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.table-title h3{margin:0}.table-title span{font-size:12px;color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:15px 24px;text-align:right;border-bottom:1px solid #1c2229;font-size:13px}th{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.08em}th:first-child,td:first-child,th:nth-child(2),td:nth-child(2){text-align:left}td.positive{color:var(--green)}td.negative{color:var(--danger)}footer{color:#5f6973;text-align:center;border-top:1px solid var(--line);padding:25px;font-size:12px}
@media(max-width:800px){.connect-card{grid-template-columns:1fr;gap:20px}.metrics{grid-template-columns:1fr 1fr}.dashboard-head{align-items:start;gap:20px;flex-direction:column}.actions{width:100%;flex-wrap:wrap}.hero h1{font-size:43px}}@media(max-width:520px){main{padding-top:45px}.token-row{flex-direction:column}.metrics{grid-template-columns:1fr}.mode{display:none}}

#connection-mode{width:100%;margin-bottom:14px}#sandbox-balance-row{margin-bottom:14px}
.strategy-save{display:flex;align-items:center;gap:14px;padding:16px 24px 22px}.strategy-save span{color:var(--muted);font-size:12px}.table-card+.table-card{margin-top:18px}#topup-status,#topup-summary{margin:0;padding:0 24px 16px}
.strategy-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;align-items:end;padding:22px 24px}.strategy-form label{display:grid;gap:8px;color:var(--muted);margin:0}.strategy-form .check{display:flex;align-items:center;gap:10px;min-height:48px}.strategy-form .check input{width:auto}#vdo-status,#vdo-summary{margin:0;padding:0 24px 16px}
.sandbox-wizard{border:1px solid #31523e;background:#0d1712;border-radius:14px;padding:16px;margin:2px 0 16px}.wizard-head{display:flex;justify-content:space-between;gap:12px;color:var(--green);font-size:13px;font-weight:700}.wizard-head small{color:var(--muted);font-weight:500}.sandbox-wizard ol{list-style:none;padding:0;margin:16px 0;display:grid;gap:13px}.sandbox-wizard li{display:flex;gap:12px}.sandbox-wizard li>span{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#1c3928;color:var(--green);font-weight:800;font-size:12px}.sandbox-wizard strong{font-size:13px}.sandbox-wizard p{margin:3px 0;color:var(--muted);font-size:12px;line-height:1.4}.sandbox-wizard a{color:var(--green);font-size:12px}.sandbox-wizard .wizard-note{border-top:1px solid #264432;padding-top:12px;margin-bottom:0}.balance-presets{display:flex;gap:7px;margin:8px 0 14px}.balance-presets button{padding:7px 10px;background:#17231c;color:var(--green);border-color:#31523e;font-size:11px}
.trading-warning{border:1px solid #733f3f;background:#211313;border-radius:14px;padding:16px;margin:2px 0 16px}.trading-warning strong{color:#ff9a9a}.trading-warning p{color:#c99;margin:8px 0 14px;font-size:12px;line-height:1.5}.trading-warning .risk-check{display:flex;gap:10px;align-items:flex-start;color:#f1caca;line-height:1.4}.trading-warning input{width:auto;margin-top:2px}
.remember-check{display:flex;align-items:center;gap:9px;margin-top:12px;color:var(--muted)}.remember-check input{width:auto}
