/* 沿用原桌面窗口的浅灰背景、字段集和紧凑横向表单。 */
:root{color-scheme:light;--bg:#f0f0f0;--line:#bfc0c2;--text:#202124;--muted:#666;--danger:#c62b2b;--warning:#986500;--green:#0a8f2e}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:13px/1.4 "Microsoft YaHei UI","PingFang SC","Segoe UI",sans-serif}
button,input,select{font:inherit}
button{min-height:28px;padding:3px 12px;border:1px solid #aaa;border-radius:3px;background:linear-gradient(#fff,#e9e9e9);color:var(--text);white-space:nowrap;cursor:pointer}
button:hover:not(:disabled){background:#e3eef8;border-color:#6e9bc2}
button:disabled{color:#909090;cursor:default;background:#eee;border-color:#ccc}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #377eb8;outline-offset:2px}
input,select{height:27px;min-width:0;border:1px solid #aaa;border-radius:2px;background:#fff;color:var(--text);padding:2px 5px}
input:disabled,select:disabled{background:#eee;color:#777}
input[type=checkbox]{width:14px;height:14px;flex:none;margin:0 5px 0 0;accent-color:#3476ab}
h1,h2,p{margin:0}h1{font-size:14px;font-weight:600}h2{font-size:13px;font-weight:600}
label{min-width:0}summary{cursor:pointer;font-size:12px;padding:3px 0}
.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--danger)}.warning{color:var(--warning)}.long{color:var(--green)}.short{color:var(--danger)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.workspace{max-width:1440px;min-height:100vh;margin:0 auto;padding:6px 8px;display:flex;flex-direction:column;gap:6px}
.topbar,.top-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px}.topbar{justify-content:space-between;min-height:29px}.top-actions{gap:5px 8px}.top-actions button{min-height:25px;padding:2px 8px}
.status-dot{width:7px;height:7px;border-radius:50%;background:#999;flex:none}.status-dot.running{background:var(--green)}.status-dot.paused{background:#d89800}
.badge{font-size:12px;padding:1px 5px;border:1px solid #ccc;border-radius:2px;background:#f8f8f8}.badge.live{border-color:#e5a4a4;color:var(--danger);background:#fff1f1}
.panel{margin:0;min-width:0;border:1px solid var(--line);border-radius:2px;padding:5px 9px 7px}.panel legend{font-size:13px;padding:0 4px}
.token-row{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px}.token-row>label{flex:none}.token-row>#token{flex:1 1 300px;min-width:100px}.token-row>#auth-status{max-width:230px;overflow-wrap:anywhere}
.device-details{position:relative}.device-details>summary{padding:3px 0;color:var(--muted)}.device-content{display:flex;flex-wrap:wrap;align-items:center;gap:6px;position:absolute;right:0;top:26px;z-index:3;width:390px;max-width:85vw;padding:10px;border:1px solid var(--line);background:#f5f5f5;box-shadow:0 2px 8px #0002}.device-content input{flex:1 1 230px}.notice:empty{display:none}.notice:not(:empty){margin-top:4px;overflow-wrap:anywhere}
#config-form{margin:0}.parameter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 22px;padding:1px 0 4px}
.field{min-width:0;display:flex;align-items:center;gap:7px;min-height:27px}.field>label{width:126px;flex:none;text-align:right}.field>input,.field>select{width:125px;flex:1 1 100px;max-width:180px}.field.inline-setting{justify-content:flex-start}.field.inline-setting>.check-label{width:auto;text-align:left}.field.inline-setting>input{flex:0 1 85px;max-width:105px}.field.inline-setting>span{flex:none}
.check-label{display:inline-flex;align-items:center;flex-wrap:wrap;gap:0;min-height:23px}.check-label>span{margin-left:4px}
.parameter-line{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;min-height:27px;margin-top:3px}.account-switch{gap:3px 15px}.real-setting{margin-left:auto}.account-switch>#real-hint{font-size:11px}.window-line>input{width:66px}.martingale-line>input{width:210px}.supplemental-line{gap:4px 7px}.supplemental-line>select{width:80px;margin-right:10px}.supplemental-line>.check-label{margin-right:12px}.supplemental-line>input{width:75px}
.control-bar{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;min-height:31px;padding:1px 3px}.control-bar .clear-logs{margin-left:auto}.control-bar .quiet{background:transparent;border-color:transparent;padding-left:5px;padding-right:5px}.control-bar #dirty:not(:empty)+.clear-logs{margin-left:auto}
.market-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.market-panel,.open-orders-panel{min-height:173px}.prices{display:grid;gap:3px}.prices>div{min-height:20px}.prices #symbol-label,.prices #threshold-label,.prices #round-state{margin-left:9px}.prices #binance-price,.prices #platform-price,.prices #entry-price,.balance-row span span{font-variant-numeric:tabular-nums}
.spread{font:700 14px/1.3 Consolas,monospace;color:#e11d48}.spread.negative{color:#d12b2b}.remaining-row{font-size:14px;font-weight:600;color:#a27b00}.remaining-row>span{font-weight:400}.balance-row{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px}.balance-row button{min-height:24px;padding:1px 8px}
.open-orders-panel{display:flex;flex-direction:column;gap:4px}.orders{flex:1;min-height:118px;max-height:170px;overflow:auto;border:1px solid #c4c4c4;background:#fff;padding:3px 5px}.empty{color:#777;padding:3px 0}.order-row{display:flex;align-items:center;gap:9px;min-height:25px;padding:2px 0;border-bottom:1px solid #eee}.order-row:last-child{border-bottom:0}.order-id{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cooldown{overflow-wrap:anywhere}
.log-panel{flex:1;display:flex;flex-direction:column;min-height:180px;padding:3px 6px 5px}.logs{flex:1;height:100%;min-height:158px;max-height:60vh;overflow:auto;border:1px solid #bbb;background:#fff;padding:4px 6px;font:12px/1.5 Consolas,"Microsoft YaHei UI",monospace}.log-line{display:flex;align-items:baseline;gap:8px;min-height:19px;overflow-wrap:anywhere}.log-time{flex:none;color:#666}.log-time:before{content:"["}.log-time:after{content:"]"}.log-text{min-width:0;white-space:pre-wrap}.log-line.log-long .log-text,.log-line.log-hit .log-text{color:var(--green)}.log-line.log-short .log-text,.log-line.log-miss .log-text{color:var(--danger)}
.guard-panel{padding:8px 10px;border:1px solid #e4a3a3;background:#fff0ee;color:#9b2929}.guard-panel p{margin:3px 0;overflow-wrap:anywhere}
.account-details[open]{border:1px solid var(--line);padding:9px;background:#f8f8f8}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.user-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:7px;margin:8px 0}.user-form label{flex:1 1 120px}.user-form label input{display:block;width:100%;margin-top:3px}.user-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:5px 0;border-bottom:1px solid #ddd}.user-row>span:first-child{min-width:70px;overflow-wrap:anywhere}.users-list{margin:6px 0}
.extra-tools{font-size:12px}.extra-tools>summary{color:var(--muted)}.statistics{padding:5px 9px}.statistics>div,.statistics>p{margin-bottom:3px;overflow-wrap:anywhere}.line-check{border:1px solid #ccc;padding:7px 9px}.line-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.line-metrics{display:flex;flex-wrap:wrap;gap:4px 15px;margin-top:4px}.line-metrics b{font-variant-numeric:tabular-nums}.line-verdict,.line-report{overflow-wrap:anywhere}.line-report{margin:5px 0}.line-check.good #line-verdict{color:var(--green)}.line-check.bad #line-verdict{color:var(--danger)}
footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:3px 12px;color:var(--muted);font-size:11px}.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:10;width:max-content;max-width:92vw;border:1px solid #9eb4a4;border-radius:4px;background:#f0fff2;box-shadow:0 3px 14px #0002;padding:9px 14px;overflow-wrap:anywhere}.toast.error{background:#fff3f1;border-color:#d3a6a0}
/* 登录和折叠账户区使用较宽输入框，交易区保留原版的密度。 */
.login-screen{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:370px;max-width:100%;padding:25px;border:1px solid var(--line);border-radius:5px;background:#f8f8f8;box-shadow:0 4px 20px #0001}.login-card h1{font-size:21px}.login-card>p{margin:7px 0 14px}.login-card>label{display:block;margin:13px 0 4px}.login-card>label>input{width:100%;display:block;margin-top:4px;height:34px}.password-field{display:flex;gap:5px}.password-field input{flex:1;width:100%;height:34px}.password-field button{padding:3px 8px}.login-card #login-submit{width:100%;height:34px;margin-top:13px}.login-card #login-input-hint,.login-card #login-caps-warning{margin:6px 0;overflow-wrap:anywhere}.login-card #login-error{margin-bottom:0}
@media(min-width:1250px){.workspace{padding:8px 12px}.parameter-grid{gap:5px 35px}.field>label{width:145px}.market-panel,.open-orders-panel{min-height:176px}}
@media(max-width:1000px){.parameter-grid{gap:5px 11px}.field{gap:5px}.field>label{width:116px;font-size:12px}.field>input,.field>select{width:95px}.field.inline-setting>input{width:60px}.real-setting{margin-left:0}.account-switch>#real-hint{flex-basis:100%;padding-left:18px;min-height:0}.token-row>#auth-status{max-width:170px}}
@media(max-width:760px){.workspace{padding:6px;gap:6px}.topbar{align-items:flex-start}.topbar h1{width:100%}.top-actions{width:100%;gap:5px 7px}.top-actions #account-toggle{margin-left:auto}.token-row>#token{flex-basis:180px}.token-row>#auth-status{max-width:none}.device-content{position:static;margin-top:5px;width:100%;max-width:none;box-shadow:none}.device-details[open]{flex-basis:100%}.parameter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px}.field>label{width:112px}.field>input,.field>select{max-width:none}.account-switch{display:grid;grid-template-columns:1fr;gap:3px}.account-switch>#real-hint{padding-left:18px}.check-label>span{font-size:11px}.market-grid{grid-template-columns:1fr 1fr;gap:6px}.market-panel,.open-orders-panel{min-height:190px}.prices #symbol-label,.prices #threshold-label{display:none}.prices #round-state{font-size:11px}.balance-row>span{font-size:12px}.panel{padding:4px 7px 6px}.account-grid{grid-template-columns:1fr}.control-bar #config-save-state{order:5}.control-bar #dirty{order:6}.control-bar .clear-logs{order:4;margin-left:auto}.log-panel{min-height:210px}.logs{min-height:190px;max-height:55vh}}
@media(max-width:560px){.parameter-grid{grid-template-columns:1fr;gap:5px}.field>label{width:132px;text-align:left}.field>input,.field>select{max-width:175px}.field.inline-setting>input{max-width:90px;flex-grow:1}.field.inline-setting>.check-label{width:132px}.token-row>#token{flex-basis:150px}.token-row>#auth-status{flex-basis:100%;padding-left:42px}.token-row>.device-details{margin-left:42px}.token-row>.device-details[open]{margin-left:0}.market-grid{grid-template-columns:1fr}.market-panel,.open-orders-panel{min-height:0}.prices #symbol-label,.prices #threshold-label{display:inline}.prices #round-state{font-size:12px}.orders{min-height:105px;max-height:180px}.open-orders-panel{min-height:143px}.control-bar .clear-logs{margin-left:0}.control-bar #reset-config{margin-left:auto}.control-bar #config-save-state{flex-basis:100%;padding-left:3px}.control-bar #dirty{display:none}.window-line{gap:4px}.window-line>input{width:55px}.window-line #window-hint{flex-basis:100%;padding-left:3px}.martingale-line{gap:4px 7px}.martingale-line>input{width:175px;flex:1;max-width:200px}.martingale-line #martingale{flex-basis:100%;padding-left:18px}.supplemental-line{gap:5px}.supplemental-line>select{width:65px;margin-right:3px}.supplemental-line>.check-label{margin-right:0}.supplemental-line>input{width:60px}.supplemental-line label[for="cfg-界面刷新毫秒"]{font-size:12px}.top-actions #current-user{max-width:125px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
