:root{color-scheme:dark;--bg:#f6f7f8;--panel:#f3f4f5;--raised:#eff0f3;--line:#e8eaed;--text:#222630;--muted:#404f6e;--blue:#2b4d90;--green:#32b37c;--yellow:#836425;--red:#732121}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 12% -8%,#e8eaee 0,transparent 28%),var(--bg);color:var(--text);font:14px/1.5 Inter,"Microsoft YaHei UI",sans-serif;min-height:100vh}.hidden{display:none!important}button,input{font:inherit}button{border:0;border-radius:9px;padding:10px 16px;background:var(--blue);color:#292929;font-weight:700;cursor:pointer}button:hover{filter:brightness(1.12)}button.ghost{background:var(--raised);border:1px solid var(--line)}button.danger{color:#421313}.login{position:fixed;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 10%,#e7e8ec,var(--bg) 48%);z-index:10}.login-card{width:min(390px,calc(100vw - 40px));padding:38px;border:1px solid var(--line);border-radius:18px;background:rgba(243, 244, 246, .94);box-shadow:0 30px 80px #0008;text-align:center}.login-card .brand-mark{margin:auto}.login-card h1{margin:18px 0 4px}.login-card p{color:var(--muted);margin:0 0 24px}.login-card input{width:100%;margin-bottom:12px}.login-card button{width:100%}.login-card span{display:block;color:var(--red);min-height:22px;margin-top:10px}.shell{max-width:1500px;margin:auto;min-height:100vh}header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#f4f5f6dd;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;backdrop-filter:blur(14px)}.brand,.header-actions,.card-title,.fields,.checks{display:flex;align-items:center;gap:14px}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#25427d,#355eb1);font-weight:900;box-shadow:0 8px 26px #355eb166}.brand h1{font-size:18px;margin:0}.brand p{font-size:12px;margin:2px 0 0;color:var(--green)}.summary{color:var(--muted)}.main-nav,.subnav{display:flex;gap:6px;background:#f4f5f6;padding:8px 24px;border-bottom:1px solid var(--line)}.main-nav button,.subnav button{background:transparent;color:var(--muted);border-radius:8px}.main-nav button.active,.subnav button.active{color:#292929;background:var(--raised);box-shadow:inset 0 -2px var(--blue)}main{padding:18px 24px 40px}.page,.subpage{display:none}.page.active,.subpage.active{display:block}.subnav{padding:0 0 12px;background:transparent;border:0}.toolbar{display:flex;align-items:center;gap:10px;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:12px 12px 0 0}.toolbar span{margin-left:auto;color:var(--muted);font-size:12px}input{background:#f5f6f7;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:10px 12px;outline:none;min-width:0}input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2b4d9022}.table-wrap{overflow:auto;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;max-height:calc(100vh - 230px)}table{width:100%;border-collapse:collapse;min-width:820px}th{position:sticky;top:0;background:#eff0f3;color:#393f4c;text-align:left;padding:12px 14px;font-size:12px;z-index:1}td{padding:12px 14px;border-top:1px solid #ebecf0;font-family:Consolas,"Microsoft YaHei UI",sans-serif}tbody tr{background:var(--panel);cursor:pointer}tbody tr:nth-child(even){background:#f4f5f6}tbody tr:hover,tbody tr.selected{outline:1px solid #2b4d9088;background:#ebecf0}.rate{font-weight:800}.spread-card{position:relative;padding:36px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#f0f1f3,#f4f5f6);min-height:430px;box-shadow:0 18px 60px #0004}.spread-card h2{font-size:28px;margin:3px 0}.spread-card p{color:var(--muted)}.eyebrow{color:#3a404c;text-transform:uppercase}.spread-value{font:800 clamp(48px,8vw,96px)/1.1 "Segoe UI";color:var(--yellow);margin:50px 0 12px}.spread-parts{font:700 17px Consolas;margin-bottom:28px}.badge{display:inline-block;padding:7px 12px;border:1px solid var(--line);border-radius:999px;color:var(--green)}.spread-card button{position:absolute;right:30px;top:30px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}.card.wide,.savebar{grid-column:1/-1}.card h2{font-size:17px;margin:0 0 12px}.card-title{justify-content:space-between}.card-title p,.help{color:var(--muted);font-size:12px;margin:2px 0 16px}.fields{align-items:end}.fields label{flex:1}.fields.three{grid-template-columns:repeat(3,1fr)}label{display:flex;flex-direction:column;gap:7px;color:#2e333d}.checks{margin:14px 0;flex-wrap:wrap}.checks label{flex-direction:row;align-items:center}.checks input{min-width:auto}.checks.vertical{align-items:flex-start;flex-direction:column}.card>label input,.fields input{width:100%}.savebar{position:sticky;bottom:12px;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border:1px solid #dee0e6;background:#f0f1f3dd;border-radius:12px;backdrop-filter:blur(14px);color:var(--muted)}@media(max-width:900px){header{height:auto;padding:14px;align-items:flex-start}.header-actions{flex-wrap:wrap;justify-content:flex-end}.summary{display:none}main{padding:12px}.settings-grid{grid-template-columns:1fr}.fields,.header-actions{gap:8px}.fields{flex-direction:column;align-items:stretch}.toolbar{flex-wrap:wrap}.toolbar span{display:none}.spread-card{padding:24px}.spread-card button{position:static;margin-top:30px}}@media(max-width:600px){.brand p{max-width:180px}.main-nav{padding:8px 12px}.main-nav button{flex:1}.header-actions button{padding:8px}.savebar{align-items:flex-start;gap:10px}.savebar span{font-size:11px}}
/* 美韩海差价两个月趋势 */
.spread-card{padding:28px;min-height:470px}.spread-layout{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:28px;align-items:stretch}.spread-summary{display:flex;flex-direction:column;align-items:flex-start;padding:8px}.spread-value{font-size:clamp(48px,6vw,78px);margin:42px 0 12px}.spread-parts{font-size:15px;margin-bottom:24px}.spread-card .spread-settings{position:static;margin-top:auto}.chart-panel{min-width:0;padding:18px;border:1px solid #e5e7eb;border-radius:16px;background:#f5f6f7aa}.chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.chart-head h3{font-size:17px;margin:0}.chart-head p{font-size:12px;margin:3px 0 0}.range-tabs{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.spread-card .range-tabs button{position:static;padding:7px 10px;font-size:12px}.range-tabs button.active{border-color:var(--blue);background:#e7e9ed;color:#292929}.chart-wrap{position:relative;height:300px;border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#f3f3f5,#f5f6f8);border:1px solid #eaecef}.chart-wrap canvas{display:block;width:100%;height:100%}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:13px}.chart-tooltip{position:absolute;pointer-events:none;padding:8px 10px;border:1px solid #4664a0;border-radius:8px;background:#f6f7f8ee;box-shadow:0 8px 25px #0008;font:12px/1.5 Consolas,"Microsoft YaHei UI";white-space:nowrap}.chart-stats{display:flex;gap:20px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:12px}.chart-stats b{color:var(--text);font-family:Consolas}.hidden{display:none!important}@media(max-width:1050px){.spread-layout{grid-template-columns:1fr}.spread-summary{min-height:310px}.spread-card .spread-settings{margin-top:24px}.chart-wrap{height:280px}}@media(max-width:900px){.spread-card{padding:18px}.chart-head{flex-direction:column}.range-tabs{justify-content:flex-start}.chart-wrap{height:240px}}@media(max-width:600px){.spread-card{padding:12px}.chart-panel{padding:12px}.chart-stats{gap:10px}}
.chart-wrap canvas{cursor:crosshair}
/* 三项趋势：差价、SKHYUSDT、SKHYNIXUSDT 自上而下 */
.spread-card{display:grid;gap:20px}.spread-summary{display:grid;grid-template-columns:minmax(230px,1fr) minmax(320px,1.35fr) auto;gap:24px;align-items:center;padding:4px 8px 18px;border-bottom:1px solid #e9eaee}.spread-summary h2{margin:2px 0}.spread-summary p{margin:3px 0}.spread-summary .spread-value{font-size:clamp(42px,5vw,68px);margin:0}.spread-summary .spread-parts{font-size:14px;margin:5px 0 0}.spread-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.spread-card .spread-settings{margin:0}.chart-panel{padding:20px}.trend-stack{display:grid;gap:14px}.trend-block{padding:13px;border:1px solid #e8e9ed;border-radius:14px;background:#f4f5f6}.trend-percentage{order:1}.trend-spread{order:2}.trend-skhy{order:3}.trend-skhynix{order:4}.trend-title{display:flex;align-items:center;gap:10px;margin-bottom:8px}.trend-title h4{margin:0;font-size:14px}.trend-title small{color:var(--muted);font-size:11px}.trend-dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 14px currentColor}.spread-dot{color:#7d3023;background:#7d3023}.skhy-dot{color:#284785;background:#284785}.skhynix-dot{color:#32b182;background:#32b182}.trend-block .chart-wrap{height:180px}.trend-block .chart-stats{margin-top:8px}.chart-tooltip b{color:#292929}@media(max-width:980px){.spread-summary{grid-template-columns:1fr 1fr}.spread-actions{grid-column:1/-1;flex-direction:row;align-items:center}.trend-block .chart-wrap{height:170px}}@media(max-width:600px){.spread-summary{grid-template-columns:1fr;gap:12px}.spread-actions{grid-column:auto}.trend-block{padding:9px}.trend-block .chart-wrap{height:155px}.chart-panel{padding:10px}}
.spread-live{display:flex;align-items:baseline;gap:16px}.spread-percentage{font:800 clamp(25px,3vw,40px)/1 "Segoe UI";color:#35195a}.percentage-formula{margin-top:6px;color:var(--muted);font-size:11px}.percentage-dot{color:#412073;background:#412073}.chart-stats span:nth-child(3){padding:2px 9px;border:1px solid #e1e3e8;border-radius:999px;background:#f0f1f3}.chart-stats span:nth-child(3) b{color:#2a2f38}.chart-tooltip{z-index:3;display:flex;flex-direction:column;width:max-content;max-width:calc(100% - 16px);white-space:normal;overflow-wrap:anywhere}.chart-tooltip span,.chart-tooltip b{display:block}.chart-tooltip.touch-tip{font-size:11px;line-height:1.45}@media(max-width:600px){body{overflow-x:hidden}.shell,.spread-card,.chart-panel,.trend-stack,.trend-block{min-width:0;max-width:100%}.spread-live{align-items:flex-start;flex-direction:column;gap:4px}.trend-title>div{min-width:0}.trend-title h4{font-size:13px;overflow-wrap:anywhere}.trend-title small{display:block;overflow-wrap:anywhere}.chart-tooltip{max-width:calc(100% - 12px);padding:6px 8px;font-size:10.5px;line-height:1.4}.chart-wrap canvas{touch-action:pan-y}.chart-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;font-size:10.5px}.chart-stats span{min-width:0;white-space:nowrap}.chart-stats span:nth-child(3){padding:2px 6px}.range-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:4px}.spread-card .range-tabs button{padding:7px 4px}.chart-head{gap:9px}}
.gold-spread-card{background:linear-gradient(135deg,#f6f5f3,#f4f5f6)}.gold-spread-card .spread-value{color:#735e21}.gold-spread-card .spread-percentage{color:#7f5624}.gold-percentage-dot{color:#916329;background:#916329}.gold-spread-dot{color:#7f6524;background:#7f6524}.xau-dot{color:#264480;background:#264480}.xaut-dot{color:#30a87c;background:#30a87c}

/* Hyperliquid 公开地址账户监控 */
.account-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border:1px solid #e5e7eb;border-radius:16px;background:linear-gradient(135deg,#f0f1f3,#f4f5f6);box-shadow:0 16px 48px #0003}.account-heading h2{margin:3px 0;font-size:28px}.account-heading p{margin:3px 0;color:var(--muted)}.account-live-control{display:flex;align-items:center;gap:14px}.account-live-control label{flex-direction:row;align-items:center;white-space:nowrap}.account-live-control input,.account-push-check input{min-width:auto}.badge.live{color:#247f57;border-color:#e1e8e6;background:#eff3f266}.badge.warning{color:#674e1d;border-color:#e6e3de;background:#f0efec66}.badge.stopped{color:#3d4452}
.account-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.account-kpis article{padding:17px 19px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.account-kpis span,.account-kpis small{display:block;color:var(--muted)}.account-kpis b{display:block;margin:4px 0;font:800 25px/1.2 "Segoe UI",sans-serif}.account-kpis small{font-size:11px}
.account-manage,.account-activity{padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--panel)}.account-manage .card-title p,.activity-head p{margin:2px 0;color:var(--muted);font-size:12px}.account-form{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(360px,2fr) auto auto auto;align-items:end;gap:10px;margin-top:15px}.account-form label{min-width:0}.account-form input{width:100%}.account-push-check{height:42px;flex-direction:row;align-items:center;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#f5f6f7;white-space:nowrap}.account-manage .help{margin:12px 0 0}
.account-empty{margin:14px 0;padding:42px;border:1px dashed #e1e3e8;border-radius:15px;background:#f4f5f688;text-align:center}.account-empty-icon{width:48px;height:48px;display:grid;place-items:center;margin:auto;border-radius:50%;background:#eaebee;color:#3a404d;font-size:27px}.account-empty h3{margin:12px 0 4px}.account-empty p{margin:0;color:var(--muted)}
.account-cards{display:grid;gap:14px;margin:14px 0}.account-card{padding:20px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#f2f3f5,#f4f5f7);box-shadow:0 12px 35px #0002;cursor:pointer}.account-card:hover,.account-card.selected{border-color:#385fae}.account-card.selected{box-shadow:inset 3px 0 var(--blue),0 12px 35px #0003}.account-card-head,.account-card-actions,.activity-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-label{display:block;font-weight:800;font-size:17px}.account-card code{display:block;margin-top:2px;color:#405071;font-size:12px}.account-card-actions{justify-content:flex-end}.account-delete{padding:7px 11px}.push-state{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px}.push-state.on{color:#25855a;border-color:#e3e9e7;background:#f0f3f266}
.account-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.account-metrics>div{padding:11px 13px;border-radius:10px;background:#f5f6f7;border:1px solid #eaecef}.account-metrics span,.position-row small,.event-row small{display:block;color:var(--muted);font-size:11px}.account-metrics b{display:block;margin-top:3px;font-size:15px}.position-list{display:grid;gap:7px}.position-row{display:grid;grid-template-columns:minmax(135px,1.15fr) repeat(5,minmax(115px,1fr));align-items:center;gap:12px;padding:11px 13px;border:1px solid #eaecef;border-radius:10px;background:#f4f5f6}.position-row>div{min-width:0}.position-row b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 12px/1.5 Consolas,"Microsoft YaHei UI",sans-serif}.position-asset{display:flex!important;align-items:center;gap:8px}.position-asset>b{font-size:14px}.direction,.action-badge{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:11px;font-weight:800}.direction.long{color:#278c5f;background:#eef2f1}.direction.short{color:#4c1616;background:#eee9ea}.profit{color:#299262!important}.loss{color:#5f1b1b!important}.position-empty,.event-empty{padding:23px;text-align:center;color:var(--muted);border:1px dashed #e5e7eb;border-radius:10px}.account-error{margin:10px 0;padding:9px 11px;border-radius:9px;color:#401212;background:#efeaeb66}.account-updated{margin-top:9px;text-align:right;color:#5d6b89;font-size:10px}
.activity-head{margin-bottom:13px}.activity-head h2{margin:0}.activity-head select{min-width:180px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:#f5f6f7;color:var(--text)}.account-events{display:grid;gap:7px}.event-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(155px,1fr) repeat(4,minmax(110px,.8fr));align-items:center;gap:13px;padding:12px 14px;border:1px solid #eaecef;border-radius:11px;background:#f4f5f6}.event-row>div{min-width:0}.event-row b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.event-time span{color:var(--muted);font-size:11px}.event-action{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 7px}.event-action small{grid-column:1/-1}.action-badge.open{color:#288f61;background:#edf1ef}.action-badge.increase{color:#3b424f;background:#e7e9ed}.action-badge.reduce{color:#6c521e;background:#efeeea}.action-badge.close{color:#551818;background:#eee9ea}.action-badge.reverse{color:#2f1447;background:#eae7ed}.action-badge.trade{color:#30353f;background:#e9ebee}
.account-history-panel{margin:14px 0;padding:20px;border:1px solid #e4e6ea;border-radius:15px;background:linear-gradient(145deg,#f2f3f5,#f5f6f7);box-shadow:0 14px 42px #0003}.account-history-head,.account-history-controls,.account-chart-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.account-history-head h2,.account-chart-title h3{margin:0}.account-history-head p,.account-chart-title p{margin:3px 0 0;color:var(--muted);font-size:12px}.account-history-controls{align-items:flex-end}.account-history-controls label{font-size:11px}.account-history-controls select{min-width:190px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:#f5f6f7;color:var(--text)}.account-history-controls .range-tabs{flex-wrap:nowrap}.account-history-controls button{padding:8px 10px;font-size:11px}.account-history-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0}.account-history-stats>div{padding:13px 15px;border:1px solid #e9ebee;border-radius:11px;background:#f5f6f7}.account-history-stats span,.account-history-stats small{display:block;color:var(--muted);font-size:11px}.account-history-stats b{display:block;margin:4px 0;font:800 18px/1.25 Consolas,"Microsoft YaHei UI",sans-serif}.account-history-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.account-chart-block{min-width:0;padding:14px;border:1px solid #e8eaed;border-radius:13px;background:#f4f5f6}.account-chart-title{min-height:52px}.account-chart-legend{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px}.account-chart-legend span{display:flex;align-items:center;gap:5px;white-space:nowrap}.account-chart-legend span:before{content:"";width:12px;height:3px;border-radius:3px;background:currentColor}.account-chart-legend .legend-equity{color:#30aa84}.account-chart-legend .legend-pnl{color:#2c1a5e}.account-chart-legend .legend-action{color:#836425}.account-chart-legend .legend-action:before{width:7px;height:7px;border-radius:50%}.account-chart-legend .legend-position{color:#274683}.account-chart-legend .legend-unrealized{color:#6c2b1e}.account-chart-wrap{position:relative;height:260px;margin-top:8px;overflow:hidden;border:1px solid #eaecef;border-radius:11px;background:linear-gradient(180deg,#f3f3f5,#f6f6f8)}.account-chart-wrap canvas{display:block;width:100%;height:100%;cursor:crosshair;touch-action:pan-y}.account-chart-wrap .chart-tooltip{max-width:calc(100% - 16px);white-space:normal;overflow-wrap:anywhere}.account-chart-wrap .chart-empty{z-index:1}
@media(max-width:1050px){.account-kpis,.account-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.account-form{grid-template-columns:1fr 1.5fr auto auto}.account-push-check{grid-column:1/-1;width:max-content}.position-row{grid-template-columns:repeat(3,minmax(0,1fr))}.event-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1120px){.account-history-charts{grid-template-columns:1fr}.account-chart-wrap{height:250px}}
@media(max-width:700px){.main-nav{overflow-x:auto}.main-nav button{flex:0 0 auto;white-space:nowrap}.account-heading{align-items:flex-start;flex-direction:column;padding:18px}.account-heading h2{font-size:23px}.account-live-control{width:100%;justify-content:space-between}.account-kpis{gap:8px}.account-kpis article{padding:13px}.account-kpis b{font-size:19px}.account-manage,.account-activity,.account-card,.account-history-panel{padding:14px}.account-manage .card-title,.activity-head,.account-history-head,.account-chart-title{align-items:flex-start;flex-direction:column}.account-form{display:flex;align-items:stretch;flex-direction:column}.account-push-check{width:100%}.account-form button{width:100%}.account-card-head{align-items:flex-start;flex-direction:column}.account-card-actions{width:100%;justify-content:space-between}.account-metrics{gap:7px}.account-metrics>div{padding:9px}.position-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.position-asset{grid-column:1/-1}.event-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.event-time,.event-action{grid-column:1/-1}.event-row b{white-space:normal;overflow-wrap:anywhere}.activity-head select{width:100%}.account-history-controls{width:100%;align-items:stretch;flex-direction:column}.account-history-controls label,.account-history-controls select{width:100%}.account-history-controls .range-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.account-history-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.account-history-stats>div{padding:10px}.account-history-stats b{font-size:15px}.account-chart-block{padding:10px}.account-chart-title{min-height:0}.account-chart-legend{justify-content:flex-start}.account-chart-wrap{height:215px}.account-chart-wrap .chart-tooltip{padding:6px 8px;font-size:10.5px}}

/* TradFi 对应股票行情 */
#ranking table,#fundingWatch table{min-width:1320px}.stock-source{margin-left:0!important}.stock-price{display:flex;flex-direction:column;gap:1px;min-width:112px}.stock-price b{color:#258159;font-size:14px}.stock-price small{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font:11px/1.4 "Microsoft YaHei UI",sans-serif}.stock-unavailable{display:inline-block;max-width:160px;color:#515f7c;font:11px/1.4 "Microsoft YaHei UI",sans-serif}.comparison{display:inline-flex;align-items:center;justify-content:center;min-width:82px;padding:4px 8px;border-radius:999px;font-weight:800}.comparison.premium{color:#6b501e;background:#ebe8e566;border:1px solid #b37732}.comparison.discount{color:#373d49;background:#e8e9ed66;border:1px solid #355eb1}.comparison-na{color:#5d6c88}.fields label:has(#dailyFundingTime){min-width:190px}@media(max-width:700px){.stock-source{display:none}.stock-price small{max-width:120px}.comparison{min-width:72px;padding:3px 6px}}
.funding-history-venue-select{display:grid;gap:6px;color:#4f5e7d;font-size:9px}
@media(max-width:800px){.notification-route-row .route-select{width:100%}}

/* v1.7 全站视觉统一 */
:root{--bg:#f6f6f8;--panel:#f3f4f6;--raised:#eff0f2;--line:#e7e9ec;--text:#26262c;--muted:#3e4e6e;--blue:#294989;--green:#32b17e;--shadow:0 16px 45px rgba(0,0,0,.22)}
.auth-loading{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:13px;background:radial-gradient(circle at 50% 20%,#e7e8ec,var(--bg) 48%)}.auth-loading>div:last-child{display:flex;flex-direction:column}.auth-loading b{font-size:17px}.auth-loading span{color:var(--muted);font-size:12px}.auth-loading .brand-mark{animation:authPulse 1.25s ease-in-out infinite alternate}@keyframes authPulse{to{transform:translateY(-2px);filter:brightness(1.15)}}
html{scroll-behavior:smooth}body{background:radial-gradient(circle at 18% -12%,rgba(132, 146, 164, .34),transparent 31%),radial-gradient(circle at 88% 10%,rgba(232, 235, 238, .18),transparent 24%),var(--bg);letter-spacing:.01em}*{scrollbar-width:thin;scrollbar-color:#e0e2e7 #f4f5f7}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-track{background:#f4f5f7}*::-webkit-scrollbar-thumb{border:2px solid #f4f5f7;border-radius:999px;background:#e0e2e7}
button,input,select{transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease,filter .18s ease}button{box-shadow:0 7px 18px rgba(132, 145, 164, .16)}button:hover{filter:brightness(1.1);transform:translateY(-1px)}button:active{transform:translateY(0)}button:focus{outline:0}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #303540;outline-offset:2px}button.ghost{box-shadow:none;background:linear-gradient(180deg,#edeff1,#f0f1f3)}input,select{background:#f5f6f7;border-color:#e5e7eb}input:hover,select:hover{border-color:#48659d}input:focus{background:#f3f4f6}
header{height:76px;border-color:#e7e9ec;background:rgba(244, 246, 247, .88);box-shadow:0 10px 35px rgba(0,0,0,.18)}.brand-mark{background:linear-gradient(145deg,#233f77,#355eb1);box-shadow:0 10px 28px rgba(99, 112, 135, .4)}.brand h1{font-size:19px;letter-spacing:.02em}.brand p{color:#299163}.header-actions button{min-height:42px}.summary{padding:6px 10px;border:1px solid transparent;border-radius:8px}
.main-nav{gap:8px;padding:9px 24px;background:rgba(245, 246, 247, .94);border-color:#e7e9ec}.main-nav button,.subnav button{padding:10px 16px;box-shadow:none}.main-nav button.active,.subnav button.active{background:linear-gradient(180deg,#e9ebee,#edeff1);box-shadow:inset 0 -3px var(--blue);color:#292929}.main-nav button:not(.active):hover,.subnav button:not(.active):hover{background:#eff0f3;color:#22262f}
main{padding-top:20px}.subnav{gap:7px;margin-bottom:2px}.toolbar{padding:13px 15px;border-color:#e5e7eb;background:linear-gradient(180deg,#f1f2f4,#f3f4f6)}.toolbar strong{color:#23272f}.toolbar input{min-height:42px}.table-wrap{border-color:#e5e7eb;background:#f4f5f6;box-shadow:var(--shadow)}th{padding-top:13px;padding-bottom:13px;border-bottom:1px solid #e1e3e8;background:#edeff1;color:#2c313a;letter-spacing:.03em}td{border-color:#eaecef}tbody tr{transition:background-color .16s ease,box-shadow .16s ease}tbody tr:hover,tbody tr.selected{outline:0;background:#edeef1;box-shadow:inset 3px 0 var(--blue)}
.card,.account-manage,.account-activity,.account-card,.account-history-panel,.account-heading,.chart-panel{border-color:#e5e7eb;box-shadow:var(--shadow)}.card{background:linear-gradient(145deg,#f2f3f5,#f4f5f6)}.card:hover{border-color:#dfe1e6}.card-title h2{letter-spacing:.01em}.settings-grid{gap:18px;padding-bottom:84px}.savebar{bottom:16px;border-color:#4463a2;background:rgba(240, 242, 244, .94);box-shadow:0 15px 45px rgba(0,0,0,.42)}.security-actions{display:flex;align-items:center;gap:9px}
.account-heading{background:radial-gradient(circle at 92% 20%,rgba(79, 90, 108, .14),transparent 28%),linear-gradient(135deg,#eff0f3,#f4f5f6)}.account-kpis article,.account-history-stats>div,.account-metrics>div{border-color:#e5e7eb;background:linear-gradient(145deg,#f3f4f5,#f5f6f7);box-shadow:0 9px 24px rgba(0,0,0,.14)}.account-kpis article{position:relative;overflow:hidden}.account-kpis article:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--blue),#32b386);opacity:.8}.account-card{background:linear-gradient(145deg,#f0f2f4,#f4f5f6)}.account-card:hover{transform:translateY(-1px);box-shadow:0 18px 44px rgba(0,0,0,.3)}.position-row,.event-row{border-color:#e8eaed;background:rgba(244, 246, 247, .76)}.account-chart-block{border-color:#e5e7eb;box-shadow:inset 0 1px rgba(56, 56, 56, .025)}.account-chart-wrap{box-shadow:inset 0 8px 30px rgba(0,0,0,.2)}
.spread-card{border-color:#e5e7eb;box-shadow:var(--shadow)}.trend-block{border-color:#e5e7eb;background:linear-gradient(145deg,#f3f4f6,#f5f6f7)}.trend-block:hover{border-color:#dee1e6}.chart-wrap{border-color:#e7e9ed;box-shadow:inset 0 8px 30px rgba(0,0,0,.18)}.login-card{border-color:#dfe1e6;background:linear-gradient(145deg,rgba(241, 243, 245, .97),rgba(244, 245, 247, .97));box-shadow:0 34px 90px rgba(0,0,0,.62)}
@media(max-width:900px){header{padding:13px 14px}.settings-grid{padding-bottom:20px}.savebar{position:static;margin-top:2px}.security-actions{width:100%;justify-content:flex-end}}
@media(max-width:700px){body{font-size:13px}header{gap:10px}.brand{gap:10px}.brand-mark{width:40px;height:40px}.brand h1{font-size:17px}.brand p{font-size:10.5px}.header-actions{max-width:155px}.header-actions button{min-height:36px;padding:7px 10px;font-size:12px}.main-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;padding:8px 10px;overflow:visible}.main-nav button{min-width:0;padding:9px 4px}.account-heading,.account-card,.account-manage,.account-activity,.account-history-panel{border-radius:14px}.account-history-head h2{font-size:20px}.security-actions{align-items:stretch;flex-direction:column}.security-actions button{width:100%}.savebar{flex-direction:column;align-items:stretch}.savebar button{width:100%}.table-wrap:after{content:"可左右滑动查看更多";position:sticky;left:12px;bottom:8px;display:inline-block;margin:8px;padding:4px 8px;border:1px solid #dee0e6;border-radius:999px;background:rgba(245, 246, 247, .9);color:#3a4b6c;font-size:10px;pointer-events:none}}

/* v1.8 新闻、X发言与财报情报 */
textarea{width:100%;resize:vertical;min-height:110px;padding:11px 12px;border:1px solid #e5e7eb;border-radius:9px;background:#f5f6f7;color:var(--text);font:13px/1.55 Consolas,"Microsoft YaHei UI",sans-serif;outline:0}textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2b4d9022}.grow-field{flex:1}.compact-check{min-width:max-content;flex:0!important;align-self:center;flex-direction:row;align-items:center}.compact-check input{min-width:auto}.source-checks{display:grid;gap:10px;margin-top:13px}.source-group{padding:11px;border:1px solid #e5e7eb;border-radius:10px;background:#f5f6f7}.source-group>div:first-child{display:flex;align-items:baseline;gap:9px;margin-bottom:8px}.source-group small{color:var(--muted);font-size:11px}.source-group>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.source-checks label{flex-direction:row;align-items:center;padding:7px 10px;border:1px solid #e5e7eb;border-radius:999px;background:#f4f5f6;font-size:11px}.source-checks input{min-width:auto}.settings-tests,.intelligence-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.intelligence-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border:1px solid #e4e6ea;border-radius:16px;background:radial-gradient(circle at 88% 10%,rgba(76, 86, 102, .17),transparent 30%),linear-gradient(135deg,#eff0f3,#f5f5f7);box-shadow:var(--shadow)}.intelligence-heading h2{margin:3px 0;font-size:28px}.intelligence-heading p{max-width:760px;margin:3px 0;color:var(--muted)}.intelligence-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:14px 0}.intelligence-kpis article{position:relative;overflow:hidden;padding:16px 18px;border:1px solid #e5e7eb;border-radius:13px;background:linear-gradient(145deg,#f2f3f5,#f5f6f7)}.intelligence-kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--blue),#32b17e)}.intelligence-kpis span,.intelligence-kpis small{display:block;color:var(--muted)}.intelligence-kpis b{display:block;margin:3px 0;font:800 25px/1.2 "Segoe UI",sans-serif}.intelligence-kpis small{font-size:10px}
.intelligence-toolbar{border-radius:12px;margin-top:10px}.intelligence-toolbar input{flex:1;min-width:220px}.intelligence-toolbar select{min-width:130px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#f5f6f7;color:var(--text)}.intelligence-empty{margin-top:12px;padding:42px 20px;border:1px dashed #e1e3e8;border-radius:14px;background:#f4f5f688;text-align:center}.intelligence-empty h3{margin:0 0 5px}.intelligence-empty p{margin:0;color:var(--muted)}
.news-cards,.report-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.news-card,.report-card{position:relative;min-width:0;padding:17px 18px;border:1px solid #e5e7eb;border-radius:14px;background:linear-gradient(145deg,#f1f2f5,#f4f5f7);box-shadow:0 12px 30px rgba(0,0,0,.16)}.news-card:before,.report-card:before{content:"";position:absolute;left:-1px;top:14px;bottom:14px;width:3px;border-radius:3px;background:#5d6c88}.news-card.level-S:before,.news-card.level-Sq:before{background:#772121}.news-card.level-A:before{background:#855625}.news-card.level-B:before{background:#274683}.news-card.level-C:before{background:#32b190}.news-card-top,.report-card-top{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted);font-size:11px}.news-card-top time,.report-card-top time{margin-left:auto;white-space:nowrap}.level-badge,.source-pill{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #dfe2e6;border-radius:999px;background:#eeeff2;color:#23262f;font-weight:800}.level-S .level-badge,.level-Sq .level-badge{color:#421313;border-color:#9e484e;background:#efeaeb}.level-A .level-badge{color:#65441c;border-color:#e6e3df;background:#f1efed}.level-B .level-badge{color:#2f343f;border-color:#3e62a8;background:#ebedf0}.level-C .level-badge{color:#227a61;border-color:#e2e9e7;background:#eff3f2}.x-source{color:#241240;border-color:#674a9c;background:#edebef}.news-card h3,.report-card h3{margin:12px 0 6px;font-size:16px;line-height:1.48;overflow-wrap:anywhere}.original-title{margin:0 0 8px;color:#5c6b8a;font-size:11px;overflow-wrap:anywhere}.news-summary,.report-card>p{margin:7px 0;color:#2f343e;line-height:1.7;overflow-wrap:anywhere}.news-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:12px 0 7px;padding-top:10px;border-top:1px solid #e9ebee;color:var(--muted);font-size:11px}.news-meta b{color:#23272e}.asset-tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.asset-tags span{padding:3px 7px;border-radius:6px;background:#edeef1;color:#2f343e;font-size:10px}.source-link{display:inline-block;margin-top:7px;color:#383e4a;text-decoration:none;font-size:11px}.source-link:hover{text-decoration:underline}
.calendar-note{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:10px 0;padding:15px 17px;border:1px solid #e5e7eb;border-radius:12px;background:#f3f4f5}.calendar-note h3{margin:0}.calendar-note p,.calendar-note>span{margin:2px 0;color:var(--muted);font-size:11px}.calendar-cards{display:grid;gap:9px}.calendar-card{display:grid;grid-template-columns:150px minmax(220px,1.25fr) minmax(310px,1fr) 130px;align-items:center;gap:16px;padding:15px 17px;border:1px solid #e5e7eb;border-radius:12px;background:linear-gradient(145deg,#f2f3f5,#f4f5f6)}.calendar-card.watched{border-color:#4a9c8c;box-shadow:inset 3px 0 #32b37c}.calendar-date b,.calendar-date span{display:block}.calendar-date b{font-size:14px}.calendar-date span{color:#3a404c;font-size:11px}.calendar-main h3{margin:0;font-size:15px}.calendar-main p{margin:3px 0;color:var(--muted);font-size:11px}.calendar-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.calendar-metrics span{padding:7px 8px;border-radius:7px;background:#f5f6f7;color:var(--muted);font-size:10px}.calendar-metrics b{display:block;color:#24272e;font-size:12px}.calendar-card-actions{display:grid;gap:5px}.calendar-card-actions button{width:100%;padding:8px 10px;font-size:11px}.calendar-card-actions button.active{border-color:#32b37c;color:#288e5e}.calendar-card-actions small{color:var(--muted);font-size:9px;line-height:1.35}.source-health{margin-top:14px;padding:18px;border:1px solid #e5e7eb;border-radius:14px;background:#f3f4f6}.source-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.source-status{padding:10px 12px;border:1px solid #e5e7eb;border-radius:9px;background:#f5f6f7}.source-status span,.source-status b,.source-status small{display:block}.source-status span,.source-status small{color:var(--muted);font-size:10px}.source-status b{margin:2px 0;color:#501616}.source-status.ok b{color:#288e5e}.source-status.idle b{color:#6b4d1e}.report-card.prediction:before{background:#361d67}.report-card.actual:before{background:#32b37c}.report-card-top>span:first-child{color:#2a2f38;font-weight:800}.report-company{color:#344d80!important;font-size:11px}.report-case{display:grid;gap:4px;margin:10px 0;padding:10px;border:1px solid #e6e8ec;border-radius:9px;background:#f5f6f7}.report-case b{color:#2b2f38;font-size:11px}.report-case span{color:#2e333c;font-size:11px;line-height:1.6}.report-investor-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}.report-investor-points>div{display:grid;gap:3px;padding:9px 10px;border-radius:8px;background:#f5f6f7}.report-investor-points b{color:#2b2f38;font-size:10px}.report-investor-points span{color:#24282f;font-size:11px;line-height:1.5}
@media(max-width:980px){.news-cards,.report-cards{grid-template-columns:1fr}.intelligence-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-card{grid-template-columns:125px 1fr 130px}.calendar-metrics{grid-column:1/-1}.source-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.main-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.intelligence-heading{align-items:flex-start;flex-direction:column;padding:18px}.intelligence-heading h2{font-size:22px}.intelligence-actions{width:100%;justify-content:space-between}.intelligence-kpis{gap:7px}.intelligence-kpis article{padding:12px}.intelligence-kpis b{font-size:19px}.intelligence-toolbar{align-items:stretch;flex-direction:column}.intelligence-toolbar input,.intelligence-toolbar select{width:100%;min-width:0}.news-card,.report-card{padding:14px}.news-card-top,.report-card-top{align-items:flex-start;flex-wrap:wrap}.news-card-top time,.report-card-top time{width:100%;margin-left:0}.calendar-note{align-items:flex-start;flex-direction:column}.calendar-card{grid-template-columns:1fr;gap:9px}.calendar-metrics,.calendar-card-actions{grid-column:auto}.report-investor-points{grid-template-columns:1fr}.source-status-grid{grid-template-columns:1fr}.intelligence-settings .card-title{align-items:flex-start;flex-direction:column}.settings-tests{width:100%}.settings-tests button{flex:1}.compact-check{align-self:flex-start}.source-checks label{flex:1 1 calc(50% - 8px)}textarea{font-size:12px}}

/* 新闻影响方向与对象 */
.news-impact{display:grid;grid-template-columns:.7fr .8fr 1.5fr;gap:7px;margin:12px 0 0}.news-impact span{min-width:0;padding:8px 9px;border:1px solid #e6e8ec;border-radius:8px;background:#f5f6f7;color:var(--muted);font-size:10px}.news-impact b{display:block;margin-top:2px;color:#22272f;font-size:11px;overflow-wrap:anywhere}.news-impact .direction-利空{color:#5c1a1a}.news-impact .direction-利好{color:#2a9364}.news-impact .direction-中性{color:#333843}.news-impact+.news-meta{margin-top:8px;padding-top:9px}
@media(max-width:700px){.news-impact{grid-template-columns:repeat(2,minmax(0,1fr))}.news-impact span:last-child{grid-column:1/-1}}

/* v1.8.3 密钥状态与显式清除 */
.secret-field{min-width:0}.secret-input-row{display:flex;align-items:stretch;gap:8px}.secret-input-row input{flex:1;min-width:0}.secret-input-row .secret-clear{flex:0 0 auto;padding:8px 12px}.secret-input-row .secret-clear:disabled{cursor:not-allowed;filter:none;opacity:.42;transform:none}.secret-input-row .secret-clear.armed{border-color:#9f474f;background:#eee9ea;color:#401212}.secret-status{display:flex;align-items:center;gap:6px;min-height:18px;color:var(--muted);font-size:10.5px}.secret-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#5f6c87;box-shadow:0 0 0 3px rgba(103, 119, 139, .12)}.secret-status.configured{color:#258559}.secret-status.configured:before{background:#32b17e;box-shadow:0 0 0 3px rgba(96, 131, 117, .13)}.secret-status.pending{color:#303540}.secret-status.pending:before{background:#294989;box-shadow:0 0 0 3px rgba(76, 86, 102, .14)}.secret-status.pending-clear{color:#411212}.secret-status.pending-clear:before,.secret-status.missing:before{background:#6b1e1e;box-shadow:0 0 0 3px rgba(79, 58, 58, .12)}
@media(max-width:700px){.secret-input-row{gap:6px}.secret-input-row .secret-clear{padding:8px 10px;font-size:11px}}

/* v2.0 短线情报中心 */
.intelligence-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.news-cards{grid-template-columns:1fr}.event-pill{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #e2e5e9;border-radius:999px;background:#f3f4f6;color:#3a4b6c;font-weight:700}.fields.four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.score-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:10px 0}.score-grid>span{position:relative;overflow:hidden;padding:7px 8px 10px;border:1px solid #e7e9ec;border-radius:8px;background:#f5f6f7}.score-grid small,.score-grid b{display:block}.score-grid small{color:#50607f;font-size:9px}.score-grid b{color:#222530;font:800 13px/1.4 Consolas}.score-grid i{position:absolute;left:0;bottom:0;width:var(--score);height:2px;background:linear-gradient(90deg,#294989,#32b17e)}.evidence-box,.trade-thesis{display:grid;gap:5px;margin:10px 0;padding:10px 12px;border:1px solid #e7e8ec;border-radius:9px;background:rgba(244, 246, 247, .75)}.evidence-box>b,.trade-thesis b{color:#2e333c;font-size:10px}.evidence-box span{position:relative;padding-left:12px;color:#2d323b;font-size:11px;line-height:1.55}.evidence-box span:before{content:"";position:absolute;left:0;top:.62em;width:4px;height:4px;border-radius:50%;background:#2ea476}.trade-thesis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.trade-thesis>div{min-width:0;padding:7px 9px;border-radius:7px;background:#f4f5f6}.trade-thesis b,.trade-thesis span{display:block}.trade-thesis span{margin-top:3px;color:#2f343e;font-size:10.5px;line-height:1.55;overflow-wrap:anywhere}.reaction-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0}.reaction-strip>span{padding:7px 9px;border:1px solid #e7e8ec;border-radius:8px;background:#f4f5f6;color:#4c5c7b;font-size:10px}.reaction-strip b,.reaction-strip small{display:block}.reaction-strip b{margin-top:2px;color:#23272e;font-size:12px}.reaction-strip b.profit{color:#2c9e6e}.reaction-strip b.loss{color:#581919}.reaction-strip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.feedback-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.feedback-actions>span{margin-right:3px;color:#5b6a89;font-size:9px}.feedback-actions button{padding:5px 8px;border-radius:7px;font-size:9px}.feedback-actions button.selected{border-color:#294989;background:#e7e9ec;color:#292929}.report-case.verified{border-color:#e2e9e6;background:#f2f5f5}.report-case.verified b{color:#288f62}
@media(max-width:1200px){.intelligence-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.fields.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.intelligence-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.score-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trade-thesis{grid-template-columns:1fr}.reaction-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.reaction-strip>span{padding:6px}.news-footer{align-items:flex-start;flex-direction:column}.feedback-actions{justify-content:flex-start}.fields.four{grid-template-columns:1fr}.event-pill{max-width:100%;white-space:normal}.news-card-top time{order:5}}

/* v3.0 内部交易主控台 */
:root{
  --bg:#f6f7f8;--panel:#f4f5f6;--raised:#f0f1f3;--line:#e8eaed;--text:#25252d;--muted:#445372;
  --blue:#274581;--cyan:#335aa9;--green:#31ac7e;--yellow:#795a22;--red:#6c1f23;--violet:#2a195a;
  --soft-shadow:0 18px 50px rgba(0,0,0,.2);--deep-shadow:0 28px 80px rgba(0,0,0,.38)
}
body{background:radial-gradient(circle at 14% -5%,rgba(120, 138, 156, .25),transparent 29%),radial-gradient(circle at 92% 5%,rgba(132, 163, 164, .12),transparent 25%),linear-gradient(180deg,#f5f6f7 0,#f6f7f8 70%);font-family:Inter,"SF Pro Display","Segoe UI","Microsoft YaHei UI",sans-serif}
.shell{max-width:1540px}.page.active{animation:pageIn .24s ease both}@keyframes pageIn{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}
header{height:72px;padding:0 28px;border-bottom-color:rgba(112, 132, 150, .28);background:rgba(245, 246, 248, .82);box-shadow:0 12px 38px rgba(0,0,0,.16)}
.brand-mark{border:1px solid rgba(56, 56, 56, .18);background:linear-gradient(145deg,#233f76,#2c4f94);box-shadow:0 10px 30px rgba(82, 89, 110, .38)}
.brand h1{font-size:18px}.brand h1 em{display:inline-grid;place-items:center;margin-left:5px;padding:2px 6px;border:1px solid rgba(71, 84, 96, .36);border-radius:999px;background:rgba(80, 92, 109, .12);color:#2f343f;font:800 9px/1.4 Inter,sans-serif;font-style:normal;vertical-align:middle}.brand p{color:#278b62}
.header-actions{gap:9px}.header-actions button{min-height:38px;padding:8px 13px}.summary{padding:7px 10px;border:1px solid rgba(120, 139, 155, .3);border-radius:9px;background:rgba(242, 244, 245, .72);font-size:11px}
.main-nav{position:sticky;top:72px;z-index:4;gap:4px;padding:7px 24px;border-color:rgba(112, 132, 150, .24);background:rgba(245, 246, 247, .88);backdrop-filter:blur(16px)}
.main-nav button{display:flex;align-items:center;gap:7px;min-height:40px;padding:8px 14px;border:1px solid transparent;color:#505f7d;font-size:12px;box-shadow:none}.main-nav button.active{border-color:rgba(85, 99, 115, .28);background:linear-gradient(180deg,rgba(235, 237, 240, .92),rgba(239, 241, 243, .92));box-shadow:inset 0 -2px #25437e,0 8px 22px rgba(0,0,0,.1)}.nav-icon{display:grid;place-items:center;width:20px;height:20px;color:#2e4f91;font:800 13px/1 Consolas}.main-nav button.active .nav-icon{color:#363c48}
main{padding:20px 28px 48px}

.dashboard-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:29px 32px;border:1px solid rgba(119, 138, 154, .43);border-radius:22px;background:linear-gradient(132deg,rgba(239, 241, 243, .97),rgba(244, 246, 247, .97));box-shadow:var(--deep-shadow)}
.dashboard-hero:before{content:"";position:absolute;right:-80px;top:-140px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(94, 121, 128, .19),transparent 66%);pointer-events:none}.dashboard-hero:after{content:"";position:absolute;left:45%;right:12%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#335aa9,transparent);opacity:.6}
.hero-copy,.hero-state{position:relative;z-index:1}.hero-copy h2{margin:5px 0 4px;font-size:31px;letter-spacing:-.02em}.hero-copy p{max-width:800px;margin:0;color:#3f4653;line-height:1.7}.hero-state{display:flex;align-items:center;gap:13px;min-width:245px;padding:13px 16px;border:1px solid rgba(104, 126, 140, .35);border-radius:14px;background:rgba(245, 246, 247, .58);box-shadow:inset 0 1px rgba(56, 56, 56, .04)}.hero-state b,.hero-state small{display:block}.hero-state b{font-size:12px}.hero-state small{margin-top:3px;color:var(--muted);font-size:10px}.live-pulse{width:11px;height:11px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(94, 127, 115, .12),0 0 18px rgba(94, 127, 115, .8);animation:livePulse 1.8s ease-in-out infinite}@keyframes livePulse{50%{box-shadow:0 0 0 10px rgba(94, 127, 115, 0),0 0 24px rgba(94, 127, 115, .9)}}
.dashboard-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin:13px 0}.dashboard-kpis article{position:relative;overflow:hidden;padding:16px 18px;border:1px solid rgba(132, 149, 164, .54);border-radius:14px;background:linear-gradient(145deg,rgba(242, 243, 245, .96),rgba(244, 246, 247, .96));box-shadow:0 10px 28px rgba(0,0,0,.13)}.dashboard-kpis article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(#26437e,#345daf)}.dashboard-kpis .kpi-critical:before{background:linear-gradient(#681d21,#795422)}.dashboard-kpis span,.dashboard-kpis small{display:block;color:var(--muted)}.dashboard-kpis span{font-size:11px}.dashboard-kpis b{display:block;margin:4px 0;color:#212931;font:800 24px/1.15 "SF Pro Display","Segoe UI",sans-serif}.dashboard-kpis small{font-size:9.5px}.good-text{color:var(--green)!important}.danger-text{color:var(--red)!important}
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(310px,.75fr);gap:13px;align-items:start}.dashboard-side{display:grid;gap:13px;min-width:0}.dashboard-panel{min-width:0;padding:19px;border:1px solid rgba(132, 149, 164, .54);border-radius:17px;background:linear-gradient(148deg,rgba(242, 244, 246, .97),rgba(245, 246, 247, .97));box-shadow:var(--soft-shadow)}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.panel-heading.compact{align-items:center}.panel-heading h3{margin:2px 0;font-size:17px}.panel-heading p{margin:2px 0;color:var(--muted);font-size:10.5px}.panel-kicker{color:#26437e;font:800 9px/1.4 Inter,sans-serif;letter-spacing:.16em}.panel-actions{display:flex;align-items:center;gap:7px}.panel-actions select{min-width:150px;padding:8px 10px;border:1px solid #e4e6ea;border-radius:8px;background:#f5f6f7;color:var(--text);font-size:10.5px}.panel-actions button{padding:8px 10px;font-size:10.5px}.text-button{padding:4px 2px;border:0;background:transparent!important;color:#2a4271;font-size:10px;box-shadow:none!important}.text-button:hover{color:#292929;transform:none}.text-button.primary{color:#3e4553}
.dashboard-alerts{display:grid;gap:8px}.unified-alert{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:start;padding:13px 14px;border:1px solid #e8e9ed;border-radius:13px;background:rgba(244, 246, 247, .78);transition:border-color .18s ease,background .18s ease,opacity .18s ease}.unified-alert:hover{border-color:#4363a3;background:rgba(243, 244, 246, .92)}.unified-alert.is-read:not(.is-watched){opacity:.6}.unified-alert.is-watched{border-color:#556991;box-shadow:inset 3px 0 var(--violet)}.unified-alert.severity-critical{border-color:rgba(164, 131, 134, .72);background:linear-gradient(100deg,rgba(242, 237, 237, .45),rgba(244, 246, 247, .9))}.unified-alert.severity-high{box-shadow:inset 2px 0 #95572a}.alert-rail span{display:grid;place-items:center;width:33px;height:33px;border:1px solid #e1e4e8;border-radius:10px;background:#f0f1f3;color:#404755;font-weight:900}.severity-critical .alert-rail span{border-color:#9d4952;background:#efebec;color:#57191c}.severity-high .alert-rail span{color:#6d481f}.alert-content{min-width:0}.alert-topline{display:flex;align-items:center;gap:6px;min-width:0;color:#556380;font-size:9px}.alert-kind,.alert-level,.source-count{padding:2px 6px;border-radius:999px;background:#eeeff2;color:#313640;font-weight:800}.alert-level{background:#eaebef;color:#201240}.source-count{background:#f0f3f3;color:#268561}.alert-topline time{margin-left:auto;white-space:nowrap}.alert-content h4{margin:7px 0 3px;font-size:13px;line-height:1.45;overflow-wrap:anywhere}.alert-content p{display:-webkit-box;overflow:hidden;margin:0;color:#3c424f;font-size:10.5px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}.alert-context{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.alert-context span{max-width:220px;overflow:hidden;padding:3px 7px;border:1px solid #e7e9ec;border-radius:6px;color:#445372;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.alert-actions{display:flex;align-items:center;align-self:center;gap:6px}.icon-button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid #e5e7eb;border-radius:8px;background:#f2f3f5;color:#425273;font-size:15px;box-shadow:none}.icon-button.selected{border-color:#644f96;background:#e8e9ed;color:#211240}
.dashboard-empty{display:grid;place-items:center;gap:5px;padding:54px 20px;border:1px dashed #e1e4e8;border-radius:13px;color:#3b4861;text-align:center}.dashboard-empty>span,.focus-clear>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(105, 141, 128, .13);color:#2c9c6f;font-size:20px}.dashboard-empty small{color:#5d6c88}
.focus-list{display:grid;gap:7px}.focus-item{display:grid;grid-template-columns:31px minmax(0,1fr);gap:9px;width:100%;padding:10px;border:1px solid transparent;border-radius:10px;background:rgba(245, 246, 247, .76);box-shadow:none;text-align:left}.focus-item:hover{border-color:#e1e4e8;transform:none}.focus-item>span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#eeeff2;color:#414856;font:800 10px Consolas}.focus-item b,.focus-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.focus-item b{font-size:11px}.focus-item small{margin-top:3px;color:#546380;font-size:9px}.focus-clear{display:grid;place-items:center;padding:26px 10px;color:#46536e;text-align:center}.focus-clear p{margin:7px 0 0;font-size:10px}
.health-list{display:grid;gap:2px}.health-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 3px;border-bottom:1px solid rgba(233, 236, 239, .46)}.health-item:last-child{border-bottom:0}.health-dot{width:7px;height:7px;border-radius:50%;background:#616c85;box-shadow:0 0 0 4px rgba(109, 128, 147, .08)}.state-good .health-dot{background:var(--green);box-shadow:0 0 0 4px rgba(94, 127, 115, .09)}.state-warn .health-dot{background:var(--yellow)}.state-error .health-dot{background:var(--red)}.health-item b,.health-item small{display:block}.health-item b{font-size:10.5px}.health-item small{margin-top:2px;color:#5c6b89;font-size:8.5px}.health-item em{color:#54627d;font-size:8.5px;font-style:normal}.state-good em{color:#2a9568}.state-warn em{color:#6c521f}.state-error em{color:#5c1a1e}
.settings-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border:1px solid #e2e4e9;border-radius:17px;background:radial-gradient(circle at 90% 10%,rgba(94, 125, 126, .12),transparent 35%),linear-gradient(135deg,#eeeff2,#f4f5f6);box-shadow:var(--soft-shadow)}.settings-hero h2{margin:4px 0;font-size:25px}.settings-hero p{margin:0;color:var(--muted)}.settings-health-link{display:flex;align-items:center;gap:10px;color:#475673;font-size:10px}.settings-grid>.card{transition:border-color .18s ease,transform .18s ease}.settings-grid>.card:hover{border-color:#47659f;transform:translateY(-1px)}
.toast{position:fixed;right:22px;bottom:22px;z-index:40;max-width:min(430px,calc(100vw - 28px));padding:12px 15px;border:1px solid #e2e8e6;border-radius:11px;background:rgba(242, 246, 245, .96);box-shadow:0 18px 50px rgba(0,0,0,.42);color:#1a5d3f;font-size:12px}.toast.error{border-color:#994c54;background:rgba(243, 238, 239, .97);color:#401214}
.login-card{position:relative;overflow:hidden;border-color:#e0e3e7;border-radius:24px;background:linear-gradient(150deg,rgba(241, 242, 244, .98),rgba(245, 246, 248, .98));box-shadow:0 40px 100px rgba(0,0,0,.6)}.login-card:before{content:"";position:absolute;inset:-100px -100px auto auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(95, 120, 128, .18),transparent 66%)}

@media(max-width:1150px){.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-layout{grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr)}.unified-alert{grid-template-columns:34px minmax(0,1fr)}.alert-actions{grid-column:2;justify-content:flex-end}}
@media(max-width:900px){.dashboard-hero{align-items:flex-start;flex-direction:column}.hero-state{width:100%}.dashboard-layout{grid-template-columns:1fr}.dashboard-side{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-hero{align-items:flex-start;flex-direction:column}.settings-health-link{width:100%;justify-content:space-between}}
@media(max-width:700px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#f5f6f7,#f6f7f8)}header{position:sticky;top:0;height:68px;padding:10px 12px}.brand-mark{width:38px;height:38px;border-radius:11px}.brand h1{font-size:15px}.brand p{max-width:190px;font-size:9px}.header-actions{max-width:125px}.header-actions [data-action=refresh],.header-actions .summary{display:none}.header-actions button{min-height:34px;padding:6px 8px;font-size:10px}
  .main-nav{position:fixed;left:0;right:0;top:auto;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #e5e7eb;border-bottom:0;background:rgba(245, 247, 248, .96);box-shadow:0 -14px 40px rgba(0,0,0,.35);backdrop-filter:blur(18px)}.main-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-width:0;min-height:50px;padding:4px 1px;border-radius:9px;font-size:9px;white-space:nowrap}.main-nav button.active{box-shadow:inset 0 2px #25427d}.nav-icon{width:18px;height:18px;font-size:12px}
  main{padding:10px 10px 18px}.dashboard-hero{gap:15px;padding:19px 17px;border-radius:17px}.hero-copy h2{font-size:24px}.hero-copy p{font-size:11px}.hero-state{min-width:0;padding:11px 12px}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 0}.dashboard-kpis article{padding:12px}.dashboard-kpis article:last-child{grid-column:1/-1}.dashboard-kpis b{font-size:19px}.dashboard-layout,.dashboard-side{display:grid;grid-template-columns:1fr;gap:8px}.dashboard-panel{padding:13px;border-radius:14px}.panel-heading{align-items:stretch;flex-direction:column;gap:9px}.panel-heading.compact{align-items:center;flex-direction:row}.panel-actions{display:grid;grid-template-columns:1fr auto;width:100%}.panel-actions select{min-width:0;width:100%}
  .unified-alert{grid-template-columns:30px minmax(0,1fr);gap:8px;padding:11px 10px}.alert-rail span{width:28px;height:28px}.alert-content h4{font-size:12px}.alert-topline{flex-wrap:wrap}.alert-topline time{width:100%;margin-left:0}.alert-context span{max-width:100%}.alert-actions{grid-column:1/-1;justify-content:flex-end;padding-top:2px;border-top:1px solid rgba(234, 237, 240, .48)}.alert-actions .text-button{padding:6px}.focus-panel{order:1}.health-panel{order:2}.settings-hero{padding:18px}.settings-hero h2{font-size:21px}.settings-health-link{align-items:stretch;flex-direction:column}.toast{left:14px;right:14px;bottom:calc(74px + env(safe-area-inset-bottom));text-align:center}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.settings-hero{grid-column:1/-1}
.settings-filter-bar{grid-column:1/-1;position:sticky;top:128px;z-index:3;display:flex;gap:6px;padding:7px;border:1px solid rgba(132, 149, 164, .72);border-radius:12px;background:rgba(244, 246, 247, .9);box-shadow:0 12px 30px rgba(0,0,0,.16);backdrop-filter:blur(15px)}.settings-filter-bar button{padding:8px 13px;border:1px solid transparent;background:transparent;color:#505f7c;font-size:10.5px;box-shadow:none}.settings-filter-bar button.active{border-color:#3f62a6;background:#eaecef;color:#292929}.settings-filtered{display:none!important}@media(max-width:700px){.settings-filter-bar{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.settings-filter-bar button:first-child{grid-column:1/-1}}

/* v3.1 浏览器私有密钥与分批对冲交易台 */
.trading-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:27px 30px;border:1px solid rgba(117, 138, 153, .5);border-radius:20px;background:radial-gradient(circle at 84% 0,rgba(103, 92, 76, .12),transparent 33%),linear-gradient(135deg,#eeeff2,#f5f5f7);box-shadow:var(--deep-shadow)}.trading-hero:after{content:"";position:absolute;left:30%;right:8%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#7e5724,transparent)}.trading-hero h2{margin:4px 0;font-size:29px}.trading-hero p{max-width:850px;margin:0;color:#3d4452}.trading-hero-status{position:relative;z-index:1;display:flex;align-items:center;gap:13px;min-width:250px;padding:13px 16px;border:1px solid #e1e3e7;border-radius:14px;background:rgba(245, 246, 247, .68)}.trading-hero-status b,.trading-hero-status small{display:block}.trading-hero-status small{margin-top:3px;color:var(--muted);font-size:10px}.live-pulse.idle{background:#5f6c86;box-shadow:0 0 0 6px rgba(100, 118, 136, .1);animation:none}.live-pulse.trading{background:var(--yellow);box-shadow:0 0 0 6px rgba(89, 81, 66, .13),0 0 18px rgba(89, 81, 66, .8)}
.trading-risk{display:flex;align-items:flex-start;gap:11px;margin:12px 0;padding:13px 15px;border:1px solid rgba(164, 149, 132, .58);border-radius:13px;background:linear-gradient(90deg,rgba(243, 240, 238, .5),rgba(244, 245, 245, .7));color:#5a4526}.trading-risk>span{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:8px;background:#ebe8e5;color:#5b421a;font-weight:900}.trading-risk p{margin:0;font-size:11px;line-height:1.7}.trading-risk b{color:#433213}
.trading-workspace-note{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-3px 0 12px;padding:10px 14px;border:1px solid rgba(98, 132, 118, .3);border-radius:12px;background:rgba(242, 245, 245, .36);color:#27423e}.trading-workspace-note span{white-space:nowrap;color:#268760;font-size:11px}.trading-workspace-note p{margin:0;text-align:right;color:#515b70;font-size:10px}.trading-workspace-note b{letter-spacing:.08em}
.trading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.trading-panel{min-width:0;padding:20px;border:1px solid rgba(132, 149, 164, .64);border-radius:17px;background:linear-gradient(148deg,rgba(242, 244, 245, .98),rgba(245, 246, 247, .98));box-shadow:var(--soft-shadow)}.trading-panel.wide{grid-column:1/-1}.trading-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.trading-panel-head>div{display:flex;align-items:center;gap:9px}.trading-panel-head h3{margin:0;font-size:17px}.step-number{display:grid;place-items:center;width:27px;height:27px;border:1px solid #4062a5;border-radius:9px;background:#e9ebee;color:#363c48;font:800 12px Consolas}.vault-status{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid #e1e3e8;border-radius:999px;background:#f3f4f5;color:#455370;font-size:9.5px;font-weight:800}.vault-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#606d86}.vault-status.good{border-color:#e5ebe8;color:#278a5b}.vault-status.good:before{background:#31ac7e;box-shadow:0 0 8px #31ac7e}.vault-status.active{border-color:#aa783c;color:#5e431a}.vault-status.active:before,.vault-status.warning:before{background:#795a22;box-shadow:0 0 8px #795a22}.server-ip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;padding:11px 13px;border:1px solid #e5e6eb;border-radius:11px;background:#f5f6f7}.server-ip small,.server-ip b{display:block}.server-ip small{color:#526180;font-size:9.5px}.server-ip b{margin-top:2px;color:#24262e;font:800 16px Consolas}.server-ip>div:last-child{display:flex;gap:6px}.server-ip button{padding:7px 9px;font-size:9px}
.trading-secret-fields,.trading-fields{display:grid;gap:9px}.trading-secret-fields,.trading-fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.trading-secret-fields label,.trading-fields label,.trading-option label{gap:5px;color:#43526f;font-size:10px}.trading-secret-fields input,.trading-fields input,.trading-fields select,.trading-option select{width:100%;padding:9px 10px;border:1px solid #e3e5e9;border-radius:8px;background:#f5f6f7;color:#222630}.trading-help{margin:8px 0 12px;color:#52617f;font-size:10px;line-height:1.65}.trading-button-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.trading-button-row button{padding:9px 12px;font-size:10px}.trading-button-row button:disabled{cursor:not-allowed;filter:none;opacity:.42}.trade-start{background:linear-gradient(135deg,#a5732f,#b37032);color:#f9f8f7;box-shadow:0 8px 24px rgba(140, 123, 104, .22)}
.batch-preview{margin:10px 0;padding:9px 11px;border:1px solid #e3e5ea;border-radius:9px;background:#f4f5f6;color:#363c48;font-size:10px}.trading-spreads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:10px}.trading-spreads>div{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border:1px solid #e5e7eb;border-radius:9px;background:#f4f5f6}.trading-spreads span{color:#50607f;font-size:9px}.trading-spreads b{color:#755921;font:800 12px Consolas}.trading-option{display:grid;grid-template-columns:minmax(150px,.5fr) minmax(0,1fr);align-items:end;gap:10px;margin-bottom:10px}.trading-option p{margin:0 0 8px;color:#536280;font-size:10px}.spread-gate{display:grid;gap:8px;margin:11px 0;padding:11px;border:1px solid rgba(164, 152, 132, .46);border-radius:10px;background:rgba(244, 242, 240, .23)}.spread-gate>label{display:flex;align-items:center;gap:7px;color:#5e471a;font-size:10px;font-weight:700}.spread-gate>div{display:flex;align-items:center;gap:7px;color:#454f64;font-size:9px}.spread-gate input[type=number]{width:90px}.spread-gate small{color:#867660;font-size:9px}.risk-check{display:flex!important;align-items:flex-start;flex-direction:row!important;gap:8px!important;margin:11px 0;color:#24272e!important;font-size:10px!important}.risk-check input{margin-top:2px}
.trading-status-message{margin:0 0 12px;padding:11px 13px;border:1px solid #e3e5e9;border-radius:10px;background:#f5f6f7;color:#23272e;font-weight:700}.trading-live-badges{display:flex!important;gap:6px!important}.trading-progress{margin-bottom:13px}.trading-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px;color:#455370;font-size:9.5px}.trading-progress progress{width:100%;height:8px;overflow:hidden;border:0;border-radius:999px;background:#eff0f3}.trading-progress progress::-webkit-progress-bar{background:#eff0f3}.trading-progress progress::-webkit-progress-value{background:linear-gradient(90deg,#284888,#7d5c23)}.trading-live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.trading-metric{padding:12px;border:1px solid #e7ecea;border-radius:11px;background:linear-gradient(145deg,rgba(239, 243, 242, .52),rgba(245, 247, 248, .7))}.trading-metric.sell{border-color:#e6dedf;background:linear-gradient(145deg,rgba(241, 237, 237, .46),rgba(247, 244, 246, .7))}.trading-metric.account{border-color:#646e81;background:linear-gradient(145deg,rgba(236, 239, 241, .54),rgba(244, 245, 247, .74))}.trading-metric span,.trading-metric small,.trading-metric b{display:block}.trading-metric span{color:#475776;font-size:9px}.trading-metric b{margin:4px 0;color:#25292d;font:800 17px Consolas}.trading-metric small{color:#5b6a87;font-size:9px}.trading-order-rows{display:grid;gap:7px}.trading-order-row{display:grid;grid-template-columns:1.1fr repeat(4,.8fr) 1.2fr;gap:8px;align-items:center;padding:10px 12px;border:1px solid #e7ecea;border-radius:10px;background:#f5f6f8}.trading-order-row.sell{border-color:#e8e1e2;background:#f7f4f6}.trading-order-row>div{min-width:0}.trading-order-row span,.trading-order-row small,.trading-order-row b{display:block}.trading-order-row span{color:#2c9b6e;font-size:9px;font-weight:800}.trading-order-row.sell span{color:#56181c}.trading-order-row small{color:#5d6b89;font-size:8.5px}.trading-order-row b{overflow:hidden;margin-top:2px;color:#23262e;font:700 10px Consolas;text-overflow:ellipsis;white-space:nowrap}.trading-events-head{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:12px;border-top:1px solid #e7e9ed}.trading-events-head h4{margin:0;font-size:12px}.trading-events-head span{color:#5e6c88;font-size:9px}.trading-events{display:grid;gap:3px;margin-top:7px;max-height:230px;overflow:auto}.trading-events>p{color:#5e6c88;font-size:10px}.trading-event{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;padding:6px 7px;border-radius:7px;color:#3d4a65;font:10px/1.5 Consolas,"Microsoft YaHei UI"}.trading-event:nth-child(odd){background:rgba(242, 243, 245, .58)}.trading-event time{color:#5c6b8a}.trading-event.error,.trading-event.error time{color:#57191d}
@media(max-width:900px){.trading-grid{grid-template-columns:1fr}.trading-panel.wide{grid-column:auto}.trading-hero{align-items:flex-start;flex-direction:column}.trading-hero-status{width:100%}.trading-order-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.main-nav{grid-template-columns:repeat(7,minmax(0,1fr))}.main-nav button{font-size:8px}.trading-hero{padding:19px 17px;border-radius:17px}.trading-hero h2{font-size:23px}.trading-hero p{font-size:10px}.trading-risk{padding:11px}.trading-panel{padding:14px;border-radius:14px}.trading-secret-fields,.trading-fields.two,.trading-live-grid{grid-template-columns:1fr}.trading-option{grid-template-columns:1fr}.trading-option p{margin:0}.trading-button-row{display:grid;grid-template-columns:1fr 1fr}.trading-button-row button:first-child{grid-column:1/-1}.server-ip{align-items:flex-start;flex-direction:column}.server-ip>div:last-child{width:100%}.server-ip button{flex:1}.trading-order-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:9px}.trading-order-row>div:first-child{grid-column:1/-1}.trading-event{grid-template-columns:60px minmax(0,1fr);font-size:9px}}

/* v3.2 通用多腿策略编辑器 */
.strategy-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;margin-bottom:10px}.strategy-toolbar>label{gap:5px;color:#43526f;font-size:10px}.strategy-toolbar select{width:100%;padding:10px 11px;border:1px solid #4263a3;border-radius:9px;background:#f5f6f7;color:#212631;font-weight:700}.strategy-toolbar>div{display:flex;flex-wrap:wrap;gap:6px}.strategy-toolbar button{padding:8px 10px;font-size:9px}.strategy-preview{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:10px 0;padding:12px;border:1px solid #e1e3e7;border-radius:12px;background:linear-gradient(135deg,rgba(242, 244, 246, .96),rgba(244, 246, 247, .96))}.strategy-preview>div{padding:8px 10px;border:1px solid rgba(231, 234, 237, .7);border-radius:9px;background:rgba(246, 247, 248, .55)}.strategy-preview span,.strategy-preview b{display:block}.strategy-preview span{color:#566686;font-size:8.5px}.strategy-preview b{overflow:hidden;margin-top:4px;color:#674f1d;font:800 14px Consolas;text-overflow:ellipsis;white-space:nowrap}.strategy-preview b.pass{color:#289061}.strategy-preview b.waiting,.strategy-preview b.error{color:#571f19}.strategy-preview b.off{color:#43516d}.strategy-preview>small{grid-column:1/-1;color:#5d6b89;font-size:8.5px}.formula-readout{margin-bottom:10px;padding:9px 11px;border-left:3px solid #432480;border-radius:8px;background:rgba(232, 230, 236, .18);color:#241446;font:9.5px/1.6 Consolas,"Microsoft YaHei UI";overflow-wrap:anywhere}
.strategy-editor{margin:11px 0;border:1px solid #e2e4e9;border-radius:12px;background:#f5f5f7}.strategy-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;cursor:pointer;list-style:none;color:#22272f;font-weight:800}.strategy-editor>summary::-webkit-details-marker{display:none}.strategy-editor>summary:after{content:"＋";color:#3f4654;font-size:16px}.strategy-editor[open]>summary:after{content:"－"}.strategy-editor>summary small{margin-left:auto;color:#5d6b89;font-size:8.5px;font-weight:500}.strategy-editor-body{display:grid;gap:10px;padding:0 13px 13px;border-top:1px solid #e7e9ed}.strategy-editor-body>label,.formula-denominator label,.gate-heading label,.strategy-row label{display:grid;gap:4px;color:#505f7d;font-size:9px}.strategy-editor-body input,.strategy-editor-body select{width:100%;min-width:0;padding:8px 9px;border:1px solid #e4e6ea;border-radius:8px;background:#f6f7f8;color:#24292d}.strategy-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.strategy-section-head h4{margin:0;color:#23272e;font-size:12px}.strategy-section-head p{margin:3px 0 0;color:#5d6c88;font-size:8.5px}.strategy-section-head button{padding:7px 9px;font-size:8.5px}.strategy-rows{display:grid;gap:6px}.strategy-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(105px,.7fr) minmax(105px,.7fr) 32px;gap:6px;align-items:end;padding:8px;border:1px solid #e7e9ed;border-radius:10px;background:rgba(243, 245, 246, .72)}.gate-rule-row{grid-template-columns:1fr 1fr .72fr .72fr 32px}.strategy-row .row-remove{width:32px;height:32px;padding:0;font-size:16px}.formula-denominator{display:grid;grid-template-columns:auto minmax(160px,1fr) minmax(110px,.65fr) minmax(90px,.5fr);gap:7px;align-items:end;padding:9px;border:1px solid #e4e6ea;border-radius:10px;background:rgba(242, 243, 245, .78)}.formula-denominator .compact-check,.gate-heading .compact-check{display:flex;align-items:center;align-self:center;flex-direction:row;gap:7px;color:#24272e}.formula-denominator .compact-check input,.gate-heading .compact-check input{width:auto}.gate-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid rgba(164, 150, 132, .48);border-radius:10px;background:rgba(244, 242, 240, .24)}.gate-heading>label:last-child{grid-template-columns:auto 130px;align-items:center}.strategy-save-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:9px;border-top:1px solid #e7e9ed}.strategy-save-row span{color:#516180;font-size:9px}.strategy-save-row span.error{color:#57181c}.strategy-save-row button{padding:9px 13px}.trading-market-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px;margin:10px 0}.trading-market-card{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:8px;align-items:center;padding:10px 12px;border:1px solid #e7ecea;border-radius:10px;background:rgba(244, 247, 247, .75)}.trading-market-card.sell{border-color:#e8e1e2;background:rgba(246, 242, 244, .72)}.trading-market-card span,.trading-market-card small,.trading-market-card b{display:block}.trading-market-card span,.trading-market-card small{color:#5b6a87;font-size:8.5px}.trading-market-card b{margin-top:2px;color:#23262f;font:700 10px Consolas}.trading-metric.formula{border-color:#675591;background:linear-gradient(145deg,rgba(237, 235, 240, .48),rgba(243, 244, 246, .72))}.trading-metric.formula b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.strategy-toolbar{grid-template-columns:1fr}.strategy-toolbar>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.formula-denominator{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.strategy-preview{grid-template-columns:1fr 1fr}.strategy-preview>div:last-of-type{grid-column:1/-1}.strategy-toolbar>div{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-row,.gate-rule-row{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-row .row-remove{grid-column:2;justify-self:end}.formula-denominator{grid-template-columns:1fr}.gate-heading{align-items:stretch;flex-direction:column}.gate-heading>label:last-child{grid-template-columns:1fr}.strategy-section-head{align-items:flex-start}.strategy-save-row{align-items:stretch;flex-direction:column}.trading-market-card{grid-template-columns:1fr 1fr}.trading-market-card>div:first-child{grid-column:1/-1}}
.funding-module{display:grid;gap:13px;margin-top:22px;padding-top:22px;border-top:1px solid #e4e6ea}.funding-module-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.funding-module-head h2{margin:4px 0;font-size:25px}.funding-module-head p{max-width:900px;margin:0;color:#455370;font-size:11px;line-height:1.7}.funding-warning{display:flex;gap:10px;padding:11px 13px;border:1px solid rgba(164, 150, 132, .58);border-radius:11px;background:rgba(243, 241, 239, .28);color:#614f32;font-size:10px;line-height:1.65}.funding-warning b{flex:0 0 auto;color:#583f19}.funding-account-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.funding-account-card{display:grid;gap:7px;padding:14px;border:1px solid #e3e5e9;border-radius:13px;background:linear-gradient(145deg,rgba(242, 243, 245, .96),rgba(245, 246, 247, .96))}.funding-account-card h3{margin:0 0 3px;color:#24272e;font-size:14px}.funding-account-card label,.funding-symbol,.funding-leg-grid label{display:grid;gap:4px;color:#51607f;font-size:9px}.funding-account-card input,.funding-symbol input,.funding-leg-grid select{width:100%;min-width:0;padding:8px 9px;border:1px solid #e4e6ea;border-radius:8px;background:#f6f7f8;color:#24292d}.funding-account-card .compact-check{display:flex;align-items:flex-start;grid-template-columns:auto 1fr;gap:7px;line-height:1.5}.funding-account-card .compact-check input{width:auto;margin-top:2px}.funding-vault-actions{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f5f7}.funding-vault-actions span{margin-right:auto;color:#546380;font-size:10px}.funding-vault-actions button{padding:8px 11px;font-size:9px}.funding-workspace{display:grid;grid-template-columns:1fr 1fr;gap:13px}.funding-leg-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}.funding-leg-grid>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px;border:1px solid #e5e7eb;border-radius:10px;background:#f5f5f7}.funding-leg-grid b{grid-column:1/-1;color:#23272e;font-size:10px}.funding-action-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.funding-action-flow button{font-size:9px}.funding-economics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.funding-economics>div{padding:10px;border:1px solid #e4e6ea;border-radius:9px;background:#f5f6f7}.funding-economics span,.funding-economics b{display:block}.funding-economics span{color:#5a6987;font-size:8.5px}.funding-economics b{margin-top:4px;color:#212530;font:800 13px Consolas}.funding-blockers{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.funding-blockers span{padding:5px 8px;border:1px solid #e6dfe0;border-radius:999px;background:rgba(240, 235, 236, .32);color:#4b1517;font-size:8.5px}.funding-blockers .pass{border-color:#e3eae7;background:rgba(235, 241, 238, .28);color:#25845a}.funding-snapshot-rows{display:grid;gap:6px}.funding-snapshot-row{display:grid;grid-template-columns:1.2fr repeat(4,.8fr);gap:7px;padding:9px;border:1px solid #e5e7eb;border-radius:9px;background:#f5f5f7}.funding-snapshot-row span,.funding-snapshot-row b,.funding-snapshot-row small{display:block}.funding-snapshot-row span,.funding-snapshot-row small{color:#5c6b8a;font-size:8px}.funding-snapshot-row b{margin-top:2px;color:#24282e;font:700 9.5px Consolas}.funding-control-panel{margin-top:0}.funding-control-panel>.trading-panel-head small{color:#5d6b89;font-size:8.5px}
.unified-permission{display:flex;align-items:center;flex-direction:row;gap:8px;margin:10px 0;color:#3a4762;font-size:10px}.unified-permission input{min-width:auto}.unified-venue-credentials{margin:12px 0;border:1px solid #e3e5e9;border-radius:11px;background:#f5f5f7}.unified-venue-credentials summary{padding:11px 13px;color:#262a32;font-weight:700;cursor:pointer}.unified-venue-credentials .funding-account-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 10px 10px}.unified-venue-credentials .funding-vault-actions{margin:0 10px 10px}.unified-cross-detail{border-color:#e0e2e7}
@media(max-width:1050px){.funding-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.funding-workspace{grid-template-columns:1fr}}
@media(max-width:700px){.funding-module-head{flex-direction:column}.funding-account-grid,.funding-leg-grid,.funding-action-flow,.funding-economics{grid-template-columns:1fr}.funding-leg-grid>div{grid-template-columns:1fr}.funding-vault-actions{align-items:stretch;flex-direction:column}.funding-vault-actions span{margin-right:0}.funding-snapshot-row{grid-template-columns:1fr 1fr}.funding-snapshot-row>div:first-child{grid-column:1/-1}}

/* 新闻行情验证状态：无需验证或尚无基准时合并为一条明确说明 */
.reaction-strip>.reaction-state{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.reaction-strip>.reaction-state b{margin:0}.reaction-strip>.reaction-state small{color:#5b6a8b}.reaction-strip>.reaction-state.pending{border-color:#ebe9e5;background:#f6f6f4}.reaction-strip>.reaction-state.pending b{color:#856a25}.reaction-strip>.reaction-state.skipped b{color:#43516e}
@media(max-width:700px){.reaction-strip>.reaction-state{align-items:flex-start;flex-direction:column;gap:3px}.reaction-strip>.reaction-state small{white-space:normal}}

/* v3.4 杠杆 / 反向 ETF 配对套利监控 */
.etf-workbench{display:grid;gap:14px;padding:22px;border:1px solid #e5e6eb;border-radius:18px;background:radial-gradient(circle at 88% 0,rgba(69, 65, 87, .11),transparent 28%),linear-gradient(145deg,#f1f2f5,#f5f6f7);box-shadow:0 20px 60px rgba(0,0,0,.28)}
.etf-topbar,.etf-controlbar,.etf-chart-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.etf-topbar h2{margin:2px 0;font-size:27px}.etf-topbar p,.etf-chart-title p{margin:3px 0;color:var(--muted);font-size:11px}.etf-signal{min-width:145px;padding:10px 14px;border:1px solid #e7e5e0;border-radius:12px;background:rgba(242, 240, 237, .45);text-align:right}.etf-signal b,.etf-signal small{display:block}.etf-signal b{color:#70551f}.etf-signal small{color:#424d64;font-size:9px}.etf-signal.ready{border-color:#e1e8e5;background:rgba(239, 243, 242, .55)}.etf-signal.ready b{color:#299365}.etf-signal.invalid{border-color:#994c55;background:rgba(242, 237, 238, .6)}.etf-signal.invalid b{color:#58191e}
.etf-pair-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:8px;border:1px solid #e8e9ed;border-radius:13px;background:#f5f6f7}.etf-pair-tabs button{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid transparent;background:transparent;color:#46536e;font-size:10px}.etf-pair-tabs button small{padding:2px 5px;border-radius:999px;background:#eef0f2;color:#5c6b8a}.etf-pair-tabs button.active{border-color:#49659d;background:#eaecef;color:#292929}.etf-pair-tabs button.active small{background:#563ba6;color:#292929}
.etf-error{padding:12px 14px;border:1px solid #994c58;border-radius:11px;background:#f0eced66;color:#401215}.etf-kpis{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.etf-kpis>div{min-width:0;padding:13px;border:1px solid #e8eaed;border-radius:12px;background:rgba(245, 246, 247, .78)}.etf-kpis>div.ttr{border-color:#e7e5e0;background:rgba(244, 243, 240, .42)}.etf-kpis>div.edge{border-color:#e3eae8}.etf-kpis span,.etf-kpis small,.etf-kpis b{display:block}.etf-kpis span{color:#526180;font-size:9px}.etf-kpis b{overflow:hidden;margin:5px 0;color:#23292f;font:800 18px/1.25 Consolas,"Microsoft YaHei UI";text-overflow:ellipsis;white-space:nowrap}.etf-kpis small{overflow:hidden;color:#5f6d86;font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.etf-workbench .positive{color:#2c9d70!important}.etf-workbench .negative{color:#571919!important}.premium-tone{color:#6e401f!important}.discount-tone{color:#3a404c!important}
.etf-controlbar{align-items:flex-end;padding:10px 12px;border:1px solid #e7e9ed;border-radius:12px;background:#f4f5f6}.etf-controlbar .range-tabs{flex-wrap:nowrap}.etf-controlbar .range-tabs button{padding:8px 11px;font-size:10px}.etf-inputs{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap;justify-content:flex-end}.etf-inputs label{gap:4px;color:#5a6b8b;font-size:8.5px}.etf-inputs input{width:112px;padding:8px 9px}.etf-inputs label:last-of-type input{width:140px}.etf-inputs button{padding:9px 11px;font-size:9px}
.etf-chart-card,.etf-card{min-width:0;padding:16px;border:1px solid #e5e7eb;border-radius:15px;background:rgba(245, 246, 247, .82)}.etf-chart-title h3,.etf-card h3{margin:0}.session-legend{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.session-legend span{display:inline-flex;align-items:center;gap:5px;color:#55627d;font-size:8.5px}.session-legend span:before{content:"";width:9px;height:9px;border-radius:3px;background:#628373}.session-legend .overnight:before{background:#375fae}.session-legend .premarket:before{background:#a66e2f}.session-legend .regular:before{background:#32b387}.session-legend .aftermarket:before{background:#51398c}.session-legend .closed:before{background:#676e7f}.etf-chart-wrap{position:relative;height:260px;margin-top:11px;overflow:hidden;border:1px solid #e9ebee;border-radius:11px;background:#f6f6f8}.etf-chart-wrap.sigma{height:190px;margin-top:8px}.etf-chart-wrap canvas{display:block;width:100%;height:100%;cursor:crosshair;touch-action:pan-y}.etf-chart-wrap .chart-tooltip{min-width:155px}.etf-chart-wrap .chart-tooltip span,.etf-chart-wrap .chart-tooltip small{display:block;color:#3d4451}
.etf-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.etf-legs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.etf-leg{padding:13px;border:1px solid #e5e7eb;border-radius:12px;background:#f4f5f6}.etf-leg.weak{border-color:#ab7b3b;box-shadow:inset 3px 0 #a3732e}.etf-leg>div{display:grid;grid-template-columns:1fr auto;gap:2px 10px}.etf-leg span{grid-column:1/-1;color:#5a6986;font-size:8.5px}.etf-leg b{font:800 15px Consolas}.etf-leg em{padding:2px 7px;border-radius:999px;background:#ebedf0;color:#373d48;font:normal 9px Consolas}.etf-leg dl{display:grid;grid-template-columns:1fr auto;gap:6px 10px;margin:11px 0 0;padding-top:9px;border-top:1px solid #eaecef}.etf-leg dt{color:#5f6c87;font-size:9px}.etf-leg dd{margin:0;color:#23262f;font:700 9.5px Consolas}.etf-help{margin:10px 0 0;color:#5d6b89;font-size:9.5px}.etf-costs{display:grid;gap:1px}.etf-costs>div{display:grid;grid-template-columns:1fr 80px 92px;gap:8px;padding:7px 8px;border-radius:7px}.etf-costs>div:nth-child(odd){background:#f3f4f6}.etf-costs span{color:#4c5973;font-size:9.5px}.etf-costs b,.etf-costs em{text-align:right;font:700 9.5px Consolas}.etf-costs em{color:#5c6c89}.etf-costs .gross b{color:#2c9b6f}.etf-costs .cost b{color:#571e18}.etf-costs .net{margin-top:5px;border:1px solid #e4ebe9;background:#f2f5f4}.etf-costs .net span,.etf-costs .net b{color:#258459;font-weight:900}.etf-direction{display:grid;gap:4px;margin-top:12px;padding:12px;border-left:3px solid #233f77;border-radius:9px;background:#e9e8ed55}.etf-direction span,.etf-direction small{color:#455370;font-size:8.5px}.etf-direction b{font-size:11px}.etf-reset-rule{padding:15px 17px;border:1px solid #e7e3df;border-radius:13px;background:linear-gradient(90deg,rgba(243, 241, 239, .62),rgba(243, 243, 246, .55))}.etf-reset-rule b{color:#5b411a}.etf-reset-rule p{margin:5px 0 10px;color:#6d5d47;font-size:10px}.etf-reasons{display:flex;gap:6px;flex-wrap:wrap}.etf-reasons span{padding:4px 8px;border:1px solid #e8e4e2;border-radius:999px;background:#f1efed;color:#653c1f;font-size:8.5px}.etf-reasons span.pass{border-color:#e2e8e6;background:#eff2f1;color:#26865c}
.etf-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.etf-legs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.etf-leg{padding:13px;border:1px solid #e5e7eb;border-radius:12px;background:#f4f5f6}.etf-leg.weak{border-color:#ab7b3b;box-shadow:inset 3px 0 #a3732e}.etf-leg>div{display:grid;grid-template-columns:1fr auto;gap:2px 10px}.etf-leg span{grid-column:1/-1;color:#5a6986;font-size:8.5px}.etf-leg b{font:800 15px Consolas}.etf-leg em{padding:2px 7px;border-radius:999px;background:#ebedf0;color:#373d48;font:normal 9px Consolas}.etf-leg dl{display:grid;grid-template-columns:1fr auto;gap:6px 10px;margin:11px 0 0;padding-top:9px;border-top:1px solid #eaecef}.etf-leg dt{color:#5f6c87;font-size:9px}.etf-leg dd{margin:0;color:#23262f;font:700 9.5px Consolas}.etf-help{margin:10px 0 0;color:#5d6b89;font-size:9.5px}.etf-order-preview{display:grid;gap:3px;margin-bottom:10px;padding:13px 14px;border:1px solid #e3e9e8;border-radius:12px;background:linear-gradient(135deg,rgba(240, 244, 243, .6),rgba(244, 246, 247, .76))}.etf-order-preview span,.etf-order-preview small{color:#5a7970;font-size:9px}.etf-order-preview b{font:900 25px/1.2 Consolas}.etf-order-preview p{margin:6px 0 0;padding-top:7px;border-top:1px solid rgba(132, 164, 154, .38);color:#597069;font-size:9px}.etf-order-preview p.do-not-open{color:#461714}.etf-order-preview p.can-open{color:#258257}.etf-costs{display:grid;gap:1px}.etf-costs>div{display:grid;grid-template-columns:1fr 80px 92px;gap:8px;padding:7px 8px;border-radius:7px}.etf-costs>div:nth-child(odd){background:#f3f4f6}.etf-costs span{color:#4c5973;font-size:9.5px}.etf-costs b,.etf-costs em{text-align:right;font:700 9.5px Consolas}.etf-costs em{color:#5c6c89}.etf-costs .gross b{color:#2c9b6f}.etf-costs .cost b{color:#571e18}.etf-costs .net{margin-top:5px;border:1px solid #e4ebe9;background:#f2f5f4}.etf-costs .net span,.etf-costs .net b{color:#258459;font-weight:900}.etf-direction{display:grid;gap:4px;margin-top:12px;padding:12px;border-left:3px solid #233f77;border-radius:9px;background:#e9e8ed55}.etf-direction span,.etf-direction small{color:#455370;font-size:8.5px}.etf-direction b{font-size:11px}.etf-reset-rule{padding:15px 17px;border:1px solid #e7e3df;border-radius:13px;background:linear-gradient(90deg,rgba(243, 241, 239, .62),rgba(243, 243, 246, .55))}.etf-reset-rule b{color:#5b411a}.etf-reset-rule p{margin:5px 0 10px;color:#6d5d47;font-size:10px}.etf-reasons{display:flex;gap:6px;flex-wrap:wrap}.etf-reasons span{padding:4px 8px;border:1px solid #e8e4e2;border-radius:999px;background:#f1efed;color:#653c1f;font-size:8.5px}.etf-reasons span.pass{border-color:#e2e8e6;background:#eff2f1;color:#26865c}
@media(max-width:1200px){.etf-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.etf-detail-grid{grid-template-columns:1fr}.etf-controlbar{align-items:flex-start;flex-direction:column}.etf-inputs{justify-content:flex-start}}
@media(max-width:700px){.etf-workbench{padding:12px;border-radius:14px}.etf-topbar{align-items:stretch;flex-direction:column}.etf-topbar h2{font-size:22px}.etf-signal{text-align:left}.etf-pair-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.etf-pair-tabs button{justify-content:space-between;padding:8px}.etf-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.etf-kpis>div:last-child{grid-column:1/-1}.etf-kpis b{font-size:15px}.etf-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.etf-inputs label:last-of-type{grid-column:1/-1}.etf-inputs input,.etf-inputs label:last-of-type input{width:100%}.etf-inputs button{grid-column:1/-1}.etf-chart-title{align-items:flex-start;flex-direction:column}.session-legend{justify-content:flex-start}.etf-chart-wrap{height:220px}.etf-chart-wrap.sigma{height:165px}.etf-legs{grid-template-columns:1fr}.etf-costs>div{grid-template-columns:1fr 70px}.etf-costs em{grid-column:1/-1}.etf-controlbar .range-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}}

/* v3.5 ETF 量化评级、AI复核、Token看板与人工确认开单 */
.ai-token-board{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(520px,1.6fr);align-items:center;gap:18px;margin:14px 0;padding:17px 19px;border:1px solid #e3e5e9;border-radius:15px;background:radial-gradient(circle at 90% 0,rgba(86, 82, 112, .13),transparent 34%),linear-gradient(145deg,#f2f3f5,#f5f6f7)}.ai-token-board h3{margin:3px 0}.ai-token-board p{margin:4px 0 0;color:#566480;font-size:10px}.ai-token-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ai-token-metrics>div{padding:12px;border:1px solid #e7e9ed;border-radius:11px;background:#f5f6f7}.ai-token-metrics span,.ai-token-metrics b{display:block}.ai-token-metrics span{color:#5b6b8a;font-size:8.5px}.ai-token-metrics b{margin-top:5px;font:800 14px Consolas,"Microsoft YaHei UI"}
.etf-signal.can,.etf-ai-badge.can{border-color:#e0e2e7;background:rgba(238, 242, 242, .56)}.etf-signal.can b,.etf-ai-badge.can b{color:#274582}.etf-signal.recommend,.etf-ai-badge.recommend{border-color:#e0e7e4;background:rgba(239, 243, 241, .58)}.etf-signal.recommend b,.etf-ai-badge.recommend b{color:#278b5c}.etf-signal.urgent,.etf-ai-badge.urgent{border-color:#a24444;background:linear-gradient(135deg,rgba(239, 233, 233, .78),rgba(243, 239, 241, .7));box-shadow:0 0 0 1px rgba(86, 64, 64, .08),0 10px 32px rgba(238, 232, 232, .2)}.etf-signal.urgent b,.etf-ai-badge.urgent b{color:#4e1616}.etf-signal.block,.etf-ai-badge.block{border-color:#994c55;background:rgba(242, 237, 238, .6)}.etf-signal.block b,.etf-ai-badge.block b{color:#58191e}
.etf-ai-panel{padding:16px 18px;border:1px solid #e2e4e9;border-radius:15px;background:radial-gradient(circle at 98% 0,rgba(75, 70, 94, .12),transparent 30%),rgba(245, 246, 247, .82)}.etf-ai-head,.etf-ai-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.etf-ai-head h3{margin:3px 0 0;font-size:17px}.etf-ai-head p{margin:5px 0 0;color:#55627c;font-size:9.5px}.etf-ai-actions{align-items:stretch}.etf-ai-badge{min-width:185px;padding:9px 12px;border:1px solid #e8e6e2;border-radius:11px;background:#f2f1ee;text-align:right}.etf-ai-badge b,.etf-ai-badge small{display:block}.etf-ai-badge b{font-size:11px}.etf-ai-badge small{margin-top:2px;color:#4c5a75;font-size:8px}.etf-ai-actions button{padding:10px 12px;font-size:9px}.etf-ai-body{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:13px}.etf-ai-body>div{padding:10px 11px;border:1px solid #e8eaed;border-radius:9px;background:#f5f5f7}.etf-ai-body span,.etf-ai-body b{display:block}.etf-ai-body span{color:#5c6b8a;font-size:8px}.etf-ai-body b{overflow:hidden;margin-top:4px;font:700 9.5px Consolas,"Microsoft YaHei UI";text-overflow:ellipsis;white-space:nowrap}.etf-ai-copy{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.etf-ai-copy>div{padding:10px 12px;border:1px solid #e9ebee;border-radius:10px;background:#f4f5f7}.etf-ai-copy span{color:#4a5873;font-size:8.5px;font-weight:800}.etf-ai-copy ul{display:flex;gap:6px;flex-wrap:wrap;margin:7px 0 0;padding:0;list-style:none}.etf-ai-copy li{padding:4px 7px;border-radius:999px;background:#eeeff2;color:#3d4350;font-size:8px}.etf-ai-copy>div:last-child li{background:#f1edec;color:#5e331b}
.etf-history-evidence{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.etf-history-evidence>div{padding:12px 13px;border:1px solid #e7e9ec;border-radius:11px;background:#f5f5f7}.etf-history-evidence span,.etf-history-evidence b,.etf-history-evidence small{display:block}.etf-history-evidence span{color:#5c6b8a;font-size:8px}.etf-history-evidence b{margin:5px 0 3px;font:800 13px Consolas,"Microsoft YaHei UI"}.etf-history-evidence small{color:#5e6c87;font-size:7.5px}.etf-costs .optimistic b{color:#393f4b}.etf-costs .optimistic em{color:#415887}

/* v3.6：把常用操作放在前面，高级参数按需展开。 */
select,textarea{background:#f5f6f7;border:1px solid var(--line);color:var(--text);border-radius:8px;padding:10px 12px;outline:none;min-width:0}select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2b4d9022}.market-product-switch{align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;padding:12px 15px;border:1px solid #e5e7eb;border-radius:12px;background:#f3f4f6}.market-product-switch.active{display:flex}.market-product-switch label{flex-direction:row;align-items:center}.market-product-switch span{color:var(--muted);font-size:11px}#spread.active:not(.selected-product),#goldSpread.active:not(.selected-product){display:none}.advanced-settings{margin-top:14px;padding:12px 14px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f5f7}.advanced-settings summary{color:#2e333c;font-weight:800;cursor:pointer}.advanced-settings[open] summary{margin-bottom:14px}.preset-hidden{display:none!important}.report-case.error{border-color:#e6dedf;background:#f4f1f1}.report-case.error b,.report-case.error span{color:#421313}.ai-provider-card{border-color:#646e81;background:linear-gradient(145deg,#f0f1f3,#f3f4f6)}
@media(max-width:700px){.main-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.market-product-switch{align-items:stretch;flex-direction:column}.market-product-switch label{align-items:stretch;flex-direction:column}.advanced-settings{padding:10px}}
.threshold-intro{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;padding:11px 13px;border:1px solid #e4e6ea;border-radius:9px;background:#f3f4f6;color:#425170;font-size:12px}.threshold-intro b{flex:none;color:#23272f}.threshold-table{display:grid;gap:9px}.threshold-row{display:grid;grid-template-columns:150px repeat(auto-fit,minmax(112px,1fr));align-items:end;gap:9px;padding:12px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f6f7}.threshold-row label{gap:5px;min-width:0}.threshold-row label>span{overflow:hidden;color:#425170;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.threshold-level{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:9px 11px;border-left:3px solid #5e6c87;border-radius:7px;background:#f3f4f6}.threshold-level b{font-size:14px}.threshold-level small{margin-top:2px;color:#52617e;font-size:10px}.level-block .threshold-level{border-color:#6c1f1f}.level-can .threshold-level{border-color:#414755}.level-recommend .threshold-level{border-color:#836425}.level-urgent .threshold-level{border-color:#32b37c}.unit-input{position:relative}.unit-input input{width:100%;height:38px;padding:8px 42px 8px 10px;font-size:13px}.unit-input i{position:absolute;right:9px;top:50%;color:#5a6b8b;font-size:9px;font-style:normal;pointer-events:none;transform:translateY(-50%)}.threshold-rule-note{align-self:center;padding:8px 10px;border-radius:7px;background:#f5f2f4;color:#50171b;font-size:10px;line-height:1.45}.report-actions{display:flex;align-items:center;gap:8px;margin-top:12px}.report-actions .source-link{margin:0}.report-actions button{padding:7px 10px;font-size:10px}
@media(max-width:900px){.threshold-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.threshold-level,.threshold-rule-note{grid-column:1/-1}.threshold-intro{flex-direction:column}.calendar-note>button{width:100%}}
@media(max-width:520px){.threshold-row{grid-template-columns:1fr}.threshold-level,.threshold-rule-note{grid-column:auto}.unit-input input{height:40px}.report-actions{align-items:stretch;flex-direction:column}.report-actions button{width:100%}}
.etf-trade-panel{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.1fr) minmax(165px,.55fr) minmax(170px,.6fr) auto;align-items:center;gap:16px;padding:17px 19px;border:1px solid #9e484a;border-radius:15px;background:radial-gradient(circle at 100% 0,rgba(105, 77, 80, .12),transparent 34%),linear-gradient(135deg,rgba(242, 238, 239, .78),rgba(243, 244, 246, .9));box-shadow:0 16px 48px rgba(243, 238, 239, .22)}.etf-trade-panel h3{margin:3px 0}.etf-trade-panel p{margin:4px 0 0;color:#6c5b62;font-size:8.5px}.etf-trade-legs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.etf-trade-legs>div{padding:9px 11px;border:1px solid #e5ebea;border-radius:9px;background:#f2f5f5}.etf-trade-legs>div.sell{border-color:#90565f;background:#f2eeef}.etf-trade-legs span,.etf-trade-legs b,.etf-trade-legs small{display:block}.etf-trade-legs span{color:#4b806b;font-size:8px}.etf-trade-legs .sell span{color:#65292e}.etf-trade-legs b{margin:2px 0;font:800 11px Consolas}.etf-trade-legs small{color:#616c82;font-size:7.5px}.etf-maker-leg{display:grid;gap:5px;color:#705c62;font-size:8px}.etf-maker-leg select{width:100%;padding:9px;border:1px solid #90565f;border-radius:8px;background:#f5f2f5;color:#381925}.etf-maker-leg small{color:#7a6b73}.etf-trade-return span,.etf-trade-return b,.etf-trade-return small{display:block}.etf-trade-return span,.etf-trade-return small{color:#705c62;font-size:8px}.etf-trade-return b{margin:4px 0;color:#268657;font:900 15px Consolas}.etf-trade-panel>button{min-width:130px;padding:13px 15px;font-size:10px;font-weight:900}
@media(max-width:1050px){.ai-token-board{grid-template-columns:1fr}.etf-history-evidence{grid-template-columns:repeat(3,minmax(0,1fr))}.etf-trade-panel{grid-template-columns:1fr 1fr}.etf-trade-panel>button{width:100%}}
@media(max-width:700px){.ai-token-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.etf-ai-head{flex-direction:column}.etf-ai-actions{width:100%;flex-direction:column}.etf-ai-badge{min-width:0;text-align:left}.etf-ai-body{grid-template-columns:repeat(2,minmax(0,1fr))}.etf-ai-copy{grid-template-columns:1fr}.etf-history-evidence{grid-template-columns:repeat(2,minmax(0,1fr))}.etf-history-evidence>div:last-child{grid-column:1/-1}.etf-trade-panel{grid-template-columns:1fr}.etf-trade-legs{grid-template-columns:1fr 1fr}}

/* v3.8 双财报日历：币安公司保留原逻辑，全市场只有关注后才进入分析链路。 */
.calendar-scope-tabs{display:flex;gap:7px;margin:10px 0 12px;padding:5px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f6f7}.calendar-scope-tabs button{flex:1;background:transparent;color:#52617e;font-size:11px}.calendar-scope-tabs button.active{border-color:#4162a5;background:#edeef1;color:#22272f}.calendar-module{display:none}.calendar-module.active{display:block}.all-calendar-toolbar{display:grid;grid-template-columns:130px 145px 145px minmax(220px,1fr) auto;align-items:end;gap:8px;margin:10px 0;padding:12px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f6f7}.all-calendar-toolbar label{display:grid;gap:4px;color:#526180;font-size:9px}.all-calendar-toolbar input,.all-calendar-toolbar select{width:100%;padding:9px 10px}.all-calendar-toolbar button{padding:10px 13px}.all-calendar-summary{margin:0 0 9px;padding:8px 11px;border-left:3px solid #4664a0;border-radius:7px;background:#f3f4f6;color:#50607f;font-size:9.5px}.all-calendar-sources{margin-top:12px}.calendar-card.all-market .calendar-main p{white-space:normal}.calendar-card.all-market .calendar-card-actions button{font-size:9px}
@media(max-width:1050px){.all-calendar-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.all-calendar-query{grid-column:1/-1}.all-calendar-toolbar button{grid-column:1/-1}}
@media(max-width:520px){.calendar-scope-tabs{display:grid;grid-template-columns:1fr}.all-calendar-toolbar{grid-template-columns:1fr}.all-calendar-query,.all-calendar-toolbar button{grid-column:auto}}

/* v3.5.1 明确收益换算所使用的双腿名义金额 */
.etf-order-preview .etf-notional-breakdown{margin-top:5px;padding:7px 9px;border:1px solid rgba(131, 163, 153, .38);border-radius:7px;background:rgba(246, 248, 248, .45);color:#294e41;font:700 9px Consolas,"Microsoft YaHei UI"}
.etf-cost-basis{margin:0 0 7px;padding:7px 9px;border-left:2px solid #48659d;background:#f3f4f6;color:#485879;font-size:8.5px}

/* v3.5.2 本地规则与AI复核双版本对比 */
.etf-ai-switch{display:flex!important;align-items:center;gap:7px;padding:9px 11px;border:1px solid #e0e2e7;border-radius:10px;background:#f3f4f6;color:#2f343f!important;font-size:9px!important;white-space:nowrap}.etf-ai-switch input{width:auto;margin:0}.etf-decision-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.etf-decision-card{min-width:0;padding:13px 14px;border:1px solid #e5e7eb;border-radius:12px;background:#f5f5f7}.etf-decision-card.local{border-color:#e2e9e7;background:linear-gradient(145deg,rgba(241, 245, 244, .55),#f5f5f7)}.etf-decision-card.ai{border-color:#57698f;background:linear-gradient(145deg,rgba(236, 235, 240, .48),#f5f5f7)}.etf-decision-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.etf-decision-card-head>div:first-child span,.etf-decision-card-head>div:first-child small{display:block}.etf-decision-card-head>div:first-child span{color:#23272e;font-size:10px;font-weight:900}.etf-decision-card-head>div:first-child small{margin-top:3px;color:#5c6b89;font-size:8px}.etf-decision-card .etf-ai-badge{min-width:145px;padding:7px 9px}.etf-decision-card>p{margin:10px 0 7px;color:#3d4451;font-size:9.5px}.etf-decision-card>ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.etf-decision-card>ul li{padding:5px 7px;border-radius:6px;background:#f0f1f3;color:#43516e;font-size:8.5px}.etf-decision-card.ai .etf-ai-copy{grid-template-columns:1fr;margin-top:8px}.etf-decision-card.ai .etf-ai-copy>div{padding:8px 9px}.etf-ai-badge.off{border-color:#e1e3e8;background:#eeeff2}.etf-ai-badge.off b{color:#525b6e}.etf-decision-difference{margin-top:10px;padding:10px 12px;border:1px solid #e0e3e7;border-radius:9px;background:#f3f3f5;color:#3a404d;font-size:9.5px;font-weight:800}.etf-decision-difference.match{border-color:#dfe7e4;background:#f2f5f4;color:#26875a}.etf-decision-difference.downgraded{border-color:#9d7449;background:#f3f1ef;color:#65441c}.etf-decision-difference.disabled{border-color:#dee0e6;background:#f0f2f4;color:#414856}.etf-decision-difference.rule_only{border-color:#e0e2e7;color:#f1f2f4;color:#274582}
@media(max-width:800px){.etf-decision-compare{grid-template-columns:1fr}.etf-decision-card-head{align-items:stretch;flex-direction:column}.etf-decision-card .etf-ai-badge{min-width:0;text-align:left}}

/* v3.7 每类消息只选择一个微信通道。 */
.channel-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.channel-status-grid>div{padding:13px 15px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f5f7}.channel-status-grid span,.channel-status-grid b,.channel-status-grid small{display:block}.channel-status-grid span{color:#516180;font-size:9px}.channel-status-grid b{margin:4px 0;color:#22262f;font-size:13px}.channel-status-grid small{color:#5d6b89;font-size:8.5px}.notification-route-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.notification-route-group{padding:12px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f5f7}.notification-route-group h3{margin:0 0 7px;color:#3e4553;font-size:11px}.notification-route-group:last-child{grid-column:1/-1}.notification-route-row{display:grid;grid-template-columns:minmax(110px,1fr) auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(233, 237, 239, .54)}.notification-route-row:last-child{border-bottom:0}.notification-route-row b,.notification-route-row small{display:block}.notification-route-row b{font-size:10px}.notification-route-row small{margin-top:2px;color:#5e6c87;font-size:8px}.route-control{display:flex;align-items:center;gap:8px;min-width:265px}.route-control.compact{min-width:250px}.route-control-label{color:#526180;font-size:9px;white-space:nowrap}.route-choice{display:flex;gap:5px}.route-button{padding:7px 10px;border:1px solid #e2e4e8;border-radius:8px;background:#f3f4f6;color:#445473;font-size:9px;box-shadow:none}.route-button:hover{transform:none;border-color:#4c6699}.route-button.active{border-color:#479e83;background:#eef2f1;color:#258158;box-shadow:inset 0 0 0 1px rgba(84, 113, 102, .08)}.route-button.missing{border-style:dashed;color:#766f76}.route-button.active.missing{border-color:#9d6a49;background:#f1efed;color:#5b391a}.route-button:disabled{cursor:not-allowed;opacity:.48}.account-form .route-control{align-self:end;margin-bottom:1px}.toolbar .route-control{padding:0 3px}
.route-select{min-width:150px;width:100%;padding:8px 34px 8px 11px;border:1px solid #e2e4e8;border-radius:9px;background:#f5f6f7;color:#23262f;font-size:10px}.notification-route-row .route-select{width:190px}.account-form .route-control{align-self:end;margin-bottom:1px}.toolbar .route-control{padding:0 3px}
.news-decision{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:9px 0}.news-decision span{padding:7px 8px;border:1px solid #e5e7eb;border-radius:8px;background:#f3f4f6;color:#526180;font-size:9px}.news-decision b{display:block;margin-top:3px;color:#23272e;font-size:10px;overflow-wrap:anywhere}
@media(max-width:800px){.notification-route-list,.channel-status-grid{grid-template-columns:1fr}.news-decision{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-route-group:last-child{grid-column:auto}.notification-route-row{grid-template-columns:1fr}.route-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.route-button{width:100%}.route-control,.route-control.compact{align-items:stretch;flex-direction:column;min-width:0;width:100%}.route-control-label{align-self:flex-start}}

/* v3.7.1 网站配置个人微信与ETF动态盈利线。 */
.notification-secret-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;margin-top:14px}.notification-secret-actions{display:flex;align-items:center;gap:12px;margin-top:10px}.notification-secret-actions small{color:#5c6b89;font-size:9px}.etf-profit-legend{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:10px 1px 0;color:#4e5c78;font-size:8.5px}.etf-profit-legend span{display:inline-flex;align-items:center;gap:6px;font-weight:800}.etf-profit-legend span:before{content:"";width:22px;border-top:2px dashed currentColor}.etf-profit-legend .candidate-line{color:#995b2b}.etf-profit-legend .profit-line{color:#2da071}.etf-profit-legend small{flex:1 1 360px;color:#5a6987;line-height:1.5}
@media(max-width:900px){.notification-secret-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.notification-channel-card .card-title{align-items:stretch;flex-direction:column}.notification-channel-card .settings-tests{display:grid;grid-template-columns:1fr 1fr;width:100%}.notification-channel-card .settings-tests #savePersonalWechat{grid-column:1/-1}.notification-channel-card .settings-tests button{width:100%;padding:10px 8px}.notification-secret-fields{grid-template-columns:1fr}.notification-secret-actions{align-items:stretch;flex-direction:column}.notification-secret-actions button{width:100%}.etf-profit-legend{align-items:flex-start;flex-direction:column;gap:6px}.etf-profit-legend small{flex:auto}}

/* v3.7.3 全市场财报按需搜索 */
.report-search-panel{margin-bottom:14px;padding:17px 18px;border:1px solid #e0e3e7;border-radius:15px;background:radial-gradient(circle at 100% 0,rgba(99, 116, 133, .11),transparent 34%),#f4f5f7}.report-search-head,.report-search-toolbar,.report-search-column-title,.report-company-result,.report-filing-result{display:flex;align-items:center;justify-content:space-between;gap:12px}.report-search-head h3{margin:3px 0;font-size:17px}.report-search-head p{margin:0;color:#53617e;font-size:10px}.report-search-head>span{flex:none;padding:6px 9px;border-radius:999px;background:#eff0f3;color:#404754;font-size:9px}.report-search-toolbar{justify-content:flex-start;margin-top:13px}.report-search-toolbar input{flex:1;max-width:620px}.report-search-toolbar select{width:170px}.report-search-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(420px,1.25fr);gap:10px;margin-top:12px}.report-search-grid>section{min-width:0;padding:11px;border:1px solid #e7e9ec;border-radius:11px;background:#f5f6f8}.report-search-column-title{align-items:baseline;padding:0 2px 8px}.report-search-column-title b{font-size:11px}.report-search-column-title small{color:#5e6c87;font-size:8px}.report-search-results{display:grid;gap:7px;max-height:390px;overflow:auto}.report-search-results>p{margin:8px;color:#5d6b89;font-size:10px}.report-company-result,.report-filing-result{padding:10px 11px;border:1px solid #e9ebee;border-radius:9px;background:#f4f5f6;cursor:pointer}.report-company-result:hover,.report-company-result.selected{border-color:#47649f;background:#f0f1f3}.report-company-result>div:first-child,.report-filing-result>div:first-child{min-width:0}.report-company-result span,.report-company-result b,.report-company-result small,.report-filing-result span,.report-filing-result b,.report-filing-result small{display:block}.report-company-result span,.report-filing-result span{color:#355087;font-size:8px}.report-company-result b,.report-filing-result b{overflow:hidden;margin:3px 0;color:#23262f;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.report-company-result small,.report-filing-result small{color:#5e6c87;font-size:8px}.report-company-result button{flex:none;padding:7px 9px;font-size:8px}.report-filing-result{cursor:default}.report-filing-result>div:last-child{display:flex;align-items:center;gap:7px;flex:none}.report-filing-result .source-link{margin:0;white-space:nowrap}.report-filing-result button{padding:7px 10px;font-size:8.5px}
@media(max-width:800px){.report-search-head{align-items:flex-start;flex-direction:column}.report-search-toolbar{align-items:stretch;flex-direction:column}.report-search-toolbar input,.report-search-toolbar select{max-width:none;width:100%}.report-search-grid{grid-template-columns:1fr}.report-search-results{max-height:320px}}
@media(max-width:520px){.report-company-result,.report-filing-result{align-items:stretch;flex-direction:column}.report-company-result button{width:100%}.report-filing-result>div:last-child{display:grid;grid-template-columns:1fr 1fr}.report-filing-result>div:last-child>*{width:100%;text-align:center}}
.funding-accounting{margin:12px 0}.funding-account-card.in-memory{border-color:#e0e7e4;box-shadow:inset 0 0 0 1px rgba(94, 127, 115, .12)}

/* v3.9.1 统一跨市场/ETF工作台与CL/BZ严格时序面板 */
.trading-leg-row{grid-template-columns:repeat(3,minmax(105px,1fr)) repeat(3,minmax(90px,.75fr)) auto 32px}.trading-leg-row>.compact-check{display:flex;align-items:center;align-self:center;gap:6px}.trading-leg-row>.compact-check input{width:auto}
.arbitrage-hub-tabs{display:flex;gap:7px;margin:0 0 12px;padding:6px;border:1px solid #e5e7eb;border-radius:12px;background:#f5f6f7}.arbitrage-hub-tabs button{flex:1;border-color:transparent;background:transparent;color:#51607e}.arbitrage-hub-tabs button.active{border-color:#3e61a7;background:#eceef1;color:#23262e}.clbz-workbench{display:grid;gap:13px;padding:20px;border:1px solid #e1e3e8;border-radius:17px;background:radial-gradient(circle at 92% 0,rgba(99, 118, 134, .13),transparent 31%),linear-gradient(145deg,#f3f3f5,#f6f6f8)}.clbz-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.clbz-head h2{margin:4px 0;font-size:24px}.clbz-head p{max-width:780px;margin:0;color:#51607d;font-size:10px}.clbz-signal{min-width:155px;padding:10px 12px;border:1px solid #e1e8e6;border-radius:11px;background:#f2f5f5;text-align:right}.clbz-signal b,.clbz-signal small{display:block}.clbz-signal b{color:#26885b}.clbz-signal small{margin-top:3px;color:#638276;font-size:8px}.clbz-controls{display:grid;grid-template-columns:1.1fr repeat(4,minmax(110px,.7fr)) auto;align-items:end;gap:8px;padding:12px;border:1px solid #e5e7eb;border-radius:11px;background:#f5f5f7}.clbz-controls label{display:grid;gap:4px;color:#5a6987;font-size:8.5px}.clbz-controls input,.clbz-controls select{width:100%}.clbz-kpis,.clbz-backtest{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.clbz-kpis>div,.clbz-backtest>div{min-width:0;padding:12px;border:1px solid #e6e8eb;border-radius:10px;background:#f5f5f7}.clbz-kpis span,.clbz-kpis b,.clbz-kpis small,.clbz-backtest span,.clbz-backtest b{display:block}.clbz-kpis span,.clbz-backtest span{color:#5a6987;font-size:8px}.clbz-kpis b,.clbz-backtest b{overflow:hidden;margin:4px 0;color:#22272f;font:800 13px Consolas;text-overflow:ellipsis;white-space:nowrap}.clbz-kpis small{color:#5e6c87;font-size:8px}.clbz-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.clbz-card{padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#f5f5f7}.clbz-card h3{margin:0}.clbz-card p{margin:3px 0;color:#5c6b89;font-size:8px}.clbz-levels{display:grid;gap:6px;margin-top:10px}.clbz-level{display:grid;grid-template-columns:70px 1fr 1fr 90px;align-items:center;gap:8px;padding:8px 10px;border:1px solid #e8eaed;border-radius:8px;background:#f3f4f6}.clbz-level span{color:#586887;font-size:8px}.clbz-level b{font:800 10px Consolas}.clbz-level i{color:#26875e;font-size:8px;font-style:normal;text-align:right}.clbz-backtest{grid-template-columns:repeat(5,minmax(0,1fr))}.clbz-actions{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #e1e3e7;border-radius:11px;background:#f3f4f6}.clbz-actions>div{flex:1}.clbz-actions b,.clbz-actions span{display:block}.clbz-actions b{font-size:10px}.clbz-actions span{margin-top:3px;color:#5d6c89;font-size:8.5px}.clbz-actions button{white-space:nowrap}.funding-account-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.clbz-chart-panel{padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#f5f5f7}.clbz-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.clbz-chart-head h3{margin:0}.clbz-chart-head p{margin:4px 0 0;color:#5c6b89;font-size:8.5px}.clbz-chart-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 6px;color:#53617c;font-size:8px}.clbz-chart-legend span:before{display:inline-block;width:18px;height:2px;margin-right:5px;vertical-align:middle;background:#299066;content:""}.clbz-chart-legend .mean:before{background:#4c5972}.clbz-chart-legend .entry:before{background:#925929}.clbz-chart-legend .exit:before{background:#244077}.clbz-chart-legend .cl:before{background:#264481}.clbz-chart-legend .bz:before{background:#7e5423}.clbz-chart-legend small{margin-left:auto;color:#5e6c88}.clbz-chart-wrap{position:relative;height:260px;overflow:hidden;border:1px solid #e9ebee;border-radius:10px;background:#f6f6f8}.clbz-chart-wrap.price{height:190px}.clbz-chart-wrap canvas{display:block;width:100%;height:100%;cursor:crosshair;touch-action:pan-y}.clbz-chart-wrap .chart-tooltip{font-size:9px}
@media(max-width:1100px){.clbz-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.clbz-controls button{grid-column:1/-1}.clbz-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.funding-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clbz-actions{align-items:stretch;flex-wrap:wrap}.clbz-actions>div{flex-basis:100%}}
@media(max-width:700px){.arbitrage-hub-tabs{display:grid;grid-template-columns:1fr 1fr}.clbz-head{flex-direction:column}.clbz-signal{width:100%;text-align:left}.clbz-controls,.clbz-kpis,.clbz-grid,.clbz-backtest{grid-template-columns:1fr}.clbz-level{grid-template-columns:55px 1fr 1fr}.clbz-level i{grid-column:1/-1;text-align:left}.clbz-actions{display:grid;grid-template-columns:1fr 1fr}.clbz-actions>div{grid-column:1/-1}.clbz-chart-head{flex-direction:column}.clbz-chart-head .range-tabs{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.clbz-chart-wrap{height:220px}.clbz-chart-wrap.price{height:165px}.clbz-chart-legend small{width:100%;margin-left:0}.funding-account-grid{grid-template-columns:1fr}}
@media(max-width:700px){.trading-leg-row{grid-template-columns:1fr 1fr}.trading-leg-row .row-remove{grid-column:2;justify-self:end}}
