@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&display=swap');

:root {
  --ink: #e8eef2;
  --muted: #78909c;
  --muted-2: #4e6570;
  --bg: #071014;
  --panel: #0b171c;
  --panel-2: #0f2026;
  --line: #1a343d;
  --cyan: #48d6f2;
  --mint: #45e0ad;
  --amber: #f2bd58;
  --coral: #ff6f70;
  --violet: #c58aff;
  --blue: #7ab8ff;
  --mono: 'DM Mono', monospace;
  --sans: 'Manrope', sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--bg); color: var(--ink); font-family: var(--sans); }
body { margin: 0; min-width: 320px; background:
  linear-gradient(rgba(24,52,61,.12) 1px, transparent 1px),
  linear-gradient(90deg, rgba(24,52,61,.12) 1px, transparent 1px),
  radial-gradient(circle at 8% 0%, rgba(72,214,242,.07), transparent 30%), var(--bg);
  background-size: 44px 44px,44px 44px,auto; }
button,input { font: inherit; }
button { color: inherit; }
.app-shell { min-height: 100vh; }
.topbar { min-height: 78px; padding: 0 24px; display: grid; grid-template-columns: minmax(220px,1fr) auto minmax(340px,1fr); align-items: center; border-bottom: 1px solid var(--line); background: rgba(7,16,20,.94); position: sticky; top: 0; z-index: 20; backdrop-filter: blur(14px); }
.brand-block { display:flex; gap:14px; align-items:center; }
.brand-block h1,.page-heading h2,.workspace-header h2,.detail-header h2 { margin:0; letter-spacing:-.035em; }



