:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#17212b;background:#eef3f7;font-synthesis:none;--surface:#fff;--surface2:#f7f9fb;--line:#d9e1e8;--soft:#e9eef2;--muted:#6f7d8c;--green:#159447;--green-bg:#edf9f1;--red:#d83b3b;--red-bg:#fff1f1;--shadow:0 1px 2px #1c2b3a0a}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;min-width:1180px;overflow:hidden;background:#eef3f7;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit}.app-shell{height:100vh;padding:0 10px 8px;display:grid;grid-template-rows:56px minmax(0,1fr) 52px;gap:8px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:7px;box-shadow:var(--shadow)}.topbar{display:flex;align-items:center;padding:0 14px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 1px 3px #1c2b3a0a}.brand{min-width:228px;display:flex;align-items:center;gap:10px;font-size:17px}.brand svg{width:29px;height:29px;color:var(--green);transform:rotate(-8deg)}.app-title{min-width:310px;padding-left:18px;border-left:1px solid var(--line)}.app-title h1{margin:0 0 1px;font-size:17px}.app-title p{margin:0;color:var(--muted);font-size:9px}.top-status{height:100%;margin-left:auto;display:flex;align-items:center}.top-status>div{min-width:116px;height:36px;padding:0 13px;border-left:1px solid var(--line);display:flex;align-items:center;gap:7px}.top-status>div svg{width:19px;height:19px;color:var(--green)}.top-status>div>i,.live>i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #dff4e6}.top-status span{display:flex;flex-direction:column;gap:1px;position:relative}.top-status b{font-size:10px;white-space:nowrap}.top-status small,.top-status em{font-size:8px;color:var(--muted);font-style:normal;white-space:nowrap}.top-status em{position:absolute;left:16px;top:13px;color:#9a6a16}.dashboard{min-height:0;display:grid;grid-template-columns:450px minmax(0,1fr);gap:8px}.builder{min-height:0;padding:11px 16px 10px;overflow:hidden}.builder h2,.section-head h2,.positions-head h2{margin:0;font-size:15px}.form-step{margin-top:9px}.step-title{display:flex;align-items:center;gap:9px;margin-bottom:5px}.step-title i{width:21px;height:21px;margin-left:-4px;display:grid;place-items:center;border:1px solid #74b98a;border-radius:50%;background:var(--green-bg);color:#166c38;font-style:normal;font-size:9px}.step-title b{font-size:11px}.select-box,.amount-box{height:34px;margin-left:26px;padding:0 10px;border:1px solid #cdd7df;border-radius:5px;background:#fff;display:flex;align-items:center;gap:7px}.select-box:focus-within,.amount-box:focus-within{border-color:#65ae7c;box-shadow:0 0 0 2px #dff4e6}.select-box svg{width:15px;height:15px;color:#637282}.select-box select{min-width:48px;color:#17212b;background:transparent;border:0;outline:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-weight:650;font-size:11px}.select-box span{flex:1;font-size:11px;font-weight:650}.select-box svg:last-child{width:12px}.amount-box input{min-width:0;flex:1;background:transparent;border:0;outline:0;color:#15202b;font-size:17px;font-weight:700}.amount-box span{font-size:10px;color:#5f6d7b}.quick-buttons{margin:5px 0 0 26px;display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.quick-buttons button{height:23px;border:1px solid #d5dde4;border-radius:4px;background:#f8fafb;color:#677584;font-size:9px;cursor:pointer}.quick-buttons button.active{border-color:#69af7e;background:var(--green-bg);color:var(--green);font-weight:650}.two-col{margin-left:26px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.choice{height:34px;border:1px solid #d2dae2;border-radius:5px;background:#f8fafb;display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;font-weight:650;cursor:pointer}.choice svg{width:15px}.choice.buy{color:var(--green)}.choice.sell{color:var(--red)}.choice.selected{border-color:currentColor;background:var(--green-bg)}.choice.sell.selected{background:var(--red-bg)}.mode{min-height:49px;position:relative;padding:7px 8px;border:1px solid #d2dae2;border-radius:5px;background:#f8fafb;display:flex;align-items:flex-start;gap:7px;text-align:left;cursor:pointer}.mode.selected{border-color:#69af7e;background:var(--green-bg)}.mode>svg:first-child{width:16px;height:16px;margin-top:1px}.mode>svg:last-child{position:absolute;right:6px;top:6px;width:16px;height:16px;color:var(--green)}.mode span{display:flex;flex-direction:column;gap:2px}.mode b{font-size:10px}.mode.selected b{color:var(--green)}.mode small{font-size:8px;color:#71808f}.slice-box{height:33px;margin-left:26px;border:1px solid #d2dae2;border-radius:5px;background:#fff;display:grid;grid-template-columns:34px 55px 34px 1fr;align-items:center;overflow:hidden}.slice-box button{height:100%;border:0;background:#f5f7f9;display:grid;place-items:center;cursor:pointer}.slice-box button:hover{background:#eaf0f4}.slice-box button svg{width:14px}.slice-box>b{text-align:center;font-size:13px}.slice-box>b small{margin-left:2px;color:var(--muted);font-size:8px}.slice-box>span{justify-self:end;padding-right:9px;color:var(--muted);font-size:8px}.slice-box>span strong{color:#344251}.validation{min-height:25px;margin:7px 0 0 26px;padding:4px 7px;border-radius:4px;display:flex;align-items:center;gap:5px;font-size:8px}.validation svg{width:13px}.validation.valid{border:1px solid #b7dfc4;background:var(--green-bg);color:#267743}.validation.invalid{border:1px solid #efb9b9;background:var(--red-bg);color:var(--red)}.plan-toggle{margin:5px 0 0 26px;padding:0;border:0;background:transparent;color:#667584;display:flex;align-items:center;gap:3px;font-size:8px;cursor:pointer}.plan-toggle svg{width:11px;transition:transform .2s}.plan-toggle svg.up{transform:rotate(180deg)}.plan-list{margin:5px 0 0 26px;padding:6px;border:1px solid var(--line);border-radius:4px;background:#f8fafb;display:flex;flex-wrap:wrap;gap:4px}.plan-list span{padding:3px 5px;border-radius:3px;background:#eef2f5;color:var(--muted);font-size:7px}.plan-list span b{color:#344251}.plan-list p{width:100%;margin:1px 0 0;color:var(--green);font-size:8px}.features{margin:7px 0 0 26px;display:grid;grid-template-columns:1fr 1fr;gap:4px;color:#687685;font-size:8px}.features span{display:flex;align-items:center;gap:4px}.features svg{width:11px;height:11px}.reduce{margin-top:7px;display:flex;align-items:center;gap:5px;cursor:pointer}.reduce input{position:absolute;opacity:0}.reduce>i{width:15px;height:15px;border:1px solid #aebbc7;border-radius:3px;background:#fff;display:grid;place-items:center}.reduce input:checked+i{border-color:var(--green);background:var(--green);color:#fff}.reduce i svg{width:11px}.reduce b{font-size:9px}.reduce small{font-size:8px;color:var(--muted)}.start{width:100%;height:34px;margin-top:7px;border:0;border-radius:5px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;font-weight:750;cursor:pointer}.start:hover{background:#117c3c}.start svg{width:16px}.right-column{min-width:0;min-height:0;display:grid;grid-template-rows:82px 168px minmax(0,1fr);gap:8px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}.metric{padding:10px 15px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:2px}.metric:last-child{border-right:0}.metric span{color:#687686;font-size:9px}.metric strong{font-size:19px;letter-spacing:-.02em}.metric small{color:#8793a0;font-size:8px}.green{color:var(--green)!important}.red{color:var(--red)!important}.progress-card{padding:11px 14px}.section-head{display:flex;justify-content:space-between;align-items:center}.live{display:flex;align-items:center;gap:5px;color:#657382;font-size:9px}.live.paused i{background:#d79a23;box-shadow:0 0 0 3px #fff2d7}.live.stopped i{background:var(--red);box-shadow:0 0 0 3px #fde1e1}.live.completed i{background:#3285c7;box-shadow:0 0 0 3px #dceefa}.progress-top{margin-top:6px;display:flex;justify-content:space-between;align-items:center}.progress-top>div{display:flex;gap:4px}.progress-top p{margin:0;display:flex;align-items:baseline;gap:8px}.progress-top p strong{color:var(--green);font-size:22px}.progress-top p span{color:#71808e;font-size:9px}.pill{min-height:18px;padding:2px 6px;border:1px solid #cad4dd;border-radius:4px;background:#f6f8fa;color:#4d5b69;display:inline-flex;align-items:center;font-size:8px}.pill-green{border-color:#a9d8b7;background:var(--green-bg);color:var(--green)}.pill-red{border-color:#efb9b9;background:var(--red-bg);color:var(--red)}.progress-bar{height:10px;margin-top:6px;border-radius:3px;background:#e7edf1;overflow:hidden}.progress-bar i{display:block;height:100%;background:var(--green);transition:width .35s}.progress-data{margin-top:7px;display:grid;grid-template-columns:repeat(4,minmax(85px,1fr)) auto;gap:9px;align-items:end}.progress-data .metric{padding:0;border:0}.progress-data .metric strong{font-size:13px}.progress-actions{display:flex;gap:5px}.progress-actions button,.dialog footer button{height:29px;padding:0 10px;border:1px solid #cbd5dd;border-radius:4px;background:#f7f9fa;display:flex;align-items:center;justify-content:center;gap:4px;font-size:9px;cursor:pointer}.progress-actions svg{width:13px}.progress-actions .danger,.dialog footer .danger{border-color:#d83b3b;background:#d83b3b;color:#fff}.positions{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.positions-head{min-height:50px;padding:9px 12px 7px;border-bottom:1px solid var(--soft);display:flex;justify-content:space-between}.positions-head p{margin:2px 0 0;color:var(--muted);font-size:8px}.positions-head>div:last-child{display:flex;gap:5px}.positions-head button,.row-actions button{height:25px;padding:0 8px;border:1px solid #cbd5dd;border-radius:4px;background:#f7f9fa;font-size:8px;white-space:nowrap;cursor:pointer}.positions-head .danger-outline{border-color:#e5a7a7;background:var(--red-bg);color:var(--red)}.position-table{min-width:1000px;flex:1}.position-row{min-height:50px;padding:5px 11px;border-bottom:1px solid var(--soft);display:grid;grid-template-columns:1.12fr .5fr .68fr .68fr .68fr .9fr 1.55fr 1.2fr;align-items:center;gap:8px;font-size:8px}.position-row.table-head{min-height:26px;padding-top:4px;padding-bottom:4px;background:#f7f9fb;color:#7a8794;font-size:7px}.instrument{display:flex;align-items:center;gap:6px}.instrument i{width:20px;height:20px;border-radius:50%;background:#e5ebef;display:grid;place-items:center;color:#41505e;font-style:normal;font-size:7px;font-weight:700}.instrument b{white-space:nowrap}.close-state{min-width:0;display:flex;flex-direction:column;gap:2px}.close-state>b{font-size:7px}.close-state>i{width:100%;height:3px;border-radius:3px;background:#e3e9ee;overflow:hidden}.close-state>i em{display:block;width:18%;height:100%;background:var(--green)}.close-state small{color:var(--muted);font-size:7px;white-space:nowrap}.row-actions{display:flex;justify-content:flex-end;gap:3px}.row-actions button{padding:0 6px}.row-actions button:hover{border-color:#65ad7c;color:var(--green)}.row-actions .cancel{border-color:#e5a7a7;background:var(--red-bg);color:var(--red)}.positions-foot{min-height:28px;margin-top:auto;padding:0 11px;display:flex;align-items:center;gap:16px;color:var(--muted);font-size:7px}.positions-foot span{display:flex;align-items:center;gap:3px}.positions-foot svg{width:11px;height:11px}.security{min-height:0;padding:0 13px;display:grid;grid-template-columns:185px 1.3fr .9fr 1.1fr auto;align-items:center}.security>div{height:32px;padding:0 14px;border-right:1px solid var(--line);display:flex;align-items:center;gap:6px}.security>div:first-child{padding-left:0}.security>div svg{width:17px;color:#566675}.security>div>b{font-size:9px}.security>div>span:not(.pill){color:var(--muted);font-size:8px}.security>button{height:29px;margin-left:12px;padding:0 10px;border-radius:4px;display:flex;align-items:center;gap:5px;font-size:8px;cursor:pointer}.security>button svg{width:14px}.clear{border:1px solid #e0a2a2;background:var(--red-bg);color:var(--red)}.enable{border:1px solid #9dd2ae;background:var(--green-bg);color:var(--green)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#23313e80;display:grid;place-items:center}.dialog{width:410px;position:relative;padding:22px;border:1px solid #cfd8e0;border-radius:9px;background:#fff;box-shadow:0 18px 60px #1c2b3a33}.dialog-close{position:absolute;right:10px;top:10px;width:28px;height:28px;border:0;border-radius:4px;background:transparent;display:grid;place-items:center;cursor:pointer}.dialog-close:hover{background:#eef2f5}.dialog-close svg{width:16px}.dialog-mark{width:42px;height:42px;margin-bottom:12px;border-radius:50%;background:var(--green-bg);color:var(--green);display:grid;place-items:center}.dialog-mark.danger{background:var(--red-bg);color:var(--red)}.dialog-mark svg{width:23px}.dialog h3{margin:0;font-size:16px}.dialog p{margin:8px 0 18px;color:#687686;font-size:10px;line-height:1.65}.dialog footer{display:flex;justify-content:flex-end;gap:7px}.dialog footer .primary{border-color:var(--green);background:var(--green);color:#fff}.toast{position:fixed;z-index:30;left:50%;bottom:62px;transform:translate(-50%);min-height:35px;padding:0 13px;border:1px solid #9dd2ae;border-radius:5px;background:#f1fbf4;color:#267743;box-shadow:0 10px 28px #1c2b3a1f;display:flex;align-items:center;gap:6px;font-size:9px}.toast svg{width:16px}.danger{color:#fff}@media(max-width:1480px){.dashboard{grid-template-columns:410px minmax(0,1fr)}.brand{min-width:200px}.app-title{min-width:235px}.top-status>div{min-width:auto;padding:0 9px}.position-row{gap:6px}}@media(max-width:1220px){.top-status>div:nth-child(2),.top-status>div:nth-child(3){display:none}.security{grid-template-columns:165px 1.45fr .8fr auto}.security>div:nth-child(4){display:none}}button:disabled{cursor:not-allowed!important;opacity:.48}.top-status>div>i.dot-error{background:var(--red);box-shadow:0 0 0 3px #fde1e1}.position-table{min-width:780px;min-height:0;overflow-y:auto}.empty-state{height:100%;min-height:90px;display:grid;place-items:center;color:var(--muted);font-size:10px}.api-retry{position:absolute;top:9px;right:14px;height:24px;padding:0 8px;border:1px solid #efb9b9;border-radius:4px;background:var(--red-bg);color:var(--red);font-size:8px;cursor:pointer}.builder{position:relative}.security{grid-template-columns:185px 1.25fr .8fr .85fr auto auto}@media(max-width:1220px){.security{grid-template-columns:165px 1.35fr .8fr auto auto}.security>div:nth-child(4){display:none}}.wc-config label{display:flex;flex-direction:column;gap:5px}.wc-config label span{font-size:9px;font-weight:700}.wc-config input{height:35px;padding:0 10px;border:1px solid #cdd7df;border-radius:5px;outline:0}.wc-config input:focus{border-color:#65ae7c;box-shadow:0 0 0 2px #dff4e6}.wc-config>a{display:inline-block;margin:8px 0 15px;color:var(--green);font-size:9px}.wc-config .form-error{display:block;margin-top:5px;color:var(--red);font-size:8px}.select-box{position:relative;cursor:pointer}.select-box>strong{font-size:11px;white-space:nowrap}.select-box>svg,.select-box>strong,.select-box>span{pointer-events:none}.select-box select{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.select-box select:disabled{cursor:wait}.market-controls{margin-left:26px;display:grid;grid-template-columns:minmax(120px,1fr) 182px;gap:6px}.market-controls .select-box{margin-left:0}.leverage-control{height:34px;padding:0 5px;border:1px solid #cdd7df;border-radius:5px;background:#fff;display:grid;grid-template-columns:auto 22px 35px 9px 22px 1fr;align-items:center;gap:2px}.leverage-control small{color:var(--muted);font-size:7px}.leverage-control button{height:22px;padding:0;border:0;border-radius:3px;background:#eef2f5;cursor:pointer;font-size:10px}.leverage-control input{min-width:0;width:35px;padding:0;border:0;outline:0;background:transparent;text-align:right;font-size:11px;font-weight:700;-moz-appearance:textfield}.leverage-control input::-webkit-inner-spin-button{display:none}.leverage-control>b{font-size:9px}.leverage-control em{justify-self:end;color:var(--muted);font-size:7px;font-style:normal;white-space:nowrap}.leverage-control.updating{border-color:#d6a23e;background:#fff9eb}.leverage-control.applied{border-color:#80bd93;background:var(--green-bg)}.leverage-control.error{border-color:#e5a7a7;background:var(--red-bg)}.leverage-control.error em{color:var(--red)}
