:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#05090d;color:#e6edf3}*{box-sizing:border-box}body{margin:0;min-width:1180px;background:radial-gradient(circle at top left,rgba(16,185,129,.09),transparent 30%),linear-gradient(135deg,#05090d,#0a1117 55%,#05090d)}button,input,select{font:inherit}button,select,input{border:1px solid #26343d;background:#0d151b;color:#e6edf3;border-radius:7px}button{min-height:34px;padding:0 12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}button:hover:not(:disabled),select:hover,input:hover{border-color:#3d5968}button:disabled{opacity:.45;cursor:not-allowed}.primary{background:linear-gradient(135deg,#16c784,#2dd99d);border-color:#2dd99d;color:#05100c;font-weight:800}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(420px,100%);border:1px solid #26343d;background:#0c1318f0;border-radius:10px;padding:20px;display:grid;gap:16px;box-shadow:0 24px 70px #00000059}.login-brand{display:flex;align-items:center;gap:10px;padding-bottom:4px}.login-brand strong,.login-brand span{display:block}.login-brand span,.login-card small{color:#9ba8b1}.login-error{border:1px solid rgba(234,57,67,.45);background:#ea394314;color:#ff9ba1;border-radius:7px;padding:9px;line-height:1.4}.terminal{display:grid;grid-template-columns:224px minmax(960px,1fr);min-height:100vh}.sidebar{border-right:1px solid #1f2a31;background:#050a0eeb;padding:16px;display:flex;flex-direction:column;gap:18px}.brand{display:flex;gap:10px;align-items:center}.brand strong{display:block;font-size:15px}.brand span,.mode-card p,.topbar p,small,.strategy-copy{color:#9ba8b1}nav{display:grid;gap:5px}nav button{color:#b9c4cc;text-decoration:none;padding:10px;border-radius:7px;display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:38px;background:transparent;border-color:transparent;width:100%}nav button.active,nav button:hover{background:#123025;color:#eafff5;border-color:#1d4b39}.mode-card,.panel,.metric{border:1px solid #26343d;background:#0c1318e0;box-shadow:0 12px 40px #00000038}.mode-card{margin-top:auto;padding:12px;border-radius:8px}.workspace{padding:16px;display:grid;gap:14px}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid #1f2a31;padding-bottom:14px}h1,h2,p{margin:0}h1{font-size:24px}h2{font-size:14px}.top-actions{display:flex;align-items:center;gap:8px}.status-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.live-price-board{display:grid;gap:12px}.live-price-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #1f2a31;padding-bottom:8px}.live-price-head .panel-title{margin-bottom:0}.live-price-head>span{color:#9ba8b1;font-size:12px;text-transform:uppercase;font-weight:800}.live-price-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:10px}.live-price-card{min-height:156px;padding:12px;display:grid;align-content:start;gap:10px;text-align:left;background:linear-gradient(135deg,#0d151bf5,#081017f5),#081017}.live-price-card.active{border-color:#16c784bf;box-shadow:0 0 0 1px #16c7841f,0 14px 40px #00000047}.live-price-top,.live-price-main,.live-price-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.live-price-top span,.live-price-meta span{color:#9ba8b1;font-size:12px}.live-price-main strong{font-size:24px}.live-price-main em{font-style:normal;font-weight:800;font-size:12px}.sparkline{width:100%;height:56px;overflow:visible}.sparkline path{fill:none;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.sparkline.up path{stroke:#16c784}.sparkline.down path{stroke:#ea3943}.empty-line{min-height:56px;border:1px dashed #26343d;border-radius:7px;display:grid;place-items:center;color:#4f6571}.live-error{min-height:96px;border:1px solid rgba(234,57,67,.45);background:#ea394314;border-radius:7px;color:#ff8e94;display:flex;align-items:center;gap:8px;padding:10px}.notice{border:1px solid #26343d;border-left-width:4px;border-radius:8px;padding:12px;background:#0c1318e6;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start}.notice.info{border-left-color:#35a7ff}.notice.success{border-left-color:#16c784}.notice.warning{border-left-color:#f7b955}.notice.error{border-left-color:#ea3943}.notice strong{display:block;margin-bottom:3px}.notice p,.notice em,.notice span{display:block;margin-top:3px;color:#a8b4bd;font-style:normal;line-height:1.4}.strategy-workflow{display:grid;gap:14px}.strategy-summary{display:grid;gap:10px}.strategy-summary .panel-title{margin-bottom:0}.workflow-step-header,.strategy-workflow-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.workflow-step-header{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;padding:10px}.workflow-step-header>span{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;border:1px solid rgba(53,167,255,.42);color:#35a7ff;background:#35a7ff1a;font-size:12px;font-weight:900}.workflow-step-header>div{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:#d8eefb;background:#ffffff0f}.workflow-step-header section,.strategy-workflow-head>div{display:grid;gap:4px;min-width:0;flex:1}.workflow-step-header strong{font-size:16px}.workflow-step-header p,.strategy-workflow-head p{margin:0;color:#9ba8b1;line-height:1.45;font-size:12px}.active-strategy-band{border:1px solid rgba(22,199,132,.45);background:linear-gradient(90deg,#16c78424,#35a7ff14);border-radius:8px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.active-strategy-band span,.editor-status span,.profile-card span,.profile-card small,.lab-editor-note span{color:#9ba8b1;font-size:12px}.active-strategy-band strong{display:block;margin-top:3px;font-size:22px}.active-strategy-band em{border:1px solid rgba(22,199,132,.45);background:#16c7841f;color:#16c784;border-radius:999px;padding:5px 9px;font-size:11px;font-style:normal;font-weight:900;text-transform:uppercase}.strategy-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:8px}.active-bot-snapshot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.strategy-summary p{color:#9ba8b1;line-height:1.45}.decision-rule{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;padding:10px;display:grid;gap:5px}.decision-rule strong{font-size:12px}.decision-rule span{color:#b8c4cc;line-height:1.45}.strategy-lab,.performance-analytics{display:grid;gap:12px}.rule-board,.lab-grid,.analytics-grid,.asset-performance-grid{display:grid;gap:10px}.rule-board{grid-template-columns:repeat(3,minmax(220px,1fr))}.lab-grid,.asset-performance-grid{grid-template-columns:repeat(3,minmax(240px,1fr))}.analytics-grid{grid-template-columns:repeat(4,minmax(180px,1fr))}.rule-card,.lab-card,.asset-performance-card,.lab-decision{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;padding:10px}.rule-card,.lab-decision{display:grid;gap:6px}.strategy-assessment{border:1px solid #26343d;background:#081017;border-radius:8px;padding:9px;display:grid;gap:4px}.strategy-assessment span{font-size:11px;font-weight:900;text-transform:uppercase}.strategy-assessment strong{font-size:13px}.strategy-assessment em,.activation-warning,.activation-ready{color:#9ba8b1;font-size:12px;line-height:1.4}.strategy-assessment.qualified{border-color:#16c78480;background:#16c78414}.strategy-assessment.qualified span{color:#16c784}.strategy-assessment.rejected{border-color:#ea394380;background:#ea394314}.strategy-assessment.rejected span,.activation-warning{color:#ea3943}.activation-ready{color:#16c784}.strategy-assessment.untested span{color:#f7b955}.lab-editor-note{border:1px solid rgba(53,167,255,.32);background:#35a7ff14;border-radius:8px;padding:10px;display:grid;gap:4px}.strategy-interval-setting{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.strategy-interval-setting>div:first-child{display:grid;gap:4px}.rule-card span,.lab-decision span,.strategy-interval-setting span,.lab-card p{color:#b8c4cc;line-height:1.45}.lab-card,.asset-performance-card{display:grid;gap:8px}.lab-card>div:first-child,.asset-performance-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.lab-card>div:first-child span{color:#9ba8b1;font-size:12px}.lab-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.strategy-comparison{border-top:1px solid #1f2a31;padding-top:12px;display:grid;gap:10px}.comparison-head,.comparison-recommendation,.comparison-aggregate-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.comparison-head strong,.comparison-recommendation strong{display:block}.comparison-head span,.comparison-aggregate-card span,.comparison-aggregate-card em,.comparison-recommendation span,.comparison-recommendation p,.comparison-recommendation em,.failure-card span,.comparison-row em{color:#9ba8b1;font-size:12px;font-style:normal;line-height:1.4}.comparison-head em{border:1px solid rgba(53,167,255,.42);background:#35a7ff14;color:#35a7ff;border-radius:999px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:900;text-transform:uppercase}.comparison-recommendation{border:1px solid rgba(22,199,132,.42);background:#16c78414;border-radius:8px;padding:10px}.comparison-recommendation p{max-width:760px}.comparison-recommendation em{font-style:normal;font-weight:800}.comparison-recommendation.no-qualified{border-color:#f7b95580;background:#f7b95514}.comparison-aggregates,.failure-breakdown{display:grid;grid-template-columns:repeat(4,minmax(230px,1fr));gap:10px}.failure-card{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;padding:10px;display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:8px}.failure-card>strong,.failure-card>span{grid-column:1 / -1}.comparison-aggregate-card{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;padding:10px;display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px}.comparison-aggregate-card>div:first-child{grid-column:1 / -1}.comparison-table,.research-matrix{border:1px solid #1f2f38;background:#0a1117;border-radius:8px;overflow:auto}.comparison-row{display:grid;grid-template-columns:90px 210px 74px 94px 88px 92px 100px 74px minmax(230px,1fr);gap:10px;align-items:center;min-width:1160px;padding:9px 10px;border-bottom:1px solid #16232a;font-size:12px}.research-row{grid-template-columns:60px 230px 76px 72px 92px 92px 100px 74px minmax(160px,1fr);min-width:960px}.comparison-row:last-child{border-bottom:0}.comparison-row-head{background:#0b151c;color:#9ba8b1;font-size:11px;text-transform:uppercase;font-weight:800}.comparison-status{width:fit-content;border:1px solid currentColor;border-radius:999px;padding:3px 8px;font-size:11px;text-transform:uppercase}.comparison-status.pass{color:#16c784}.comparison-status.rejected{color:#ea3943}.comparison-status.invalid{color:#f7b955}.interval-performance{display:grid;gap:4px}.metric{border-radius:8px;padding:12px;display:grid;gap:5px;min-height:86px}.metric span,.field span,.kv span{font-size:12px;color:#9ba8b1}.metric strong{font-size:22px}.trade-layout{display:grid;grid-template-columns:210px minmax(520px,1fr) 330px;gap:12px;align-items:stretch}.panel{border-radius:8px;padding:12px;min-width:0}.panel-title{display:flex;align-items:center;gap:8px;margin-bottom:12px}.market-panel{display:grid;gap:8px;align-content:start}.market{min-height:54px;display:flex;justify-content:space-between;padding:10px}.market.active{background:#123025;border-color:#16c784}.exchange-pattern{margin-top:10px;border-top:1px solid #26343d;padding-top:12px;color:#9ba8b1;font-size:12px}.chart-wrap{padding:0;overflow:hidden}.chart-controls{min-height:44px;padding:8px 12px;border-bottom:1px solid #26343d;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#081017}.chart-controls>span{color:#9ba8b1;font-size:12px;text-transform:uppercase;font-weight:800}.interval-buttons{display:inline-flex;align-items:center;gap:6px}.interval-buttons button{min-height:28px;padding:0 10px;font-size:12px;font-weight:800}.interval-buttons button.active{background:#123025;border-color:#16c784;color:#eafff5}.chart-stack{display:grid;gap:0}.chart-title{height:40px;padding:0 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #26343d}.chart-title-meta{display:inline-flex;align-items:center;gap:10px;color:#9ba8b1}.chart-title-meta strong{color:#35a7ff;border:1px solid rgba(53,167,255,.45);background:#35a7ff1a;border-radius:999px;padding:3px 8px;font-size:12px}.chart-panel{width:100%}.chart-main{height:420px}.chart-sub{height:120px}.indicator-label{height:26px;padding:6px 12px;border-top:1px solid #1b2830;color:#9ba8b1;font-size:12px}.chart-empty{min-height:620px;display:grid;place-items:center;color:#9ba8b1}.control-panel{display:grid;align-content:start;gap:10px}.profile-list{display:grid;gap:8px;max-height:360px;overflow:auto;padding-right:3px}.profile-card{border:1px solid #26343d;background:#0a1117;border-radius:8px;padding:10px;display:grid;gap:8px}.profile-card.active{border-color:#16c78499;background:#16c78414}.profile-card.editing{box-shadow:inset 3px 0 #35a7ff}.profile-card>div:first-child,.profile-actions,.editor-status,.profile-button-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.profile-card p{color:#c6d0d7;font-size:12px;line-height:1.4}.profile-actions{justify-content:flex-start;flex-wrap:wrap}.profile-actions em{color:#16c784;font-style:normal;font-size:11px;font-weight:900;text-transform:uppercase}.editor-status{border:1px solid #26343d;background:#081017;border-radius:8px;padding:9px}.profile-button-row{align-items:stretch}.profile-button-row button{flex:1;min-width:0}.field{display:grid;gap:5px}.field span{display:flex;align-items:center;gap:5px}.field input,.field select{height:34px;padding:0 9px;width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.preset-row{display:flex;flex-wrap:wrap;gap:6px}.full{width:100%}.warning,.locked-note{border:1px solid #664818;background:#f59e0b1a;color:#f7b955;border-radius:7px;padding:9px;display:flex;gap:8px;align-items:center;font-size:12px}.reason-card{border:1px solid #26343d;background:#0a1117;border-radius:8px;padding:10px;display:grid;gap:6px}.reason-card p{color:#d4dee5;line-height:1.4}.reason-card span{color:#9ba8b1;font-size:12px}.tabs{display:flex;gap:8px;border-bottom:1px solid #1f2a31;padding-bottom:8px}.tabs button.active{background:#123025;border-color:#16c784;color:#eafff5}.bottom-grid{display:grid;grid-template-columns:1fr;gap:12px}.hidden-panel{display:none}.kv{display:flex;justify-content:space-between;gap:14px;min-height:27px;align-items:center;border-bottom:1px solid #18242b}.table-mini,.log-list{display:grid;gap:8px;margin-top:10px}.position,.log-row{display:grid;gap:3px;padding:8px;background:#0a1117;border:1px solid #1d2a31;border-radius:7px}.log-row{grid-template-columns:78px 60px 1fr;align-items:center;width:100%;min-height:42px;text-align:left;justify-content:stretch}.log-row em{color:#9ba8b1;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-flex;width:fit-content;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.green,.buy,.badge.green{color:#16c784}.sell{color:#ea3943}.hold{color:#f7b955}.warning.experimental{border-color:#35a7ff61;background:#35a7ff14;color:#8bd2ff}.short{color:#8b5cf6}.empty{color:#9ba8b1;font-size:13px}.tooltip{display:inline-flex;position:relative;color:#7f8b94}.tooltip>span{display:none;position:absolute;z-index:10;top:18px;left:-90px;width:220px;padding:9px;border:1px solid #36505d;background:#091015;color:#dbe6ed;border-radius:7px;line-height:1.35}.tooltip:hover>span{display:block}.position-board{display:grid;gap:12px}.position-board-head{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #1f2a31;padding-bottom:8px}.position-board-head .panel-title{margin-bottom:0}.position-board-head>span{color:#9ba8b1;font-size:12px;text-transform:uppercase;font-weight:800}.position-board-head.subhead{margin-top:2px}.asset-view-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:10px}.asset-view-card{border:1px solid #26343d;background:#081017;border-radius:8px;padding:12px;display:grid;gap:12px}.asset-view-card.holding{border-color:#16c7848c}.asset-view-top{display:flex;align-items:start;justify-content:space-between;gap:10px}.asset-view-top span{color:#9ba8b1;font-size:12px}.asset-view-top strong{display:block;margin-top:3px;font-size:16px}.asset-view-top em{border:1px solid currentColor;border-radius:999px;padding:3px 8px;font-style:normal;font-size:11px;font-weight:800}.asset-view-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.condition-row{display:flex;flex-wrap:wrap;gap:6px}.condition-chip{border:1px solid #26343d;background:#0a1117;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:900;text-transform:uppercase}.condition-chip.pass{color:#16c784;border-color:#16c78473;background:#16c78417}.condition-chip.fail{color:#ea3943;border-color:#ea394373;background:#ea394317}.condition-chip.neutral{color:#f7b955;border-color:#f7b95566;background:#f7b95514}.data-mini{min-width:0;border:1px solid #18242b;background:#0a1117;border-radius:7px;padding:8px}.data-mini span{display:block;color:#9ba8b1;font-size:11px}.data-mini strong{display:block;margin-top:4px;overflow-wrap:anywhere}.asset-latest{border-top:1px solid #16232a;padding-top:9px;display:grid;gap:5px}.asset-latest strong{font-size:12px}.asset-latest p,.asset-latest small{color:#9ba8b1;line-height:1.4}.asset-latest p{margin:0}.asset-latest small{display:block}.asset-latest span{font-weight:900;margin-right:4px}.asset-latest em{color:#6f7f89;font-style:normal}.asset-latest.signal{min-height:82px}.asset-explain{border-top:1px solid #16232a;padding-top:8px}.asset-explain summary{cursor:pointer;color:#dbe6ed;font-size:12px;font-weight:800}.asset-explain>div{margin-top:8px;display:grid}.position-empty{min-height:96px;border:1px dashed #2b3b44;background:#050a0e59;border-radius:8px;display:grid;align-content:center;gap:6px;padding:14px}.position-empty p{color:#9ba8b1;line-height:1.45}.holding-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:10px}.holding-card{border:1px solid #26343d;background:#081017;border-radius:8px;padding:12px;display:grid;gap:12px}.holding-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.holding-card>div:first-child span{font-weight:800}.holding-card dl{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0}.holding-card dl div{min-width:0}.holding-card dt{color:#9ba8b1;font-size:11px}.holding-card dd{margin:4px 0 0;font-weight:800;overflow-wrap:anywhere}.position-mini-list{display:grid;gap:7px;padding:10px;border-top:1px solid #16232a}.position-mini{border:1px solid #1f2f38;background:#0a1117;border-radius:7px;padding:8px;display:grid;gap:3px}.position-mini.active{border-color:#16c78499}.position-mini span,.position-mini em{color:#9ba8b1;font-size:12px;font-style:normal}.position-history{display:grid;gap:10px;border-top:1px solid #1f2a31;padding-top:12px}.trade-history{display:grid;border:1px solid #1d2a31;border-radius:8px;overflow:hidden;background:#081017}.trade-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.trade-filter-row button{min-height:30px;font-size:12px}.trade-filter-row button.active{background:#123025;border-color:#16c784;color:#eafff5}.trade-filter-row span{color:#9ba8b1;font-weight:800}.trade-history.compact{max-height:280px;overflow:auto}.trade-history-head,.trade-history-row{display:grid;grid-template-columns:150px 72px 92px 120px 112px 108px 90px 112px minmax(220px,1fr);gap:10px;align-items:center;min-width:1110px}.trade-history-head{padding:9px 10px;background:#0b151c;border-bottom:1px solid #1f2a31;color:#9ba8b1;font-size:11px;text-transform:uppercase;font-weight:800}.trade-history-row{padding:9px 10px;border-bottom:1px solid #16232a;font-size:12px}.trade-history-row:last-child{border-bottom:0}.trade-history-filter-empty{padding:16px;color:#9ba8b1;background:#0a1117}.trade-history-row strong{width:fit-content;border-radius:999px;padding:3px 8px;border:1px solid currentColor;font-size:11px}.trade-history-row em{color:#9ba8b1;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.execution-row{display:grid;grid-template-columns:180px 90px 100px 100px 80px minmax(260px,1fr);gap:10px;align-items:center;min-width:900px;padding:9px 10px;border-bottom:1px solid #16232a;font-size:12px}.execution-row.execution-head{background:#0b151c;color:#9ba8b1;font-size:11px;text-transform:uppercase;font-weight:800}.execution-row strong{width:fit-content;border-radius:999px;padding:3px 8px;border:1px solid currentColor;font-size:11px}.execution-row em{color:#9ba8b1;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trade-history-empty{border:1px dashed #2b3b44;background:#050a0e59;border-radius:8px;padding:14px;display:grid;gap:6px}.trade-history-empty p{color:#9ba8b1;line-height:1.45}.run-inspector{display:grid;gap:12px}.inspector-head{display:flex;justify-content:space-between;gap:14px;align-items:start;border-bottom:1px solid #1f2a31;padding-bottom:8px}.inspector-head .panel-title{margin-bottom:0}.inspector-meta{display:grid;justify-items:end;gap:4px;color:#9ba8b1;font-size:12px}.inspector-meta strong{color:#e6edf3}.inspector-empty{min-height:150px;display:grid;align-content:center;justify-items:center;text-align:center;gap:8px;color:#9ba8b1;border:1px dashed #2b3b44;border-radius:8px;background:#050a0e59}.inspector-empty strong{color:#e6edf3}.inspector-empty p{max-width:640px;line-height:1.45}.inspector-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center}.symbol-pills,.run-picker{display:flex;flex-wrap:wrap;gap:7px}.symbol-pills button{min-height:36px}.symbol-pills button.active{background:#123025;border-color:#16c784}.symbol-pills span{font-size:11px;text-transform:uppercase}.run-picker button{min-height:30px;font-size:12px;color:#b8c4cc}.inspector-timeline{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px}.timeline-step{position:relative;border:1px solid #26343d;background:#0a1117;border-radius:8px;padding:10px;min-height:92px;display:grid;gap:4px;align-content:start}.timeline-step strong{font-size:13px}.timeline-step span{width:fit-content;border-radius:999px;padding:3px 7px;background:#14212a;color:#b9c4cc;font-size:11px;text-transform:uppercase;font-weight:800}.timeline-step small{color:#9ba8b1;line-height:1.35}.timeline-step.success,.timeline-step.allowed,.timeline-step.filled,.timeline-step.buy{border-color:#16c7848c}.timeline-step.sell,.timeline-step.blocked,.timeline-step.error{border-color:#ea3943a6}.timeline-step.warning,.timeline-step.hold,.timeline-step.short,.timeline-step.skipped,.timeline-step.override{border-color:#f7b9558c}.inspection-grid{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:10px}.detail-card{border:1px solid #26343d;background:#081017;border-radius:8px;padding:0;overflow:hidden}.detail-card.success,.detail-card.allowed,.detail-card.filled,.detail-card.buy{border-color:#16c78473}.detail-card.sell,.detail-card.blocked,.detail-card.error{border-color:#ea39438c}.detail-card.warning,.detail-card.hold,.detail-card.short,.detail-card.skipped,.detail-card.override{border-color:#f7b95573}.detail-card summary{min-height:42px;padding:10px;cursor:pointer;display:flex;justify-content:space-between;gap:8px;align-items:center;border-bottom:1px solid #1f2a31}.detail-card summary span{border-radius:999px;padding:3px 7px;background:#14212a;color:#b9c4cc;font-size:10px;text-transform:uppercase;font-weight:800}.detail-card p{color:#b8c4cc;line-height:1.45;padding:10px;border-bottom:1px solid #16232a}.detail-card>div{display:grid}.data-row{display:grid;gap:3px;padding:9px 10px;border-bottom:1px solid #16232a;min-height:72px}.data-row:last-child{border-bottom:0}.data-row span{color:#9ba8b1;font-size:11px}.data-row strong{color:#e6edf3;word-break:break-word}.data-row em{color:#8b99a3;font-size:12px;line-height:1.35;font-style:normal}:root{color-scheme:light;background:#eef2f7;color:#111827}body{min-width:1180px;background:linear-gradient(135deg,#f8fafc,#eef3f9 45%,#e6ebf3);color:#111827}button,select,input{border-color:#dfe5ee;background:#ffffffd1;color:#111827;box-shadow:0 8px 20px #0f172a0a}button:hover:not(:disabled),select:hover,input:hover{border-color:#c8d4e3;box-shadow:0 10px 24px #0f172a14}button:disabled{background:#f4f6f9;color:#9aa5b5}.primary{background:linear-gradient(135deg,#2f80ed,#1167d8);border-color:#2f80ed;color:#fff;box-shadow:0 12px 22px #2f80ed47}.terminal{grid-template-columns:220px minmax(960px,1fr);gap:8px;padding:8px;background:#e9eef5}.sidebar,.workspace,.login-card{border:1px solid rgba(211,219,230,.9);background:#ffffffc7;box-shadow:0 24px 60px #0f172a14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar{border-radius:18px;padding:22px 18px;gap:24px}.workspace{border-radius:18px;padding:28px;gap:18px}.brand{padding:4px 4px 18px}.brand svg{padding:7px;width:34px;height:34px;color:#fff;background:#6b7280;border-radius:9px}.brand strong{color:#111827;font-size:14px}.brand span,.mode-card p,.topbar p,small,.strategy-copy,.live-price-top span,.live-price-meta span,.metric span,.field span,.kv span,.data-mini span,.data-row span,.notice p,.notice em,.notice span,.strategy-interval-setting span{color:#697386}nav{gap:10px}nav button{min-height:48px;padding:0 14px;border-radius:12px;color:#4b5563;background:transparent;border-color:transparent;box-shadow:none;font-weight:600}nav button svg{color:#6b7280}nav button.active,nav button:hover{background:#ffffffdb;color:#1a73e8;border-color:#e2e8f0;box-shadow:0 14px 28px #0f172a14}nav button.active svg,nav button:hover svg{color:#1a73e8}.mode-card{border-radius:14px;padding:14px;background:#ffffffb8;border-color:#e1e7f0;box-shadow:0 16px 34px #0f172a12}.mode-card .badge{color:#111827}.topbar{padding-bottom:8px;border-bottom:0}h1{color:#111827;font-size:22px;line-height:1.1}h2{color:#111827;font-size:14px}.top-actions{gap:14px}.top-actions button{min-height:42px;padding:0 18px;border-radius:10px}.notice{border:1px solid #dde5ef;border-left-width:1px;border-radius:12px;padding:14px 16px;background:#ffffffdb;box-shadow:0 12px 28px #0f172a12;align-items:center}.notice svg{color:#2f80ed}.notice strong{color:#111827}.notice button{border-color:transparent;background:transparent;box-shadow:none;color:#7b8494}.status-strip{grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px}.panel,.metric,.live-price-card,.rule-card,.lab-card,.asset-performance-card,.lab-decision,.profile-card,.reason-card,.asset-view-card,.holding-card,.detail-card,.timeline-step,.data-mini,.position,.log-row,.trade-history,.position-empty,.trade-history-empty,.editor-status,.strategy-assessment,.workflow-step-header,.strategy-interval-setting,.comparison-aggregate-card,.comparison-table,.comparison-recommendation,.failure-card{border-color:#e1e7f0;background:#ffffffdb;box-shadow:0 12px 28px #0f172a0f}.panel,.metric,.live-price-card,.asset-view-card,.holding-card,.detail-card,.timeline-step{border-radius:12px}.metric{min-height:96px;padding:16px 18px;gap:7px;position:relative;overflow:hidden}.metric:after{content:none}.metric strong{color:#111827;font-size:21px;letter-spacing:0}.metric strong.buy,.green,.buy,.badge.green{color:#19a974}.metric strong.sell,.sell{color:#ef4444}.metric strong.hold,.hold{color:#f97316}.metric strong.short,.short{color:#7c3aed}.live-price-board{padding:0;background:transparent;border:0;box-shadow:none}.live-price-head{display:none}.live-price-grid{grid-template-columns:repeat(3,minmax(260px,1fr));gap:12px}.live-price-card{min-height:166px;padding:20px;align-content:start;gap:10px;border-radius:12px;text-align:left}.live-price-card.active{border-color:#cfe1ff;box-shadow:0 16px 36px #2f80ed1f}.live-price-top{justify-content:flex-start;gap:12px}.live-price-top strong{order:2;color:#8791a3;font-size:12px;font-weight:600}.live-price-top span{order:1;color:#111827;font-weight:800}.live-price-main strong{color:#111827;font-size:21px}.live-price-main em{color:#19a974;font-weight:700}.sparkline{height:58px}.sparkline.up path,.sparkline.down path{stroke:#2f80ed}.empty-line,.live-error{border-color:#dde5ef;background:#f8fafc;color:#8a94a6}.trade-layout{grid-template-columns:minmax(620px,1fr) minmax(230px,260px);gap:16px;align-items:stretch}.market-panel{display:none}.chart-wrap{grid-column:1;border-radius:12px;background:#ffffffe6;overflow:hidden}.trade-layout>.panel:last-child{grid-column:2;grid-row:1}.chart-controls{min-height:54px;padding:10px 20px;border-bottom:0;background:transparent;display:grid;grid-template-columns:1fr auto;align-items:center}.chart-controls>span{color:#111827;font-size:14px;text-transform:none;font-weight:800}.interval-buttons{gap:8px;justify-content:end;flex-wrap:wrap}.interval-buttons button{min-height:34px;min-width:54px;border-radius:8px;background:#fffc;color:#111827;font-weight:700}.interval-buttons button.active{background:#e7f0ff;border-color:#d9e8ff;color:#1a73e8}.chart-title{height:44px;padding:0 20px;border-bottom:0}.chart-title span:first-child{color:#111827;font-weight:800}.chart-title-meta{color:#697386}.chart-title-meta strong{color:#1a73e8;border:0;background:transparent;padding:0}.chart-main{height:390px}.indicator-label{display:flex;align-items:center;height:30px;padding:6px 20px 0;border-top:1px solid #eef2f7;color:#697386;font-size:12px;font-weight:800}.chart-sub{display:block;height:112px}.chart-empty{min-height:440px;color:#697386}.trade-layout>.panel:last-child{padding:22px;display:grid;align-content:start;gap:14px}.trade-layout>.panel:last-child .panel-title{margin-bottom:6px}.profile-button-row{display:grid;gap:12px}.profile-button-row button{min-height:40px;border-radius:8px}.reason-card{background:#f8fafc;border-color:#e5eaf2;box-shadow:none}.reason-card p,.reason-card span,.rule-card span,.lab-decision span,.strategy-assessment em,.workflow-step-header p,.strategy-workflow-head p,.lab-card p,.decision-rule span,.profile-card p,.asset-latest p,.asset-latest small,.position-empty p,.trade-history-empty p,.inspector-empty p,.detail-card p,.data-row em{color:#697386}.kv{border-bottom-color:#e8edf4;display:grid;grid-template-columns:minmax(86px,1fr) minmax(92px,auto);align-items:start;min-height:38px;padding:7px 0}.kv strong{justify-self:end;text-align:right;overflow-wrap:anywhere;line-height:1.25}.trade-layout>.panel:last-child .kv{grid-template-columns:1fr;gap:4px}.trade-layout>.panel:last-child .kv strong{justify-self:start;text-align:left}.strategy-summary,.strategy-lab,.performance-analytics,.position-board,.run-inspector{gap:14px}.active-strategy-band{border-color:#d5e6ff;background:linear-gradient(90deg,#eef6ff,#f8fbff)}.workflow-step-header>span{border-color:#b9dcff;background:#eef6ff;color:#1d6fd8}.workflow-step-header>div{background:#f1f5f9;color:#1d6fd8}.active-strategy-band em,.condition-chip.pass,.profile-card.active{border-color:#bfe3d7;background:#eefaf6;color:#19a974}.decision-rule,.lab-editor-note,.strategy-interval-setting,.trade-history-filter-empty,.timeline-step span,.detail-card summary span,.data-row,.trade-history-head,.execution-row.execution-head{background:#f8fafc}.tabs,.position-board-head,.inspector-head,.position-history,.asset-latest,.asset-explain,.detail-card summary,.detail-card p,.trade-history-head,.trade-history-row,.execution-row,.data-row,.chart-title,.editor-status{border-color:#e8edf4}.trade-history-head,.execution-row.execution-head{color:#697386}.trade-history-row,.execution-row{color:#111827}.strategy-comparison,.comparison-row{border-color:#e8edf4}.comparison-row-head{background:#f8fafc;color:#697386}.comparison-head span,.comparison-aggregate-card span,.comparison-aggregate-card em,.comparison-recommendation span,.comparison-recommendation p,.comparison-recommendation em,.failure-card span,.comparison-row em{color:#697386}.comparison-head em{border-color:#cfe1ff;background:#e7f0ff;color:#1a73e8}.comparison-recommendation{border-color:#bfe3d7;background:#eefaf6}.comparison-recommendation.no-qualified{border-color:#f3d7a6;background:#fff7e6}.trade-history-row em,.execution-row em,.log-row em,.position-mini span,.position-mini em,.inspector-meta,.timeline-step small{color:#697386}.log-row,.position,.position-mini,.timeline-step,.detail-card,.asset-view-card,.holding-card,.profile-card,.data-mini{background:#ffffffe6}.symbol-pills button.active,.run-picker button.active,.tabs button.active,.trade-filter-row button.active,.market.active{background:#e7f0ff;border-color:#cfe1ff;color:#1a73e8}.field input,.field select{background:#fff;border-color:#dfe5ee;color:#111827}.badge{background:#e7f0ff;color:#1a73e8}.warning,.locked-note{border-color:#fed7aa;background:#fff7ed;color:#f97316}.tooltip{color:#9aa5b5}.tooltip>span{border-color:#d7e0ec;background:#fff;color:#111827;box-shadow:0 16px 34px #0f172a1f}.login-shell{background:#eef2f7}.login-card{border-radius:18px}.login-brand svg{color:#1a73e8}.login-brand strong,.inspector-empty strong,.data-row strong,.asset-explain summary,.inspector-meta strong{color:#111827}.forward-health{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #d9e8ff;background:#f5f9ff;border-radius:10px;padding:12px;margin-bottom:12px}.forward-health.stale{border-color:#fecaca;background:#fff7f7}.forward-health div{display:grid;gap:4px}.forward-health span,.forward-health em,.signal-count-row span,.evidence-card p,.evidence-meta,.evidence-detail-row em{color:#697386;font-style:normal}.forward-health strong{font-size:20px}.forward-reset-controls{display:grid;grid-template-columns:150px auto;align-items:end;gap:10px}.forward-reset-controls button{min-height:34px}.forward-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:8px}.signal-count-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.signal-count-row span{border:1px solid #dfe5ee;background:#f8fafc;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;text-transform:uppercase}.forward-table{display:grid;border:1px solid #e1e7f0;border-radius:10px;overflow:hidden;background:#fff}.forward-row{display:grid;grid-template-columns:120px repeat(6,76px) 110px 90px;gap:10px;align-items:center;min-width:880px;padding:10px 12px;border-bottom:1px solid #e8edf4;font-size:12px}.forward-row:last-child{border-bottom:0}.forward-head{background:#f8fafc;color:#697386;font-size:11px;text-transform:uppercase;font-weight:800}.evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:10px}.evidence-card{border:1px solid #e1e7f0;background:#ffffffe6;border-radius:12px;padding:12px;display:grid;gap:10px;box-shadow:0 12px 28px #0f172a0f}.evidence-card-head,.evidence-meta{display:flex;align-items:start;justify-content:space-between;gap:10px}.evidence-card-head span{color:#697386;font-size:12px}.evidence-card-head strong{display:block;margin-top:3px;font-size:16px}.evidence-card-head em{border:1px solid currentColor;border-radius:999px;padding:3px 8px;font-style:normal;font-size:11px;font-weight:900;text-transform:uppercase}.evidence-card p{line-height:1.4}.evidence-meta{font-size:12px}.evidence-details{border-top:1px solid #e8edf4;padding-top:8px}.evidence-details summary{cursor:pointer;color:#111827;font-size:12px;font-weight:800}.evidence-detail-row{display:grid;grid-template-columns:120px 1fr;gap:8px;padding:7px 0;border-bottom:1px solid #eef2f7}.evidence-detail-row span{font-size:11px;font-weight:900;text-transform:uppercase}