.eyebrow { margin:0 0 5px; color:var(--cyan); font:500 10px/1 var(--mono); letter-spacing:.16em; }
.primary-nav { padding:4px; border:1px solid var(--line); background:#061014; display:flex; gap:4px; }
.nav-button { min-width:120px; padding:11px 22px; border:0; background:transparent; color:var(--muted); font:500 12px var(--mono); letter-spacing:.08em; cursor:pointer; }
.nav-button.active { color:#061014; background:var(--cyan); }
.system-strip { justify-self:end; display:flex; align-items:center; gap:22px; }
.metric { display:grid; gap:3px; }
.metric span,.quote-cluster span,.pnl-stack span { color:var(--muted); font:500 9px var(--mono); letter-spacing:.12em; }
.metric strong { font:500 13px var(--mono); }
.icon-button,.control-button,.primary-button,.mini-button { border:1px solid var(--line); background:var(--panel); padding:10px 14px; font:500 11px var(--mono); cursor:pointer; transition:.18s ease; }
.icon-button:hover,.control-button:hover,.mini-button:hover { border-color:var(--cyan); color:var(--cyan); }
.primary-button { background:var(--cyan); color:#061014; border-color:var(--cyan); font-weight:700; }
.control-button.active { border-color:var(--mint); color:var(--mint); background:rgba(69,224,173,.08); }
.control-button.danger { border-color:rgba(255,111,112,.4); color:var(--coral); }
main { padding:28px; max-width:1900px; margin:auto; }
.page { display:none; animation:reveal .28s ease; }.page.active{display:block}
@keyframes reveal { from{opacity:0;transform:translateY(6px)} }
.page-heading { display:flex; justify-content:space-between; align-items:end; margin:12px 0 24px; gap:20px; }
.page-heading h2 { font-size:30px; }.subtle{color:var(--muted);margin:7px 0 0;font-size:13px}
.live-actions,.training-actions { display:flex; align-items:end; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.daily-grid { display:grid; grid-template-columns:1.35fr 1fr 1fr .82fr; gap:12px; }
.desk-column { min-height:280px; border:1px solid var(--line); background:rgba(11,23,28,.9); overflow:hidden; }
.desk-column>header { height:56px; padding:0 16px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.desk-column>header div { display:flex; align-items:center; gap:10px; }.desk-column h3{font-size:13px;margin:0}.desk-column>header strong{font:500 12px var(--mono);color:var(--muted)}
.column-index { color:var(--muted-2); font:10px var(--mono); }.watching-column{border-top-color:var(--cyan)}.pnl-column{border-top-color:var(--mint)}
.column-list { max-height:320px; overflow:auto; }.empty-list{padding:42px 18px;text-align:center;color:var(--muted);font:11px/1.7 var(--mono)}
.ticker-row { width:100%; border:0; border-bottom:1px solid rgba(26,52,61,.65); background:transparent; padding:12px 15px; display:grid; grid-template-columns:1fr auto; gap:4px 12px; text-align:left; cursor:pointer; }
.ticker-row:hover,.ticker-row.selected{background:var(--panel-2)}.ticker-row b{font:500 13px var(--mono)}.ticker-row strong{font:500 12px var(--mono)}.ticker-row span{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ticker-row em{font:normal 10px var(--mono);color:var(--muted)}
.positive{color:var(--mint)!important}.negative{color:var(--coral)!important}
.pnl-stack { padding:12px 18px; display:grid; gap:8px; }.pnl-stack div{padding:14px 0;border-bottom:1px solid var(--line);display:grid;gap:5px}.pnl-stack strong{font:500 19px var(--mono)}
.workspace-panel { margin-top:16px; border:1px solid var(--line); background:rgba(7,16,20,.96); }
.workspace-header { min-height:84px; padding:18px 20px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); }
.ticker-title{display:flex;align-items:baseline;gap:14px}.ticker-title h2{font:600 27px var(--mono)}.ticker-title span{color:var(--muted);font-size:12px}
.quote-cluster{display:flex;gap:30px}.quote-cluster div{display:grid;gap:5px;min-width:70px}.quote-cluster strong{font:500 16px var(--mono)}
.workspace-body { display:grid; grid-template-columns:minmax(0,1fr) 390px; min-height:530px; }
.chart-zone{padding:16px;border-right:1px solid var(--line)}.chart-toolbar{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px;min-height:31px}
.overlay-toggle{border:1px solid var(--line);background:transparent;color:var(--muted);padding:7px 10px;font:10px var(--mono);cursor:pointer}.overlay-toggle.active{color:var(--ink);border-color:var(--toggle-color,var(--cyan));box-shadow:inset 3px 0 var(--toggle-color,var(--cyan))}
.chart-wrap{height:465px;position:relative;background:linear-gradient(rgba(26,52,61,.45) 1px,transparent 1px),linear-gradient(90deg,rgba(26,52,61,.45) 1px,transparent 1px);background-size:100% 25%,12.5% 100%}
#marketChart{width:100%;height:100%;display:block}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font:11px var(--mono)}
.model-rail{padding:16px;overflow:auto;max-height:530px}.controller-card{padding:18px;border:1px solid var(--line);background:var(--panel)}.controller-card h3{margin:0 0 16px;font-size:16px}.controller-gauge{height:5px;background:#14282f;overflow:hidden}.controller-gauge span{display:block;height:100%;background:var(--mint)}.controller-result{display:flex;justify-content:space-between;margin-top:12px;font:12px var(--mono)}
.expert-heading{display:flex;justify-content:space-between;align-items:center;margin:20px 0 10px}.expert-heading h3{margin:0;font-size:13px}.expert-heading span{font:9px var(--mono);color:var(--muted)}
.expert-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.expert-card{border:1px solid var(--line);padding:11px;background:#091419;cursor:pointer}.expert-card.hidden-model{opacity:.38}.expert-card header{display:flex;justify-content:space-between;gap:5px}.expert-card h4{font:500 10px var(--mono);margin:0}.expert-card button{border:0;background:transparent;color:var(--cyan);font:9px var(--mono);cursor:pointer}.expert-card strong{display:block;margin:12px 0 3px;font:500 18px var(--mono)}.expert-card p{margin:0;color:var(--muted);font-size:9px}
.dataset-row,.worker-row{display:grid;gap:10px;margin-bottom:12px}.dataset-row{grid-template-columns:repeat(3,1fr)}.worker-row{grid-template-columns:repeat(3,1fr)}
.status-card{border:1px solid var(--line);background:var(--panel);padding:15px 17px}.status-card header{display:flex;justify-content:space-between}.status-card h3{margin:4px 0 14px;font-size:14px}.status-card p{font:10px/1.5 var(--mono);color:var(--muted);margin:7px 0 0}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px var(--mint)}
.progress-track{height:4px;background:#14282f}.progress-track span{display:block;height:100%;background:var(--cyan)}
.training-layout{display:grid;grid-template-columns:270px minmax(0,1fr);border:1px solid var(--line);min-height:650px}.generation-panel{border-right:1px solid var(--line);background:#081317}.generation-panel>header{padding:18px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.generation-panel>header span{font:11px var(--mono);color:var(--muted)}
.generation-item{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:15px 17px;text-align:left;cursor:pointer}.generation-item.active{background:var(--panel-2);box-shadow:inset 3px 0 var(--cyan)}.generation-item strong{display:block;font:500 12px var(--mono);margin-bottom:6px}.generation-item span{color:var(--muted);font-size:10px}.generation-item em{float:right;font:normal 9px var(--mono);color:var(--mint)}
.generation-detail{padding:20px}.detail-header{display:flex;justify-content:space-between;align-items:start;padding-bottom:18px;border-bottom:1px solid var(--line)}.training-actions label{display:grid;gap:3px;color:var(--muted);font:9px var(--mono)}.training-actions input{width:72px;padding:9px;background:#061014;border:1px solid var(--line);color:var(--ink);font:12px var(--mono)}
.job-stack{display:grid;gap:8px;margin:15px 0}.job-card{border:1px solid var(--line);padding:12px 14px;display:grid;grid-template-columns:150px 1fr auto;gap:16px;align-items:center}.job-card h4{margin:0;font:500 11px var(--mono)}.job-card p{margin:4px 0 0;color:var(--muted);font-size:9px}.job-card button{padding:6px 9px}.model-tree-controls{display:flex;justify-content:space-between;align-items:center;margin:20px 0 10px}.model-tree-controls h3{margin:0;font-size:14px}.mini-button{padding:7px 10px}.mini-button.active{border-color:var(--cyan);color:var(--cyan)}
.model-tree{display:grid;grid-template-columns:1fr 1fr;gap:10px}.model-group{border:1px solid var(--line);background:var(--panel);padding:14px}.model-group>header{display:flex;justify-content:space-between;margin-bottom:10px}.model-group h4{margin:0;font:500 11px var(--mono)}.model-group>header span{font:9px var(--mono);color:var(--muted)}.model-line{display:grid;grid-template-columns:1fr 80px 45px;gap:10px;align-items:center;padding:7px 0;border-top:1px solid rgba(26,52,61,.55)}.model-line b{font:500 10px var(--mono)}.model-line span{font:9px var(--mono);color:var(--muted);text-align:right}.model-line i{height:3px;background:#14282f}.model-line i:after{content:'';display:block;height:100%;width:var(--model-progress,0%);background:var(--mint)}
.pack-overview{display:grid;grid-template-columns:.72fr 1fr 1fr;gap:12px;margin-bottom:12px}.pack-pool-card header strong{font:500 13px var(--mono);color:var(--cyan)}.pack-pool-card small{display:block;margin-top:12px;color:var(--muted);font:10px var(--mono)}.pack-cpu-card{position:relative;overflow:hidden}.cpu-orbit{height:64px;display:flex;align-items:center;gap:14px}.cpu-orbit span{width:48px;height:48px;border:1px solid var(--cyan);display:grid;place-items:center;color:var(--cyan);font:500 20px var(--mono);box-shadow:0 0 25px rgba(72,214,242,.1)}.cpu-orbit i{height:1px;flex:1;background:linear-gradient(90deg,var(--cyan),transparent);position:relative}.cpu-orbit i:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--mint);left:45%;top:-3px;box-shadow:0 0 12px var(--mint)}
.pack-control-panel{border:1px solid var(--line);background:rgba(11,23,28,.9);padding:22px}.pack-control-panel>header{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:18px}.pack-control-panel>header h3{margin:0}.pack-control-panel>header>span{font:10px var(--mono);color:var(--amber)}.pack-target-grid{display:grid;grid-template-columns:180px 180px auto;gap:10px;align-items:end;padding:20px 0}.pack-target-grid label{display:grid;gap:7px;color:var(--muted);font:9px var(--mono)}.pack-target-grid input{width:100%;padding:11px;background:#061014;border:1px solid var(--line);color:var(--ink);font:12px var(--mono)}.pack-target-grid button{justify-self:start}.pack-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pack-explainer article{border:1px solid var(--line);padding:17px;background:#081317}.pack-explainer b{color:var(--cyan);font:11px var(--mono)}.pack-explainer h4{margin:18px 0 7px;font-size:13px}.pack-explainer p{margin:0;color:var(--muted);font:11px/1.6 var(--mono)}
.sector-pack-table{border:1px solid var(--line);margin:0 0 20px;background:#081317}.sector-pack-table>header,.sector-pack-table>div>div{display:grid;grid-template-columns:1.4fr .7fr .7fr .7fr;gap:12px;align-items:center;padding:11px 14px}.sector-pack-table>header{color:var(--muted);font:9px var(--mono);letter-spacing:.1em}.sector-pack-table>div>div{border-top:1px solid var(--line);font:10px var(--mono)}.sector-pack-table b{font-weight:500}.sector-pack-table span{color:var(--muted)}.sector-pack-table em{font-style:normal;color:var(--amber)}
.simple-pack-table>header,.simple-pack-table>div>div{grid-template-columns:1.25fr .55fr 1.2fr 74px}.pack-status-wrap{display:grid;grid-template-columns:1fr 62px;gap:5px 8px;align-items:center}.pack-status-wrap em{position:relative;height:5px;background:#14282f;grid-column:1/2;overflow:hidden}.pack-status-wrap em u{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--mint));transition:width .7s}.pack-status-wrap em.active:after{content:'';position:absolute;inset:0;width:34%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:pack-scan 1.25s linear infinite}.pack-status-wrap small{grid-column:2;font:8px/1.5 var(--mono);color:var(--muted);white-space:nowrap}.pack-status-wrap .pack-state{grid-column:1/-1;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes pack-scan{from{transform:translateX(-110%)}to{transform:translateX(330%)}}
.pack-volume-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pack-volume-panel{border:1px solid var(--line);background:rgba(11,23,28,.92);padding:20px}.pack-volume-panel>header{display:flex;justify-content:space-between;align-items:start}.pack-volume-panel h3{margin:0;font-size:18px}.pack-volume-panel>header strong{font:500 18px var(--mono);color:var(--cyan)}.pack-volume-panel>p{margin:9px 0 20px;color:var(--muted);font:10px var(--mono)}.volume-track{height:7px;background:#14282f;margin-top:18px;overflow:hidden}.volume-track span{display:block;height:100%;background:var(--mint);transition:width .3s}.volume-track span.warning{background:var(--amber)}.simple-pack-table{border:1px solid var(--line);background:#071014}.simple-pack-table>header,.simple-pack-table>div>div{display:grid;grid-template-columns:1.4fr .65fr .75fr 74px;gap:10px;align-items:center;padding:11px 12px}.simple-pack-table>header{color:var(--muted);font:9px var(--mono);letter-spacing:.08em}.simple-pack-table>div>div{border-top:1px solid var(--line);font:10px var(--mono)}.simple-pack-table b{font-weight:500}.simple-pack-table strong{font:500 12px var(--mono);color:var(--cyan)}.simple-pack-table button{padding:6px 8px}.simple-pack-table button.danger{color:var(--coral);border-color:rgba(255,111,112,.45)}.pack-state{color:var(--amber);font:9px var(--mono)}.pack-state.building,.pack-state.ready{color:var(--mint)}.pack-state.paused{color:var(--muted)}.pack-state.storage_guard{color:var(--coral)}
dialog{border:1px solid var(--line);padding:0;background:var(--panel);color:var(--ink);width:min(520px,calc(100% - 30px));box-shadow:0 30px 100px #000}dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}.settings-card{padding:24px;display:grid;gap:24px}.range-field{display:grid;gap:12px}.range-field span{display:flex;justify-content:space-between;font-size:12px}.range-field output{font:11px var(--mono);color:var(--cyan)}input[type=range]{accent-color:var(--cyan);width:100%}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}
.toast{position:fixed;right:22px;bottom:22px;padding:13px 17px;border:1px solid var(--line);background:var(--panel-2);font:11px var(--mono);opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:none}.toast.error{border-color:var(--coral);color:var(--coral)}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#18323a}::-webkit-scrollbar-track{background:#071014}
@media(max-width:1150px){.topbar{grid-template-columns:1fr auto}.system-strip{grid-column:1/-1;justify-self:stretch;justify-content:flex-end;padding:9px 0;border-top:1px solid var(--line)}.daily-grid{grid-template-columns:1fr 1fr}.workspace-body{grid-template-columns:1fr}.chart-zone{border-right:0;border-bottom:1px solid var(--line)}.model-rail{max-height:none}.training-layout{grid-template-columns:220px 1fr}.model-tree{grid-template-columns:1fr}.pack-overview{grid-template-columns:1fr 1fr}.pack-cpu-card{grid-column:1/-1}.pack-volume-grid{grid-template-columns:1fr}}
@media(max-width:720px){main{padding:14px}.topbar{position:static;padding:12px 14px;display:flex;flex-wrap:wrap;gap:12px}.brand-block{flex:1}.primary-nav{order:3;width:100%;overflow:auto}.nav-button{flex:1;min-width:118px}.system-strip{order:4;overflow:auto;justify-content:flex-start}.page-heading,.workspace-header,.detail-header,.pack-control-panel>header{align-items:flex-start;flex-direction:column}.daily-grid,.dataset-row,.worker-row,.pack-overview,.pack-explainer{grid-template-columns:1fr}.pack-cpu-card{grid-column:auto}.pack-target-grid{grid-template-columns:1fr}.workspace-body{display:block}.chart-wrap{height:350px}.quote-cluster{width:100%;justify-content:space-between}.training-layout{display:block}.generation-panel{border-right:0;border-bottom:1px solid var(--line);max-height:230px;overflow:auto}.model-tree{grid-template-columns:1fr}.job-card{grid-template-columns:1fr}.expert-grid{grid-template-columns:1fr 1fr}}

.nav-stack{display:grid;gap:5px;justify-self:center}.training-subnav{display:flex;gap:4px;width:max-content;margin:0 0 18px;padding:4px;border:1px solid var(--line);background:#071014}.header-training-subnav{display:none;width:100%;margin:0;padding:2px}.header-training-subnav.visible{display:flex}.header-training-subnav .training-tab{flex:1;min-width:0;padding:7px 12px;font-size:8px}.training-tab{min-width:170px;padding:11px 18px;border:0;background:transparent;color:var(--muted);font:600 10px var(--mono);letter-spacing:.12em;cursor:pointer}.training-tab:hover{color:var(--ink)}.training-tab.active{background:#10262d;color:var(--cyan);box-shadow:inset 0 -2px var(--cyan)}.training-subpage{display:none}.training-subpage.active{display:block}
.generation-registry{border:1px solid var(--line);background:rgba(7,16,20,.82)}.registry-heading{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line)}.registry-heading h3{margin:2px 0 0;font-size:18px}.registry-heading>span{color:var(--muted);font:10px var(--mono)}.registry-heading>span strong{color:var(--cyan);font-size:15px}.generation-columns,.generation-summary{display:grid;grid-template-columns:minmax(260px,1.45fr) .58fr .82fr .7fr .32fr;gap:14px;align-items:center}.generation-columns{padding:10px 16px;color:var(--muted);font:9px var(--mono);letter-spacing:.1em}.generation-record{border-top:1px solid var(--line)}.generation-summary{width:100%;padding:15px 16px;border:0;background:#09151a;color:var(--ink);text-align:left;cursor:pointer}.generation-summary:hover,.generation-record.open>.generation-summary{background:#10242b}.generation-summary>span{display:grid;gap:4px}.generation-summary b{font:600 12px var(--mono)}.generation-summary small{color:var(--muted);font:8px var(--mono);letter-spacing:.05em}.generation-name{grid-template-columns:24px 1fr}.generation-name i{grid-row:1/3;display:grid;place-items:center;width:20px;height:20px;border:1px solid var(--line);color:var(--cyan);font:normal 13px var(--mono)}.generation-status{width:max-content;padding:5px 7px;border:1px solid var(--line);border-radius:20px;color:var(--muted);font:normal 8px var(--mono)}.generation-status.published{border-color:rgba(69,224,173,.45);color:var(--mint)}.generation-status.training,.generation-status.queued{border-color:rgba(242,189,88,.45);color:var(--amber)}.live-generation{align-items:start}.live-generation b{width:max-content;padding:5px 9px;border:1px solid var(--mint);border-radius:20px;color:var(--mint);letter-spacing:.12em}
.generation-expanded{padding:16px;background:#061014;border-top:1px solid var(--cyan)}.generation-command-bar{display:grid;grid-template-columns:minmax(240px,1fr) 120px repeat(4,max-content);gap:8px;align-items:end;padding:15px;border:1px solid var(--line);background:#0a171c}.generation-command-bar>div>span{color:var(--muted);font:10px var(--mono)}.generation-command-bar label{display:grid;gap:6px;color:var(--muted);font:8px var(--mono)}.generation-command-bar input{width:100%;padding:9px;border:1px solid var(--line);background:#061014;color:var(--ink);font:11px var(--mono)}.generation-command-bar button:disabled{opacity:.5;cursor:not-allowed}.generation-jobs{display:grid;gap:7px;margin-top:10px}.controller-columns,.controller-summary{display:grid;grid-template-columns:minmax(270px,1.4fr) .45fr .38fr .36fr .48fr .52fr;gap:12px;align-items:center}.controller-columns{margin-top:15px;padding:9px 12px;color:var(--muted);font:8px var(--mono);letter-spacing:.09em}.controller-catalog{border:1px solid var(--line)}.controller-record+.controller-record{border-top:1px solid var(--line)}.controller-summary{width:100%;padding:12px;border:0;background:#09151a;color:var(--ink);text-align:left;cursor:pointer;font:10px var(--mono)}.controller-summary:hover,.controller-record.open>.controller-summary{background:#10242b}.controller-summary>span:first-child{display:flex;align-items:center;gap:9px}.controller-summary i{display:grid;place-items:center;width:18px;height:18px;border:1px solid var(--line);color:var(--cyan);font-style:normal}.model-status{width:max-content;color:var(--muted);font:8px var(--mono)}.model-status.trained{color:var(--mint)}.ml-panel{padding:12px 14px 16px;background:#071115;border-top:1px solid var(--line)}.ml-note{padding:9px 10px;margin-bottom:8px;border-left:2px solid var(--cyan);background:#0b1b21;color:var(--muted);font:9px/1.5 var(--mono)}.ml-columns,.ml-row{display:grid;grid-template-columns:minmax(210px,1.25fr) .38fr .72fr .58fr .48fr;gap:12px;align-items:center}.ml-columns{padding:8px 10px;color:var(--muted);font:8px var(--mono);letter-spacing:.08em}.ml-row{min-height:45px;padding:9px 10px;border-top:1px solid var(--line);font:10px var(--mono)}.ml-row>span:first-child{display:grid;gap:4px}.ml-row small{color:var(--muted);font:8px var(--mono)}.utilization-cell{display:grid;grid-template-columns:1fr 46px;gap:8px;align-items:center}.utilization-cell i{height:4px;background:#14282f;overflow:hidden}.utilization-cell i u{display:block;height:100%;background:var(--cyan)}.utilization-cell b{color:var(--cyan);font-size:9px}
@media(max-width:1050px){.generation-command-bar{grid-template-columns:1fr 120px repeat(2,max-content)}.generation-command-bar>button:nth-of-type(3),.generation-command-bar>button:nth-of-type(4){grid-row:2}.generation-columns,.generation-summary{grid-template-columns:minmax(220px,1.2fr) .55fr .75fr .65fr .3fr}.controller-columns,.controller-summary{grid-template-columns:minmax(220px,1.2fr) .4fr .35fr .35fr .45fr .5fr}}
@media(max-width:720px){.nav-stack{order:3;width:100%}.training-subnav{width:100%}.training-tab{min-width:0;flex:1}.generation-columns{display:none}.generation-summary{grid-template-columns:1fr 1fr}.generation-summary .generation-name{grid-column:1/-1}.generation-command-bar{grid-template-columns:1fr 1fr}.generation-command-bar>div{grid-column:1/-1}.controller-columns{display:none}.controller-summary{grid-template-columns:1fr 1fr}.controller-summary>span:first-child{grid-column:1/-1}.ml-columns{display:none}.ml-row{grid-template-columns:1fr 1fr}.ml-row>span:first-child{grid-column:1/-1}.pack-volume-grid{grid-template-columns:1fr}}
.test-lock-badge{display:grid;grid-template-columns:auto auto;gap:3px 10px;align-items:center;padding:12px 15px;border:1px solid rgba(69,224,173,.45);background:#0a1d1b}.test-lock-badge span,.test-lock-badge small{font:8px var(--mono);color:var(--muted);letter-spacing:.1em}.test-lock-badge strong{grid-row:1/3;grid-column:2;color:var(--mint);font:22px var(--mono)}.test-vault-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:12px}.test-vault-card{padding:20px;border:1px solid var(--line);background:rgba(11,23,28,.92)}.test-vault-card.fresh{border-color:rgba(55,217,223,.35)}.test-vault-card>header{display:flex;justify-content:space-between;align-items:start}.test-vault-card h3{margin:0}.test-vault-card>header>strong{padding:6px 9px;border:1px solid var(--line);border-radius:20px;color:var(--muted);font:8px var(--mono)}.test-vault-card>header>strong.ready{border-color:rgba(69,224,173,.45);color:var(--mint)}.test-vault-metrics{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:18px;background:var(--line)}.test-vault-metrics>div{display:grid;gap:7px;padding:13px;background:#081317}.test-vault-metrics span{color:var(--muted);font:8px var(--mono)}.test-vault-metrics b{font:12px var(--mono);color:var(--cyan)}.test-vault-card>p{margin:12px 0 0;color:var(--muted);font:9px var(--mono)}.test-lock-registry{border:1px solid var(--line);background:#081317}.test-lock-registry>header{display:flex;justify-content:space-between;align-items:center;padding:17px;border-bottom:1px solid var(--line)}.test-lock-registry h3{margin:0}.test-lock-registry>header>span{color:var(--cyan);font:9px var(--mono)}.test-lock-columns,.test-lock-registry>#testingRows>div{display:grid;grid-template-columns:1.15fr .5fr .5fr .5fr .58fr .58fr .42fr;gap:12px;align-items:center;padding:11px 14px}.test-lock-columns{color:var(--muted);font:8px var(--mono);letter-spacing:.09em}.test-lock-registry>#testingRows>div{border-top:1px solid var(--line);font:10px var(--mono)}.test-lock-registry strong{color:var(--cyan)}.test-lock-registry em{width:max-content;font-style:normal;color:var(--amber);font-size:8px}.test-lock-registry em.locked{color:var(--mint)}
@media(max-width:720px){.test-vault-grid{grid-template-columns:1fr}.test-lock-columns{display:none}.test-lock-registry>#testingRows>div{grid-template-columns:1fr 1fr}.test-lock-registry>#testingRows>div>b{grid-column:1/-1}}
.evaluation-workflow{margin:24px 0;padding:26px;border:1px solid #24434f;border-radius:18px;background:radial-gradient(circle at 92% 0%,rgba(53,215,255,.08),transparent 28%),linear-gradient(145deg,#0a171e 0%,#071117 100%);box-shadow:0 22px 70px rgba(0,0,0,.22)}
.evaluation-heading,.evaluation-actions,.evaluation-table-toolbar,.comparison-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.evaluation-heading h2,.evaluation-table-toolbar h3,.evaluation-chart-header h3,.evaluation-comparison h3{margin:4px 0 0}
.evaluation-generation-picker{display:grid;gap:7px;min-width:230px;color:#71909e;font:700 10px/1.2 var(--mono);letter-spacing:.13em}.evaluation-generation-picker select,.evaluation-filters select{min-height:40px;border:1px solid #2a4b58;border-radius:9px;padding:0 38px 0 12px;color:#dcebf0;background:#08151b;font:600 12px/1 var(--mono)}
.evaluation-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0 16px}.evaluation-step{position:relative;display:grid;grid-template-columns:34px 1fr;gap:11px;min-height:118px;padding:16px;overflow:hidden;border:1px solid #203b46;border-radius:12px;background:rgba(5,17,23,.86)}.evaluation-step:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:3px;background:#35d7ff;transition:right .3s}.evaluation-step.done:after{right:0;background:#31dfb1}.evaluation-step.active:after{right:26%;animation:evaluation-pulse 1.6s ease-in-out infinite alternate}.evaluation-step.blocked{opacity:.58}@keyframes evaluation-pulse{from{right:72%}to{right:8%}}
.evaluation-step-number{display:grid;width:31px;height:31px;place-items:center;border:1px solid #315664;border-radius:50%;color:#8eb0bd;font:700 12px/1 var(--mono)}.evaluation-step.done .evaluation-step-number{color:#041410;border-color:#31dfb1;background:#31dfb1}.evaluation-step small,.evaluation-summary span,.comparison-metrics>article>span{display:block;margin-bottom:7px;color:#658692;font:700 9px/1.2 var(--mono);letter-spacing:.12em}.evaluation-step strong{color:#dcebf0;font-size:13px}.evaluation-step p{margin:7px 0 0;color:#7896a2;font-size:11px;line-height:1.45}
.evaluation-actions{justify-content:flex-start;flex-wrap:wrap;padding:13px;border:1px solid #1c343e;border-radius:11px;background:rgba(3,12,16,.58)}.evaluation-actions button{min-height:38px;border-radius:8px;padding:0 15px;font:700 11px/1 var(--mono)}.evaluation-actions button:disabled{cursor:not-allowed;opacity:.38}.evaluation-status{margin-left:auto;color:#7896a2;font:600 11px/1.3 var(--mono)}.evaluation-status[data-tone=active]{color:#35d7ff}.evaluation-status[data-tone=success]{color:#31dfb1}.evaluation-status[data-tone=error]{color:#ff657a}
.evaluation-summary{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-top:16px}.evaluation-summary article{min-height:104px;padding:15px;border:1px solid #1e3944;border-radius:11px;background:#07141a}.evaluation-summary strong{display:block;margin-top:12px;color:#e8f5f8;font:700 18px/1.1 var(--mono)}.evaluation-summary small{display:block;margin-top:10px;color:#63818d;font-size:10px;line-height:1.35}.metric-state{text-transform:uppercase;font-size:14px!important}.metric-state.complete{color:#31dfb1}.metric-state.running,.metric-state.queued{color:#35d7ff}.metric-state.failed{color:#ff657a}.metric-progress{height:5px;margin-top:15px;overflow:hidden;border-radius:8px;background:#142831}.metric-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#35d7ff,#31dfb1)}.evaluation-empty-wide{grid-column:1/-1;padding:24px;border:1px dashed #294753;border-radius:12px;color:#7896a2;text-align:center}
.evaluation-comparison{margin-top:16px;padding:19px;border:1px solid #21414d;border-radius:13px;background:linear-gradient(100deg,rgba(53,215,255,.045),rgba(49,223,177,.025));color:#7896a2}.comparison-heading>span{color:#6f8e9c;font:700 10px/1.2 var(--mono);letter-spacing:.1em}.comparison-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:17px}.comparison-metrics article{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:13px;border:1px solid #1b3741;border-radius:9px;background:rgba(3,13,17,.66)}.comparison-metrics article>span,.comparison-metrics article>em{grid-column:1/-1}.comparison-metrics b{display:block;color:#dcebf0;font:700 13px/1.2 var(--mono)}.comparison-metrics small{color:#5f7d88;font-size:9px}.comparison-metrics em{margin-top:4px;font:700 11px/1.2 var(--mono);font-style:normal}
.evaluation-review-grid{display:grid;grid-template-columns:minmax(620px,1.2fr) minmax(480px,.8fr);gap:15px;margin-top:16px}.evaluation-table-panel,.evaluation-chart-panel{min-width:0;overflow:hidden;border:1px solid #203d48;border-radius:13px;background:#07141a}.evaluation-table-toolbar,.evaluation-chart-header{padding:18px}.evaluation-filters{display:flex;gap:8px}.evaluation-filters select{min-height:36px;font-size:10px}.evaluation-cases{overflow-x:auto;border-top:1px solid #1b3540}.evaluation-cases.empty-state,.evaluation-cases .empty-state{padding:45px 20px;color:#688692;text-align:center}
.evaluation-case-head,.evaluation-case-row{display:grid;grid-template-columns:82px 95px minmax(150px,1.25fr) 86px 105px 62px 78px 86px;min-width:825px;align-items:center;gap:10px;padding:11px 14px}.evaluation-case-head{color:#678591;background:#091920;font:700 9px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}.evaluation-case-row{width:100%;border:0;border-top:1px solid #142c35;border-left:3px solid transparent;color:#9db4bc;background:transparent;text-align:left;cursor:pointer;font:500 11px/1.25 var(--mono)}.evaluation-case-row:hover{background:#0a1d25}.evaluation-case-row.selected{border-left-color:#35d7ff;background:rgba(53,215,255,.08)}.evaluation-case-row span{min-width:0;overflow:hidden;text-overflow:ellipsis}.evaluation-case-row b{display:block;overflow:hidden;color:#d9e9ee;text-overflow:ellipsis}.evaluation-case-row small{display:block;margin-top:4px;overflow:hidden;color:#5f7f8b;font-size:9px;text-overflow:ellipsis}.outcome{display:inline-flex;padding:4px 7px;border:1px solid #2b4650;border-radius:999px;color:#7896a2;font-style:normal;font-size:9px;text-transform:uppercase}.outcome.win{color:#31dfb1;border-color:rgba(49,223,177,.35)}.outcome.loss{color:#ff657a;border-color:rgba(255,101,122,.35)}.outcome.error{color:#f5b642;border-color:rgba(245,182,66,.35)}
.evaluation-pagination{display:flex;align-items:center;justify-content:space-between;min-height:55px;padding:10px 14px;border-top:1px solid #1b3540;color:#668490;font:600 10px/1.2 var(--mono)}.evaluation-pagination button{border:1px solid #294955;border-radius:7px;padding:8px 11px;color:#a8c0c8;background:#0a1b22;font:inherit}.evaluation-pagination button:disabled{opacity:.35}.evaluation-chart-panel{display:flex;min-height:560px;flex-direction:column}.evaluation-chart-header{min-height:105px;border-bottom:1px solid #1b3540}.chart-result{margin:8px 0 0;font:700 11px/1.3 var(--mono)}#evaluationTradeChart{display:block;width:100%;min-height:360px;flex:1;background:#071218}.evaluation-chart-legend{display:flex;flex-wrap:wrap;gap:13px;padding:13px 18px;border-top:1px solid #1b3540;color:#668590;font:600 9px/1.2 var(--mono)}.evaluation-chart-legend span{display:inline-flex;align-items:center;gap:6px}.evaluation-chart-legend i{display:inline-block;width:16px;height:2px;background:#9edcf8}.evaluation-chart-legend .legend-entry{width:7px;height:7px;border-radius:50%;background:#35d7ff}.evaluation-chart-legend .legend-exit{width:7px;height:7px;border-radius:50%;background:#ff657a}.evaluation-chart-legend .legend-sma10{background:#f5b642}.evaluation-chart-legend .legend-sma50{background:#c77dff}.evaluation-chart-legend .legend-vwap{background:#43d5c5}.evaluation-workflow .positive{color:#31dfb1!important}.evaluation-workflow .negative{color:#ff657a!important}
@media(max-width:1450px){.evaluation-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.comparison-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.evaluation-review-grid{grid-template-columns:1fr}}@media(max-width:900px){.evaluation-workflow{padding:16px}.evaluation-heading,.evaluation-actions,.evaluation-table-toolbar{align-items:stretch;flex-direction:column}.evaluation-generation-picker{width:100%}.evaluation-steps{grid-template-columns:1fr 1fr}.evaluation-summary{grid-template-columns:1fr 1fr}.comparison-metrics{grid-template-columns:1fr 1fr}.evaluation-filters{flex-direction:column}.evaluation-status{margin-left:0}}@media(max-width:560px){.evaluation-steps,.evaluation-summary,.comparison-metrics{grid-template-columns:1fr}}

/* Operations schedule */
.schedule-heading{margin-bottom:18px}.schedule-legend{display:flex;align-items:center;gap:15px;padding:11px 14px;border:1px solid var(--line);background:#071216}.schedule-legend span{display:flex;align-items:center;gap:7px;color:var(--muted);font:8px var(--mono);letter-spacing:.08em}.schedule-legend i{display:grid;place-items:center;width:8px;height:8px;border-radius:50%;background:#536a73;font-style:normal}.schedule-legend i.running{background:#ff9f43;box-shadow:0 0 12px rgba(255,159,67,.7)}.schedule-legend i.complete{background:var(--mint)}.schedule-legend i.error{width:16px;height:16px;color:#071014;background:var(--coral);font-weight:900}
.schedule-layout{display:grid;grid-template-columns:minmax(650px,1.25fr) minmax(390px,.75fr);gap:16px;align-items:start}.schedule-calendar-panel,.schedule-day-panel{border:1px solid #1d3a44;background:rgba(6,17,22,.96)}.schedule-calendar-header{display:grid;grid-template-columns:46px 1fr 46px;gap:18px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line);text-align:center}.schedule-calendar-header h3{margin:3px 0 0;font-size:20px}.calendar-nav-button{height:40px;border:1px solid #284853;background:#0a1a20;color:var(--cyan);font-size:19px;cursor:pointer}.calendar-nav-button:hover{border-color:var(--cyan);background:#102a32}.schedule-weekdays,.schedule-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-weekdays{padding:0 10px;border-bottom:1px solid var(--line)}.schedule-weekdays span{padding:11px 5px;color:#587783;text-align:center;font:8px var(--mono);letter-spacing:.12em}.schedule-calendar{gap:5px;padding:10px}.schedule-calendar-blank{min-height:112px;border:1px dashed rgba(42,68,78,.25);background:#051014}
.schedule-day{position:relative;min-width:0;min-height:112px;padding:10px;border:1px solid #18343d;background:#08161b;color:var(--ink);text-align:left;cursor:pointer;overflow:hidden;transition:border-color .16s,background .16s,transform .16s}.schedule-day:hover{z-index:1;border-color:#3f7788;background:#0c2027;transform:translateY(-1px)}.schedule-day.selected{border-color:var(--cyan);box-shadow:inset 0 0 0 1px rgba(55,217,223,.35)}.schedule-day.today:before{content:'TODAY';position:absolute;right:8px;top:9px;color:var(--cyan);font:700 7px var(--mono);letter-spacing:.1em}.schedule-day.weekend{background:#071216}.schedule-day.has-running{background:linear-gradient(145deg,rgba(255,159,67,.13),#08161b 58%);border-color:rgba(255,159,67,.75)}.schedule-day.has-error{border-color:var(--coral)}.schedule-day-number{display:flex;align-items:center;gap:7px;font:600 18px var(--mono)}.schedule-day-number i{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#071014;background:var(--coral);font:900 10px var(--mono);font-style:normal}.schedule-day-number i.pulse{width:8px;height:8px;background:#ff9f43;box-shadow:0 0 0 0 rgba(255,159,67,.7);animation:schedule-pulse 1.4s infinite}.schedule-day>em{display:block;margin:5px 0 8px;color:#64818c;font:normal 7px var(--mono);letter-spacing:.07em}.schedule-day>div{display:grid;gap:3px;min-height:31px}.schedule-day small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#72919d;font:7px var(--mono)}.schedule-day small.running{color:#ffb368}.schedule-day small.error{color:var(--coral)}.schedule-day>b{display:block;margin-top:7px;color:#45636e;font:7px var(--mono);letter-spacing:.08em}.schedule-discovery{padding:12px 18px;border-top:1px solid var(--line);color:#54727e;font:8px/1.5 var(--mono)}
.schedule-day-panel{position:sticky;top:94px;max-height:calc(100vh - 116px);overflow:auto}.schedule-day-panel>header{padding:21px 22px;border-bottom:1px solid var(--line)}.schedule-day-panel>header h3{margin:4px 0 7px;font-size:20px}.schedule-day-panel>header>p:last-child{margin:0;color:#6f8f9b;font:9px/1.5 var(--mono)}.schedule-day-summary{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.schedule-day-summary>div{padding:13px 8px;border-right:1px solid var(--line);text-align:center}.schedule-day-summary>div:last-child{border-right:0}.schedule-day-summary span{display:block;color:#55727e;font:7px var(--mono);letter-spacing:.08em}.schedule-day-summary strong{display:block;margin-top:5px;font:600 16px var(--mono)}.schedule-day-summary .active strong{color:#ff9f43}.schedule-day-summary .error strong{color:var(--coral)}.schedule-event-list{display:grid;gap:8px;padding:12px}.schedule-event{display:grid;grid-template-columns:68px 1fr;border:1px solid #193640;background:#071318}.schedule-event.running{border-color:rgba(255,159,67,.68);box-shadow:inset 3px 0 #ff9f43}.schedule-event.complete{box-shadow:inset 3px 0 var(--mint)}.schedule-event.error{border-color:rgba(255,111,112,.7);box-shadow:inset 3px 0 var(--coral)}.schedule-event.waiting,.schedule-event.warning{box-shadow:inset 3px 0 #a27c47}.schedule-event-time{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-right:1px solid var(--line);color:var(--cyan)}.schedule-event-time strong{font:600 12px var(--mono)}.schedule-event-time span{color:#4d6b76;font:7px var(--mono);text-transform:uppercase}.schedule-event-body{min-width:0;padding:12px}.schedule-event-body header{display:flex;justify-content:space-between;gap:10px}.schedule-event-body h4{margin:0;font-size:12px}.schedule-event-body header small{display:block;margin-top:4px;color:#53727e;font:7px var(--mono)}.schedule-event-body header>b{color:#698791;font:8px var(--mono);white-space:nowrap}.schedule-event.running header>b{color:#ff9f43}.schedule-event.complete header>b{color:var(--mint)}.schedule-event.error header>b{color:var(--coral)}.schedule-event-body header>b i{display:inline-grid;place-items:center;width:15px;height:15px;margin-right:5px;border-radius:50%;color:#061014;background:var(--coral);font-style:normal;font-weight:900}.schedule-event-body p{margin:9px 0;color:#73919c;font:8px/1.55 var(--mono)}.schedule-progress{display:grid;grid-template-columns:1fr 66px;gap:9px;align-items:center}.schedule-progress em{height:5px;background:#142a32;overflow:hidden}.schedule-progress u{display:block;height:100%;background:#667d86;text-decoration:none;transition:width .5s}.schedule-event.running .schedule-progress u{background:linear-gradient(90deg,#e97f30,#ffb557)}.schedule-event.complete .schedule-progress u{background:var(--mint)}.schedule-event.error .schedule-progress u{background:var(--coral)}.schedule-progress strong{text-align:right;color:#72909b;font:7px var(--mono)}
@keyframes schedule-pulse{70%{box-shadow:0 0 0 7px rgba(255,159,67,0)}100%{box-shadow:0 0 0 0 rgba(255,159,67,0)}}
@media(max-width:1100px){.schedule-layout{grid-template-columns:1fr}.schedule-day-panel{position:static;max-height:none}.schedule-day{min-height:100px}}@media(max-width:720px){.schedule-heading{align-items:stretch}.schedule-legend{overflow:auto}.schedule-calendar-panel{overflow-x:auto}.schedule-calendar-header,.schedule-weekdays,.schedule-calendar{min-width:700px}.schedule-day{min-height:96px}.schedule-day-summary{grid-template-columns:repeat(2,1fr)}.schedule-event{grid-template-columns:58px 1fr}}

.schedule-day-headline{display:grid;gap:6px;padding:15px 20px;border-bottom:1px solid var(--line);border-left:4px solid #58717b;background:#08161b}.schedule-day-headline strong{color:#dcecf1;font:700 12px/1.3 var(--mono);letter-spacing:.05em}.schedule-day-headline span{color:#6f8e99;font:9px/1.55 var(--mono)}.schedule-day-headline.running{border-left-color:#ff9f43;background:linear-gradient(90deg,rgba(255,159,67,.13),#08161b)}.schedule-day-headline.running strong{color:#ffb466}.schedule-day-headline.error{border-left-color:var(--coral);background:linear-gradient(90deg,rgba(255,111,112,.12),#08161b)}.schedule-day-headline.error strong{color:var(--coral)}.schedule-day-headline.complete{border-left-color:var(--mint)}.schedule-day-headline.complete strong{color:var(--mint)}.schedule-day-headline.waiting{border-left-color:#c18b48}.schedule-day-headline.waiting strong{color:#e5ae67}.schedule-day-headline.quiet{border-left-color:#55707a}.schedule-day-headline.quiet strong{color:#8ca6af}

/* Dedicated locked-test chart popup. */
.evaluation-review-grid{grid-template-columns:minmax(0,1fr)}
body.evaluation-chart-open{overflow:hidden}
.evaluation-chart-dialog{box-sizing:border-box;width:min(1440px,calc(100vw - 32px));max-width:none;height:min(860px,calc(100vh - 32px));height:min(860px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:auto;border:1px solid #315563;border-radius:16px;background:#07141a;box-shadow:0 32px 120px rgba(0,0,0,.65)}
.evaluation-chart-dialog[open]{display:flex;flex-direction:column}
.evaluation-chart-dialog::backdrop{background:rgba(1,8,12,.78);backdrop-filter:blur(4px)}
.evaluation-chart-dialog-toolbar{display:flex;flex:none;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #203d48}
.evaluation-chart-dialog-toolbar h2{margin:0;font:600 14px/1.4 var(--mono);color:#dcebf0;overflow-wrap:anywhere}
.evaluation-chart-dialog-toolbar button{flex:none;min-height:36px}
.evaluation-chart-dialog .evaluation-chart-panel{flex:1;min-height:320px;overflow:visible;border:0;border-radius:0}
.evaluation-chart-dialog .evaluation-chart-header,.evaluation-chart-dialog .evaluation-chart-legend{flex:none}
.evaluation-chart-dialog #evaluationTradeChart{flex:1 1 0%;width:100%;height:0;min-height:180px}
.evaluation-chart-dialog .positive{color:#31dfb1!important}
.evaluation-chart-dialog .negative{color:#ff657a!important}
@media(max-width:560px){.evaluation-chart-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);border-radius:10px}.evaluation-chart-dialog-toolbar{gap:10px;padding:10px 12px}.evaluation-chart-dialog .evaluation-chart-header{padding:14px 12px}.evaluation-chart-dialog .evaluation-chart-legend{gap:10px;padding:12px}}

.evaluation-pnl-sort{display:inline-flex;align-items:center;gap:7px;width:100%;padding:4px 0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer}
.evaluation-pnl-sort:hover{color:#35d7ff}
.evaluation-pnl-sort:focus-visible{outline:1px solid #35d7ff;outline-offset:4px;border-radius:3px}
.evaluation-pnl-sort:disabled{cursor:progress;opacity:.6}

/* Readable trade review with exchange-local timestamps. */
.evaluation-chart-dialog-toolbar h2{font-size:16px}
.evaluation-chart-dialog .evaluation-chart-header{min-height:0;padding:16px 20px}
.evaluation-chart-context{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.evaluation-chart-context .eyebrow{margin:0;font-size:10px}
.evaluation-chart-timezone{padding:5px 9px;border:1px solid #294a58;border-radius:5px;color:#a4cbd9;font:600 10px/1.3 var(--mono);letter-spacing:.06em}
.evaluation-trade-summary{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:12px}
.evaluation-trade-summary>div{display:grid;gap:6px;min-width:0;padding:12px 14px;border:1px solid #213c47;border-radius:8px;background:#0a1a22}
.evaluation-trade-summary span{color:#90aeb9;font:600 10px/1.2 var(--mono);letter-spacing:.09em}
.evaluation-trade-summary strong{color:#e0f0f5;font:600 18px/1.25 var(--mono)}
.evaluation-trade-summary small{color:#a0b9c3;font:11px/1.5 var(--mono)}
.evaluation-trade-summary .trade-entry{border-top:2px solid #35d7ff}
.evaluation-trade-summary .trade-entry strong{color:#35d7ff}
.evaluation-trade-summary .trade-exit{border-top:2px solid #ff657a}
.evaluation-trade-summary .trade-exit strong{color:#ff657a}
.evaluation-chart-dialog .evaluation-chart-panel{min-height:420px}
.evaluation-chart-dialog .evaluation-chart-legend{font-size:11px;color:#9bb8c3;gap:18px}
@media(max-width:620px){.evaluation-trade-summary{grid-template-columns:1fr 1fr;gap:8px}.evaluation-trade-summary>div:last-child{grid-column:1/-1}.evaluation-trade-summary>div{padding:9px 11px}.evaluation-trade-summary strong{font-size:16px}.evaluation-chart-dialog .evaluation-chart-panel{min-height:490px}.evaluation-chart-dialog .evaluation-chart-header{padding:12px}.evaluation-chart-dialog .evaluation-chart-legend{font-size:10px;gap:12px}}

.evaluation-overlay-toggle{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border:1px solid #294a58;border-radius:6px;background:#081820;color:#9bb8c3;font:500 11px/1.3 var(--mono);cursor:pointer}
.evaluation-overlay-toggle[data-evaluation-overlay="sma10"]{--overlay-color:#f5b642}
.evaluation-overlay-toggle[data-evaluation-overlay="sma50"]{--overlay-color:#c77dff}
.evaluation-overlay-toggle[data-evaluation-overlay="vwap"]{--overlay-color:#43d5c5}
.evaluation-overlay-toggle[aria-pressed="false"] i{opacity:.35}
.evaluation-overlay-toggle[aria-pressed="true"]{border-color:var(--overlay-color);background:#102631;color:var(--overlay-color)}
.evaluation-overlay-toggle:hover{border-color:var(--overlay-color);color:#e0f0f5}
.evaluation-overlay-toggle:focus-visible{outline:2px solid var(--overlay-color);outline-offset:3px}

/* Read-only model review next to the testing popup chart. */
.evaluation-chart-dialog{width:min(1780px,calc(100vw - 32px));max-width:none}
.evaluation-decision-workspace{display:grid;grid-template-columns:370px minmax(0,1fr);flex:1;min-height:0;overflow:hidden}
.evaluation-decision-workspace .evaluation-chart-panel{min-width:0;min-height:0;height:100%;box-sizing:border-box}
.evaluation-decision-panel{min-width:0;overflow-y:auto;overscroll-behavior:contain;border-right:1px solid #294651;background:linear-gradient(180deg,#0b1d26,#07131a);padding:18px;color:#d3e6ed;font:12px/1.5 var(--mono)}
.decision-inspector-header h3{font-size:20px;margin:4px 0 8px}
.decision-inspector-header p:not(.eyebrow){font-size:11px;color:#95afbb;margin:8px 0}
.decision-minute{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;color:#ffba66}
.decision-minute strong{font-size:13px}
#evaluationDecisionSlider{display:block;width:100%;margin:12px 0;accent-color:#ffba66}
.decision-mode{display:flex;gap:6px}
.decision-mode button{flex:1;min-height:34px;background:#081820;color:#9db8c5;border:1px solid #294651;border-radius:5px;font:500 11px var(--mono);cursor:pointer}
.decision-mode button[aria-pressed="true"]{background:#382817;color:#ffca88;border-color:#bc8441}
.decision-mode button:focus-visible,#evaluationDecisionSlider:focus-visible{outline:2px solid #ffba66;outline-offset:3px}
.decision-warning{padding:10px;border-left:2px solid #c78b46;background:#231e18;color:#e6bd8a;font-size:10px;margin:14px 0 8px}
.decision-warning:empty,.decision-provenance:empty{display:none}
.decision-provenance{color:#a6bdc6;font-size:10px;margin-bottom:14px}
.decision-provenance summary{cursor:pointer;color:#bbd0da}
.decision-provenance code{word-break:break-all;font-size:9px}
.decision-phase{border:1px solid #2a4653;border-radius:6px;padding:12px;margin:14px 0;background:#0d222d}
.decision-phase>strong{color:#ffba66;font-size:12px}
.decision-phase>span{float:right;color:#8badbc;font-size:10px}
.decision-phase p{font-size:11px;margin:8px 0 0;color:#b1c5cd}
.decision-phase .decision-recorded{color:#50dfff;border-top:1px solid #294651;padding-top:8px}
#evaluationDecisionContent h4{font-size:11px;letter-spacing:.05em;color:#9ad9ef;margin:18px 0 8px}
#evaluationDecisionContent h4>span{float:right;color:#e6bd8a;font-size:9px}
.decision-controller,.decision-expert{border:1px solid #25424e;border-radius:6px;background:#081820;margin:6px 0;overflow:hidden}
.decision-controller>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;cursor:pointer;font-size:12px}
.decision-controller>summary small{display:block;color:#91aebb;font-size:9px;margin-top:3px}
.decision-controller>summary strong{color:#50dfff;font-size:17px}
.decision-controller>p,.decision-expert>p{padding:0 11px;font-size:10px;color:#a5bdc8}
.decision-controller>summary::before,.decision-expert>summary::before{content:"+";color:#7195a6}
.decision-controller[open]>summary::before,.decision-expert[open]>summary::before{content:"-"}
.decision-input{display:flex;justify-content:space-between;gap:10px;padding:6px 11px;border-top:1px solid #18333f;font-size:10px}
.decision-input span{color:#9fb7c3}
.decision-input small{display:block;font-size:9px;color:#718f9d}
.decision-input b{font-weight:500;color:#d7e9ee;white-space:nowrap}
.decision-expert>summary{display:grid;grid-template-columns:10px minmax(0,1fr) 65px 65px;align-items:center;gap:5px;padding:10px 8px;cursor:pointer;font-size:11px}
.decision-expert>summary strong{font-size:11px;text-align:right;font-weight:500;color:#d3c5aa}
.decision-expert-head{display:grid;grid-template-columns:minmax(0,1fr) 65px 65px;gap:5px;padding:0 8px;color:#7195a6;font-size:9px}
.decision-expert-head span:not(:first-child){text-align:right}
#evaluationTradeChart{cursor:crosshair}
#evaluationTradeChart:focus-visible{outline:2px solid #ffba66;outline-offset:-2px}
@media(max-width:1050px){.evaluation-decision-workspace{grid-template-columns:310px minmax(0,1fr)}.evaluation-decision-panel{padding:12px}.decision-expert>summary{grid-template-columns:8px minmax(0,1fr) 57px 57px}.decision-expert-head{grid-template-columns:minmax(0,1fr) 57px 57px}}
@media(max-width:800px){.evaluation-decision-workspace{display:flex;flex-direction:column;overflow-y:auto}.evaluation-decision-workspace .evaluation-chart-panel{order:0;flex:0 0 480px;height:480px;min-height:480px}.evaluation-decision-panel{order:1;flex:none;overflow:visible;border-right:0;border-top:1px solid #294651}.evaluation-chart-dialog{width:calc(100vw - 16px)}}

.evaluation-chart-navigation{display:flex;align-items:center;gap:10px;margin-left:auto}
.chart-navigation-status{min-width:180px;text-align:center;display:flex;flex-direction:column;gap:3px}
.chart-navigation-status strong{font:500 12px var(--mono);color:#c9e6ef}
.chart-navigation-status small{font:400 10px var(--mono);color:#91b5c5}
.evaluation-chart-navigation .control-button:disabled{opacity:.35;cursor:default}
@media(max-width:800px){.evaluation-chart-dialog-toolbar{flex-wrap:wrap}.evaluation-chart-navigation{order:3;width:100%;justify-content:space-between;margin-left:0}.chart-navigation-status{min-width:0;flex:1}}
/* Let the mobile chart grow to include every wrapped overlay control. */
@media(max-width:800px){.evaluation-decision-workspace .evaluation-chart-panel{flex:0 0 auto;height:auto;min-height:0;overflow:visible}.evaluation-decision-workspace #evaluationTradeChart{flex:0 0 260px;height:260px;min-height:260px}}
