:root {
  --bg0:#0c0c0e; --bg1:#111114; --bg2:#17171b; --bg3:#1d1d22;
  --bg4:#242429; --bg5:#2b2b31;
  --border:#2e2e3c; --border2:#3c3c4e;
  --t1:#f5f7fb; --t2:#eef2f8; --t3:#d5dbea;
  --acc:#4da6ff; --acc2:#2070cc;
  --buy:#00e676; --buy2:#00883f;
  --sell:#ff3355; --sell2:#aa1133;
  --warn:#ffaa00;
  --mono:'JetBrains Mono',monospace;
  --cond:'Barlow Condensed',sans-serif;
  --num:'IBM Plex Sans',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;overflow:hidden}
body{font-family:var(--mono);font-size:11px;background:var(--bg0);color:var(--t1);
  display:flex;flex-direction:column;height:100vh}

/* â”€â”€ TOPBAR â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#topbar{height:44px;background:var(--bg1);border-bottom:1px solid var(--border);
  display:flex;align-items:center;padding:0 14px;gap:16px;flex-shrink:0}
.logo{font-family:var(--cond);font-size:19px;font-weight:800;letter-spacing:.08em;
  color:var(--acc);text-transform:uppercase}
.logo em{color:var(--t2);font-style:normal;font-weight:300;font-size:12px}
.vsep{width:1px;height:20px;background:var(--border);flex-shrink:0}

.pblock{display:flex;align-items:baseline;gap:5px}
#live-price{font-family:var(--cond);font-size:24px;font-weight:700;letter-spacing:-.02em;
  transition:color .25s}
#live-price.up{color:var(--buy);text-shadow:0 0 12px rgba(0,230,118,.35)}
#live-price.down{color:var(--sell);text-shadow:0 0 12px rgba(255,51,85,.35)}
#price-chg{font-size:11px;color:var(--t2)}
#price-chg.up{color:var(--buy)} #price-chg.down{color:var(--sell)}
.pmeta{display:flex;gap:10px;font-size:10px;color:var(--t2)}
.pmeta span{color:#fff;font-weight:700;font-size:11px}
.pmeta .bid-val{color:#00e676;text-shadow:0 0 8px rgba(0,230,118,.5)}
.pmeta .ask-val{color:#ff3355;text-shadow:0 0 8px rgba(255,51,85,.5)}
.pmeta .spd-val{color:#ffaa00;text-shadow:0 0 8px rgba(255,170,0,.4)}
.stag{background:var(--bg4);border:1px solid var(--border);padding:1px 6px;
  border-radius:2px;font-size:9px;color:var(--t2)}
.stag.high{border-color:var(--warn);color:var(--warn)}

.topbar-right{display:flex;align-items:center;gap:10px}

/* Konto-Info Topbar-Mitte */
#account-info{flex:1;display:flex;justify-content:center;align-items:center;
  gap:10px;overflow:hidden}
.acc-head-label{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--t3);margin-right:2px}
.acc-badge{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.12em;
  padding:2px 8px;border-radius:3px;text-transform:uppercase}
.acc-badge.demo{background:rgba(0,230,118,.12);border:1px solid rgba(0,230,118,.4);
  color:var(--buy)}
.acc-badge.live{background:rgba(255,170,0,.12);border:1px solid rgba(255,170,0,.5);
  color:#ffaa00}
.acc-name-display{font-family:var(--cond);font-size:13px;font-weight:700;
  color:var(--t1);letter-spacing:.05em}
.acc-epic-display{font-size:10px;color:var(--t3);font-variant-numeric:tabular-nums;
  max-width:168px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-mgr-btn{font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:3px;
  cursor:pointer;background:rgba(90,122,158,.15);color:var(--t2);
  border:1px solid var(--border2);transition:all .15s}
.acc-mgr-btn:hover{background:rgba(90,122,158,.35);color:var(--t1)}
#app-rating-launch{display:flex;align-items:center;gap:8px;min-width:0;
  padding:4px 10px;border-radius:4px;cursor:pointer;border:1px solid var(--border2);
  background:rgba(77,166,255,.08);color:var(--t1);transition:all .15s}
#app-rating-launch:hover{background:rgba(77,166,255,.18);border-color:var(--acc2)}
#app-rating-launch.good{border-color:rgba(0,230,118,.35)}
#app-rating-launch.good:hover{background:rgba(0,230,118,.12)}
#app-rating-launch.mid{border-color:rgba(255,170,0,.35)}
#app-rating-launch.mid:hover{background:rgba(255,170,0,.12)}
#app-rating-launch.bad{border-color:rgba(255,51,85,.35)}
#app-rating-launch.bad:hover{background:rgba(255,51,85,.12)}
.app-rating-launch-label{font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:var(--t2);white-space:nowrap}
.app-rating-launch-value{font-family:var(--cond);font-size:12px;font-weight:800;
  letter-spacing:.02em;color:var(--t1);white-space:nowrap}

/* Konto-Modal */
#acc-modal{display:none;position:fixed;inset:0;z-index:10000;
  background:rgba(0,0,0,.65);align-items:center;justify-content:center}
#acc-modal.open{display:flex}
.acc-modal-box{background:var(--bg2);border:1px solid var(--border2);
  border-radius:0;width:100vw;max-width:100vw;height:100vh;max-height:100vh;
  display:flex;flex-direction:column;overflow:hidden}
/* Formular + Strategie-Info nebeneinander */
.acc-form-layout{display:flex;gap:0;align-items:flex-start;border-top:1px solid var(--border);padding-top:14px;margin-top:6px}
.acc-form-layout .acc-form{flex:1;min-width:0;border-top:none;padding-top:0;margin-top:0;padding-right:22px}
/* Strategie-Info Panel */
.acc-strat-info{width:390px;flex-shrink:0;border-left:2px solid var(--border2);
  padding:4px 0 12px 22px;align-self:stretch;overflow-y:auto;max-height:72vh}
.acc-strat-info-title{font-family:var(--cond);font-size:13px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--acc);
  margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--border2)}
.acc-strat-info-section{margin-bottom:16px}
.acc-strat-info-section-hdr{font-size:8px;font-weight:700;letter-spacing:.13em;
  text-transform:uppercase;color:var(--acc2);margin-bottom:7px;
  padding:3px 6px;background:rgba(100,160,255,.07);border-radius:3px;
  border-left:2px solid var(--acc2)}
.acc-strat-info-text{font-size:9.5px;color:var(--t2);line-height:1.65;
  padding:2px 0}
.acc-strat-info-tag{display:inline-block;font-size:8px;font-weight:700;
  letter-spacing:.06em;padding:2px 7px;border-radius:3px;margin:2px 2px 2px 0;
  background:var(--bg3);border:1px solid var(--border2);color:var(--t2)}
.acc-strat-info-tag.ok{background:rgba(0,200,100,.08);border-color:rgba(0,200,100,.3);color:var(--buy)}
.acc-strat-info-tag.nok{background:rgba(255,51,85,.08);border-color:rgba(255,51,85,.3);color:var(--sell)}
.acc-strat-info-tag.neu{background:var(--acc-dim);border-color:var(--acc2);color:var(--acc)}
.acc-strat-info-row{display:flex;align-items:baseline;gap:8px;padding:4px 0;
  border-bottom:1px solid rgba(255,255,255,.05)}
.acc-strat-info-row-lbl{color:var(--acc);min-width:105px;flex-shrink:0;
  font-size:8.5px;font-weight:700;letter-spacing:.04em}
.acc-strat-info-row-val{color:var(--t2);font-size:9px;line-height:1.4}
.flip-mode-seg{display:flex;gap:0;margin-top:6px;border-radius:4px;overflow:hidden;border:1px solid var(--border2)}
.flip-mode-seg button{flex:1;background:var(--bg3);border:none;border-right:1px solid var(--border2);
  color:var(--t3);font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:5px 4px;cursor:pointer;transition:background .15s,color .15s}
.flip-mode-seg button:last-child{border-right:none}
.flip-mode-seg button:hover{background:var(--bg4);color:var(--t1)}
.flip-mode-seg button.active{background:var(--acc-dim);color:var(--acc);border-color:var(--acc2)}
.flip-mode-desc{font-size:8.5px;color:var(--t3);margin-top:5px;line-height:1.4;font-style:italic}
.acc-modal-head{padding:14px 18px;border-bottom:1px solid var(--border);
  display:flex;justify-content:space-between;align-items:center}
.acc-modal-head h2{font-family:var(--cond);font-size:14px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--t1);margin:0}
.acc-modal-close{background:none;border:none;color:var(--t3);font-size:18px;
  cursor:pointer;padding:0 4px;line-height:1}
.acc-modal-close:hover{color:var(--t1)}
.acc-modal-body{padding:16px 18px;overflow-y:auto;flex:1}
/* Konto-Liste */
.acc-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.acc-item{background:var(--bg3);border:1px solid var(--border);border-radius:4px;
  padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;
  transition:border-color .15s}
.acc-item:hover,.acc-item.active{border-color:var(--acc2)}
.acc-item.active{background:rgba(77,166,255,.05)}
.acc-item-radio{accent-color:var(--acc);width:14px;height:14px;cursor:pointer}
.acc-item-info{flex:1}
.acc-item-name{font-family:var(--cond);font-size:12px;font-weight:700;
  color:var(--t1);letter-spacing:.05em}
.acc-item-sub{font-size:10px;color:var(--t3);margin-top:2px}
.acc-item-btns{display:flex;gap:6px}
.acc-btn-edit,.acc-btn-del{font-size:10px;padding:2px 8px;border-radius:2px;
  cursor:pointer;font-weight:700;border:1px solid var(--border2);font-family:var(--cond);
  letter-spacing:.06em;text-transform:uppercase;transition:all .12s}
.acc-btn-edit{background:rgba(77,166,255,.08);color:var(--acc)}
.acc-btn-edit:hover{background:rgba(77,166,255,.2)}
.acc-btn-del{background:rgba(255,51,85,.08);color:var(--sell)}
.acc-btn-del:hover{background:rgba(255,51,85,.2)}
/* Formular */
.acc-form{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--border);
  padding-top:14px;margin-top:6px}
.acc-form-title{font-family:var(--cond);font-size:11px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin-bottom:2px}
.acc-field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.acc-field{display:flex;flex-direction:column;gap:4px}
.acc-field label{font-size:9px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--t3)}
.acc-field input,.acc-field select{background:var(--bg4);border:1px solid var(--border2);
  color:var(--t1);padding:5px 8px;border-radius:3px;font-size:12px;
  font-family:var(--cond);transition:border-color .15s}
.acc-field input:focus,.acc-field select:focus{outline:none;border-color:var(--acc2)}
.acc-pw-wrap{position:relative;display:flex}
.acc-pw-wrap input{flex:1;padding-right:30px}
.acc-pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);
  background:none;border:none;color:var(--t3);cursor:pointer;font-size:13px;
  padding:0;line-height:1}
.acc-pw-eye:hover{color:var(--t1)}
.acc-form-actions{display:flex;gap:8px;justify-content:flex-end;
  border-top:1px solid var(--border);padding-top:12px;margin-top:4px}
.acc-save-btn{font-family:var(--cond);font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:5px 16px;border-radius:3px;
  cursor:pointer;background:var(--buy2);color:#fff;border:1px solid var(--buy);
  transition:all .15s}
.acc-save-btn:hover{background:var(--buy)}
.acc-cancel-btn{font-family:var(--cond);font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:3px;
  cursor:pointer;background:var(--bg4);color:var(--t2);border:1px solid var(--border2)}
.acc-cancel-btn:hover{color:var(--t1)}
.acc-add-btn{font-family:var(--cond);font-size:11px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:5px 14px;border-radius:3px;
  cursor:pointer;background:rgba(77,166,255,.08);color:var(--acc);
  border:1px solid var(--acc2);transition:all .15s;width:100%}
.acc-add-btn:hover{background:rgba(77,166,255,.2)}
.acc-restart-note{font-size:10px;color:var(--warn);text-align:center;
  padding:8px;background:rgba(255,170,0,.08);border:1px solid rgba(255,170,0,.2);
  border-radius:3px;margin-top:8px}
.acc-section-title{font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin-bottom:6px}
.acc-inst-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.acc-inst-list{display:flex;flex-wrap:wrap;gap:8px}
.acc-inst-chip{background:var(--bg4);border:1px solid var(--border2);color:var(--t2);
  border-radius:16px;padding:5px 10px;cursor:pointer;font-family:var(--cond);
  font-size:10px;font-weight:700;letter-spacing:.05em;transition:all .12s}
.acc-inst-chip:hover{border-color:var(--acc2);color:var(--t1)}
.acc-inst-chip.selected{border-color:var(--acc);color:var(--t1);background:rgba(77,166,255,.12)}
.acc-inst-chip.active{box-shadow:0 0 0 1px rgba(0,230,118,.25) inset}
.acc-inst-chip .mini{font-size:8px;color:var(--t3);font-weight:400;margin-left:4px}
.acc-inst-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
.acc-mini-btn{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:5px 10px;border-radius:3px;cursor:pointer;
  border:1px solid var(--border2);background:var(--bg4);color:var(--t2)}
.acc-mini-btn:hover{color:var(--t1);border-color:var(--acc2)}
.acc-mini-btn.primary{background:rgba(77,166,255,.08);border-color:var(--acc2);color:var(--acc)}
.acc-mini-btn.warn{background:rgba(255,170,0,.08);border-color:rgba(255,170,0,.35);color:var(--warn)}
.acc-mini-btn.danger{background:rgba(255,51,85,.08);border-color:rgba(255,51,85,.35);color:var(--sell)}
.acc-inst-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.acc-inst-card{background:var(--bg3);border:1px solid var(--border);border-radius:4px;padding:10px 12px}
.acc-inst-card-hdr{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.acc-inst-card-title{font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--t1)}
.acc-inst-card-meta{font-size:9px;color:var(--t3);margin-left:auto}
.acc-inst-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.acc-inst-stat{background:var(--bg4);border:1px solid var(--border2);border-radius:4px;padding:6px 7px}
.acc-inst-stat-lbl{font-size:8px;color:var(--t3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px}
.acc-inst-stat-val{font-size:11px;color:var(--t1);font-family:var(--cond);font-weight:700}
.acc-inst-note{font-size:10px;color:var(--t2);line-height:1.45}
.acc-inst-note.warn{color:var(--warn)}
.acc-inst-note.err{color:var(--sell)}
.acc-inst-band-list{margin-top:8px;display:flex;flex-direction:column;gap:4px}
.acc-inst-band{font-size:9px;color:var(--t3);padding:4px 6px;background:var(--bg4);border:1px solid var(--border2);border-radius:3px}
.acc-form-sep{height:1px;background:var(--border);margin:2px 0}
/* Strategie-Auswahl im Konto-Modal */
.strat-section{margin-bottom:14px}
.strat-section-title{font-family:var(--cond);font-size:9px;font-weight:700;
  letter-spacing:.1em;color:var(--t3);text-transform:uppercase;margin-bottom:8px}
.strat-list{display:flex;flex-direction:column;gap:6px}
.strat-card{background:var(--bg3);border:1px solid var(--border);border-radius:4px;
  padding:10px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;
  transition:border-color .15s}
.strat-card:hover{border-color:var(--border2)}
.strat-card.active{border-color:var(--acc);background:rgba(100,160,255,.06)}
.strat-radio{accent-color:var(--acc);width:14px;height:14px;flex-shrink:0;cursor:pointer}
.strat-info{flex:1;min-width:0}
.strat-name{font-size:11px;font-weight:700;color:var(--t1);font-family:var(--cond);letter-spacing:.04em}
.strat-desc{font-size:8.5px;color:var(--t3);margin-top:2px;line-height:1.4}
.strat-active-badge{font-size:7.5px;font-weight:700;letter-spacing:.08em;padding:2px 7px;
  border-radius:3px;background:var(--acc-dim);color:var(--acc);flex-shrink:0}
.acc-modal-strat-sep{border:none;border-top:1px solid var(--border);margin:14px 0}
/* Strategie-Anzeige in Topbar */
.strat-topbar{font-size:8.5px;font-weight:700;letter-spacing:.07em;color:var(--acc);
  text-transform:uppercase;font-family:var(--cond);opacity:.85;white-space:nowrap}
.spill{display:flex;align-items:center;gap:5px;background:var(--bg3);
  border:1px solid var(--border);border-radius:20px;padding:3px 12px 3px 7px;
  font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.sdot{width:6px;height:6px;border-radius:50%;background:var(--t3)}
.spill.running .sdot{background:var(--buy);box-shadow:0 0 7px var(--buy);animation:blink 1.8s infinite}
.spill.running{border-color:rgba(0,230,118,.25);color:var(--buy)}
.spill.stopped{border-color:rgba(255,51,85,.25);color:var(--sell)}
.spill.stopped .sdot{background:var(--sell)}
.spill.idle{color:var(--t2)}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}

/* ── SYSTEMSTATUS-LEISTE ────────────────────────────────────────────── */
#sysbar{min-height:30px;background:linear-gradient(180deg,var(--bg2),rgba(12,17,25,.98));
  border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 14px;
  gap:0;flex-shrink:0;overflow-x:auto;overflow-y:hidden}
.sbar-item{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 12px 0 0;
  font-family:var(--cond);font-size:8.5px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--t3);white-space:nowrap;cursor:default;flex-shrink:0;
  background:none;border:none}
.sbar-item + .sbar-item{margin-left:12px;padding-left:12px;border-left:1px solid rgba(90,122,158,.18)}
.sbar-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;opacity:.82}
.sbar-item.ok{color:var(--buy)}.sbar-item.warn{color:#ffaa00}.sbar-item.err{color:var(--sell)}
.sbar-item.neu{color:var(--t3)}
.sbar-clickable{cursor:pointer;transition:background .15s}
.sbar-clickable:hover{background:rgba(90,122,158,.12)}
#sysbar::-webkit-scrollbar{height:2px}
#sysbar::-webkit-scrollbar-thumb{background:rgba(90,122,158,.28);border-radius:2px}

/* ── Health overview (modal + mobile panel) ────────────────────── */
.health-modal{max-width:560px;width:calc(100vw - 32px)}
.health-head{display:flex;align-items:center;gap:10px}
.health-head h3{display:flex;align-items:center;gap:8px;margin:0;flex:1;font-size:14px;letter-spacing:.3px}
.health-body{padding:0 !important}
.health-meta-inline{font-size:11px;color:var(--t3);white-space:nowrap}

/* Pill in header — kompakte Status-Anzeige statt großes Banner */
.health-pill{
  display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;
  padding:2px 8px;border-radius:10px;
  background:rgba(90,122,158,.15);color:var(--t3);
  border:1px solid rgba(90,122,158,.25);
}
.health-pill::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--t3)}
.health-pill.green {color:var(--buy);background:rgba(0,200,120,.12);border-color:rgba(0,200,120,.3)}
.health-pill.green::before {background:var(--buy)}
.health-pill.yellow{color:#ffaa00;background:rgba(255,170,0,.12);border-color:rgba(255,170,0,.3)}
.health-pill.yellow::before{background:#ffaa00}
.health-pill.red   {color:var(--sell);background:rgba(255,80,80,.12);border-color:rgba(255,80,80,.3)}
.health-pill.red::before   {background:var(--sell)}

/* Tabellen-Layout — dichter, professioneller */
.health-table{width:100%;border-collapse:collapse;font-size:13px}
.health-table tr{border-bottom:1px solid rgba(90,122,158,.12)}
.health-table tr:last-child{border-bottom:none}
.health-table td{padding:10px 16px;vertical-align:middle}
.health-table td.health-cell-dot{width:18px;padding-right:0}
.health-table td.health-cell-label{font-weight:500;color:var(--t1);width:40%}
.health-table td.health-cell-detail{color:var(--t2);text-align:right}
.health-dot{
  display:inline-block;width:8px;height:8px;border-radius:50%;
  background:var(--t3);box-shadow:0 0 0 2px rgba(90,122,158,.1);
}
.health-row.green  .health-dot{background:var(--buy); box-shadow:0 0 0 2px rgba(0,200,120,.15)}
.health-row.yellow .health-dot{background:#ffaa00;  box-shadow:0 0 0 2px rgba(255,170,0,.15)}
.health-row.red    .health-dot{background:var(--sell);box-shadow:0 0 0 2px rgba(255,80,80,.15)}

/* Mobile: gleiche Tabelle, weniger Padding */
#mob-status-panel .health-table td{padding:12px 14px;font-size:13px}

/* ── SYSTEM-MATRIX ─────────────────────────────────────────────────── */
#system-matrix-strip{
  padding:8px 12px 10px;
  background:linear-gradient(180deg,rgba(20,27,39,.98),rgba(12,17,25,.98));
  border-bottom:1px solid var(--border);
  display:flex;flex-direction:column;gap:6px;
}
#system-matrix-head{display:flex;align-items:center;gap:12px;padding-bottom:2px}
.sm-title-row{display:flex;align-items:center;gap:10px}
.sm-title{
  font-family:var(--cond);font-size:11px;font-weight:800;
  letter-spacing:.14em;color:var(--t1);text-transform:uppercase;
}
.sm-regime-strip{
  display:flex;align-items:center;justify-content:center;gap:6px;
  flex:0 1 360px;min-width:240px;
}
.sm-regime-chip{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  min-width:112px;max-width:170px;height:22px;padding:0 9px;
  border:1px solid rgba(255,255,255,.08);border-radius:4px;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,0,0,.10));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.sm-regime-chip span{
  font-family:var(--cond);font-size:8px;font-weight:800;
  letter-spacing:.11em;text-transform:uppercase;color:rgba(205,216,232,.82);
  white-space:nowrap;
}
.sm-regime-chip b{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-family:var(--cond);font-size:9px;font-weight:800;
  letter-spacing:.07em;text-transform:uppercase;color:var(--t2);
}
.sm-regime-chip::before{
  content:"";width:5px;height:5px;border-radius:999px;
  background:var(--acc);opacity:.72;
  flex:0 0 auto;
}
.sm-regime-chip.state-bullish{border-color:rgba(58,196,138,.30);background:linear-gradient(180deg,rgba(58,196,138,.18),rgba(58,196,138,.07))}
.sm-regime-chip.state-bullish::before{background:#93d9ba}
.sm-regime-chip.state-bearish{border-color:rgba(228,93,109,.32);background:linear-gradient(180deg,rgba(228,93,109,.18),rgba(228,93,109,.07))}
.sm-regime-chip.state-bearish::before{background:#e7a3ad}
.sm-regime-chip.state-warning{border-color:rgba(210,165,75,.30);background:linear-gradient(180deg,rgba(210,165,75,.18),rgba(210,165,75,.07))}
.sm-regime-chip.state-warning::before{background:#cdb783}
.sm-regime-chip.state-neutral{border-color:rgba(168,155,111,.26);background:linear-gradient(180deg,rgba(168,155,111,.14),rgba(168,155,111,.05))}
.sm-regime-chip.state-neutral::before{background:#b7ac82}
.sm-regime-chip.muted{border-color:rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.08))}
.sm-regime-chip.muted b{color:rgba(200,210,225,.50)}
.sm-regime-chip.muted::before{background:#607086;box-shadow:none}
.sm-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.sm-btn{
  font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.10em;
  padding:3px 10px;border-radius:4px;cursor:pointer;
  transition:background .15s ease,border-color .15s ease,color .15s ease;
}
.sm-btn-primary{
  color:var(--t1);border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
}
.sm-btn-primary:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.22)}
.sm-btn-ghost{
  min-width:22px;padding:3px 0;text-align:center;
  color:var(--t3);background:transparent;
  border:1px solid rgba(255,255,255,.10);
}
.sm-btn-ghost:hover{background:rgba(255,255,255,.07);color:var(--t1);border-color:rgba(255,255,255,.20)}
.sm-actionability{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  min-width:78px;padding:2px 10px;border-radius:999px;
  border:1px solid var(--border2);
  font-family:var(--cond);font-size:9px;font-weight:800;
  letter-spacing:.12em;text-transform:uppercase;
}
.sm-actionability::before{
  content:"";width:5px;height:5px;border-radius:999px;
  background:currentColor;box-shadow:0 0 6px currentColor;
}
.sm-actionability.tradable{color:#3ac48a;border-color:rgba(58,196,138,.38);background:rgba(58,196,138,.08)}
.sm-actionability.watch{color:var(--warn);border-color:rgba(255,170,0,.38);background:rgba(255,170,0,.08)}
.sm-actionability.blocked{color:var(--sell);border-color:rgba(255,51,85,.38);background:rgba(255,51,85,.08)}
.sm-actionability.info{color:var(--acc);border-color:rgba(77,166,255,.30);background:rgba(77,166,255,.07)}
.sm-matrix-offline .sm-mini-cell{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.12)) !important;
  border-color:rgba(255,255,255,.075) !important;
  color:rgba(185,197,214,.38) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
  cursor:not-allowed;
  transform:none;
}
.sm-matrix-offline .sm-mini-cell::before{
  background:#6d7888;
  opacity:.55;
}
.sm-matrix-offline .sm-mini-cell:hover{
  transform:none;
  border-color:rgba(255,255,255,.075) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.sm-matrix-offline .sm-cell-hilite{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.sm-matrix-offline .sm-regime-chip{
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.10)) !important;
  border-color:rgba(255,255,255,.075) !important;
}
.sm-matrix-offline .sm-regime-chip b,
.sm-matrix-offline .sm-regime-chip span{
  color:rgba(185,197,214,.45) !important;
}
.sm-matrix-offline .sm-regime-chip::before{
  background:#6d7888 !important;
  box-shadow:none !important;
  opacity:.55;
}
@media (max-width:900px){
  #system-matrix-head{flex-wrap:wrap}
  .sm-regime-strip{order:3;flex-basis:100%;justify-content:flex-start;min-width:0}
  .sm-regime-chip{min-width:0;flex:1}
}
#system-matrix-compact{overflow-x:auto;padding:2px 0 1px}
.sm-mini-grid{width:100%;border-collapse:separate;border-spacing:6px 4px;table-layout:fixed}
/* Column + row headers: identical typography, no divider lines — they read
   as floating data labels. Grid structure comes from the cells themselves.   */
.sm-mini-grid thead th,
.sm-mini-grid .sm-mini-rowhdr{
  font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:.16em;color:var(--t2);text-transform:uppercase;
  background:transparent;
}
.sm-mini-grid thead th{text-align:center;padding:0 2px 6px}
.sm-mini-grid .sm-mini-rowhdr{
  width:88px;text-align:right;padding:0 12px 0 4px;white-space:nowrap;
  vertical-align:middle;
}
/* Regime (Trend/Struktur/Vola) vs Signal (Long/Short) — separated by extra
   vertical breathing room rather than a hard line. Modern dashboards do this
   with spacing, not rules. */
.sm-mini-grid tbody tr:nth-child(4) td,
.sm-mini-grid tbody tr:nth-child(4) th{padding-top:10px}
.sm-mini-grid td{padding:0;position:relative}

.sm-mini-cell{
  width:100%;min-width:44px;height:22px;
  display:inline-flex;align-items:center;justify-content:center;gap:4px;
  border-radius:4px;
  border:1px solid rgba(255,255,255,.07);
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(0,0,0,.10));
  color:var(--t2);
  font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.08em;
  cursor:pointer;line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  transition:border-color .15s ease,transform .15s ease,background .15s ease,box-shadow .15s ease;
}
.sm-mini-cell::before{
  /* Status dot — subtle colored marker before the label */
  content:"";width:4px;height:4px;border-radius:999px;
  background:currentColor;opacity:.72;flex:0 0 auto;
}
.sm-mini-cell:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 2px 8px rgba(0,0,0,.25);
}
.sm-mini-cell.sm-cell-flash,
.sm-cell.sm-cell-flash{
  animation:sm-border-flash 5s ease-out 1;
}
@keyframes sm-border-flash{
  0%,100%{
    box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  }
  14%,42%,70%{
    border-color:rgba(255,255,255,.92);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.18),
      0 0 0 1px rgba(255,255,255,.38),
      0 0 14px rgba(77,166,255,.42);
  }
  28%,56%{
    border-color:rgba(77,166,255,.28);
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.05),
      0 0 0 1px rgba(77,166,255,.18),
      0 0 7px rgba(77,166,255,.20);
  }
}
@media (prefers-reduced-motion: reduce){
  .sm-mini-cell.sm-cell-flash,
  .sm-cell.sm-cell-flash{
    animation:none;
    border-color:rgba(255,255,255,.70);
    box-shadow:0 0 0 1px rgba(255,255,255,.30);
  }
}

/* State styling — tuned for clear differentiation, balanced contrast */
.sm-mini-cell.state-bullish{
  background:linear-gradient(180deg,rgba(58,196,138,.26),rgba(58,196,138,.12));
  border-color:rgba(58,196,138,.38);color:#b8f3d4;
}
.sm-mini-cell.state-bullish:hover{border-color:rgba(58,196,138,.70);color:#d8fde7}
.sm-mini-cell.state-bearish{
  background:linear-gradient(180deg,rgba(228,93,109,.26),rgba(228,93,109,.12));
  border-color:rgba(228,93,109,.38);color:#f7c7cf;
}
.sm-mini-cell.state-bearish:hover{border-color:rgba(228,93,109,.70);color:#fde2e6}
.sm-mini-cell.state-neutral{
  background:linear-gradient(180deg,rgba(168,155,111,.18),rgba(168,155,111,.06));
  border-color:rgba(168,155,111,.30);color:#d8cda2;
}
.sm-mini-cell.state-neutral:hover{border-color:rgba(168,155,111,.55);color:#ece0b8}
.sm-mini-cell.state-mixed{
  background:linear-gradient(180deg,rgba(210,165,75,.20),rgba(210,165,75,.08));
  border-color:rgba(210,165,75,.32);color:#ead29a;
}
.sm-mini-cell.state-warning{
  background:linear-gradient(180deg,rgba(230,165,60,.22),rgba(230,165,60,.08));
  border-color:rgba(230,165,60,.34);color:#ecc788;
}
.sm-mini-cell.state-blocked{
  background:linear-gradient(180deg,rgba(228,93,109,.36),rgba(228,93,109,.16));
  border-color:rgba(228,93,109,.55);color:#ffe5ea;font-weight:800;
}
.sm-mini-cell.state-info{
  background:linear-gradient(180deg,rgba(92,140,214,.22),rgba(92,140,214,.10));
  border-color:rgba(92,140,214,.34);color:#c9daf2;
}
.sm-mini-cell.state-info:hover{border-color:rgba(92,140,214,.65);color:#e3ecfa}
/* N/A — dashed, subdued; reads as "no data" rather than as an active state */
.sm-mini-cell.state-nodata{
  background:transparent;
  border:1px dashed rgba(255,255,255,.08);
  color:rgba(200,210,225,.35);
  box-shadow:none;font-weight:600;letter-spacing:.10em;
}
.sm-mini-cell.state-nodata::before{display:none}
.sm-mini-cell.state-nodata:hover{
  border-color:rgba(255,255,255,.16);transform:none;box-shadow:none;
  color:rgba(200,210,225,.55);
}
.sm-grid{width:100%;border-collapse:separate;border-spacing:0 6px}
.sm-grid thead th{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--t3);text-transform:uppercase;padding:0 6px 4px;text-align:center}
.sm-grid .sm-rowhdr{width:160px;text-align:left;padding:0 8px 0 0;vertical-align:middle}
.sm-row-title{font-size:10px;font-weight:700;color:var(--t1)}
.sm-row-sub{font-size:8px;color:var(--t3);margin-top:2px}
.sm-grid td{padding:0 4px}
.sm-cell{min-width:92px;background:var(--bg2);border:1px solid var(--border2);border-radius:6px;padding:7px 8px;cursor:pointer;transition:border-color .15s ease, background .15s ease, transform .15s ease}
.sm-cell:hover{border-color:rgba(255,255,255,.22);transform:translateY(-1px)}
.sm-cell-top{display:flex;align-items:center;gap:6px}
.sm-state-dot{width:8px;height:8px;border-radius:999px;flex:0 0 8px}
.sm-cell-short{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t2)}
.sm-cell-label{font-size:10px;font-weight:700;color:var(--t1);margin-top:4px;line-height:1.2}
.sm-cell-meta{font-size:8px;color:var(--t3);margin-top:3px}
.sm-cell.state-bullish .sm-state-dot{background:#00e676}
.sm-cell.state-bearish .sm-state-dot{background:#ff3355}
.sm-cell.state-neutral .sm-state-dot{background:#ffb347}
.sm-cell.state-mixed .sm-state-dot{background:#ffd166}
.sm-cell.state-blocked .sm-state-dot{background:#ff3355;box-shadow:0 0 0 2px rgba(255,51,85,.15)}
.sm-cell.state-warning .sm-state-dot{background:#ffaa00}
.sm-cell.state-info .sm-state-dot{background:#4da6ff}
.sm-cell.state-nodata .sm-state-dot{background:#607086}
.sm-cell.state-blocked{background:rgba(255,51,85,.06);border-color:rgba(255,51,85,.24)}
.sm-cell.state-warning{background:rgba(255,170,0,.06);border-color:rgba(255,170,0,.24)}
.sm-cell.state-bullish{background:rgba(0,230,118,.05);border-color:rgba(0,230,118,.18)}
.sm-cell.state-bearish{background:rgba(255,51,85,.05);border-color:rgba(255,51,85,.18)}
.sm-cell-hilite{box-shadow:0 0 0 1px rgba(255,255,255,.20),0 0 14px rgba(77,166,255,.14)}
.sm-compact-empty,.sm-modal-empty{padding:14px 10px;color:var(--t3);font-size:9px}
#system-matrix-modal{width:min(96vw,1380px);max-height:92vh}
#system-matrix-modal-content{display:flex;flex-direction:column;gap:14px}
.sm-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border2);border-radius:8px;background:rgba(255,255,255,.03)}
.sm-summary-text{font-size:9px;color:var(--t2)}
.sm-section{border:1px solid var(--border2);border-radius:8px;background:rgba(255,255,255,.02);padding:10px 12px}
.sm-section-head{display:flex;align-items:baseline;gap:8px;margin-bottom:8px}
.sm-section-title{font-family:var(--cond);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t1)}
.sm-section-meta{font-size:9px;color:var(--t3)}

.prod-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;
  font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  border:1px solid var(--border2);color:var(--t3)}
.prod-badge.core{color:#8ae6c1;border-color:rgba(0,230,118,.28);background:rgba(0,230,118,.08)}
.prod-badge.power{color:var(--acc);border-color:rgba(77,166,255,.28);background:rgba(77,166,255,.08)}
.prod-badge.lab{color:#ffd37a;border-color:rgba(255,170,0,.28);background:rgba(255,170,0,.08)}

#btn-start,#btn-stop{font-family:var(--cond);font-size:12px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:3px;
  cursor:pointer;transition:all .16s;min-width:0}
#btn-start{background:var(--buy2);color:#fff;border:1px solid var(--buy)}
#btn-start:hover{background:var(--buy);box-shadow:0 0 14px rgba(0,230,118,.4)}
#btn-start:disabled{opacity:.3;cursor:not-allowed}
#btn-stop{background:rgba(255,51,85,.1);color:var(--sell);border:1px solid var(--sell2)}
#btn-stop:hover{background:var(--sell2);color:#fff}
#btn-stop:disabled{opacity:.3;cursor:not-allowed}
#btn-collector-start,#btn-collector-stop{font-family:var(--cond);font-size:11px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:3px;
  cursor:pointer;transition:all .16s;min-width:0}
#btn-collector-start{background:rgba(77,166,255,.1);color:var(--acc);border:1px solid rgba(77,166,255,.35)}
#btn-collector-start:hover{background:rgba(77,166,255,.22)}
#btn-collector-start:disabled{opacity:.3;cursor:not-allowed}
#btn-collector-stop{background:rgba(255,51,85,.1);color:var(--sell);border:1px solid var(--sell2)}
#btn-collector-stop:hover{background:var(--sell2);color:#fff}
#btn-collector-stop:disabled{opacity:.3;cursor:not-allowed}

/* ── TOOLS DROPDOWN ─────────────────────────────────────────────────── */
#btn-tools{font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:4px 10px;border-radius:3px;cursor:pointer;
  background:rgba(77,166,255,.08);color:var(--acc);border:1px solid var(--border2);
  transition:all .15s}
#btn-tools:hover,#btn-tools.open{background:rgba(77,166,255,.2);border-color:var(--acc2)}
#tools-panel{position:fixed;top:44px;right:8px;z-index:8888;
  background:var(--bg2);border:1px solid var(--border2);border-radius:6px;
  padding:0;min-width:300px;max-width:340px;box-shadow:0 12px 32px rgba(0,0,0,.7);
  display:none;flex-direction:column;
  font-family:-apple-system,'SF Pro Text','Segoe UI','Inter',system-ui,sans-serif;
}
#tools-panel.open{display:flex}

/* Steuerungspanel — Sektionen (2026-04-26 redesigned) */
.tools-section{padding:12px 14px;border-bottom:1px solid var(--border,#222)}
.tools-section:last-child{border-bottom:0}
.tools-section-hdr{
  font-size:9px;font-weight:700;letter-spacing:1px;color:var(--t3,#888);
  text-transform:uppercase;margin-bottom:8px;
}

/* Service-Status-Kompakt */
.tools-status-grid{display:flex;flex-direction:column;gap:5px}
.tools-status-row{
  display:flex;justify-content:space-between;align-items:center;
  font-size:10.5px;letter-spacing:.4px;
}
.tools-status-key{color:var(--t3,#888);text-transform:uppercase;font-weight:600;font-size:9.5px}
.tools-status-val{
  color:var(--t2,#aaa);font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-size:10.5px;
}
.tools-status-val.tools-status-on{color:#3dbb6b}
.tools-status-val.tools-status-off{color:#d9534f}

/* Module-Grid */
.tools-module-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.tools-mod-btn{
  display:flex;align-items:center;gap:8px;
  background:var(--bg3,#1a1a1a);
  border:1px solid var(--border,#2a2a2a);
  color:var(--t1,#eee);
  padding:9px 10px;border-radius:5px;cursor:pointer;
  font-size:11.5px;font-weight:600;letter-spacing:.2px;text-align:left;
  transition:all .12s;
}
.tools-mod-btn:hover{
  background:rgba(74,144,226,.12);border-color:var(--acc,#4a90e2);
}
.tools-mod-ico{font-size:14px;flex-shrink:0;line-height:1}

/* System-Aktionen */
.tools-sys-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.tools-sys-btn{
  background:var(--bg3,#1a1a1a);border:1px solid var(--border,#2a2a2a);
  color:var(--t1,#eee);padding:7px 10px;border-radius:4px;cursor:pointer;
  font-size:11px;font-weight:600;letter-spacing:.3px;
}
.tools-sys-btn:hover{background:var(--bg2,#222);border-color:var(--acc2,#5aa3f0)}
.tools-sys-btn.tools-sys-restart{
  color:#ffb6b6;border-color:#7a3a3a;
}
.tools-sys-btn.tools-sys-restart:hover{
  background:rgba(217,83,79,.15);border-color:#d9534f;color:#fff;
}
.tools-sys-hint{
  margin-top:8px;font-size:10px;color:var(--t3,#888);line-height:1.5;
  padding:6px 8px;background:rgba(255,255,255,.02);border-radius:3px;
  border-left:2px solid rgba(255,255,255,.1);
}
.tools-sep{height:1px;background:var(--border);margin:2px 0}
.tools-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tools-btn{font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:5px 12px;border-radius:3px;cursor:pointer;width:100%;
  background:rgba(77,166,255,.08);color:var(--acc);border:1px solid var(--acc2);
  transition:all .15s;text-align:left}
.tools-btn:hover{background:rgba(77,166,255,.2)}
.tools-section-label{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:var(--t3);padding-top:2px}

.clock{font-size:10px;color:var(--t3);font-variant-numeric:tabular-nums}

/* ── LOGIN-BUTTON + MODAL ───────────────────────────────────────────── */
#auth-btn{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:4px 10px;border-radius:3px;cursor:pointer;
  transition:all .15s;border:1px solid rgba(90,140,200,.4);
  background:rgba(90,140,200,.1);color:#7fb3e8;white-space:nowrap}
#auth-btn:hover{background:rgba(90,140,200,.25)}
#auth-btn.logged-in{border-color:rgba(0,200,118,.35);background:rgba(0,200,118,.08);color:#5ad3a0}
#auth-btn.logged-in:hover{background:rgba(0,200,118,.18)}
#auth-user-info{font-size:9px;color:var(--t3);font-family:var(--cond);
  letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;margin-right:4px}
.auth-sep{width:1px;height:16px;background:var(--border);margin:0 8px;flex-shrink:0}

/* Login-Modal */
#login-modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.65);
  align-items:center;justify-content:center;z-index:9999}
#login-modal-bg.open{display:flex}
#login-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:8px;
  padding:1.6rem 2rem;min-width:300px;max-width:360px;width:90%}
#login-modal h3{color:#7fb3e8;font-size:.95rem;margin-bottom:1.3rem;
  font-family:var(--cond);letter-spacing:.06em}
#login-modal label{display:block;margin-bottom:.25rem;font-size:.78rem;color:var(--t3);
  font-family:var(--cond);letter-spacing:.05em;text-transform:uppercase}
#login-modal input{width:100%;background:var(--bg0);border:1px solid var(--border);
  border-radius:4px;color:var(--t1);padding:.45rem .7rem;font-size:.88rem;
  margin-bottom:.9rem;font-family:monospace}
#login-modal input:focus{outline:1px solid #3a5fa0}
#login-modal .modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.4rem}
#login-modal .err{color:var(--sell);font-size:.8rem;margin-bottom:.7rem;
  padding:.35rem .6rem;background:rgba(255,51,85,.08);border-radius:4px}
#btn-login-submit{background:#3a5fa0;color:#fff;border:none;border-radius:4px;
  padding:.45rem 1.3rem;cursor:pointer;font-size:.85rem;font-family:var(--cond);
  letter-spacing:.06em;text-transform:uppercase}
#btn-login-submit:hover{background:#4a70b8}
#btn-login-cancel{background:var(--bg2);color:var(--t3);border:1px solid var(--border);
  border-radius:4px;padding:.45rem 1rem;cursor:pointer;font-size:.85rem;font-family:var(--cond)}

/* History-Modal */
#hist-modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);
  align-items:flex-start;justify-content:center;z-index:9000;padding:32px 16px;overflow-y:auto}
#hist-modal-bg.open{display:flex}
#hist-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:8px;
  width:100%;max-width:780px;display:flex;flex-direction:column;gap:0;overflow:hidden}
#hist-modal-hdr{display:flex;align-items:center;padding:10px 14px;background:var(--bg2);
  border-bottom:1px solid var(--border);gap:10px}
#hist-modal-hdr .hm-title{font-family:var(--cond);font-size:12px;font-weight:800;
  letter-spacing:.1em;text-transform:uppercase;color:var(--acc);flex:1}
#hist-modal-controls{display:flex;align-items:center;gap:8px;padding:8px 14px;
  background:var(--bg2);border-bottom:1px solid var(--border);flex-wrap:wrap}
#hist-modal-controls input[type=date]{background:var(--bg0);border:1px solid var(--border);
  border-radius:3px;color:var(--t1);padding:2px 6px;font-size:9px;font-family:monospace}
#hist-modal-controls .hc-lbl{font-family:var(--cond);font-size:8px;font-weight:700;
  letter-spacing:.08em;color:var(--t3)}
#hist-modal-body{overflow-y:auto;max-height:380px}
#hist-modal-body table{width:100%}
#hist-modal-perf{padding:10px 14px;border-top:1px solid var(--border)}

/* Shadow-Modus Toggle */
.train-wrap{display:flex;align-items:center;gap:6px;user-select:none}
.train-lbl{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--t2);
  font-family:var(--cond);text-transform:uppercase}
.train-lbl.active{color:#ffaa00}
.toggle-sw{position:relative;width:34px;height:18px;cursor:pointer}
.toggle-sw input{opacity:0;width:0;height:0;position:absolute}
.toggle-track{position:absolute;inset:0;background:var(--bg4);border:1px solid var(--border2);
  border-radius:9px;transition:background .2s,border-color .2s}
.toggle-sw input:checked ~ .toggle-track{background:rgba(255,170,0,.2);border-color:#ffaa00}
.toggle-knob{position:absolute;top:2px;left:2px;width:12px;height:12px;
  background:var(--t3);border-radius:50%;transition:transform .2s,background .2s}
.toggle-sw input:checked ~ .toggle-knob{transform:translateX(16px);background:#ffaa00}
/* Emergency-Stop Toggle (rot) */
.emg-wrap{display:flex;align-items:center;gap:6px;user-select:none}
.emg-lbl{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--t3);
  font-family:var(--cond);text-transform:uppercase}
.emg-lbl.active{color:var(--sell);text-shadow:0 0 8px rgba(255,51,85,.5)}
.toggle-sw.emg input:checked ~ .toggle-track{background:rgba(255,51,85,.2);border-color:var(--sell)}
.toggle-sw.emg input:checked ~ .toggle-knob{background:var(--sell)}
/* Training-Badge und Restart-Badge in Orders-Tabelle */
.rst-badge{font-size:7px;font-weight:700;padding:1px 4px;border-radius:2px;
  background:rgba(255,170,0,.18);border:1px solid rgba(255,170,0,.5);color:#ffaa00;
  margin-left:3px;vertical-align:middle;letter-spacing:.04em}
.trn-badge{font-size:7px;font-weight:700;padding:1px 4px;border-radius:2px;
  background:rgba(255,170,0,.18);color:#ffaa00;margin-left:3px;vertical-align:middle}
/* Training-Filter-Toggle */
.trn-filter-wrap{display:flex;gap:3px;align-items:center}
.trn-filter-btn{font-family:var(--cond);font-size:8px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:1px 6px;border-radius:3px;cursor:pointer;
  border:1px solid var(--border);background:transparent;color:var(--t3);transition:all .15s}
.trn-filter-btn:hover{background:var(--bg4);color:var(--t1);border-color:var(--border2)}
.trn-filter-btn.active{background:var(--acc-dim);color:var(--acc);border-color:var(--acc)}

/* â”€â”€ 3-SPALTEN MAIN â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#main{flex:1;display:grid;
  grid-template-columns:440px 1fr 450px;
  overflow:hidden;gap:1px;background:var(--border)}

.panel{background:var(--bg1);display:flex;flex-direction:column;overflow:hidden}
.phdr{min-height:26px;display:flex;align-items:center;padding:0 10px;gap:7px;
  background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0}
.phdr.static{cursor:default}
.ptitle{font-family:var(--cond);font-size:11px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;color:var(--t2)}
.pbadge{background:var(--bg4);border:1px solid var(--border);border-radius:10px;
  padding:0 6px;font-size:9px;color:var(--t3);margin-left:auto}
.panel-open-btn,.panel-reload-btn{
  font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:1px 8px;border-radius:3px;cursor:pointer;
  transition:all .15s;background:rgba(77,166,255,.08);border:1px solid var(--acc2);
  color:var(--acc)
}
.panel-open-btn:hover,.panel-reload-btn:hover{background:rgba(77,166,255,.2)}
.panel-open-btn{margin-left:auto}
.panel-open-btn.active{background:rgba(77,166,255,.22);border-color:var(--acc);color:var(--t1)}
#btn-toggle-log{margin-left:6px}
.candle-counter{display:flex;align-items:center;gap:5px;margin-left:auto;
  background:var(--bg3);border:1px solid var(--border2);border-radius:3px;
  padding:2px 8px;font-family:var(--cond);font-size:11px;font-weight:700}
.cc-num{color:var(--acc);letter-spacing:.02em}
.cc-bar{display:flex;gap:1px;align-items:center}
.cc-seg{width:3px;height:10px;border-radius:1px;background:var(--bg4);transition:background .3s}
.cc-seg.on{background:var(--acc)}
.cc-seg.full{background:var(--buy)}
.cc-lbl{font-size:8px;color:var(--t3);font-family:var(--mono);letter-spacing:.05em}

/* â”€â”€ LINKE SPALTE: LOG â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#log-out{flex:1;overflow-y:auto;padding:4px 0}
#log-out::-webkit-scrollbar{width:3px}
#log-out::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}
.log-filter-chip{
  border:1px solid var(--border2);background:var(--bg2);color:var(--t2);
  border-radius:4px;padding:2px 8px;font-size:9px;font-family:var(--cond);
  font-weight:700;letter-spacing:.06em;cursor:pointer;transition:all .15s ease
}
.log-filter-chip.active{background:rgba(77,166,255,.14);border-color:var(--acc2);color:var(--t1)}
.log-filter-chip.info.active{background:rgba(77,166,255,.14);color:var(--acc2)}
.log-filter-chip.warning.active{background:rgba(255,193,7,.14);color:var(--warn)}
.log-filter-chip.error.active{background:rgba(255,51,85,.14);color:var(--sell)}
.ll{display:flex;padding:1px 10px;transition:background .1s;line-height:1.65}
.ll:hover{background:rgba(255,255,255,.02)}
.lts{color:var(--t3);flex-shrink:0;margin-right:8px;font-size:9px;min-width:52px}
.llv{width:48px;flex-shrink:0;font-size:9px;font-weight:600;margin-right:5px}
.lmsg{color:var(--t1);flex:1;word-break:break-all;white-space:pre-wrap;font-size:10px}
.ll.lINFO .llv{color:var(--acc2)}
.ll.lWARNING .llv,.ll.lWARNING .lmsg{color:var(--warn)}
.ll.lERROR .llv,.ll.lERROR .lmsg{color:var(--sell)}
.ll.lCRITICAL{background:rgba(255,51,85,.07)!important}
.ll.lCRITICAL .llv,.ll.lCRITICAL .lmsg{color:var(--sell);font-weight:600}
.ll.lDEBUG .llv,.ll.lDEBUG .lmsg{color:var(--t3)}

/* â”€â”€ MITTE: CHART â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#chart-wrap{flex:1;position:relative;overflow:hidden;background:var(--bg0)}
#chart-canvas{display:block;width:100%;height:100%}
#chart-overlay{position:absolute;top:6px;left:10px;pointer-events:none;
  display:flex;flex-direction:column;gap:3px}
.cohlc{font-size:10px;color:var(--t2);display:flex;gap:10px}
.cohlc span{color:var(--t1)}
.cohlc span.cup{color:var(--buy)} .cohlc span.cdown{color:var(--sell)}
#chart-crosshair{position:absolute;inset:0;pointer-events:none}
.no-data-msg{position:absolute;inset:0;display:flex;align-items:center;
  justify-content:center;flex-direction:column;gap:8px;color:var(--t3)}
.no-data-msg .big{font-family:var(--cond);font-size:28px;font-weight:700;color:var(--border2)}
.no-data-msg .sub{font-size:11px}

/* Chart indicators legend */
#chart-legend{display:flex;align-items:center;gap:12px;padding:0 10px;
  height:22px;background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0}
.legend-item{display:flex;align-items:center;gap:4px;font-size:9px;color:var(--t3)}
.legend-dot{width:10px;height:2px;border-radius:1px}
.chart-view-switch{display:flex;align-items:center;gap:4px;margin-left:10px}
.chart-view-btn{background:transparent;border:1px solid var(--border2);color:var(--t3);
  min-width:34px;height:22px;padding:0 8px;border-radius:3px;cursor:pointer;
  font-size:9px;font-weight:700;font-family:var(--cond);letter-spacing:.08em;
  transition:background .18s,border-color .18s,color .18s}
.chart-view-btn:hover{border-color:var(--acc2);color:var(--t1);background:rgba(77,166,255,.08)}
.chart-view-btn.active{border-color:var(--acc);color:var(--acc);background:rgba(77,166,255,.14)}

/* â”€â”€ RECHTE SPALTE â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#right-col{display:flex;flex-direction:column;overflow:hidden}
#right-bottom-dock{
  display:flex;
  flex-direction:column;
  min-height:0;
  flex:0 0 60%;
  border-top:1px solid var(--border);
  background:
    linear-gradient(180deg, rgba(16,20,28,.96), rgba(11,14,20,.98));
}

/* Trennlinie */
.right-sep{height:1px;background:var(--border);flex-shrink:0}

/* Performance Section */
#perf-cards{display:flex;flex-direction:column;padding:6px 10px 8px;flex-shrink:0;gap:0}
.perf-pnl-row{display:flex;align-items:baseline;justify-content:space-between;
  padding:4px 0 6px;border-bottom:1px solid var(--border)}
.perf-pnl-block{display:flex;flex-direction:column;gap:1px}
.perf-pnl-lbl{font-size:7px;color:var(--t3);letter-spacing:.08em;font-weight:700;text-transform:uppercase}
.perf-pnl-val{font-size:22px;line-height:1;font-weight:700;font-family:var(--num);
  font-variant-numeric:tabular-nums}
.perf-pnl-block.right{align-items:flex-end}
.perf-pnl-pts{font-size:10px;font-weight:600;font-family:var(--num);font-variant-numeric:tabular-nums;
  color:var(--t3);margin-top:1px;letter-spacing:.02em}
.perf-pnl-pts.db-ok{color:var(--buy)}.perf-pnl-pts.db-nok{color:var(--sell)}
.perf-stats{display:flex;flex-direction:column;gap:0;padding-top:4px}
.perf-row{display:flex;align-items:center;justify-content:space-between;
  padding:3px 0;border-bottom:1px solid var(--border)}
.perf-row:last-child{border-bottom:none}
.perf-row-lbl{font-size:8px;color:var(--t3);letter-spacing:.06em;font-weight:600;text-transform:uppercase}
.perf-row-val{font-size:12px;font-weight:700;font-family:var(--num);font-variant-numeric:tabular-nums}
.perf-row-val.sm{font-size:11px}
.perf-row-pair{display:flex;align-items:center;gap:10px}
.perf-row-pair .perf-col{display:flex;flex-direction:column;align-items:flex-end;gap:0}
.perf-row-pair .perf-col-lbl{font-size:7px;color:var(--t3);letter-spacing:.06em;font-weight:600;text-transform:uppercase}
.perf-row-pair .perf-col-val{font-size:11px;font-weight:700;font-family:var(--num);font-variant-numeric:tabular-nums}
.perf-divider{height:1px;background:var(--border);margin:4px 0}
.db-ok{color:var(--buy)}
.db-nok{color:var(--sell)}
.db-neu{color:var(--t2)}
#strategy-stats-wrap{flex:0 0 auto;border-top:1px solid var(--border)}
.strategy-stats-phdr{min-height:24px}
#strategy-stats{padding:6px 10px 8px;background:var(--bg1)}
.strategy-stats-head,
.strategy-stats-row{display:grid;grid-template-columns:58px 45px 45px 54px 54px 54px 54px;gap:4px;align-items:center}
.strategy-stats-head{padding:0 0 4px;color:var(--t3);font-size:7.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.strategy-stats-head > span:not(:first-child),
.strategy-stats-row > span:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.strategy-stats-row{min-height:22px;padding:3px 0;border-top:1px solid rgba(255,255,255,.045);font-size:9px;font-weight:600}
.strategy-stats-total{border-top-color:var(--border);background:rgba(255,255,255,.025);font-weight:800}
.strategy-stats-total .strategy-stats-name{font-weight:800;color:var(--t1)}
.strategy-stats-name{min-width:0;display:flex;align-items:center;gap:6px;color:var(--t1);font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:0}
.strategy-stats-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.strategy-stats-row:not(.strategy-stats-total) .strategy-stats-name-text{font-size:10px;font-weight:800;letter-spacing:.04em}
.strategy-stats-dir,.strategy-stats-wr{color:var(--t2)}
.strategy-stats-dir{font-size:8px;font-weight:800;letter-spacing:0}
.strategy-stats-dir.dir-long{color:var(--buy)}
.strategy-stats-dir.dir-short{color:var(--sell)}
.strategy-stats-dir.dir-both{color:var(--t2)}
.strategy-stats-empty{padding:10px 0;color:var(--t3);font-size:9px;text-align:center}
/* legacy compat */
.pc-sep{display:none}

/* Orders-Tabelle */
#orders-wrap{
  flex:1 1 40%;
  min-height:180px;
  padding:6px 8px 8px;
  overflow-y:auto;
}
#orders-wrap::-webkit-scrollbar{width:3px}
#orders-wrap::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}
#orders-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;
  font-size:9.5px;background:var(--bg2);border:1px solid var(--border);border-radius:4px;overflow:hidden}
#orders-table thead th{background:rgba(255,255,255,.03);color:var(--t3);font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;font-size:8px;padding:5px 6px;text-align:left;
  border-bottom:1px solid var(--border);white-space:nowrap}
#orders-table tbody tr{border-bottom:1px solid rgba(27,41,64,.5);transition:background .1s}
#orders-table tbody tr:last-child td{border-bottom:none}
#orders-table tbody tr:hover{background:rgba(255,255,255,.025)}
#orders-table tbody td{padding:5px 6px;color:var(--t2);font-variant-numeric:tabular-nums;
  vertical-align:middle;border-bottom:1px solid rgba(27,41,64,.5);line-height:1.2}
#orders-table col.col-time{width:13%}
#orders-table col.col-dir{width:8%}
#orders-table col.col-mode{width:13%}
#orders-table col.col-lot{width:7%}
#orders-table col.col-entry{width:14%}
#orders-table col.col-sl{width:14%}
#orders-table col.col-pnl{width:12%}
#orders-table col.col-action{width:20%}
.ord-time,.ord-lot,.ord-entry,.ord-stop,.ord-pnl{text-align:left}
.ord-dir{font-weight:700;white-space:nowrap}
.ord-mode,.action-cell{white-space:nowrap}
.ord-lot,.ord-entry{text-align:right}
.ord-pnl{font-weight:700}
.action-cell{text-align:left;padding-left:6px!important;padding-right:18px!important}
#orders-table .action-cell .action-chip,#orders-table .action-cell .btn-close-order{margin-right:0}
#orders-table thead th:last-child,#orders-table tbody td:last-child{padding-right:18px!important}
#orders-table td.ord-pnl.pp{color:var(--buy)}
#orders-table td.ord-pnl.pn{color:var(--sell)}
.ord-pnl-stack{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.ord-pnl-eur{font-size:8px;color:var(--t3);font-weight:600}
.ord-pnl-stack.pos .ord-pnl-main{color:var(--buy)}
.ord-pnl-stack.neg .ord-pnl-main{color:var(--sell)}
.ord-pnl-stack.neu .ord-pnl-main{color:var(--t2)}
.ord-pnl-stack.pos .ord-pnl-eur{color:rgba(0,230,118,.8)}
.ord-pnl-stack.neg .ord-pnl-eur{color:rgba(255,51,85,.85)}
.ord-pnl-stack.neu .ord-pnl-eur{color:var(--t3)}
.ord-empty{padding:16px 10px!important;text-align:center;color:var(--t3)!important;font-size:9px}

/* ── ORDERS HISTORY ───────────────────────────────────────────── */
.ord-view-btn{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;padding:2px 7px;border-radius:3px;cursor:pointer;
  border:1px solid var(--border);background:transparent;color:var(--t3);transition:all .15s}
.ord-view-btn.active,.ord-view-btn:hover{background:var(--bg4);color:var(--t1);border-color:var(--border2)}
#hist-controls{flex-shrink:0;padding:5px 10px;background:var(--bg2);
  border-bottom:1px solid var(--border);display:none;align-items:center;gap:5px;flex-wrap:wrap}
#hist-controls input[type=date]{background:var(--bg0);border:1px solid var(--border);
  border-radius:3px;color:var(--t1);padding:2px 5px;font-size:9px;font-family:monospace;
  color-scheme:dark}
#hist-controls .hc-lbl{font-family:var(--cond);font-size:8px;font-weight:700;
  letter-spacing:.06em;color:var(--t3);text-transform:uppercase}
#btn-hist-load{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:2px 9px;border-radius:3px;cursor:pointer;
  background:var(--bg4);border:1px solid var(--border2);color:var(--t2)}
#btn-hist-load:hover{background:rgba(90,122,158,.3);color:var(--t1)}
#hist-info{font-family:var(--cond);font-size:9px;color:var(--t3)}
#hist-orders-wrap{flex:none;max-height:180px;overflow-y:auto;display:none}
#hist-orders-wrap::-webkit-scrollbar{width:3px}
#hist-orders-wrap::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}
#hist-perf{flex-shrink:0;padding:8px 10px;display:none;border-top:1px solid var(--border)}
.hist-perf-title{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--t2);margin-bottom:6px}
.perf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}
.perf-card{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:5px 7px}
.perf-card .pc-lbl{font-family:var(--cond);font-size:7.5px;letter-spacing:.07em;
  text-transform:uppercase;color:var(--t3);margin-bottom:2px}
.perf-card .pc-val{font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--t1)}
.perf-card .pc-val.pos{color:var(--buy)}.perf-card .pc-val.neg{color:var(--sell)}
.hist-strat-row{display:flex;align-items:center;gap:5px;margin-bottom:2px;font-size:8.5px}
.hist-strat-name{font-family:var(--cond);font-weight:700;color:var(--t2)}
.hist-strat-val{color:var(--t3)}
table{width:100%;border-collapse:collapse;font-size:9.5px}
thead th{background:var(--bg2);color:var(--t3);font-weight:600;
  text-transform:uppercase;letter-spacing:.07em;font-size:8.5px;
  padding:4px 8px;text-align:left;position:sticky;top:0;
  border-bottom:1px solid var(--border)}
tbody tr{border-bottom:1px solid rgba(27,41,64,.5);transition:background .1s}
tbody tr:hover{background:rgba(255,255,255,.025)}
tbody td{padding:4px 8px;color:var(--t2);font-variant-numeric:tabular-nums}
td.db{color:var(--buy);font-weight:600} td.ds{color:var(--sell);font-weight:600}
td.pp{color:var(--buy)} td.pn{color:var(--sell)}
td.so{color:var(--warn);font-weight:600}
.no-t{text-align:center;color:var(--t3);padding:20px;font-size:10px}
.mode-chip,.action-chip{display:inline-flex;align-items:center;justify-content:center;
  min-width:0;padding:1px 5px;border-radius:3px;font-size:8px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase}
.mode-chip.live{background:rgba(77,166,255,.10);border:1px solid rgba(77,166,255,.28);color:var(--acc)}
.mode-chip.shadow{background:rgba(255,170,0,.12);border:1px solid rgba(255,170,0,.35);color:var(--warn)}
.action-chip{min-width:auto;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:var(--t2)}
.ord-strat-chip{font-family:var(--cond);font-size:7px;color:var(--t3);margin-top:2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:72px;
  letter-spacing:.02em;text-transform:uppercase}
/* Live-PnL Zelle */
.live-pnl-pos{color:var(--buy);font-weight:700}
.live-pnl-neg{color:var(--sell);font-weight:700}
.live-pnl-neu{color:var(--t2)}
/* Close-Button */
.btn-close-order{background:rgba(255,51,85,.12);border:1px solid var(--sell2);
  color:var(--sell);font-size:8px;font-weight:700;padding:2px 6px;
  border-radius:2px;cursor:pointer;letter-spacing:.05em;white-space:nowrap;flex-shrink:0}
.btn-close-order:hover{background:var(--sell2);color:#fff}
/* (#sbar / .si / .ctx-item entfernt — alte Statusbar-Zeile abgeloest durch
   #sysbar oben; SHADOW + COLLECTOR dort als sbar-items integriert.) */

/* â”€â”€ TOAST â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#toast-root{position:fixed;bottom:28px;right:16px;display:flex;
  flex-direction:column-reverse;gap:6px;z-index:9999}
.toast{background:var(--bg3);border:1px solid var(--border2);border-radius:3px;
  padding:8px 14px;font-size:11px;min-width:200px;
  box-shadow:0 8px 24px rgba(0,0,0,.5);animation:tIn .18s ease;
  display:flex;align-items:center;gap:8px}
.toast.buy{border-left:3px solid var(--buy)}
.toast.sell{border-left:3px solid var(--sell)}
.toast.warn{border-left:3px solid var(--warn)}
.toast.info{border-left:3px solid var(--acc)}
@keyframes tIn{from{transform:translateX(16px);opacity:0}to{transform:none;opacity:1}}


/* Daily Briefing / KI-Analyse Schnellzugriff (rechte Spalte, oben) */
.right-quick-btns{display:flex;gap:5px;padding:5px 8px;flex-shrink:0}
.rq-btn{flex:1;font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;padding:5px 6px;border-radius:3px;cursor:pointer;
  border:1px solid var(--border2);background:var(--bg2);color:var(--t2);
  transition:background .15s,border-color .15s,color .15s;white-space:nowrap;
  display:flex;align-items:center;justify-content:center;gap:4px}
.rq-btn:hover{background:rgba(77,166,255,.1);border-color:var(--acc2);color:var(--t1)}
.rq-btn .rq-ts{font-size:7.5px;color:var(--t3);font-weight:400;margin-left:2px}
@media (max-width: 1260px){
  #perf-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Wirtschaftskalender */
#econ-cal-wrap{padding:6px 10px 8px;flex-shrink:0}
.ec-row{display:flex;align-items:flex-start;gap:6px;padding:4px 0;
  border-bottom:1px solid var(--border);font-size:10px}
.ec-row:last-child{border-bottom:none}
.ec-time{width:38px;flex-shrink:0;color:var(--t2);font-variant-numeric:tabular-nums;
  padding-top:1px}
.ec-flag{width:18px;flex-shrink:0;text-align:center;padding-top:2px}
.ec-title{flex:1;color:var(--t1);line-height:1.4}
.ec-badge{font-size:8px;padding:2px 6px;border-radius:2px;font-weight:700;
  background:rgba(255,60,60,.18);color:#ff5555;flex-shrink:0;align-self:center}
.ec-empty{color:var(--t3);font-size:9px;padding:6px 0}
.br-row{display:flex;align-items:flex-start;gap:5px;padding:3px 0;
  border-bottom:1px solid var(--border);font-size:9px}
.br-row:last-child{border-bottom:none}
.br-icon{width:14px;flex-shrink:0;text-align:center;font-size:10px}
.br-txt{flex:1;color:var(--t2);line-height:1.5}
.br-txt strong{color:var(--t1)}
.br-ok{color:var(--buy)} .br-nok{color:var(--sell)} .br-warn{color:var(--warn)}
.br-recs{margin-top:4px;display:flex;flex-direction:column;gap:2px}
.br-rec{font-size:8.5px;color:var(--t2);padding:2px 5px;
  background:var(--bg3);border-left:2px solid var(--acc2);border-radius:0 2px 2px 0}
.sysinfo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sysinfo-card{background:var(--bg3);border:1px solid var(--border);border-radius:6px;padding:10px}
.sysinfo-card.warn{border-color:rgba(255,170,0,.42);box-shadow:0 0 0 1px rgba(255,170,0,.08) inset}
.sysinfo-card.error{border-color:rgba(255,51,85,.5);box-shadow:0 0 0 1px rgba(255,51,85,.1) inset}
.sysinfo-title{font-size:10px;color:var(--t2);margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}
.sysinfo-card.warn .sysinfo-title{color:#ffd37a}
.sysinfo-card.error .sysinfo-title{color:#ff8aa0}
.sysinfo-row{display:flex;justify-content:space-between;gap:10px;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.sysinfo-row:last-child{border-bottom:none}
.sysinfo-k{font-size:10px;color:var(--t2)}
.sysinfo-v{font-size:10px;color:var(--t1);text-align:right;word-break:break-word}
.sysinfo-v.warn{color:#ffd37a}
.sysinfo-v.error{color:#ff8aa0}
.sysinfo-actions{display:flex;justify-content:flex-end;gap:8px;padding:10px 14px;border-top:1px solid var(--border)}
.sysinfo-note{font-size:10px;color:var(--t2);padding:0 14px 12px}

/* Briefing / Analyse Modal */
.info-modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.74);
  z-index:10000;align-items:center;justify-content:center}
.info-modal-bg.open{display:flex}
.info-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:8px;
  width:720px;max-width:96vw;max-height:86vh;display:flex;flex-direction:column;
  overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.62)}
.info-modal-head{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;
  background:var(--bg2);border-bottom:1px solid var(--border)}
.info-modal-kicker{font-family:var(--cond);font-size:8px;font-weight:700;letter-spacing:.14em;
  color:var(--t3);text-transform:uppercase;margin-bottom:2px}
.info-modal-head h3{margin:0;font-family:var(--cond);font-size:14px;font-weight:800;
  letter-spacing:.05em;color:var(--acc)}
.info-modal-meta{font-size:9px;color:var(--t3);margin-top:3px}
.info-modal-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.info-modal-close{background:none;border:none;color:var(--t3);font-size:18px;cursor:pointer}
.info-modal-close:hover{color:var(--t1)}
.info-modal-body{padding:14px 16px;overflow-y:auto}
#briefing-modal-content{font-size:9px}
#analysis-box{width:100%;background:var(--bg0);border:1px solid var(--border2);color:var(--t2);
  font-size:9px;font-family:monospace;padding:10px;resize:vertical;height:420px;outline:none;
  line-height:1.5;box-sizing:border-box;border-radius:4px}

/* Gesamtbewertung */
#app-rating-modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);
  z-index:10001;align-items:center;justify-content:center}
#app-rating-modal-bg.open{display:flex}
#app-rating-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:8px;
  width:760px;max-width:96vw;max-height:88vh;display:flex;flex-direction:column;
  overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.62)}
#app-rating-modal-head{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;
  background:var(--bg2);border-bottom:1px solid var(--border)}
.ar-modal-kicker{font-family:var(--cond);font-size:8px;font-weight:700;letter-spacing:.14em;
  color:var(--t3);text-transform:uppercase;margin-bottom:2px}
#app-rating-modal-head h3{margin:0;font-family:var(--cond);font-size:14px;font-weight:800;
  letter-spacing:.05em;color:var(--acc)}
.ar-modal-head-meta{font-size:9px;color:var(--t3);margin-top:3px}
.ar-modal-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
#btn-app-rating-reload,.btn-app-rating-reload{font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:3px;
  cursor:pointer;background:rgba(77,166,255,.08);color:var(--acc);
  border:1px solid var(--acc2);transition:all .15s}
#btn-app-rating-reload:hover,.btn-app-rating-reload:hover{background:rgba(77,166,255,.2)}
.ar-modal-close{background:none;border:none;color:var(--t3);font-size:18px;cursor:pointer}
.ar-modal-close:hover{color:var(--t1)}
#app-rating-modal-body{padding:14px 16px;overflow-y:auto}
.ar-summary{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:6px}
.ar-card{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:5px 6px}
.ar-card-lbl{font-size:7.5px;color:var(--t3);letter-spacing:.07em;font-weight:700;text-transform:uppercase;margin-bottom:3px}
.ar-card-val{font-size:11px;color:var(--t1);line-height:1.35}
.ar-next{margin-bottom:6px;padding:5px 6px;background:var(--bg2);border:1px solid var(--border);border-radius:4px;font-size:8.5px;color:var(--t2);line-height:1.45}
.ar-next strong{color:var(--t1)}
.ar-block{margin-bottom:6px;padding:6px;background:var(--bg2);border:1px solid var(--border);border-radius:4px}
.ar-block-title{font-size:7.5px;color:var(--t3);letter-spacing:.08em;font-weight:700;text-transform:uppercase;margin-bottom:5px}
#app-rating-subareas{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.ar-sub-row{display:flex;align-items:center;gap:6px;padding:6px 7px;background:var(--bg3);border:1px solid var(--border);border-radius:3px}
.ar-sub-name{font-size:8px;color:var(--t2);line-height:1.35;flex:1}
.ar-sub-val{font-family:var(--cond);font-size:10px;font-weight:700;color:var(--t1);flex-shrink:0}
.ar-table-wrap{border:1px solid var(--border);border-radius:4px;overflow:hidden;background:var(--bg3)}
.ar-table{width:100%;border-collapse:collapse}
.ar-table th{padding:7px 8px;background:rgba(255,255,255,.03);font-size:8px;color:var(--t3);
  letter-spacing:.08em;font-weight:700;text-transform:uppercase;text-align:left}
.ar-table td{padding:8px;border-top:1px solid rgba(255,255,255,.05);vertical-align:top}
.ar-area-name{font-size:9px;color:var(--t1);font-weight:700;line-height:1.3}
.ar-area-meta{margin-top:3px;font-size:7.5px;color:var(--t3);line-height:1.35}
.ar-area-note{margin-top:4px;font-size:8px;color:var(--t2);line-height:1.4}
.ar-score{font-family:var(--cond);font-size:11px;font-weight:800;color:var(--t1);
  display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;
  padding:3px 8px;border-radius:999px;background:var(--bg2);border:1px solid var(--border)}
.ar-score.good{color:var(--buy)}
.ar-score.mid{color:var(--warn)}
.ar-score.bad{color:var(--sell)}
.ar-empty{padding:16px 8px;text-align:center;font-size:9px;color:var(--t3)}

@media (max-width: 1260px){
  .app-rating-launch-label{display:none}
  .acc-epic-display{max-width:120px}
}
@media (max-width: 900px){
  #app-rating-subareas{grid-template-columns:1fr}
  .ar-summary{grid-template-columns:1fr}
}

/* ── Backtest Modal ───────────────────────────────────────────────── */
#bt-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);
  z-index:9000;align-items:stretch;justify-content:stretch;padding:0}
#bt-overlay.open{display:flex}
#bt-modal{background:var(--bg1);border:none;border-radius:0;
  width:100vw;height:100vh;display:flex;flex-direction:column;
  overflow:hidden;box-shadow:none}
.bt-hdr{padding:11px 16px;background:var(--bg2);border-bottom:1px solid var(--border);
  display:flex;align-items:center;gap:8px;flex-shrink:0}
.bt-title{font-family:var(--cond);font-size:15px;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;color:var(--acc)}
.bt-close{background:none;border:none;color:var(--t2);font-size:18px;cursor:pointer;
  padding:0 4px;line-height:1}
.bt-close:hover{color:var(--sell)}
/* Tabs in header */
#bt-tabs{display:flex;gap:2px;margin-left:12px;background:var(--bg0);
  border:1px solid var(--border2);border-radius:3px;padding:2px}
.bt-tab{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:4px 12px;border:none;background:none;
  color:var(--t3);cursor:pointer;border-radius:2px;transition:all .15s}
.bt-tab:hover{color:var(--t1)}
.bt-tab.active{background:var(--acc);color:#000}
/* Tab panels */
.bt-tab-panel{display:flex;flex-direction:column;flex:1;overflow:hidden}
/* Integrated tab: narrower content centered */
#bt-tab-integrated .bt-body{max-width:760px;width:100%;margin:0 auto;box-sizing:border-box}
.bt-body{padding:14px 16px;overflow-y:auto;flex:1}
.bt-controls{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}
.bt-controls label{font-size:9px;color:var(--t3);font-family:var(--cond);letter-spacing:.06em;
  font-weight:700;text-transform:uppercase;margin-top:4px}
.bt-controls select,.bt-controls input[type=date],.bt-controls input[type=number]{
  background:var(--bg3);border:1px solid var(--border2);color:var(--t1);
  padding:4px 8px;font-size:10px;font-family:var(--cond);width:100%;box-sizing:border-box}
.bt-source-note{font-size:9px;color:var(--t3);margin-bottom:8px;line-height:1.4}
.bt-micro-setup{background:var(--bg2);border:1px solid var(--border);border-radius:3px;
  padding:8px 10px;margin-bottom:10px}
.bt-micro-setup-hdr{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.08em;
  color:var(--t2);text-transform:uppercase;margin-bottom:6px}
#bt-msg{font-size:9px;color:var(--t3);margin-bottom:8px;min-height:14px;line-height:1.4}
#btn-bt-run{font-family:var(--cond);font-size:11px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;padding:6px 16px;border-radius:3px;cursor:pointer;
  background:var(--acc);color:#000;border:none;margin-top:4px}
#btn-bt-run:hover{opacity:.85}
#btn-bt-run:disabled{opacity:.35;cursor:not-allowed}
.bt-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}
.bt-stat{background:var(--bg2);border:1px solid var(--border2);border-radius:3px;padding:8px 10px}
.bt-tbl{width:100%;border-collapse:collapse;font-size:9px;margin-top:4px}
.bt-tbl th{font-family:var(--cond);color:var(--t3);font-weight:700;letter-spacing:.06em;
  font-size:8px;padding:4px 6px;text-align:right;border-bottom:1px solid var(--border2);
  background:var(--bg2)}
.bt-tbl th:first-child,.bt-tbl td:first-child{text-align:left}
.bt-tbl td{padding:3px 6px;color:var(--t2);border-bottom:1px solid rgba(255,255,255,.04);
  text-align:right;font-family:var(--mono);font-size:8.5px}
.bt-tbl tr:hover td{background:rgba(255,255,255,.03)}
.bt-sub{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.bt-sub-hdr{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--t3);border-bottom:1px solid var(--border2);
  padding-bottom:4px;margin-bottom:6px}
#bt-equity{width:100%;height:180px;margin:10px 0;display:block}
.bt-import-box{background:var(--bg2);border:1px solid var(--border);border-radius:3px;
  padding:10px 12px;margin-top:10px}
.bt-import-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bt-import-row label{font-size:9px;color:var(--t3);font-family:var(--cond);
  letter-spacing:.06em;font-weight:700;white-space:nowrap}
.bt-import-row input,.bt-import-row select{background:var(--bg3);border:1px solid var(--border2);
  color:var(--t1);padding:4px 7px;font-size:10px;font-family:var(--cond)}
.bt-btn-secondary{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:5px 12px;border-radius:3px;cursor:pointer;
  background:var(--bg3);color:var(--t2);border:1px solid var(--border2);transition:all .15s}
.bt-btn-secondary:hover{border-color:var(--acc);color:var(--acc)}
.bt-note-chip{font-size:8px;color:var(--t3);margin-left:6px;font-weight:400;
  text-transform:none;letter-spacing:0}
.bt-flip-delta{font-size:9px;color:var(--t3);line-height:1.4}

/* ── Plugin Backtest (Tab 2 within bt-modal) ─────────────────────── */
#bt-tab-custom{flex:1;overflow:hidden}
#nbtest-body{display:flex;flex:1;overflow:hidden;height:100%}
#nbtest-config{width:280px;min-width:260px;padding:16px 14px;overflow-y:auto;
  border-right:1px solid var(--border);display:flex;flex-direction:column;
  background:var(--bg1);flex-shrink:0}
.nbtest-section-hdr{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--acc);border-bottom:1px solid rgba(77,166,255,.2);
  padding-bottom:4px;margin-bottom:8px}
#nbtest-config select{width:100%;background:var(--bg3);color:var(--t1);
  border:1px solid var(--border2);padding:5px 8px;font-size:10px;
  font-family:var(--cond);letter-spacing:.04em;box-sizing:border-box;margin-bottom:2px}
.nbtest-desc{font-size:9px;color:var(--t3);line-height:1.5;margin-bottom:4px;
  padding:5px 8px;background:rgba(255,255,255,.03);border-left:2px solid var(--border2)}
.nbtest-row{display:flex;align-items:center;gap:6px;margin:5px 0}
.nbtest-row-col{flex-direction:column;align-items:stretch}
.nbtest-row label{font-size:9px;color:var(--t3);font-family:var(--cond);letter-spacing:.04em;
  white-space:nowrap;min-width:110px;flex-shrink:0}
.nbtest-row-col label{min-width:0;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.nbtest-row select,.nbtest-row input{flex:1;background:var(--bg3);color:var(--t1);
  border:1px solid var(--border2);padding:4px 6px;font-size:10px;font-family:var(--cond);
  min-width:0;box-sizing:border-box}

/* Backtest Regime-Allowlist editor — gleicher Look wie Slot-Allowlist (gruen) */
.nbt-allow-editor{display:flex;flex-direction:column;gap:7px;
  padding:8px 10px;background:rgba(34,197,94,.05);
  border:1px solid rgba(34,197,94,.22);border-radius:4px}
.nbt-allow-hint{font-family:var(--cond);font-size:8.5px;color:var(--t3);font-style:italic;line-height:1.4}
.nbt-allow-group{display:flex;flex-direction:column;gap:4px}
.nbt-allow-group-lbl{font-family:var(--cond);font-size:7.5px;font-weight:700;
  letter-spacing:.08em;color:var(--t3);text-transform:uppercase}
.nbt-allow-chips{display:flex;flex-wrap:wrap;gap:4px}
.nbt-allow-chip{display:inline-flex;align-items:center;padding:3px 9px;border-radius:3px;
  cursor:pointer;user-select:none;background:var(--bg3);border:1px solid var(--border2);
  color:var(--t3);font-family:var(--cond);font-size:9px;font-weight:600;letter-spacing:.04em;
  transition:all .15s}
.nbt-allow-chip:hover{color:var(--t1);border-color:rgba(34,197,94,.4)}
.nbt-allow-chip.is-allowed{background:rgba(34,197,94,.22);border-color:rgba(34,197,94,.6);color:#bbf7d0}
.nbt-allow-summary{font-family:var(--cond);font-size:8.5px;color:var(--t3);font-style:italic}
.nbt-allow-summary.has-picks{color:#bbf7d0;font-style:normal;font-weight:700;letter-spacing:.03em}
.nbtest-param-row{display:flex;flex-direction:column;gap:3px;margin:5px 0}
.nbtest-param-row label{font-size:8.5px;color:var(--t3);font-family:var(--cond);letter-spacing:.04em}
.nbtest-param-row input{background:var(--bg3);color:var(--t1);border:1px solid var(--border2);
  padding:4px 7px;font-size:10px;font-family:var(--mono);width:100%;box-sizing:border-box}
.nbtest-status-box{margin-top:10px;padding:8px 10px;background:rgba(77,166,255,.05);
  border:1px solid rgba(77,166,255,.15);border-radius:3px}
.nbtest-phase{font-family:var(--cond);font-size:10px;font-weight:700;
  letter-spacing:.06em;color:var(--acc);margin-bottom:3px}
.nbtest-detail{font-size:9px;color:var(--t3);line-height:1.4}
.nbtest-progress-wrap{height:3px;background:var(--bg0);margin-top:7px;border-radius:2px;overflow:hidden}
.nbtest-progress-fill{height:3px;background:var(--acc);width:0%;border-radius:2px;transition:width .5s}
.nbtest-error{margin-top:10px;padding:8px 10px;background:#200f0f;border:1px solid #5a1e1e;
  color:#e06060;font-size:9px;line-height:1.6;border-radius:3px}
#nbtest-results{flex:1;overflow-y:auto;padding:18px 20px;background:var(--bg0);position:relative}
#nbt-loading-overlay{display:none;position:absolute;inset:0;background:rgba(10,12,15,.88);z-index:10;align-items:center;justify-content:center;flex-direction:column;gap:14px}
#nbt-loading-overlay.active{display:flex}
.nbt-spinner{width:34px;height:34px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent,#4caf50);border-radius:50%;animation:nbtSpin .7s linear infinite}
@keyframes nbtSpin{to{transform:rotate(360deg)}}
.nbtest-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;
  justify-content:center;color:var(--t3);gap:10px;text-align:center;
  font-family:var(--cond);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.nbt-run-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.nbt-run-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;
  border:1px solid var(--border2);background:var(--bg2);font-family:var(--cond);font-size:8px;
  font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t2)}
.nbt-run-chip strong{color:var(--t1);font-weight:800}
.nbt-run-chip.ok{border-color:rgba(62,200,124,.3);color:#3ec87c;background:rgba(62,200,124,.08)}
.nbt-run-chip.warn{border-color:rgba(255,170,0,.3);color:#ffaa00;background:rgba(255,170,0,.08)}
.nbt-run-chip.bad{border-color:rgba(224,85,85,.3);color:#e05555;background:rgba(224,85,85,.08)}
.nbt-run-chip.compare{border-color:rgba(255,170,0,.3);color:#ffaa00;background:rgba(255,170,0,.08)}
.nbt-engine-hint{margin-top:6px;padding:7px 9px;background:rgba(77,166,255,.05);border:1px solid rgba(77,166,255,.18);
  border-radius:3px;font-size:8.5px;line-height:1.5;color:var(--t3)}
.nbt-engine-hint.compare{background:rgba(255,170,0,.07);border-color:rgba(255,170,0,.22);color:#ffaa00}
/* ── Strategy documentation card (left panel / strategy selection) ──────── */
.nbt-strat-card{font-family:var(--cond);display:flex;flex-direction:column;gap:5px}
.nbt-strat-card-name{font-size:11px;font-weight:800;color:var(--t1);letter-spacing:.04em;
  display:flex;align-items:center;gap:6px}
.nbt-strat-card-ver{font-size:7.5px;font-weight:700;padding:1px 5px;border-radius:3px;
  background:var(--bg3);color:var(--t3);letter-spacing:.06em;flex-shrink:0}
.nbt-strat-card-author{font-size:8px;color:var(--t3);letter-spacing:.03em}
.nbt-strat-card-desc{font-size:9px;color:var(--t2);line-height:1.5;margin-top:1px}
.nbt-strat-card-row{display:flex;flex-wrap:wrap;gap:3px;align-items:center;margin-top:1px}
.nbt-strat-card-lbl{font-size:7.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  color:var(--t3);margin-right:2px;flex-shrink:0}
.nbt-strat-chip{display:inline-flex;align-items:center;padding:2px 6px;border-radius:3px;
  font-size:7.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  border:1px solid var(--border2);background:var(--bg3);color:var(--t2)}
.nbt-strat-chip.cat{border-color:rgba(77,166,255,.3);color:#4da6ff;background:rgba(77,166,255,.08)}
.nbt-strat-chip.side-long{border-color:rgba(62,200,124,.35);color:#3ec87c;background:rgba(62,200,124,.08)}
.nbt-strat-chip.side-short{border-color:rgba(224,85,85,.35);color:#e05555;background:rgba(224,85,85,.08)}
.nbt-strat-chip.entry{border-color:rgba(62,200,124,.2);color:#3ec87c;background:rgba(62,200,124,.06)}
.nbt-strat-chip.exit{border-color:rgba(224,85,85,.2);color:#e05555;background:rgba(224,85,85,.06)}
.nbt-strat-chip.gate{border-color:rgba(255,170,0,.2);color:#ffaa00;background:rgba(255,170,0,.06)}
.nbt-strat-no-doc{font-size:8px;color:var(--t3);font-style:italic;padding:2px 0}
/* ── Compact strategy doc row in run result header ──────────────────────── */
.nbt-doc-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px 10px;
  margin-bottom:10px;background:var(--bg2);border-radius:3px;border:1px solid var(--border2)}
.nbt-doc-row-name{font-size:9px;font-weight:800;color:var(--t1);font-family:var(--cond);
  letter-spacing:.04em;flex-shrink:0}
.nbt-doc-row-sep{color:var(--border2);font-size:10px;flex-shrink:0}
.nbt-doc-row-no-doc{font-size:8px;color:var(--t3);font-style:italic}
/* ── Strategy status badges ─────────────────────────────────────────────── */
.nbt-status-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:3px;
  font-size:7px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0}
.nbt-status-badge.backtest{border:1px solid rgba(77,166,255,.3);color:#4da6ff;background:rgba(77,166,255,.1)}
.nbt-status-badge.ready{border:1px solid rgba(255,170,0,.35);color:#ffaa00;background:rgba(255,170,0,.1)}
.nbt-status-badge.live{border:1px solid rgba(62,200,124,.4);color:#3ec87c;background:rgba(62,200,124,.12)}
/* ── Transfer-to-main bar ───────────────────────────────────────────────── */
.nbt-transfer-bar{display:flex;align-items:center;gap:12px;padding:9px 12px;margin-bottom:10px;
  background:rgba(77,166,255,.05);border:1px solid rgba(77,166,255,.18);border-radius:3px}
.nbt-transfer-desc{font-size:9px;color:var(--t3);font-family:var(--cond);letter-spacing:.03em;flex:1}
.nbt-transfer-btn{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.07em;
  text-transform:uppercase;padding:6px 14px;border-radius:3px;border:none;cursor:pointer;
  background:var(--acc);color:#fff;flex-shrink:0;transition:opacity .15s}
.nbt-transfer-btn:hover{opacity:.85}
.nbt-transfer-btn:disabled{opacity:.45;cursor:not-allowed}
.nbt-transfer-info{font-size:9px;font-weight:700;color:#3ec87c;font-family:var(--cond);letter-spacing:.04em}
.nbt-transfer-bar--warn{background:rgba(255,170,0,.05);border-color:rgba(255,170,0,.22)}
.nbt-transfer-bar--warn .nbt-transfer-desc{color:#ffaa00}
.nbt-transfer-bar--warn .nbt-transfer-btn{background:var(--bg3);color:var(--t3);cursor:not-allowed}
.nbt-export-bar{display:flex;align-items:center;gap:12px;padding:7px 12px;margin-bottom:10px;
  background:rgba(100,100,100,.06);border:1px solid var(--border2);border-radius:3px}
.nbt-export-desc{font-size:9px;color:var(--t3);font-family:var(--cond);letter-spacing:.03em;flex:1}
.nbt-export-btn{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.07em;
  text-transform:uppercase;padding:5px 13px;border-radius:3px;border:none;cursor:pointer;
  background:var(--bg3);color:var(--t2);border:1px solid var(--border2);flex-shrink:0;transition:opacity .15s}
.nbt-export-btn:hover{opacity:.75}
.nbtest-metrics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.nbtest-chart-wrap{height:300px;background:var(--bg2);border:1px solid var(--border2);
  border-radius:4px;overflow:hidden;position:relative;margin-top:6px}
/* Lightweight Charts: force transparent chart background */
.nbtest-chart-wrap > div{ background:transparent !important }
.nbtest-chart-wrap > div > div:first-child{ border-radius:4px }
.nbtest-attr-tbl{width:100%;border-collapse:collapse;font-size:9px;margin-top:4px}
.nbtest-attr-tbl th{font-family:var(--cond);color:var(--t3);font-weight:700;letter-spacing:.07em;
  font-size:8px;padding:5px 8px;text-align:right;border-bottom:1px solid var(--border2);
  background:var(--bg2)}
.nbtest-attr-tbl th:first-child,.nbtest-attr-tbl td:first-child{text-align:left}
.nbtest-attr-tbl td{padding:4px 8px;color:var(--t2);border-bottom:1px solid rgba(255,255,255,.04);
  text-align:right;font-family:var(--mono);font-size:8.5px}
.nbtest-attr-tbl tr:hover td{background:rgba(255,255,255,.03)}
.nbtest-trades-tbl{width:100%;border-collapse:collapse;font-size:9px;margin-top:4px}
.nbtest-trades-tbl th{font-family:var(--cond);color:var(--t3);font-weight:700;letter-spacing:.07em;
  font-size:8px;padding:5px 8px;text-align:right;border-bottom:1px solid var(--border2);
  background:var(--bg2);cursor:pointer;user-select:none;white-space:nowrap}
.nbtest-trades-tbl th:hover{color:var(--t1)}
.nbtest-trades-tbl th:first-child,.nbtest-trades-tbl td:first-child{text-align:left}
.nbtest-trades-tbl td{padding:4px 8px;color:var(--t2);border-bottom:1px solid rgba(255,255,255,.04);
  text-align:right;font-family:var(--mono);font-size:8.5px}
.nbtest-trades-tbl tr.trade-row-pos td{background:rgba(62,200,124,.06)}
.nbtest-trades-tbl tr.trade-row-neg td{background:rgba(224,85,85,.07)}

/* ── MPIE Pipeline Monitor (Layer 9) ──────────────────────────────────────── */
#mpie-overlay{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:200;
  display:none;align-items:center;justify-content:center}
#mpie-overlay.open{display:flex}
#mpie-modal{background:var(--bg1);border-radius:6px;width:92%;max-width:1080px;
  max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}
.mpie-hdr{display:flex;align-items:center;gap:10px;padding:14px 18px 12px;
  border-bottom:1px solid var(--border2);flex-shrink:0;flex-wrap:wrap}
.mpie-title{font-family:var(--cond);font-size:14px;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;color:var(--t1);flex:1;min-width:120px}
.mpie-hdr-date{display:flex;align-items:center;gap:6px}
.mpie-hdr-date label{font-family:var(--cond);font-size:9px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--t3)}
.mpie-hdr input[type=date]{background:var(--bg2);border:1px solid var(--border2);
  border-radius:3px;color:var(--t2);font-family:var(--mono);font-size:11px;padding:4px 8px}
.mpie-close{background:none;border:none;color:var(--t3);font-size:16px;cursor:pointer;
  padding:4px 8px;border-radius:3px;flex-shrink:0}
.mpie-close:hover{color:var(--t1);background:var(--bg3)}
.mpie-body{padding:14px 18px;display:flex;flex-direction:column;gap:14px}
/* Status row */
#mpie-status-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;
  padding:8px 0;border-bottom:1px solid var(--border2)}
.mpie-layer-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;
  border-radius:4px;border:1px solid var(--border2);font-family:var(--cond);
  font-size:10px;font-weight:700}
.mpie-layer-ok{border-color:rgba(62,200,124,.4);background:rgba(62,200,124,.08)}
.mpie-layer-stale{border-color:rgba(255,170,0,.4);background:rgba(255,170,0,.08)}
.mpie-layer-missing{border-color:rgba(224,85,85,.4);background:rgba(224,85,85,.08)}
.mpie-layer-dot{font-size:12px;line-height:1}
.mpie-layer-ok .mpie-layer-dot{color:#3ec87c}
.mpie-layer-stale .mpie-layer-dot{color:#ffaa00}
.mpie-layer-missing .mpie-layer-dot{color:#e05555}
.mpie-layer-name{color:var(--t2);letter-spacing:.05em}
.mpie-layer-date{color:var(--t3);font-family:var(--mono);font-size:9px;font-weight:400}
.mpie-expected{font-family:var(--cond);font-size:9px;color:var(--t3);margin-left:auto;
  letter-spacing:.04em;text-transform:uppercase}
/* Sections */
.mpie-section{background:var(--bg2);border:1px solid var(--border2);border-radius:4px;overflow:hidden}
.mpie-section-hdr{display:flex;align-items:center;justify-content:space-between;
  padding:8px 14px;border-bottom:1px solid var(--border2);background:var(--bg3)}
.mpie-section-title{font-family:var(--cond);font-size:10px;font-weight:800;
  letter-spacing:.07em;text-transform:uppercase;color:var(--t2)}
.mpie-section-body{padding:14px}
/* Gate banner */
.mpie-gate-banner{font-family:var(--cond);font-weight:800;font-size:12px;letter-spacing:.08em;
  text-transform:uppercase;padding:8px 14px;border-radius:3px;text-align:center;margin-bottom:12px}
.mpie-gate-on{background:rgba(62,200,124,.15);color:#3ec87c;border:1px solid rgba(62,200,124,.3)}
.mpie-gate-off{background:rgba(224,85,85,.12);color:#e05555;border:1px solid rgba(224,85,85,.25)}
/* Gate reason chips */
.mpie-gate-reasons{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.mpie-chip{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.04em;
  padding:3px 8px;border-radius:10px;text-transform:uppercase}
.mpie-chip-quality{background:rgba(255,170,0,.14);color:#ffaa00;border:1px solid rgba(255,170,0,.3)}
.mpie-chip-calibration{background:rgba(74,158,255,.14);color:#4a9eff;border:1px solid rgba(74,158,255,.3)}
.mpie-chip-ev{background:rgba(224,85,85,.14);color:#e05555;border:1px solid rgba(224,85,85,.25)}
.mpie-chip-other{background:var(--bg3);color:var(--t3);border:1px solid var(--border2)}
/* Metrics grid */
.mpie-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
@media(max-width:680px){.mpie-metrics-grid{grid-template-columns:repeat(2,1fr)}}
.mpie-metric-block{background:var(--bg3);border-radius:3px;padding:10px 12px}
.mpie-metric-label{font-family:var(--cond);font-size:8px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--t3);margin-bottom:4px}
.mpie-metric-val{font-family:var(--mono);font-size:17px;font-weight:700;color:var(--t1);
  margin-bottom:2px}
.mpie-metric-sub{font-family:var(--cond);font-size:8px;color:var(--t3)}
.mpie-pos{color:#3ec87c}
.mpie-neg{color:#e05555}
/* Parameters row */
.mpie-params-row{display:flex;flex-wrap:wrap;gap:12px;padding:8px 0;margin-bottom:8px;
  border-top:1px solid var(--border2);border-bottom:1px solid var(--border2)}
.mpie-param-item{font-family:var(--mono);font-size:11px;color:var(--t2)}
.mpie-param-lbl{font-family:var(--cond);font-size:8px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--t3);margin-right:3px}
/* Fallback warning */
.mpie-fallback-warn{font-family:var(--cond);font-size:9px;font-weight:700;
  color:#ffaa00;background:rgba(255,170,0,.1);border:1px solid rgba(255,170,0,.25);
  border-radius:3px;padding:5px 10px;margin-top:8px}
/* Active window chips */
.mpie-win-summary{margin-top:10px}
.mpie-win-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}
.mpie-win-chip{font-family:var(--mono);font-size:9px;padding:2px 8px;border-radius:2px;
  background:var(--bg3);border:1px solid var(--border2);color:var(--t3)}
/* History chart */
.mpie-chart-wrap{height:220px;background:var(--bg2);border:1px solid var(--border2);
  border-radius:3px;overflow:hidden}
.mpie-chart-wrap>div{background:transparent !important}
/* Windows toggle button */
.mpie-windows-toggle-btn{font-family:var(--cond);font-size:9px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;padding:4px 12px;border-radius:3px;
  border:1px solid var(--border2);background:var(--bg3);color:var(--t2);cursor:pointer}
.mpie-windows-toggle-btn:hover{color:var(--t1);border-color:var(--t3)}
/* Windows detail table */
.mpie-win-tbl{width:100%;border-collapse:collapse;font-size:9px}
.mpie-win-tbl th{font-family:var(--cond);color:var(--t3);font-weight:700;letter-spacing:.07em;
  font-size:8px;padding:5px 8px;text-align:right;border-bottom:1px solid var(--border2);
  background:var(--bg3)}
.mpie-win-tbl th:first-child,.mpie-win-tbl td:first-child{text-align:left}
.mpie-win-tbl td{padding:4px 8px;color:var(--t2);border-bottom:1px solid rgba(255,255,255,.04);
  text-align:right;font-family:var(--mono);font-size:8.5px}
.mpie-win-tbl tr:hover td{background:rgba(255,255,255,.03)}
.mpie-ws-high{color:#3ec87c;font-weight:700}
.mpie-ws-mid{color:#ffaa00}
.mpie-ws-low{color:#e05555}
/* General helpers */
.mpie-loading{font-family:var(--cond);font-size:10px;color:var(--t3);font-weight:700}
.mpie-err{font-family:var(--cond);font-size:10px;color:#e05555;font-weight:700}
.mpie-no-data{font-family:var(--cond);font-size:10px;color:var(--t3);font-style:italic}
.nbtest-trades-tbl tr.trade-row-pos:hover td{background:rgba(62,200,124,.13)}
.nbtest-trades-tbl tr.trade-row-neg:hover td{background:rgba(224,85,85,.14)}
.nbtest-trades-tbl td.ts-cell{color:var(--t3);font-size:8px;white-space:nowrap;letter-spacing:.02em}
.nbtest-trades-tbl td.side-buy{color:#3ec87c;font-weight:700}
.nbtest-trades-tbl td.side-sell{color:#e05555;font-weight:700}
.nbtest-pager{display:flex;justify-content:center;gap:5px;margin-top:10px;padding-bottom:4px}
/* DB status box */
.nbt-db-status-box{background:var(--bg2);border:1px solid var(--border2);border-radius:3px;
  padding:8px 10px;font-size:9px}
.nbt-db-ok{color:#3ec87c}
.nbt-db-warn{color:#ffaa00}
.nbt-db-err{color:#e06060}
/* Upload area */
.nbt-upload-area{border:2px dashed var(--border2);border-radius:4px;padding:16px 12px;
  text-align:center;cursor:pointer;transition:all .2s;background:rgba(255,255,255,.02)}
.nbt-upload-area:hover,.nbt-upload-area.drag{border-color:var(--acc);
  background:rgba(77,166,255,.05)}
.nbt-upload-icon{font-size:22px;opacity:.4;margin-bottom:6px}
.nbt-upload-hint{font-size:9px;color:var(--t3);margin-bottom:6px}
.nbt-upload-btn{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;padding:4px 12px;border-radius:2px;cursor:pointer;
  background:rgba(77,166,255,.1);color:var(--acc);border:1px solid rgba(77,166,255,.3);
  display:inline-block;transition:all .15s}
.nbt-upload-btn:hover{background:rgba(77,166,255,.2)}
.nbt-upload-result-ok{padding:8px 10px;background:rgba(62,200,124,.08);
  border:1px solid rgba(62,200,124,.25);border-radius:3px;font-size:9px;color:#3ec87c;line-height:1.6}
.nbt-upload-result-err{padding:8px 10px;background:#200f0f;border:1px solid #5a1e1e;
  border-radius:3px;font-size:9px;color:#e06060;line-height:1.6}
/* Validation steps (upload result) */
.nbt-validation-steps{padding:8px 10px;border-radius:3px;font-size:9px;margin-top:4px}
.nbt-validation-steps.ok{background:rgba(62,200,124,.07);border:1px solid rgba(62,200,124,.22)}
.nbt-validation-steps.err{background:rgba(224,85,85,.07);border:1px solid rgba(224,85,85,.22)}
.nbt-vstep{display:flex;align-items:flex-start;gap:6px;padding:3px 0;line-height:1.4}
.nbt-vstep-icon{flex-shrink:0;font-size:10px;width:14px;text-align:center;margin-top:1px}
.nbt-vstep-body{flex:1}
.nbt-vstep-label{font-family:var(--cond);font-weight:700;letter-spacing:.05em}
.nbt-vstep.vstep-ok .nbt-vstep-label{color:#3ec87c}
.nbt-vstep.vstep-err .nbt-vstep-label{color:#e05555}
.nbt-vstep.vstep-skip .nbt-vstep-label{color:var(--t3)}
.nbt-vstep-detail{color:var(--t3);font-size:8.5px;margin-top:1px}
.nbt-upload-ok-banner{padding:6px 10px;background:rgba(62,200,124,.08);
  border:1px solid rgba(62,200,124,.25);border-radius:3px 3px 0 0;color:#3ec87c;
  font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.08em;
  display:flex;align-items:center;gap:8px}
.nbt-tick-badge{background:rgba(220,80,80,.15);border:1px solid rgba(220,80,80,.4);
  border-radius:3px;padding:1px 6px;font-size:9px;color:#e07070;letter-spacing:.06em}
.nbt-upload-warnings{margin-top:6px;padding:8px 10px;background:rgba(255,170,0,.07);
  border:1px solid rgba(255,170,0,.22);border-radius:3px;font-size:8.5px;color:#ffaa00;line-height:1.5}
.nbt-upload-warning{padding:2px 0}
/* User strategy list */
.nbt-list-empty{color:var(--t3);font-size:9px;padding:6px 2px}
.nbt-strategy-item{display:flex;align-items:center;gap:7px;padding:7px 8px;
  background:var(--bg2);border:1px solid var(--border2);border-radius:3px;
  margin-bottom:5px;cursor:pointer;transition:border-color .15s}
.nbt-strategy-item:hover{border-color:var(--border)}
.nbt-strategy-item.selected{border-color:var(--acc);background:rgba(77,166,255,.06)}
.nbt-strategy-badge{flex-shrink:0;font-family:var(--cond);font-size:7px;font-weight:800;
  letter-spacing:.09em;padding:2px 5px;border-radius:2px;text-transform:uppercase}
.nbt-strategy-badge.ok{background:rgba(62,200,124,.15);color:#3ec87c;border:1px solid rgba(62,200,124,.3)}
.nbt-strategy-badge.err{background:rgba(224,85,85,.15);color:#e05555;border:1px solid rgba(224,85,85,.3)}
.nbt-strategy-info{flex:1;min-width:0}
.nbt-strategy-name{font-family:var(--cond);font-size:10px;font-weight:700;color:var(--t1);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nbt-strategy-meta{font-size:8px;color:var(--t3);margin-top:1px;font-family:var(--mono)}
.nbt-strategy-warn-hint{font-size:8px;color:#ffaa00;margin-top:2px}
.nbt-strategy-err-hint{font-size:8px;color:#e05555;margin-top:2px}
.nbt-strategy-delete{flex-shrink:0;background:none;border:none;color:var(--t3);
  cursor:pointer;font-size:13px;padding:2px 4px;border-radius:2px;line-height:1;
  transition:color .15s,background .15s}
.nbt-strategy-delete:hover{color:#e05555;background:rgba(224,85,85,.12)}
/* Refresh button next to section header */
.nbt-refresh-btn{background:none;border:none;color:var(--t3);cursor:pointer;
  font-size:13px;padding:0 3px;line-height:1;vertical-align:middle;
  transition:color .15s;margin-left:4px}
.nbt-refresh-btn:hover{color:var(--acc)}
/* Plugin BT shared – start button */
.bt-run-btn{font-family:var(--cond);font-size:12px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;padding:9px 0;border-radius:3px;cursor:pointer;
  background:linear-gradient(135deg,rgba(77,166,255,.15),rgba(77,166,255,.05));
  color:var(--acc);border:1px solid rgba(77,166,255,.4);width:100%;
  transition:all .2s;box-shadow:0 0 0 0 rgba(77,166,255,0)}
.bt-run-btn:hover{background:rgba(77,166,255,.22);box-shadow:0 0 18px rgba(77,166,255,.3);
  border-color:var(--acc)}
.bt-run-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}
/* Plugin BT metric cards (JS-rendered) */
.bt-metric-card{background:var(--bg2);border:1px solid var(--border2);padding:12px 14px;
  border-radius:4px;transition:border-color .15s}
.bt-metric-card:hover{border-color:var(--border)}
.bt-metric-lbl{font-size:8px;color:var(--t3);letter-spacing:.09em;font-family:var(--cond);
  text-transform:uppercase;margin-bottom:6px}
.bt-metric-val{font-size:22px;font-family:var(--cond);color:var(--t1);font-weight:800;line-height:1}
.bt-metric-val.pos{color:#3ec87c}
.bt-metric-val.neg{color:#e05555}
.bt-metric-sub{font-size:9px;color:var(--t3);margin-top:4px;font-family:var(--mono)}
/* Pager buttons (JS-rendered) */
.nbt-pager-btn{background:var(--bg2);color:var(--t2);border:1px solid var(--border2);
  padding:3px 10px;font-size:9px;cursor:pointer;font-family:var(--cond);
  letter-spacing:.04em;border-radius:2px;transition:all .15s}
.nbt-pager-btn:hover{border-color:var(--acc);color:var(--acc)}
.nbt-pager-btn.active{background:var(--acc);color:#000;border-color:var(--acc);font-weight:700}

/* ── Discovery Modal v2 ───────────────────────────────────────────── */
#sd-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);
  z-index:9000;align-items:stretch;justify-content:stretch;padding:0}
#sd-overlay.open{display:flex}
#sd-modal{background:var(--bg1);border:none;border-radius:0;
  width:100vw;height:100vh;display:flex;flex-direction:column;
  overflow:hidden;box-shadow:none}
/* 3-column body */
#disc-body{display:flex;flex:1;overflow:hidden;min-height:0}
#disc-config{width:260px;min-width:240px;flex-shrink:0;padding:14px 12px;overflow-y:auto;
  display:flex;flex-direction:column;gap:0;border-right:1px solid var(--border);
  background:var(--bg1)}
#disc-config select,#disc-config input{width:100%;background:var(--bg3);
  border:1px solid var(--border2);color:var(--t1);padding:4px 7px;font-size:10px;
  font-family:var(--cond);letter-spacing:.04em;box-sizing:border-box;margin-bottom:4px}
#disc-center{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;
  border-right:1px solid var(--border)}
#disc-right{width:300px;min-width:240px;flex-shrink:0;display:flex;flex-direction:column;
  overflow:hidden;background:var(--bg0)}
/* Shared panel */
.disc-panel{display:flex;flex-direction:column;border-bottom:1px solid var(--border);padding:8px 10px}
.disc-panel:last-child{border-bottom:none}
.disc-panel-hdr{display:flex;align-items:center;justify-content:space-between;
  font-family:var(--cond);font-size:8.5px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--t3);margin-bottom:6px;flex-shrink:0}
.disc-hdr-btn{background:var(--bg3);border:1px solid var(--border2);color:var(--t2);
  font-size:11px;cursor:pointer;border-radius:2px;padding:1px 6px;line-height:1.4}
.disc-hdr-btn:hover{border-color:var(--acc);color:var(--acc)}
/* Config labels */
.disc-lbl{font-size:8px;color:var(--t3);font-family:var(--cond);letter-spacing:.06em;
  font-weight:700;text-transform:uppercase;display:block;margin-top:6px;margin-bottom:2px}
.disc-lbl-hint{font-size:7px;color:var(--t3);font-weight:400;letter-spacing:0;
  text-transform:none}
.disc-grid-info{font-size:8px;color:var(--t3);margin-top:4px;line-height:1.4;
  padding:4px 6px;background:rgba(255,255,255,.03);border-radius:2px;border-left:2px solid var(--border2)}
.disc-msg{font-size:9px;min-height:16px;margin-bottom:6px;line-height:1.4}
/* Param-Range-Editor */
.disc-range-toggle{width:100%;text-align:left;background:none;border:none;border-top:1px solid var(--brd);
  color:var(--t3);font-size:9px;padding:4px 0;cursor:pointer;font-family:var(--cond)}
.disc-range-toggle:hover{color:var(--t2)}
.disc-param-tbl{width:100%;border-collapse:collapse;font-size:10px;margin-top:4px;table-layout:fixed}
.disc-param-tbl col.col-name{width:auto;min-width:48px}
.disc-param-tbl col.col-std{width:36px}
.disc-param-tbl col.col-num{width:40px}
.disc-param-tbl th{color:var(--t3);font-size:9px;font-weight:600;text-align:right;padding:2px 3px 3px;border-bottom:1px solid var(--brd);overflow:hidden;white-space:nowrap}
.disc-param-tbl th:first-child{text-align:left}
.disc-param-tbl td{padding:2px 3px;vertical-align:middle}
.disc-param-tbl td:not(:first-child){text-align:right}
.disc-param-tbl .disc-pname{color:var(--t2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block}
.disc-param-tbl .disc-rinp{width:100%;background:var(--bg2);border:1px solid var(--brd);
  color:var(--t1);padding:2px 4px;border-radius:3px;font-size:10px;text-align:right;
  box-sizing:border-box}
.disc-param-tbl .disc-rinp:focus{border-color:var(--acc);outline:none}
.disc-param-tbl .disc-fixed{color:var(--t3);font-size:9px}
.disc-param-tbl .disc-std{color:var(--acc);font-size:9px;text-align:right}
/* Override #disc-config input defaults for table inputs */
#disc-config .disc-param-tbl input{width:100%!important;padding:2px 4px!important;
  margin-bottom:0!important;box-sizing:border-box!important;pointer-events:auto!important}
.disc-range-reset{font-size:9px;color:var(--t3);background:none;border:none;cursor:pointer;padding:2px 0;margin-top:3px}
.disc-range-reset:hover{color:var(--t2)}
/* Source chip */
.disc-source-chip{font-size:8px;color:var(--acc);background:rgba(77,166,255,.08);
  border:1px solid rgba(77,166,255,.25);border-radius:3px;padding:3px 7px;
  margin-top:2px;margin-bottom:4px;line-height:1.5;display:block}
/* Runs list */
.disc-runs-list{max-height:130px;overflow-y:auto}
.disc-run-row{display:flex;align-items:center;gap:6px;padding:4px 6px;cursor:pointer;
  border-radius:2px;border-bottom:1px solid rgba(255,255,255,.03);font-size:9px}
.disc-run-row:hover{background:rgba(255,255,255,.04)}
.disc-run-row.active{background:rgba(77,166,255,.08);border-left:2px solid var(--acc)}
.disc-run-dot{font-size:10px;flex-shrink:0}
.disc-run-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.disc-run-meta{font-size:8px;color:var(--t3);flex-shrink:0}
/* Progress */
.disc-progress-wrap{padding:8px 10px!important}
.disc-progress-hdr{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}
.disc-progress-label{font-size:9px;color:var(--t2)}
.disc-progress-pct{font-family:var(--cond);font-size:11px;font-weight:800;color:var(--acc)}
.disc-progress-track{height:5px;background:var(--bg2);border-radius:3px;overflow:hidden;margin-bottom:3px}
.disc-progress-bar{height:100%;background:var(--acc);transition:width .4s ease;border-radius:3px}
.disc-progress-detail{font-size:8px;color:var(--t3);font-family:var(--mono)}
/* Candidates */
.disc-candidates-body{flex:1;overflow-y:auto;min-height:0}
.disc-run-badge{font-size:8px;color:var(--t3);font-family:var(--mono)}
.disc-cand-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:6px 0;border-bottom:1px solid var(--border2)}
.disc-cand-stat{background:var(--bg2);border:1px solid var(--border);border-radius:3px;padding:5px 8px;text-align:center}
.disc-cand-stat-lbl{font-size:7px;color:var(--t3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}
.disc-cand-stat-val{font-family:var(--cond);font-size:13px;font-weight:800;color:var(--t1)}
.disc-empty{font-size:9px;color:var(--t3);padding:8px 4px;display:block}
/* Detail modal */
#disc-detail-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);
  z-index:9200;align-items:center;justify-content:center;padding:12px}
#disc-detail-overlay.open{display:flex}
#disc-detail-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:4px;
  width:min(1480px,100vw);height:100vh;max-height:100vh;display:flex;flex-direction:column;
  overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.9)}
.disc-detail-body{padding:18px 22px;overflow-y:auto;flex:1;min-height:0}
.disc-detail-footer{border-top:1px solid var(--border);padding:10px 22px;flex-shrink:0;background:rgba(0,0,0,.18)}
.disc-metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}
.disc-metric{background:var(--bg2);border:1px solid var(--border);border-radius:3px;padding:6px 10px}
.disc-metric-lbl{font-size:7.5px;color:var(--t3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:2px}
.disc-metric-val{font-family:var(--cond);font-size:15px;font-weight:800;color:var(--t1)}
.disc-metric-val.good{color:var(--buy)}
.disc-metric-val.bad{color:var(--sell)}
.disc-pnl-pos{color:var(--buy)!important}
.disc-pnl-neg{color:var(--sell)!important}
.disc-params-tbl{width:100%;border-collapse:collapse;font-size:9px;margin-top:4px}
.disc-params-tbl td{padding:3px 8px;border-bottom:1px solid rgba(255,255,255,.04)}
.disc-params-tbl td:first-child{color:var(--t3);font-family:var(--cond);font-size:8px;
  letter-spacing:.04em;width:50%}
.disc-params-tbl td:last-child{color:var(--t1);font-family:var(--mono);text-align:right}
.disc-col-r{text-align:right}
.disc-affinity{margin-top:16px}
.disc-affinity-note{display:flex;justify-content:space-between;gap:12px;align-items:center;
  font-size:9px;color:var(--t3);border:1px solid var(--border2);background:rgba(255,255,255,.025);
  border-radius:4px;padding:7px 10px;margin:6px 0 10px}
.disc-aff-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:12px;align-items:start}
.disc-day-stack{display:flex;flex-direction:column;gap:10px}
.disc-day-card{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);border-radius:5px;overflow:hidden}
.disc-day-card.is-allowed{border-color:rgba(45,214,139,.25);box-shadow:inset 3px 0 0 rgba(45,214,139,.75)}
.disc-day-head{display:grid;grid-template-columns:minmax(180px,1fr) repeat(5,max-content);gap:14px;
  align-items:center;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.disc-day-title{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:var(--t1)}
.disc-day-dot{font-size:10px;color:var(--t3)}
.disc-day-card.is-allowed .disc-day-dot{color:var(--buy)}
.disc-day-stat{font-family:var(--mono);font-size:9px;color:var(--t3);white-space:nowrap}
.disc-day-stat b{font-size:10px;color:var(--t1)}
.disc-aff-table{width:100%;border-collapse:collapse;font-size:10px;table-layout:fixed}
.disc-aff-table th{font-size:8px;color:var(--t3);font-family:var(--cond);letter-spacing:.08em;text-align:right;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.08)}
.disc-aff-table th:first-child,.disc-aff-table th:last-child{text-align:left}
.disc-aff-table td{padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.055);text-align:right;vertical-align:top}
.disc-aff-table td:first-child,.disc-aff-table td:last-child{text-align:left}
.disc-aff-label{display:flex;align-items:center;gap:7px;color:var(--t2);font-weight:650}
.disc-aff-row-allowed .disc-aff-label{color:var(--t1)}
.disc-aff-pnl-pos,.disc-aff-ev-pos{color:var(--buy)!important;font-weight:800}
.disc-aff-pnl-neg,.disc-aff-ev-neg{color:var(--sell)!important;font-weight:800}
.disc-aff-pnl-zero{color:var(--t3)!important}
.disc-micro-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:4px}
.disc-micro-chip{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.035);border-radius:4px;padding:3px 6px;min-width:0}
.disc-micro-chip.good{border-color:rgba(45,214,139,.28);background:rgba(45,214,139,.09)}
.disc-micro-chip.bad{border-color:rgba(255,80,110,.22);background:rgba(255,80,110,.07)}
.disc-micro-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--t2)}
.disc-micro-pnl{font-family:var(--mono);font-size:9px}
.disc-day-micro-summary{padding:7px 10px;font-size:9px;color:var(--t3);border-top:1px solid rgba(255,255,255,.055)}
.disc-aff-side{display:flex;flex-direction:column;gap:10px}
.disc-aff-side-card{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);border-radius:5px;padding:9px}
.disc-aff-side-title{font-size:9px;color:var(--t2);font-family:var(--cond);letter-spacing:.09em;font-weight:800;margin-bottom:6px}
@media (max-width: 980px){
  .disc-aff-grid{grid-template-columns:1fr}
  .disc-day-head{grid-template-columns:1fr repeat(2,max-content)}
  .disc-day-stat:nth-child(n+4){display:none}
}
.sd-card,.sd-dir-card{min-width:0}
.sd-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:12px}
.sd-stat{background:var(--bg3);border:1px solid var(--border);border-radius:4px;padding:6px 8px}
.sd-stat-lbl{font-size:7.5px;color:var(--t3);letter-spacing:.07em;font-weight:700;text-transform:uppercase;margin-bottom:3px}
.sd-stat-val{font-family:var(--cond);font-size:15px;font-weight:800}
.sd-card{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:10px 12px}
.sd-kicker{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.sd-note{font-size:9px;color:var(--t3);line-height:1.45}
.sd-top-wrap{display:grid;grid-template-columns:1.4fr .9fr;gap:8px}
.sd-mini{font-size:9px;color:var(--t2);line-height:1.5}
.sd-dir-wrap{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.sd-dir-card{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:10px 12px}
.sd-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}
.sd-pick{background:var(--bg3);border:1px solid var(--border2);border-radius:4px;padding:8px}
.sd-pick,.sd-fav-item,.sd-click-row{cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.sd-pick:hover,.sd-fav-item:hover,.sd-click-row:hover{border-color:var(--acc);transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.sd-pick-lbl{font-size:7.5px;color:var(--t3);letter-spacing:.08em;text-transform:uppercase;font-weight:700;margin-bottom:4px}
.sd-pick-name{font-family:var(--cond);font-size:11px;font-weight:700;color:var(--t1);line-height:1.25;margin-bottom:4px}
.sd-pick-meta{font-size:8.5px;color:var(--t2);line-height:1.45}
.sd-empty{font-size:9px;color:var(--t3);line-height:1.5}
.sd-badge-row{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:4px}
.sd-mark{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:999px;font-size:7.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.sd-mark.favorite{background:rgba(255,170,0,.14);border:1px solid rgba(255,170,0,.35);color:#ffaa00}
.sd-mark.reject{background:rgba(255,77,77,.14);border:1px solid rgba(255,77,77,.35);color:var(--sell)}
.sd-mark.adopt{background:rgba(70,200,120,.14);border:1px solid rgba(70,200,120,.35);color:var(--buy)}
.sd-mark.live{background:rgba(90,170,255,.14);border:1px solid rgba(90,170,255,.35);color:#7db7ff}
.sd-favorites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sd-fav-item{background:var(--bg3);border:1px solid var(--border2);border-radius:4px;padding:8px}
.sd-fav-title{font-family:var(--cond);font-size:11px;font-weight:700;color:var(--t1);line-height:1.25;margin-bottom:4px}
.sd-fav-meta{font-size:8.5px;color:var(--t2);line-height:1.45}
/* ── Discovery Favorites 4-Group Layout ── */
.sd-fav-family-wrap{margin-top:0}
.sd-fav-family-wrap+.sd-fav-family-wrap{margin-top:10px}
.sd-fav-family-hdr{display:flex;align-items:center;gap:6px;font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;background:rgba(255,255,255,.03);border:1px solid var(--border2);border-radius:3px;margin-bottom:8px}
.sd-fav-dir-wrap{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sd-fav-dir-hdr{font-family:var(--cond);font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:3px;margin-bottom:6px;display:inline-flex;align-items:center;gap:4px;border:1px solid transparent}
.sd-fav-dir-hdr.buy{background:rgba(70,200,120,.1);color:var(--buy);border-color:rgba(70,200,120,.25)}
.sd-fav-dir-hdr.sell{background:rgba(255,77,77,.1);color:var(--sell);border-color:rgba(255,77,77,.25)}
.sd-fav-empty{font-size:8px;color:var(--t3);padding:6px 4px;font-style:italic;line-height:1.4}
.sd-fav-score{font-size:8px;color:var(--acc);margin-top:2px}
.sd-detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10px;margin-top:10px}
.sd-detail-card{background:var(--bg3);border:1px solid var(--border2);border-radius:4px;padding:10px}
.sd-detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-top:10px}
.sd-act-btn{font-family:var(--cond);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;border-radius:3px;cursor:pointer;background:var(--bg3);border:1px solid var(--border2);color:var(--t1)}
.sd-act-btn:hover{border-color:var(--acc)}
.sd-act-btn.reject{color:var(--sell);border-color:rgba(255,77,77,.35)}
.sd-act-btn.favorite{color:#ffaa00;border-color:rgba(255,170,0,.35)}
.sd-act-btn.adopt{color:var(--buy);border-color:rgba(70,200,120,.35)}
.sd-toggle-btn{margin-left:auto;background:transparent;border:1px solid var(--border2);color:var(--t2);border-radius:3px;padding:3px 8px;font-family:var(--cond);font-size:10px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.sd-toggle-btn:hover{border-color:var(--acc);color:var(--t1)}
.sd-collapsed{display:none}
.sd-indeterminate-bar{width:35% !important;animation:sdIndeterminate 1.2s ease-in-out infinite}
@keyframes sdIndeterminate{
  0%{transform:translateX(-90%)}
  50%{transform:translateX(70%)}
  100%{transform:translateX(220%)}
}
.sd-diff-up{color:var(--buy);font-weight:700}
.sd-diff-down{color:var(--sell);font-weight:700}
.sd-diff-same{color:var(--t2)}
.sd-diff-cell-up{color:var(--buy);font-weight:700;background:rgba(70,200,120,.08)}
.sd-diff-cell-down{color:var(--sell);font-weight:700;background:rgba(255,77,77,.08)}
.sd-diff-cell-same{color:var(--t2);background:rgba(255,255,255,.03)}
.sd-diff-note{font-size:8px;letter-spacing:.06em;text-transform:uppercase}
#sd-detail-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9100;align-items:center;justify-content:center}
#sd-detail-overlay.open{display:flex}
#disc-detail-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9200;align-items:center;justify-content:center;padding:0}
#disc-detail-overlay.open{display:flex}
#disc-detail-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:0;width:100vw;height:100vh;max-height:100vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 16px 48px rgba(0,0,0,.8)}
#sd-detail-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:6px;width:min(96vw,1280px);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 64px rgba(0,0,0,.8)}
#sd-detail-body{padding:12px 14px;overflow:auto}
.sd-param-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:8px}
.sd-param-box{background:var(--bg3);border:1px solid var(--border2);border-radius:4px;padding:8px}
.sd-param-hdr{font-size:8px;color:var(--t3);letter-spacing:.08em;text-transform:uppercase;font-weight:700;margin-bottom:5px}
.sd-param-box code{font-size:8.5px;color:var(--t1)}
@media (max-width: 900px){
  /* #sd-modal already 100vw/100vh from base rule */
  .sd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sd-top-wrap{grid-template-columns:1fr}
  .sd-dir-wrap{grid-template-columns:1fr}
  .sd-picks{grid-template-columns:1fr}
  .sd-favorites{grid-template-columns:1fr}
  .sd-param-grid{grid-template-columns:1fr}
  .sd-detail-grid{grid-template-columns:1fr}
}

/* ── Import & Schnittstelle Modal ───────────────────────────────────── */
#iface-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.80);
  z-index:9100;align-items:center;justify-content:center}
#iface-overlay.open{display:flex}
#iface-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:6px;
  width:min(860px,96vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 24px 64px rgba(0,0,0,.85)}
.iface-copy-btn{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;padding:4px 10px;border-radius:3px;cursor:pointer;
  background:rgba(77,166,255,.08);color:var(--acc);border:1px solid rgba(77,166,255,.3);
  transition:all .15s;white-space:nowrap}
.iface-copy-btn:hover{background:rgba(77,166,255,.2)}
.iface-copy-btn.copied{background:rgba(60,200,90,.15);color:#3cc85a;border-color:rgba(60,200,90,.4)}
.iface-section{margin-bottom:8px;border:1px solid var(--border);border-radius:4px;overflow:hidden}
.iface-section-hdr{display:flex;align-items:center;gap:8px;padding:7px 10px;
  background:var(--bg2);cursor:pointer;user-select:none;font-family:var(--cond);
  font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--t2)}
.iface-section-hdr:hover{background:var(--bg3);color:var(--t1)}
.iface-section-hdr .iface-chevron{font-size:8px;margin-left:auto;color:var(--t3);transition:transform .2s}
.iface-section-hdr.open .iface-chevron{transform:rotate(180deg)}
.iface-section-body{display:none;padding:10px 12px;background:var(--bg1)}
.iface-section-body.open{display:block}
.iface-field-tbl{width:100%;border-collapse:collapse;font-size:9px}
.iface-field-tbl th{text-align:left;font-family:var(--cond);font-size:8px;letter-spacing:.07em;
  text-transform:uppercase;color:var(--t3);font-weight:700;padding:4px 6px;
  border-bottom:1px solid var(--border2)}
.iface-field-tbl td{padding:4px 6px;border-bottom:1px solid var(--border);color:var(--t2);
  vertical-align:top;line-height:1.5}
.iface-field-tbl tr:last-child td{border-bottom:none}
.iface-field-tbl td:first-child{font-family:var(--mono);color:var(--acc);white-space:nowrap}
.iface-badge{display:inline-block;padding:1px 5px;border-radius:2px;font-size:7.5px;
  font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-left:4px}
.iface-badge.req{background:rgba(255,80,80,.12);color:#ff6060;border:1px solid rgba(255,80,80,.25)}
.iface-badge.opt{background:rgba(77,166,255,.10);color:var(--acc);border:1px solid rgba(77,166,255,.25)}
.iface-rule-list{list-style:none;padding:0;margin:0}
.iface-rule-list li{padding:5px 0;border-bottom:1px solid var(--border);font-size:9px;
  color:var(--t2);line-height:1.55}
.iface-rule-list li:last-child{border-bottom:none}
.iface-rule-list li strong{color:var(--t1);font-family:var(--cond);font-size:9.5px}
.iface-code-wrap{position:relative}
.iface-code-wrap pre{background:var(--bg0);border:1px solid var(--border2);border-radius:4px;
  padding:10px 12px;font-size:8.5px;font-family:var(--mono);color:var(--t1);
  overflow-x:auto;white-space:pre;line-height:1.55;margin:0}
.iface-code-copy{position:absolute;top:6px;right:6px}
.iface-enum-grid{display:flex;flex-wrap:wrap;gap:10px}
.iface-enum-block{min-width:140px}
.iface-enum-name{font-family:var(--cond);font-size:9px;font-weight:700;
  letter-spacing:.06em;color:var(--acc);text-transform:uppercase;margin-bottom:4px}
.iface-enum-val{font-family:var(--mono);font-size:8.5px;color:var(--t2);padding:2px 0}
.iface-step-list{counter-reset:step;padding:0;margin:0;list-style:none}
.iface-step-list li{counter-increment:step;display:flex;gap:8px;padding:5px 0;
  border-bottom:1px solid var(--border);font-size:9px;color:var(--t2);line-height:1.5}
.iface-step-list li:last-child{border-bottom:none}
.iface-step-list li::before{content:counter(step);flex-shrink:0;width:18px;height:18px;
  border-radius:50%;background:rgba(77,166,255,.12);border:1px solid rgba(77,166,255,.3);
  display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;
  color:var(--acc);font-family:var(--cond)}


/* CRT scanlines */
body::after{content:'';position:fixed;inset:0;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,
    rgba(0,0,0,.025) 2px,rgba(0,0,0,.025) 4px);
  pointer-events:none;z-index:9998}


/* ── Strategy Library Modal ───────────────────────────────────────────── */
#lib-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);
  z-index:9200;align-items:center;justify-content:center}
#lib-overlay.open{display:flex}
#lib-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:4px;
  width:min(1380px,97vw);height:min(880px,94vh);display:flex;flex-direction:column;
  overflow:hidden}
#lib-body{display:flex;flex:1;overflow:hidden;min-height:0}

/* ── List pane ── */
#lib-list-pane{width:290px;flex-shrink:0;border-right:1px solid var(--border);
  display:flex;flex-direction:column;background:var(--bg2)}
.lib-list-toolbar{display:flex;gap:6px;padding:8px 10px;
  border-bottom:1px solid var(--border)}
#lib-search{flex:1;background:var(--bg3);border:1px solid var(--border2);
  color:var(--t1);font-family:var(--mono);font-size:10px;padding:5px 8px;
  border-radius:3px;outline:none}
#lib-search:focus{border-color:var(--acc)}
.lib-refresh-btn{background:var(--bg4);border:1px solid var(--border2);color:var(--t3);
  cursor:pointer;border-radius:3px;padding:4px 8px;font-size:13px;flex-shrink:0}
.lib-refresh-btn:hover{color:var(--t1)}

/* Filters */
.lib-filters{display:flex;flex-direction:column;gap:4px;padding:7px 10px;
  border-bottom:1px solid var(--border);background:var(--bg1)}
.lib-filters select{background:var(--bg3);border:1px solid var(--border2);
  color:var(--t2);font-family:var(--mono);font-size:9px;padding:3px 6px;
  border-radius:3px;outline:none;width:100%;cursor:pointer}
.lib-filters select:focus{border-color:var(--acc)}
.lib-archived-toggle{display:flex;align-items:center;gap:5px;cursor:pointer;
  font-family:var(--cond);font-size:8.5px;font-weight:700;letter-spacing:.06em;
  color:var(--t3);padding:2px 0}
.lib-archived-toggle input{cursor:pointer;accent-color:var(--acc)}
.lib-list-count{font-size:8px;color:var(--t3);padding:4px 10px;
  border-bottom:1px solid var(--border);font-family:var(--cond)}

/* List items */
#lib-strategy-list{flex:1;overflow-y:auto;padding:4px 0}
.lib-strat-item{padding:8px 11px;cursor:pointer;border-bottom:1px solid var(--border);
  transition:background .1s;position:relative}
.lib-strat-item:hover{background:var(--bg3)}
.lib-strat-item.active{background:rgba(77,166,255,.09);border-left:2px solid var(--acc);
  padding-left:9px}
.lib-strat-item.archived{opacity:.5}
.lib-strat-item-hdr{display:flex;align-items:center;gap:6px;margin-bottom:2px}
.lib-strat-item-name{font-family:var(--cond);font-size:11px;font-weight:800;
  letter-spacing:.04em;color:var(--t1);flex:1;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.lib-strat-item-meta{font-size:8px;color:var(--t3);display:flex;gap:5px;
  align-items:center;flex-wrap:wrap;margin-top:1px}
.lib-strat-item-id{font-family:var(--mono);font-size:7px;color:var(--t3);
  opacity:.6;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lib-strat-chip-sm{font-size:7px;padding:1px 4px;border-radius:2px;
  border:1px solid var(--border2);color:var(--t3);background:var(--bg4);
  font-family:var(--cond);font-weight:700;letter-spacing:.04em}
.lib-empty-state{padding:20px;text-align:center;color:var(--t3);font-size:10px}

/* ── Detail pane ── */
#lib-detail-pane{flex:1;overflow-y:auto;padding:14px 18px;display:flex;
  flex-direction:column;gap:0;min-height:0}
.lib-detail-empty{display:flex;flex-direction:column;align-items:center;
  justify-content:center;height:100%;gap:10px;color:var(--t3);
  font-family:var(--cond);font-size:10px;letter-spacing:.05em;opacity:.5}

/* Blocks (Definition / Versionen / Evaluationen / Backtest) */
.lib-block{background:var(--bg2);border:1px solid var(--border);
  border-radius:4px;padding:12px 14px}
.lib-block-label{font-family:var(--cond);font-size:9px;font-weight:800;
  letter-spacing:.12em;color:var(--t3);text-transform:uppercase;margin-bottom:10px;
  display:flex;align-items:center;gap:4px}

/* Definition header */
.lib-detail-header{}
.lib-detail-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin-bottom:5px}
.lib-d-name{font-family:var(--cond);font-size:17px;font-weight:800;
  letter-spacing:.04em;color:var(--t1)}
.lib-detail-meta-row{display:flex;align-items:center;gap:6px;font-size:9px;
  color:var(--t3);margin-bottom:5px;flex-wrap:wrap}
.lib-d-id{font-family:var(--mono);font-size:8px;color:var(--acc);opacity:.8;
  background:var(--bg3);padding:1px 5px;border-radius:2px}
.lib-d-meta{font-size:9px;color:var(--t3)}
.lib-d-desc{font-size:10px;color:var(--t2);line-height:1.5;margin-bottom:6px}
.lib-sep{color:var(--border2)}
.lib-def-chips-row{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:5px}
.lib-def-chip{font-size:8px;padding:2px 7px;border-radius:3px;
  font-family:var(--cond);font-weight:700;letter-spacing:.05em;border:1px solid}
.lib-def-chip.cat{color:#4da6ff;border-color:rgba(77,166,255,.3);background:rgba(77,166,255,.07)}
.lib-def-chip.tf{color:#b39ddb;border-color:rgba(179,157,219,.3);background:rgba(179,157,219,.07)}
.lib-def-chip.instr{color:#ffcc80;border-color:rgba(255,204,128,.3);background:rgba(255,204,128,.07)}
.lib-def-chip.style{color:#80cbc4;border-color:rgba(128,203,196,.3);background:rgba(128,203,196,.07)}
.lib-detail-tags-row{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:5px}
.lib-tag{font-size:8px;padding:2px 6px;border-radius:999px;
  border:1px solid var(--border2);color:var(--t3);background:var(--bg3)}
.lib-def-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;
  padding-top:8px;border-top:1px solid var(--border)}

/* ── Status badges ── */
/* Used in list items AND detail header AND version cards */
.lib-status-badge{font-family:var(--cond);font-size:8px;font-weight:700;
  letter-spacing:.09em;padding:2px 7px;border-radius:999px;border:1px solid;
  text-transform:uppercase;white-space:nowrap}
/* draft – grau */
.lib-sb-draft{color:#888;border-color:rgba(136,136,136,.3);background:rgba(136,136,136,.07)}
/* tested – amber */
.lib-sb-tested{color:#ffaa00;border-color:rgba(255,170,0,.4);background:rgba(255,170,0,.09)}
/* promoted – blau */
.lib-sb-promoted{color:#4da6ff;border-color:rgba(77,166,255,.4);background:rgba(77,166,255,.1)}
/* canonical – grün (promoted + Canonical-Zeiger) */
.lib-sb-canonical{color:#00e676;border-color:rgba(0,230,118,.45);background:rgba(0,230,118,.1)}
/* archived – dunkelgrau */
.lib-sb-archived{color:#555;border-color:rgba(85,85,85,.3);background:rgba(85,85,85,.05)}

/* ── Action buttons ── */
.lib-action-btn{font-family:var(--cond);font-size:9px;font-weight:700;
  letter-spacing:.07em;padding:3px 10px;border-radius:3px;cursor:pointer;
  border:1px solid;transition:all .15s;white-space:nowrap}
.lib-btn-promote{color:#4da6ff;border-color:rgba(77,166,255,.4);background:rgba(77,166,255,.08)}
.lib-btn-promote:hover{background:rgba(77,166,255,.22)}
.lib-btn-canonical{color:#00e676;border-color:rgba(0,230,118,.4);background:rgba(0,230,118,.07)}
.lib-btn-canonical:hover{background:rgba(0,230,118,.2)}
.lib-btn-warn{color:var(--warn);border-color:rgba(255,170,0,.4);background:rgba(255,170,0,.07)}
.lib-btn-warn:hover{background:rgba(255,170,0,.2)}
.lib-btn-danger{color:var(--sell);border-color:rgba(255,51,85,.35);background:rgba(255,51,85,.07)}
.lib-btn-danger:hover{background:rgba(255,51,85,.2)}
.lib-btn-ref{color:#b39ddb;border-color:rgba(179,157,219,.35);background:rgba(179,157,219,.07)}
.lib-btn-ref:hover{background:rgba(179,157,219,.2)}
.lib-btn-neutral{color:var(--t3);border-color:var(--border2);background:var(--bg3)}
.lib-btn-neutral:hover{color:var(--t1);background:var(--bg4)}

/* Section sub-label */
.lib-section-sublabel{font-size:8.5px;color:var(--acc);font-weight:400;
  text-transform:none;letter-spacing:.04em;margin-left:6px;font-family:var(--mono)}

/* ── Versions list ── */
.lib-versions-list{display:flex;flex-direction:column;gap:6px}
.lib-version-card{background:var(--bg3);border:1px solid var(--border);
  border-radius:4px;padding:10px 12px;transition:border-color .15s}
.lib-version-card.canonical{border-color:rgba(0,230,118,.4);
  background:rgba(0,230,118,.03)}
.lib-version-card.selected{border-color:rgba(77,166,255,.5);
  background:rgba(77,166,255,.04)}
.lib-version-card.archived-card{opacity:.45}
.lib-ver-hdr{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.lib-ver-str{font-family:var(--cond);font-size:14px;font-weight:800;color:var(--t1)}
/* Params Table (Version Card) */
.lib-params-tbl{width:100%;border-collapse:collapse;font-size:9px;margin:5px 0 7px}
.lib-params-tbl thead tr{border-bottom:1px solid var(--sep)}
.lib-params-tbl th{font-size:7px;font-weight:700;letter-spacing:.06em;color:var(--t3);
  text-align:left;padding:0 4px 3px}
.lib-params-tbl th.lp-l{color:var(--buy)}
.lib-params-tbl th.lp-s{color:var(--sell)}
.lib-params-tbl td{padding:1px 4px;font-family:var(--mono)}
.lib-params-tbl td.lp-n{color:var(--t3);font-size:8px;width:45%}
.lib-params-tbl td.lp-v{color:var(--t1)}
.lib-params-tbl td.lp-l{color:var(--buy)}
.lib-params-tbl td.lp-s{color:var(--sell)}
.lib-params-tbl tr.lp-diff td.lp-n{color:var(--t2)}
.lib-disco-badge{display:inline-block;font-size:6px;font-weight:700;letter-spacing:.05em;
  background:rgba(77,166,255,.15);color:var(--acc);border-radius:2px;padding:0 3px;
  margin-left:4px;vertical-align:middle}
.lib-ver-hash{font-family:var(--mono);font-size:7px;color:var(--t3);opacity:.55}
.lib-ver-date{font-size:8px;color:var(--t3);margin-left:auto}
.lib-ver-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px;
  padding-top:7px;border-top:1px solid var(--border)}

/* Ref metrics */
.lib-ref-metrics{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0;padding:7px 10px;
  background:var(--bg2);border-radius:3px;border:1px solid var(--border)}
.lib-ref-metric{display:flex;flex-direction:column;align-items:center;min-width:58px}
.lib-ref-metric-label{font-size:7px;color:var(--t3);letter-spacing:.06em;
  font-family:var(--cond);font-weight:700;text-transform:uppercase;margin-bottom:2px}
.lib-ref-metric-val{font-size:12px;font-family:var(--num);font-weight:700;color:var(--t1)}
.lib-ref-metric-val.pos{color:var(--buy)}
.lib-ref-metric-val.neg{color:var(--sell)}

/* ── Evaluations list ── */
.lib-evals-list{display:flex;flex-direction:column;gap:5px}
.lib-eval-row{background:var(--bg3);border:1px solid var(--border);
  border-radius:3px;padding:7px 10px;display:flex;align-items:center;
  gap:8px;flex-wrap:wrap}
.lib-eval-row.is-ref{border-color:rgba(179,157,219,.5);
  background:rgba(179,157,219,.05)}
.lib-eval-state{font-size:8px;font-family:var(--cond);font-weight:700;
  letter-spacing:.07em;padding:2px 7px;border-radius:3px;white-space:nowrap}
.lib-eval-state.completed{color:var(--buy);background:rgba(0,230,118,.1)}
.lib-eval-state.running,.lib-eval-state.queued{color:var(--acc);
  background:rgba(77,166,255,.1)}
.lib-eval-state.failed{color:var(--sell);background:rgba(255,51,85,.1)}
.lib-eval-date{font-size:8px;font-family:var(--mono);color:var(--t3);
  white-space:nowrap;opacity:.7}
.lib-eval-meta{font-size:8.5px;color:var(--t3);white-space:nowrap}
.lib-eval-metrics{font-size:8.5px;color:var(--t2);display:flex;gap:8px;flex-wrap:wrap}
.lib-eval-metrics span{white-space:nowrap}
.lib-eval-ref-badge{font-size:7.5px;color:#b39ddb;border:1px solid rgba(179,157,219,.4);
  padding:1px 5px;border-radius:3px;font-family:var(--cond);font-weight:700;
  white-space:nowrap}
.lib-eval-actions{margin-left:auto;display:flex;gap:4px}

/* ── Backtest form ── */
.lib-bt-form{display:flex;flex-direction:column;gap:8px}
.lib-bt-form-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lib-bt-form-row label{font-size:8.5px;font-family:var(--cond);font-weight:700;
  letter-spacing:.07em;color:var(--t3);white-space:nowrap}
.lib-bt-form-row input[type=date],
.lib-bt-form-row input[type=time],
.lib-bt-form-row input[type=number],
.lib-bt-form-row select{background:var(--bg3);border:1px solid var(--border2);
  color:var(--t1);font-family:var(--mono);font-size:10px;padding:4px 7px;
  border-radius:3px;outline:none}
.lib-bt-form-row input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.5)}
.lib-bt-form-row input:focus,.lib-bt-form-row select:focus{border-color:var(--acc)}
.lib-bt-ref-label{display:flex;align-items:center;gap:5px;font-size:8.5px;
  color:var(--t3);cursor:pointer;font-family:var(--cond)}
#lib-bt-params-wrap{display:flex;flex-direction:column;gap:5px}
.lib-param-section-label{font-family:var(--cond);font-size:8px;font-weight:800;
  letter-spacing:.09em;color:var(--t3);text-transform:uppercase;margin-top:2px}
.lib-param-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lib-param-row label{font-size:8.5px;font-family:var(--cond);font-weight:700;
  color:var(--t3);min-width:110px}
.lib-param-row input{background:var(--bg3);border:1px solid var(--border2);
  color:var(--t1);font-family:var(--mono);font-size:10px;padding:4px 7px;
  border-radius:3px;outline:none;width:90px}
.lib-param-unit{font-size:8px;color:var(--t3)}
.lib-param-desc{font-size:7.5px;color:var(--t3);opacity:.65}
.lib-bt-actions{display:flex;align-items:center;gap:10px;padding-top:4px}
#lib-run-btn{font-family:var(--cond);font-size:11px;font-weight:800;
  letter-spacing:.07em;padding:7px 18px;background:var(--acc);color:#000;
  border:none;border-radius:3px;cursor:pointer;transition:background .15s}
#lib-run-btn:hover{background:#6ab7ff}
#lib-run-btn:disabled{opacity:.4;cursor:not-allowed}
.lib-bt-status{font-size:9px;color:var(--t3)}
.lib-bt-progress{display:flex;align-items:center;gap:8px}
.lib-bt-prog-bar{flex:1;height:4px;background:var(--bg0);border-radius:3px;
  border:1px solid var(--border);overflow:hidden}
#lib-bt-prog-inner{height:100%;background:var(--acc);width:0;transition:width .3s}

/* ══════════════════════════════════════════════════════════════════════════
   Trade Orchestrator — Trading Timeline
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Overlay & Modal ── */
#orch-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);
  z-index:9200;align-items:stretch;justify-content:stretch}
#orch-modal{background:var(--bg1);border:none;border-radius:0;
  width:100vw;height:100vh;display:flex;flex-direction:column;
  overflow:hidden}

/* ── Header extras ── */
.orch-hdr-day{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.06em;
  color:var(--t2);margin-left:12px}
.orch-hdr-mktstate{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.08em;
  padding:2px 8px;border-radius:2px;margin-left:8px}
.orch-mkt-trading{color:#7ecf7e;background:rgba(126,207,126,.12);border:1px solid rgba(126,207,126,.3)}
.orch-mkt-hold{color:#f5c842;background:rgba(245,200,66,.1);border:1px solid rgba(245,200,66,.3)}
.orch-mkt-closed{color:var(--t3);background:var(--bg4);border:1px solid var(--border2)}
.orch-refresh-btn{background:var(--bg4);border:1px solid var(--border2);color:var(--t3);
  cursor:pointer;border-radius:3px;padding:3px 8px;font-size:13px;flex-shrink:0}
.orch-refresh-btn:hover{color:var(--t1)}

/* ── Trading Timeline ── */
#orch-timeline{display:flex;height:44px;position:relative;flex-shrink:0;
  border-bottom:2px solid var(--border);overflow:hidden}
.orch-tl-seg{display:flex;flex-direction:column;justify-content:flex-end;
  padding:3px 7px 4px;position:relative;overflow:hidden;flex-shrink:0}
.orch-tl-closed{background:rgba(255,255,255,.03)}
.orch-tl-trading{background:rgba(126,207,126,.08);border-left:1px solid rgba(126,207,126,.3)}
.orch-tl-hold{background:rgba(245,200,66,.07);border-left:1px solid rgba(245,200,66,.35)}
.orch-tl-closed+.orch-tl-closed{border-left:1px solid rgba(255,255,255,.06)}
.orch-tl-phase{font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;white-space:nowrap;overflow:hidden}
.orch-tl-closed  .orch-tl-phase{color:var(--t3);opacity:.5}
.orch-tl-trading .orch-tl-phase{color:#7ecf7e}
.orch-tl-hold    .orch-tl-phase{color:#f5c842}
.orch-tl-tick{font-family:var(--mono);font-size:8px;color:var(--t3);opacity:.55;
  position:absolute;bottom:4px;left:7px}
.orch-tl-endtick{font-family:var(--mono);font-size:8px;color:var(--t3);opacity:.55;
  position:absolute;right:5px;bottom:6px;pointer-events:none}
/* Current-time needle */
#orch-tl-now{display:none;position:absolute;top:0;bottom:0;width:2px;
  background:rgba(255,255,255,.7);pointer-events:none;z-index:2;
  box-shadow:0 0 6px rgba(255,255,255,.45)}
#orch-tl-now::before{content:'';position:absolute;top:2px;left:50%;
  transform:translateX(-50%);width:6px;height:6px;border-radius:50%;
  background:#fff}

/* ── Body layout ── */
#orch-body{display:flex;flex:1;overflow:hidden;min-height:0}

/* ── Main pane (strategy rows) ── */
#orch-main{flex:1;display:flex;flex-direction:column;border-right:1px solid var(--border);
  min-width:0;background:var(--bg1)}
.orch-main-toolbar{display:flex;align-items:center;justify-content:space-between;
  padding:8px 14px;border-bottom:1px solid var(--border);flex-shrink:0}
.orch-pane-label{font-family:var(--cond);font-size:9px;font-weight:800;
  letter-spacing:.09em;color:var(--t3);text-transform:uppercase}
.orch-add-btn-sm{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.06em;
  padding:4px 12px;background:var(--acc-dim);border:1px solid var(--acc);color:var(--acc);
  border-radius:3px;cursor:pointer;transition:background .15s}
.orch-add-btn-sm:hover{background:rgba(77,166,255,.18)}

/* Conflict hint */
.orch-conflict-hint{display:flex;align-items:center;gap:8px;padding:6px 14px;
  background:rgba(245,200,66,.07);border-bottom:1px solid rgba(245,200,66,.2);
  font-family:var(--cond);font-size:8.5px;font-weight:700;letter-spacing:.05em;
  color:#f5c842;flex-shrink:0}

/* Strategy rows */
#orch-rows{flex:1;overflow-y:auto;padding:6px 0}
.orch-row{display:flex;align-items:center;gap:8px;padding:10px 14px;
  cursor:pointer;border-bottom:1px solid var(--border);transition:background .1s;
  position:relative;opacity:calc(0.4 + var(--prio-i,1)*0.6)}

/* Feste Spalten fuer Badges → saubere Ausrichtung quer durch alle Rows.
   Jede Spalte reserviert Platz, auch wenn das Badge fehlt. */
.orch-row-col{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.orch-row-col-inst {width: 42px}      /* DAX / NKY / 4-Letter-Kuerzel */
.orch-row-col-dir  {width: 30px}      /* ↑L / ↓S / leer */
.orch-row-col-flags{min-width:50px;justify-content:flex-end;gap:4px;display:flex;align-items:center}

/* Konsistente Badge-Maße innerhalb der Spalten */
.orch-row .orch-inst-badge {min-width:34px;text-align:center;display:inline-block}
.orch-row .orch-dir-badge  {min-width:22px;text-align:center;display:inline-flex;justify-content:center}
.orch-row .orch-mode-badge {min-width:54px;text-align:center}
.orch-row:hover{background:rgba(255,255,255,.03)}
.orch-row--selected{background:rgba(77,166,255,.07);border-left:3px solid var(--acc);
  padding-left:11px}
.orch-row--inactive{opacity:.38 !important}
.orch-row--prio-high .orch-row-name{color:var(--t1)}
.orch-row--prio-low  .orch-row-name{color:var(--t2)}

/* Rank badge */
.orch-row-rank{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.05em;
  color:var(--t3);min-width:24px;text-align:center;flex-shrink:0}
.orch-rank-top{color:#f5c842 !important}

/* Active toggle dot */
.orch-row-toggle{background:none;border:none;cursor:pointer;font-size:14px;
  line-height:1;padding:0 2px;flex-shrink:0;transition:opacity .15s}
.orch-row--active   .orch-row-toggle{color:#7ecf7e}
.orch-row--inactive .orch-row-toggle{color:var(--t3)}
.orch-row-toggle:hover{opacity:.7}

/* Strategy info */
.orch-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.orch-row-name{font-family:var(--cond);font-size:12px;font-weight:800;letter-spacing:.04em;
  color:var(--t1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  display:flex;align-items:center;gap:6px}
.orch-row-meta{font-family:var(--mono);font-size:8px;color:var(--t3)}
.orch-top-badge{font-family:var(--cond);font-size:7px;font-weight:800;letter-spacing:.06em;
  color:#f5c842;background:rgba(245,200,66,.12);border:1px solid rgba(245,200,66,.3);
  padding:1px 5px;border-radius:2px}

/* Mode badge (also quick-action button) */
.orch-mode-badge{font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.08em;
  padding:3px 9px;border-radius:2px;border:1px solid;cursor:pointer;
  transition:opacity .15s;flex-shrink:0;background:none}
.orch-mode-badge:hover{opacity:.75}
.orch-mb-live{color:#7ecf7e;border-color:rgba(126,207,126,.4);background:rgba(126,207,126,.08)}
.orch-mb-shadow{color:#7eb8f5;border-color:rgba(126,184,245,.4);background:rgba(126,184,245,.08)}

/* Direction badge (row) */
.orch-dir-badge{font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.06em;
  padding:2px 5px;border-radius:2px;border:1px solid;flex-shrink:0}
.orch-dir-long{color:#7ecf7e;border-color:rgba(126,207,126,.4);background:rgba(126,207,126,.08)}
.orch-dir-short{color:#f57e7e;border-color:rgba(245,126,126,.4);background:rgba(245,126,126,.08)}

/* Instrument badge (row) — DAX/Nikkei/sonstige */
.orch-inst-badge{font-family:var(--cond);font-size:8px;font-weight:900;letter-spacing:.06em;
  padding:2px 5px;border-radius:2px;border:1px solid;flex-shrink:0;line-height:1.2}
.orch-inst-dax    {color:#4da6ff;border-color:rgba(77,166,255,.45);background:rgba(77,166,255,.10)}
.orch-inst-nikkei {color:#ff7e7e;border-color:rgba(229,77,77,.45); background:rgba(229,77,77,.10)}
.orch-inst-other  {color:#c0c0c0;border-color:rgba(168,168,168,.4);background:rgba(168,168,168,.08)}

/* Priority quick-adjust */
.orch-prio-wrap{display:flex;align-items:center;gap:3px;flex-shrink:0}
.orch-prio-adj{background:var(--bg4);border:1px solid var(--border2);color:var(--t3);
  width:20px;height:20px;border-radius:3px;cursor:pointer;font-size:12px;line-height:1;
  display:flex;align-items:center;justify-content:center;transition:color .1s,border-color .1s}
.orch-prio-adj:hover{color:var(--t1);border-color:var(--t3)}
.orch-prio-val{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.05em;
  color:var(--t2);min-width:30px;text-align:center}

/* Empty state */
.orch-rows-empty{display:none;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;padding:40px 20px;color:var(--t3)}
.orch-empty-icon{font-size:28px;opacity:.2}
.orch-empty-text{font-family:var(--cond);font-size:10px;letter-spacing:.05em;opacity:.6}
.orch-add-btn{background:var(--acc-dim);border:1px solid var(--acc);color:var(--acc);
  font-family:var(--cond);font-size:10px;font-weight:800;letter-spacing:.07em;
  padding:7px 18px;border-radius:3px;cursor:pointer;transition:background .15s}
.orch-add-btn:hover{background:rgba(77,166,255,.18)}

/* News placeholder */
.orch-news-placeholder{padding:8px 14px;border-top:1px solid var(--border);
  font-family:var(--cond);font-size:8px;letter-spacing:.06em;color:var(--t3);
  opacity:.4;flex-shrink:0;display:flex;align-items:center;gap:6px}

/* ── Detail pane ── */
/* 2026-04-25: erweitert von 310px → 520px, jetzt wo das Modal vollflächig ist.
   Auf schmalen Screens (<1280px) Skalierung, sonst feste Breite. */
#orch-detail-pane{width:clamp(420px, 38vw, 640px);flex-shrink:0;overflow-y:auto;padding:14px 18px;
  display:flex;flex-direction:column;gap:12px;background:var(--bg2)}
.orch-detail-empty{display:flex;flex-direction:column;align-items:center;
  justify-content:center;flex:1;gap:8px;color:var(--t3);font-size:10px;
  font-family:var(--cond);letter-spacing:.05em;opacity:.45;min-height:160px}

/* ── Form elements ──
   2026-04-25: Schriftgrößen-Hierarchie vereinheitlicht.
   Section-Header 11px / Field-Label 10px / Input 12px / Help 11px / Buttons 11px.
   Layout: Felder konsequent Label-oben + Input-darunter (vertikal). */
.orch-block{background:var(--bg1);border:1px solid var(--border);border-radius:4px;
  padding:14px 16px;display:flex;flex-direction:column;gap:14px}
.orch-block-label{font-family:var(--cond);font-size:11px;font-weight:800;
  letter-spacing:.1em;color:var(--acc);text-transform:uppercase;
  padding-bottom:6px;border-bottom:1px solid var(--border);margin-bottom:2px}
.orch-field-row{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.orch-field-col{flex-direction:column;align-items:flex-start}
.orch-field-cell{flex:1;min-width:220px;display:flex;flex-direction:column;gap:5px}
.orch-label{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.08em;
  color:var(--t3);text-transform:uppercase;display:block;margin-bottom:4px}
.orch-select,.orch-input{background:var(--bg3);border:1px solid var(--border2);
  color:var(--t1);font-family:var(--mono);font-size:12px;padding:7px 9px;
  border-radius:3px;outline:none;min-width:0;width:100%;box-sizing:border-box;
  transition:border-color .15s}
.orch-select:focus,.orch-input:focus{border-color:var(--acc)}
.orch-input[type=number]{width:auto;min-width:90px}
.orch-hint,.orch-help-text{font-size:11px;line-height:1.45;color:var(--t3);
  font-family:var(--cond);margin-top:3px}
.orch-micro-block-grid{display:flex;flex-direction:column;gap:6px;
  background:var(--bg3);border:1px solid var(--border2);
  padding:8px 10px;border-radius:3px}
.orch-micro-block-row{display:flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:11px;color:var(--t1)}
.orch-micro-block-row .lbl{min-width:120px;font-weight:bold;color:var(--t2)}
.orch-micro-block-row label{display:inline-flex;align-items:center;gap:3px;
  cursor:pointer;color:var(--t3);user-select:none}
.orch-micro-block-row input[type=checkbox]{margin:0;cursor:pointer}
.orch-micro-block-row label:has(input:checked){color:var(--accent-warn);font-weight:bold}
.orch-textarea{background:var(--bg3);border:1px solid var(--border2);color:var(--t1);
  font-family:var(--mono);font-size:12px;padding:8px 9px;border-radius:3px;
  outline:none;resize:vertical;width:100%;box-sizing:border-box;line-height:1.4;
  transition:border-color .15s}
.orch-textarea:focus{border-color:var(--acc)}
.orch-static-val{font-family:var(--cond);font-size:13px;font-weight:800;
  letter-spacing:.04em;color:var(--t1)}
.orch-mode-btns{display:flex;gap:6px;flex-wrap:wrap}
.orch-mode-btn{background:var(--bg4);border:1px solid var(--border2);color:var(--t3);
  font-family:var(--cond);font-size:10px;font-weight:800;letter-spacing:.06em;
  padding:7px 14px;border-radius:3px;cursor:pointer;transition:all .15s}
.orch-mode-btn:hover{color:var(--t2);border-color:var(--t3)}
.orch-mode-btn.active{color:var(--acc);border-color:var(--acc);background:var(--acc-dim)}
.orch-actions{display:flex;align-items:center;gap:8px;padding-top:8px;flex-wrap:wrap;
  border-top:1px solid var(--border);margin-top:4px}
.orch-save-btn{font-family:var(--cond);font-size:11px;font-weight:800;letter-spacing:.08em;
  padding:8px 22px;background:var(--acc);color:#000;border:none;border-radius:3px;
  cursor:pointer;transition:background .15s}
.orch-save-btn:hover{background:#6ab7ff}
.orch-cancel-btn{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.06em;
  padding:7px 14px;background:var(--bg4);border:1px solid var(--border2);color:var(--t3);
  border-radius:3px;cursor:pointer;transition:color .15s}
.orch-cancel-btn:hover{color:var(--t1);border-color:var(--t3)}
.orch-delete-btn{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.06em;
  padding:7px 14px;background:rgba(220,80,80,.09);border:1px solid rgba(220,80,80,.3);
  color:#e06060;border-radius:3px;cursor:pointer;margin-left:auto;transition:background .15s}
.orch-delete-btn:hover{background:rgba(220,80,80,.18)}
.orch-form-error{font-size:11px;color:#e06060;padding:8px 12px;background:rgba(220,80,80,.07);
  border:1px solid rgba(220,80,80,.22);border-radius:3px;margin-top:4px;line-height:1.4}
.orch-info-grid{display:flex;flex-direction:column;gap:6px}
.orch-info-row{display:flex;align-items:baseline;gap:10px}
.orch-info-key{font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.06em;
  color:var(--t3);min-width:110px;flex-shrink:0}
.orch-info-code{font-family:var(--mono);font-size:10px;color:var(--t2);word-break:break-all}

/* Status-Box (z.B. Circuit-Breaker-Anzeige) — wiederverwendbar */
.orch-status-box{padding:10px 12px;border-radius:4px;font-size:11px;line-height:1.45;
  border:1px solid var(--border2);background:var(--bg3)}
.orch-status-box.warn{background:rgba(255,170,0,.07);border-color:rgba(255,170,0,.32)}
.orch-status-box.err {background:rgba(232,80,80,.08);border-color:rgba(232,80,80,.34)}
.orch-status-title{font-weight:700;font-family:var(--cond);font-size:11px;
  letter-spacing:.05em;margin-bottom:4px}
.orch-status-detail{color:var(--t2);margin-bottom:8px}

/* ── Regime-v2 Allowlist editor (slot form) ── */
.orch-allow-editor{width:100%;display:flex;flex-direction:column;gap:8px;
  padding:9px 10px;background:rgba(34,197,94,.05);
  border:1px solid rgba(34,197,94,.22);border-radius:4px}
.orch-allow-hint{font-family:var(--cond);font-size:8.5px;color:var(--t3);
  font-style:italic;line-height:1.4}
.orch-allow-group{display:flex;flex-direction:column;gap:4px}
.orch-allow-group-lbl{font-family:var(--cond);font-size:7.5px;font-weight:700;
  letter-spacing:.08em;color:var(--t3);text-transform:uppercase}
.orch-allow-chips{display:flex;flex-wrap:wrap;gap:4px}
.orch-allow-chip{display:inline-flex;align-items:center;gap:4px;
  padding:3px 9px;border-radius:3px;cursor:pointer;user-select:none;
  background:var(--bg3);border:1px solid var(--border2);
  color:var(--t3);font-family:var(--cond);font-size:9px;font-weight:600;
  letter-spacing:.04em;transition:all .15s}
.orch-allow-chip:hover{color:var(--t1);border-color:rgba(34,197,94,.4)}
.orch-allow-chip.is-allowed{background:rgba(34,197,94,.22);
  border-color:rgba(34,197,94,.6);color:#bbf7d0}
.orch-allow-summary{font-family:var(--cond);font-size:8.5px;color:var(--t3);font-style:italic}
.orch-allow-summary.has-picks{color:#bbf7d0;font-style:normal;font-weight:700;letter-spacing:.03em}
.orch-allow-badge{display:inline-flex;align-items:center;gap:3px;
  padding:1px 6px;border-radius:3px;
  background:rgba(34,197,94,.18);border:1px solid rgba(34,197,94,.4);
  color:#bbf7d0;font-family:var(--mono);font-size:8.5px;font-weight:700;
  letter-spacing:.03em;flex-shrink:0}

/* ── Regime Routing editor (slot form) ── */
.orch-route-editor{width:100%;display:flex;flex-direction:column;gap:6px;
  padding:9px 10px;background:rgba(59,130,246,.05);
  border:1px solid rgba(59,130,246,.22);border-radius:4px}
.orch-route-hint{font-family:var(--cond);font-size:8.5px;color:var(--t3);
  font-style:italic;line-height:1.4}
.orch-route-row{display:flex;gap:8px;align-items:center}
.orch-route-err{font-family:var(--cond);font-size:8.5px;color:#f87171;
  font-weight:700;letter-spacing:.03em}
.orch-route-badge{display:inline-flex;align-items:center;gap:3px;
  padding:1px 6px;border-radius:3px;
  background:rgba(59,130,246,.18);border:1px solid rgba(59,130,246,.4);
  color:#bfdbfe;font-family:var(--mono);font-size:8.5px;font-weight:700;
  letter-spacing:.03em;flex-shrink:0}
.orch-route-badge.is-inactive{background:rgba(100,116,139,.15);
  border-color:rgba(100,116,139,.4);color:#cbd5e1;opacity:.65}

/* ── Calendar button (Orchestrator toolbar) ── */
.orch-cal-btn{background:rgba(255,255,255,.07);border:1px solid var(--border);
  border-radius:5px;padding:3px 10px;font-size:11px;cursor:pointer;
  color:var(--t2);transition:background .15s;font-family:var(--cond);
  letter-spacing:.04em;font-weight:600}
.orch-cal-btn:hover{background:rgba(255,255,255,.13);color:var(--t1)}
/* ── Calendar icon button (Live Runner V2 header) ── */
.lr-cal-icon-btn{background:none;border:none;padding:0 2px;font-size:13px;
  cursor:pointer;opacity:.55;line-height:1;transition:opacity .15s;flex-shrink:0}
.lr-cal-icon-btn:hover{opacity:1}

/* ── Calendar Overlay ── */
#orch-cal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);
  z-index:9300;align-items:center;justify-content:center}
#orch-cal-modal{background:var(--bg1);border:1px solid var(--border);border-radius:10px;
  width:calc(100vw - 32px);height:calc(100vh - 32px);display:flex;flex-direction:column;
  overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.55)}
.orch-cal-hdr{display:flex;align-items:center;gap:8px;padding:14px 16px 12px;
  border-bottom:1px solid var(--border);flex-shrink:0}
.orch-cal-title{font-family:var(--cond);font-size:15px;font-weight:800;
  letter-spacing:.09em;color:var(--t1)}
.orch-cal-day-lbl{font-family:var(--mono);font-size:13px;color:var(--t2)}
#orch-cal-body{flex:1;display:flex;padding:14px 16px 14px 10px;gap:0;
  min-height:0;overflow:hidden}
#orch-cal-labels{width:46px;flex-shrink:0;position:relative}
#orch-cal-grid{flex:1;position:relative;border-left:1px solid rgba(255,255,255,.1);
  overflow:hidden}
/* Phase bands */
.orch-cal-band{position:absolute;left:0;right:0}
.orch-cal-band-pre{background:rgba(255,255,255,.02)}
.orch-cal-band-warmup{background:rgba(60,100,200,.08);border-top:1px dashed rgba(60,100,200,.25);border-bottom:1px dashed rgba(60,100,200,.25)}
.orch-cal-band-trading{background:rgba(126,207,126,.07);
  border-top:1px solid rgba(126,207,126,.22);border-bottom:1px solid rgba(126,207,126,.22)}
.orch-cal-band-hold{background:rgba(245,200,66,.07);
  border-top:1px solid rgba(245,200,66,.28);border-bottom:1px solid rgba(245,200,66,.28)}
.orch-cal-band-closed{background:rgba(255,255,255,.015)}
/* Hour grid lines */
.orch-cal-gridline{position:absolute;left:0;right:0;
  border-top:1px solid rgba(255,255,255,.045);pointer-events:none}
/* Hour labels */
.orch-cal-lbl{position:absolute;right:6px;font-family:var(--mono);font-size:11px;
  color:var(--t3);transform:translateY(-50%);white-space:nowrap;opacity:.7}
/* Phase labels — right-aligned so they never overlap left-anchored strategy blocks */
.orch-cal-phaselbl{position:absolute;right:8px;font-family:var(--cond);font-size:10px;
  font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  pointer-events:none;padding-top:5px;text-align:right}
.orch-cal-phaselbl-pre{color:var(--t3);opacity:.4}
.orch-cal-phaselbl-warmup{color:#6b9eff;opacity:.7}
.orch-cal-phaselbl-trading{color:#7ecf7e;opacity:.55}
.orch-cal-phaselbl-hold{color:#f5c842;opacity:.55}
.orch-cal-phaselbl-closed{color:var(--t3);opacity:.3}
/* Strategy blocks */
.orch-cal-slot{position:absolute;border-radius:5px;padding:6px 8px;
  overflow:hidden;cursor:pointer;transition:opacity .15s;
  display:flex;flex-direction:column;gap:2px;box-sizing:border-box}
.orch-cal-slot:hover{filter:brightness(1.15)}
.orch-cal-slot--live{border:1px solid rgba(255,255,255,.1)}
.orch-cal-slot--shadow{border:1px solid rgba(255,255,255,.06)}
.orch-cal-slot--inactive{opacity:.32!important}
.orch-cal-slot-name{font-family:var(--cond);font-size:12px;font-weight:800;
  letter-spacing:.04em;color:var(--t1);white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.orch-cal-slot-meta{font-family:var(--cond);font-size:11px;color:var(--t2);
  letter-spacing:.03em}
/* Instrument-Praefix-Badge im Slot-Block (DAX/NKY) */
.orch-cal-slot-instr{font-family:var(--cond);font-size:9px;font-weight:900;letter-spacing:.07em;
  padding:1px 4px;border-radius:2px;border:1px solid;margin-right:4px;vertical-align:middle}
.orch-cal-slot-instr-dax    {color:#4da6ff;border-color:rgba(77,166,255,.5);background:rgba(77,166,255,.12)}
.orch-cal-slot-instr-nikkei {color:#ff7e7e;border-color:rgba(229,77,77,.5); background:rgba(229,77,77,.12)}
.orch-cal-slot-instr-other  {color:#c0c0c0;border-color:rgba(168,168,168,.45);background:rgba(168,168,168,.10)}
/* Current time needle */
#orch-cal-needle{position:absolute;left:-6px;right:0;height:2px;
  background:rgba(255,255,255,.8);pointer-events:none;z-index:10;
  box-shadow:0 0 7px rgba(255,255,255,.45)}
#orch-cal-needle::before{content:'';position:absolute;left:0;top:50%;
  transform:translate(-50%,-50%);width:9px;height:9px;border-radius:50%;
  background:#fff;box-shadow:0 0 5px rgba(255,255,255,.55)}

/* ═══════════════════════════════════════════════════════════════
   Live Runner V2 — Compact Tab + Row Layout
   ═══════════════════════════════════════════════════════════════ */
@keyframes lr-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.65)}}

/* ORPHAN statusbar pill */
#sb-orphan{display:none;align-items:center;gap:5px;padding:0 8px;
  background:rgba(220,60,60,.2);border:1px solid rgba(220,60,60,.5);
  border-radius:4px;cursor:pointer;font-family:var(--cond);font-size:10px;
  font-weight:700;letter-spacing:.06em;color:#e87070;text-transform:uppercase}

/* Gate-pill (header) */
.lr-gp-free  {background:rgba(126,207,126,.18)!important;color:#7ecf7e!important;border:1px solid rgba(126,207,126,.4)!important}
.lr-gp-busy  {background:rgba(245,200,66,.18)!important;color:#f5c842!important;border:1px solid rgba(245,200,66,.4)!important}
.lr-gp-orphan{background:rgba(220,60,60,.25)!important;color:#e87070!important;border:1px solid rgba(220,60,60,.5)!important;animation:lr-pulse 1.1s ease-in-out infinite}

/* Multi-instrument gate pill: zwei Mini-Pills nebeneinander */
.lr-gp-multi{padding:0!important;background:transparent!important;border:0!important;display:inline-flex;gap:3px}
.lr-gp-instr{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:3px;font-size:8px;font-weight:700;letter-spacing:.04em;line-height:1.4}
.lr-gp-instr b{font-weight:900;opacity:.85}

/* Instrument-Badge (Kalender + Picker) */
.lr-instr-badge{display:inline-flex;align-items:center;justify-content:center;padding:1px 4px;border-radius:3px;font-size:7.5px;font-weight:900;letter-spacing:.06em;line-height:1.4;flex-shrink:0;font-family:var(--cond)}
.lr-instr-dax   {background:rgba(77,166,255,.16);color:#4da6ff;border:1px solid rgba(77,166,255,.4)}
.lr-instr-nikkei{background:rgba(229,77,77,.16);color:#ff7e7e;border:1px solid rgba(229,77,77,.4)}
.lr-instr-other {background:rgba(168,168,168,.16);color:#c0c0c0;border:1px solid rgba(168,168,168,.35)}

/* Calendar widget (left panel) */
#lr-cal-widget{display:flex;flex-direction:column;gap:4px;padding:4px 0 6px}
.lr-cal-group{display:flex;flex-direction:column;gap:2px}
.lr-cal-group-hdr{display:inline-flex;align-items:center;font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:2px 6px;border-radius:3px;margin-bottom:2px;width:fit-content}
.lr-cal-badge-now {background:rgba(126,207,126,.18);color:#7ecf7e}
.lr-cal-badge-next{background:rgba(255,255,255,.07);color:var(--t3)}
.lr-cal-row{display:grid;grid-template-columns:6.2em 2.6em 1fr auto auto;align-items:center;gap:0 6px;padding:2px 8px 2px 6px;border-radius:4px;background:var(--bg2)}
.lr-cal-row > .lr-instr-badge{justify-self:stretch;width:100%;padding:1px 0;text-align:center}
.lr-cal-warm{display:grid;grid-template-columns:6.2em 1fr;align-items:center;gap:0 6px;padding:2px 8px 2px 6px;border-radius:4px;background:rgba(60,100,200,.08);border:1px solid rgba(60,100,200,.2)}
.lr-cal-warm-lbl{font-family:var(--mono,monospace);font-size:9px;color:rgba(107,158,255,.6);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lr-cal-time{font-family:var(--mono,monospace);font-size:9px;color:var(--t2);white-space:nowrap}
.lr-cal-name{font-family:var(--mono,monospace);font-size:9px;font-weight:400;color:var(--t1);white-space:nowrap;overflow:hidden;min-width:0;display:flex;align-items:center;gap:5px}
.lr-cal-code{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:1px 4px;border-radius:3px;background:rgba(77,166,255,.1);border:1px solid rgba(77,166,255,.22);color:var(--acc);font-size:8px;font-weight:800;letter-spacing:.04em}
.lr-cal-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis}
.lr-cal-ver {font-family:var(--mono,monospace);font-size:8px;color:var(--t3);white-space:nowrap}
.lr-cal-sep {height:1px;background:rgba(255,255,255,.07);margin:4px 0}
.lr-cal-empty{font-family:var(--mono,monospace);font-size:9px;color:var(--t3);padding:4px 6px;font-style:italic}

/* Gate detail section (below orders) */
#lr-gate-list{padding:4px 10px 8px;display:flex;flex-direction:column;gap:1px}
.lr-gfull-row{display:flex;align-items:center;gap:8px;padding:3px 0;
  border-bottom:1px solid rgba(255,255,255,.03)}
.lr-gfull-row:last-child{border-bottom:none}
.lr-gsection-block{
  margin:8px 10px 4px;
  padding:8px 10px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.06);
  border-radius:4px;
}
.lr-gsection-kicker{
  font-family:var(--cond);
  font-size:8px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--t3);
  margin-bottom:6px;
}
.lr-gsection-empty{
  font-family:var(--cond);
  font-size:9px;
  color:var(--t3);
  font-style:italic;
}
.lr-signal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
}
.lr-signal-item{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.lr-signal-label{
  font-family:var(--cond);
  font-size:7px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--t3);
}
.lr-signal-value{
  font-family:var(--mono,monospace);
  font-size:9px;
  font-weight:700;
  color:var(--t1);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lr-signal-value.pos{color:#7ecf7e}
.lr-signal-value.neg{color:#e87070}
.lr-signal-value.warn{color:#f5c842}
.lr-signal-value.neu{color:var(--t2)}
.lr-gfull-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.lr-gfull-dot-ok  {background:#7ecf7e}
.lr-gfull-dot-warn{background:#f5c842}
.lr-gfull-dot-err {background:#e87070}
.lr-gfull-lbl      {font-family:var(--cond);font-size:9px;color:var(--t2);flex:1;letter-spacing:.03em}
.lr-gfull-lbl-block{font-family:var(--cond);font-size:9px;color:#e87070;font-weight:700;flex:1}
.lr-gfull-lbl-warn {font-family:var(--cond);font-size:9px;color:#f5c842;flex:1}
.lr-gfull-detail{font-size:8px;color:var(--t3);font-family:var(--mono,monospace)}
.lr-gfull-cd{font-size:8px;color:var(--t3);font-family:var(--mono,monospace)}

/* Panel shell */
#lr-panel{
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:0;
}
#lr-gate-section{
  flex:1;
  min-height:0;
  overflow:hidden;
}
#lr-gate-list{
  max-height:none;
  overflow-y:auto;
  padding-bottom:4px;
}
#lr-gate-list::-webkit-scrollbar{width:3px}
#lr-gate-list::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}
#lr-reload-banner{display:none;padding:4px 12px;background:rgba(245,200,66,.15);
  border-bottom:1px solid rgba(245,200,66,.35);font-family:var(--cond);font-size:10px;
  color:#f5c842;font-weight:700;letter-spacing:.04em;cursor:pointer}
#lr-reload-banner:hover{background:rgba(245,200,66,.25)}

/* Tab bar */
/* Slot picker (replaces overflow tab bar) */
.lr-picker-wrap{display:flex;align-items:center;gap:7px;padding:5px 10px;border-bottom:1px solid var(--bdr);background:var(--bg1)}
.lr-picker-select{flex:1;background:transparent;border:none;color:var(--t1);font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.03em;cursor:pointer;outline:none;min-width:0;padding:0;text-transform:uppercase}
.lr-picker-select option{background:var(--bg0,#0e0e1a);color:var(--t1)}
.lr-picker-count{font-family:var(--mono,monospace);font-size:9px;color:var(--t3);white-space:nowrap;flex-shrink:0}
.lr-tabs-empty{font-family:var(--cond);font-size:9px;color:var(--t3);padding:6px 12px;font-style:italic}
.lr-tab-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.lr-dot-idle   {background:var(--t3)}
.lr-dot-signal {background:#f5c842;animation:lr-pulse .9s ease-in-out infinite}
.lr-dot-trade  {background:#7ecf7e}
.lr-dot-blocked{background:#e87070}
.lr-dot-drain  {background:#e87070;opacity:.6}
.lr-tab-lbl{font-family:var(--cond);font-size:9px;font-weight:700;letter-spacing:.04em;color:var(--t2);text-transform:uppercase}
.lr-tab-active .lr-tab-lbl{color:var(--t1)}
.lr-tab-sim{font-family:var(--cond);font-size:7px;font-weight:800;padding:1px 3px;
  border-radius:2px;letter-spacing:.05em;background:rgba(90,160,220,.2);color:#5aa0dc}

/* Compact detail row */
#lr-slot-detail{padding:5px 10px 3px}
.lr-de-empty{font-family:var(--cond);font-size:9px;color:var(--t3);font-style:italic;padding:4px 0}

/* Main info row: [state] [mode] [gates···] [signal →→] */
.lr-crow1{display:flex;align-items:center;gap:6px;min-height:24px}
.lr-cstate{font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.05em;
  text-transform:uppercase;padding:2px 6px;border-radius:3px;white-space:nowrap;flex-shrink:0}
.lr-state-idle   {background:var(--bg2);color:var(--t3)}
.lr-state-signal {background:rgba(245,200,66,.2);color:#f5c842}
.lr-state-trade  {background:rgba(126,207,126,.2);color:#7ecf7e}
.lr-state-blocked{background:rgba(220,60,60,.2);color:#e87070}
.lr-state-drain  {background:rgba(220,60,60,.12);color:#e87070}
.lr-state-off    {background:var(--bg2);color:var(--t3)}
.lr-mode-live  {font-family:var(--cond);font-size:7px;font-weight:800;letter-spacing:.05em;
  padding:1px 5px;border-radius:3px;background:rgba(126,207,126,.15);color:#7ecf7e;flex-shrink:0}
.lr-mode-shadow{font-family:var(--cond);font-size:7px;font-weight:800;letter-spacing:.05em;
  padding:1px 5px;border-radius:3px;background:rgba(90,160,220,.15);color:#5aa0dc;flex-shrink:0}
.lr-dir{font-family:var(--cond);font-size:7px;font-weight:700;letter-spacing:.04em;
  padding:1px 4px;border-radius:3px;text-transform:uppercase;flex-shrink:0}
.lr-dir-long   {background:rgba(126,207,126,.12);color:#7ecf7e}
.lr-dir-short  {background:rgba(220,100,100,.12);color:#e87070}
.lr-dir-both   {background:rgba(255,255,255,.06);color:var(--t3)}
.lr-dir-pending{background:rgba(245,200,66,.12);color:#f5c842}

/* Gate dots (compact row, tooltips only) */
.lr-cgates{display:flex;gap:4px;align-items:center;flex:1}
.lr-cgates .lr-gdot{width:6px;height:6px;cursor:help;border-radius:50%;flex-shrink:0}
.lr-gdot-ok  {background:#7ecf7e}
.lr-gdot-warn{background:#f5c842}
.lr-gdot-err {background:#e87070}
.lr-de-muted{font-family:var(--cond);font-size:8px;color:var(--t3);font-style:italic}

/* Signal (compact, right side) */
.lr-csig{display:flex;align-items:center;gap:4px;flex-shrink:0}
.lr-csdir{font-family:var(--cond);font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.lr-sigbar{width:36px;height:3px;background:rgba(255,255,255,.08);border-radius:2px;overflow:hidden;flex-shrink:0}
.lr-sigfill{height:100%;background:var(--acc);border-radius:2px;transition:width .4s}
.lr-cspct{font-family:var(--mono,monospace);font-size:8px;color:var(--t2);min-width:22px;text-align:right}

/* Blocking reason */
.lr-cblock{font-family:var(--cond);font-size:8px;color:#e87070;
  background:rgba(220,60,60,.1);padding:2px 8px;margin-top:3px}

/* Position row (only visible when in trade) */
.lr-cpos{display:flex;align-items:center;gap:8px;padding:3px 0 2px;
  font-family:var(--mono,monospace);font-size:9px;
  border-top:1px solid rgba(255,255,255,.06);margin-top:4px}
.lr-pos-dir{font-family:var(--cond);font-size:8px;font-weight:800;
  padding:1px 5px;border-radius:3px;background:rgba(255,255,255,.08);color:var(--t1)}
.lr-pos-pnl{margin-left:auto;font-weight:700}
.lr-pos-pnl-pos{color:#7ecf7e}
.lr-pos-pnl-neg{color:#e87070}

/* Debug button — full-width, bottom of gate section */
.lr-debug-trigger{display:flex;justify-content:flex-end;padding-top:8px}
.lr-dbg-btn-big{display:inline-flex;align-items:center;gap:5px;
  background:none;border:1px solid rgba(255,255,255,.12);color:var(--t3);
  font-family:var(--cond);font-size:10px;font-weight:700;letter-spacing:.06em;
  padding:4px 12px;border-radius:4px;cursor:pointer;
  transition:color .12s,border-color .12s}
.lr-dbg-btn-big:hover{color:var(--t1);border-color:rgba(255,255,255,.28)}

/* Debug drilldown panel */
#lr-debug-panel{border-top:1px solid var(--bdr);padding:8px 10px}
#lr-debug-events{max-height:160px;overflow-y:auto;display:flex;
  flex-direction:column;gap:1px;margin-top:6px}
.lr-dbg-row{display:flex;align-items:flex-start;gap:6px;padding:2px 0;
  border-bottom:1px solid rgba(255,255,255,.04);font-size:8px}
.lr-dbg-ts{font-family:var(--mono,monospace);color:var(--t3);white-space:nowrap;flex-shrink:0;min-width:50px}
.lr-dbg-evt{font-family:var(--cond);font-weight:800;letter-spacing:.05em;
  text-transform:uppercase;white-space:nowrap;flex-shrink:0;min-width:84px}
.lr-dbg-entry_blocked {color:#e87070}
.lr-dbg-entry_signal  {color:#7ecf7e}
.lr-dbg-gate_flip     {color:#f5c842}
.lr-dbg-position_opened{color:#7ecf7e}
.lr-dbg-position_closed{color:var(--t2)}
.lr-dbg-orphan_detected{color:#e87070}
.lr-dbg-custom{color:var(--t3)}
.lr-dbg-detail{color:var(--t3);word-break:break-word;font-size:8px}

/* ═══════════════════════════════════════════════════════
   AUTO-BACKTEST OVERLAY  (app_autobt.js)
   ═══════════════════════════════════════════════════════ */

#autobt-overlay{
  display:none;position:fixed;inset:0;z-index:9500;
  background:rgba(0,0,0,.75);
  align-items:center;justify-content:center;padding:12px;
}
#autobt-modal{
  background:var(--bg1);border:1px solid var(--bdr);border-radius:6px;
  width:min(1020px,96vw);height:min(92vh,960px);
  display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 24px 64px rgba(0,0,0,.6);
}

/* Header */
.abt-hdr{
  display:flex;align-items:center;gap:10px;
  padding:10px 16px;border-bottom:1px solid var(--bdr);
  flex-shrink:0;background:var(--bg2);
}
.abt-title{
  font-family:var(--cond);font-weight:800;font-size:14px;
  text-transform:uppercase;letter-spacing:.07em;color:var(--t1);white-space:nowrap;
}
.abt-header-info{font-size:10px;color:var(--t3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.abt-sep{color:var(--t3);margin:0 3px}
.abt-muted{color:var(--t3);font-size:10px}
.abt-run-btn{
  font-size:10px;font-family:var(--cond);font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;padding:4px 12px;border-radius:3px;cursor:pointer;
  border:1px solid var(--acc);background:transparent;color:var(--acc);
  white-space:nowrap;transition:background .15s,color .15s;
}
.abt-run-btn:hover{background:var(--acc);color:#000}
.abt-run-btn:disabled{opacity:.4;cursor:default}

/* Banner */
.abt-banner{padding:7px 16px;font-size:11px;font-family:var(--cond);
  font-weight:700;letter-spacing:.04em;flex-shrink:0;border-bottom:1px solid var(--bdr)}
.abt-banner-info{background:rgba(255,255,255,.04);color:var(--t2)}
.abt-banner-running{background:rgba(245,200,66,.08);color:#f5c842}
.abt-banner-error{background:rgba(232,112,112,.10);color:#e87070}

/* KPI Bar */
.abt-kpi-bar{display:flex;gap:0;flex-shrink:0;border-bottom:1px solid var(--bdr);
  background:var(--bg2);overflow-x:auto}
.abt-kpi{display:flex;flex-direction:column;align-items:center;
  padding:8px 16px;border-right:1px solid var(--bdr);min-width:88px;gap:1px;flex-shrink:0}
.abt-kpi:last-child{border-right:none}
.abt-kpi-label{font-size:9px;color:var(--t3);text-transform:uppercase;
  letter-spacing:.05em;font-family:var(--cond);white-space:nowrap}
.abt-kpi-val{font-size:18px;font-family:var(--mono,monospace);font-weight:700;
  color:var(--t1);line-height:1.1}

/* Traffic lights */
.abt-dot{display:inline-block;width:8px;height:8px;border-radius:50%;
  vertical-align:middle;margin-left:3px;flex-shrink:0}
.abt-dg{background:#4ecf80}.abt-dy{background:#f5c842}.abt-dr{background:#e87070}

/* Tabs */
.abt-tabs{display:flex;gap:0;border-bottom:1px solid var(--bdr);
  flex-shrink:0;background:var(--bg2);padding:0 8px}
.abt-tab-btn{
  font-family:var(--cond);font-weight:700;font-size:11px;text-transform:uppercase;
  letter-spacing:.06em;padding:9px 16px;border:none;border-bottom:2px solid transparent;
  background:transparent;color:var(--t3);cursor:pointer;
  transition:color .15s,border-color .15s;white-space:nowrap;
}
.abt-tab-btn:hover{color:var(--t1)}
.abt-tab-active{color:var(--t1)!important;border-bottom-color:var(--acc)!important}

/* Tab Content */
.abt-tab-content{flex:1;overflow:hidden;min-height:0;background:var(--bg1)}
.abt-tab-pane{padding:16px;display:flex;flex-direction:column;gap:14px;flex:1;min-height:0;overflow-y:auto}

/* Stat grid (equity tab) */
.abt-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;flex-shrink:0}
.abt-stat-cell{background:var(--bg2);border:1px solid var(--bdr);border-radius:4px;
  padding:8px 12px;display:flex;flex-direction:column;gap:2px}
.abt-stat-label{font-size:9px;color:var(--t3);text-transform:uppercase;
  letter-spacing:.05em;font-family:var(--cond)}
.abt-stat-val{font-size:18px;font-family:var(--mono,monospace);font-weight:700;color:var(--t1)}

/* Charts */
.abt-chart-wrap{width:100%;position:relative;
  background:var(--bg2);border:1px solid var(--bdr);border-radius:4px;
  overflow:hidden;flex-shrink:0}
.abt-chart-label{font-family:var(--cond);font-weight:800;font-size:9px;
  text-transform:uppercase;letter-spacing:.07em;color:var(--t3);flex-shrink:0}

/* Tables */
.abt-tbl{width:100%;border-collapse:collapse;font-size:11px;font-family:var(--cond)}
.abt-tbl th{font-weight:800;text-transform:uppercase;letter-spacing:.05em;
  font-size:9px;color:var(--t3);border-bottom:1px solid var(--bdr);
  padding:6px 8px;text-align:left;background:var(--bg2);white-space:nowrap;position:sticky;top:0}
.abt-tbl td{padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--t1);vertical-align:middle}
.abt-tbl tr:hover td{background:rgba(255,255,255,.03)}
.abt-r{text-align:right;font-family:var(--mono,monospace)}
.abt-slot-row{cursor:pointer}
.abt-slot-row:hover td{background:rgba(255,255,255,.05)!important}
.abt-toggle-icon{color:var(--t3);font-size:10px;text-align:center;width:20px}
.abt-det-row td{background:rgba(255,255,255,.02)!important;padding:0!important}
.abt-det-wrap{padding:10px 16px}
.abt-det-tbl{width:100%;border-collapse:collapse;font-size:11px}
.abt-det-tbl th{font-size:9px;color:var(--t3);text-transform:uppercase;letter-spacing:.04em;
  padding:4px 8px;border-bottom:1px solid var(--bdr);font-weight:700;background:transparent}
.abt-det-tbl td{padding:4px 8px;color:var(--t2);font-size:11px;
  border-bottom:1px solid rgba(255,255,255,.03)}
.abt-row-err td{color:var(--t3)}
.abt-empty{color:var(--t3);font-size:11px;padding:20px 0;margin:0}

/* Kollisionen */
.abt-koll-hdr{font-family:var(--cond);font-weight:700;font-size:11px;
  color:var(--t2);flex-shrink:0}
.abt-koll-total{color:var(--acc);margin-left:4px;font-size:14px}
.abt-koll-cards{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}
.abt-koll-card{display:flex;align-items:flex-start;gap:10px;
  background:var(--bg2);border:1px solid var(--bdr);border-radius:4px;
  padding:10px 14px;min-width:180px;flex:0 0 auto}
.abt-koll-h{border-left:3px solid #e87070}
.abt-koll-m{border-left:3px solid #f5c842}
.abt-koll-l{border-left:3px solid #4ecf80}
.abt-koll-cnt{font-size:26px;font-family:var(--mono,monospace);font-weight:700;
  color:var(--t1);line-height:1;flex-shrink:0}
.abt-koll-names{display:flex;flex-direction:column;gap:2px;min-width:0}
.abt-koll-top{font-family:var(--cond);font-weight:700;font-size:10px;
  color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.abt-koll-arr{font-size:9px;color:var(--t3)}
.abt-koll-bot{font-family:var(--cond);font-size:10px;color:var(--t2);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Heatmap */
.abt-htmap{border-collapse:collapse;font-size:10px;font-family:var(--cond)}
.abt-htmap th,.abt-htmap td{padding:5px 10px;border:1px solid var(--bdr);white-space:nowrap}
.abt-htmap-corner{background:var(--bg2);color:var(--t3);font-size:9px;font-weight:700}
.abt-htmap-ch{background:var(--bg2);color:var(--t2);font-weight:700;text-align:center}
.abt-htmap-rh{background:var(--bg2);color:var(--t2);font-weight:700}
.abt-htmap-cell{text-align:center;font-weight:700}
.abt-htmap-diag{text-align:center;color:var(--t3);background:rgba(255,255,255,.02)}
.abt-htmap-zero{color:var(--t3)}
.abt-htmap-low{background:rgba(245,200,66,.15);color:#f5c842}
.abt-htmap-mid{background:rgba(232,112,112,.20);color:#e87070}
.abt-htmap-high{background:rgba(220,70,70,.35);color:#ff6060;font-size:12px}

/* Interpretation */
.abt-interp{background:rgba(255,255,255,.03);border-left:3px solid var(--acc);
  border-radius:0 4px 4px 0;padding:10px 14px;font-size:11px;
  color:var(--t2);line-height:1.6;flex-shrink:0}
.abt-interp-row{padding:2px 0}
.abt-interp-green{color:#4ecf80}
.abt-interp-yellow{color:#f5c842}
.abt-interp-red{color:#e87070}

/* Badges + history */
.abt-badge-ok{background:rgba(78,207,128,.15);color:#4ecf80;
  font-size:9px;font-family:var(--cond);font-weight:700;padding:2px 6px;border-radius:3px}
.abt-badge-err{background:rgba(232,112,112,.15);color:#e87070;
  font-size:9px;font-family:var(--cond);font-weight:700;padding:2px 6px;border-radius:3px}
.abt-hist-btn{font-size:10px;font-family:var(--cond);font-weight:700;padding:2px 7px;
  border-radius:3px;cursor:pointer;border:1px solid var(--bdr);background:transparent;color:var(--t2)}
.abt-hist-btn:hover{border-color:var(--acc);color:var(--acc)}

/* ── Restart-Overlay (während GUI neu startet) ────────────────── */
#restart-overlay{
  display:none;position:fixed;inset:0;z-index:99999;
  background:rgba(8,12,20,.88);
  align-items:center;justify-content:center;
  backdrop-filter:blur(4px);
}
.restart-card{
  background:#151a24;border:1px solid rgba(90,122,158,.25);
  border-radius:10px;padding:28px 44px;
  display:flex;flex-direction:column;align-items:center;gap:14px;
  box-shadow:0 8px 32px rgba(0,0,0,.5);
  min-width:280px;text-align:center;
}
.restart-title{font-size:16px;font-weight:600;color:var(--t1);letter-spacing:.3px}
.restart-sub{font-size:12px;color:var(--t3);min-height:18px}
.restart-spinner{
  width:36px;height:36px;
  border:3px solid rgba(90,122,158,.18);
  border-top-color:var(--acc,#4a90e2);
  border-radius:50%;
  animation:restart-spin .8s linear infinite;
}
@keyframes restart-spin{to{transform:rotate(360deg)}}

/* ============================================================
   MANUAL-WORKSPACE (Phase 3 Manual-Trading)
   ============================================================ */

/* Topbar AUTO/MANUAL Toggle */
.mode-switch{
  display:inline-flex;gap:0;border-radius:6px;overflow:hidden;
  border:1px solid var(--bd1,#2a2a2a);margin-left:8px;
}
.mode-switch .mode-btn{
  background:var(--bg1,#181818);color:var(--t2,#aaa);
  border:0;padding:5px 10px;font-size:11px;font-weight:600;cursor:pointer;
  letter-spacing:.5px;
}
.mode-switch .mode-btn.active{
  background:var(--acc,#4a90e2);color:#fff;
}
.mode-switch .mode-btn:hover:not(.active){background:var(--bg2,#222)}

/* ── Instrument-Switch Pill (DAX / NIKKEI) ──────────────────────────
   Segmented control mit Farbpunkt + Tabular-Schrift. Pro Segment
   eigene Aktiv-Farbe (DAX=Blau, NKY=Rot). Mobil kompakter Modus
   ueber inst-lbl-short, siehe app_mobile.css.                       */
.inst-pill{
  display:inline-flex;align-items:stretch;height:26px;margin-left:8px;
  padding:2px;gap:2px;
  background:var(--bg0,#0c0c0e);
  border:1px solid var(--bd1,#2a2a2a);
  border-radius:7px;
  font-family:var(--cond,var(--mono));
}
.inst-pill .inst-seg{
  display:inline-flex;align-items:center;gap:6px;
  padding:0 10px;height:100%;
  background:transparent;border:0;border-radius:5px;
  color:var(--t3,#d5dbea);cursor:pointer;
  font-size:10.5px;font-weight:700;letter-spacing:.06em;
  transition:background .12s ease, color .12s ease, box-shadow .12s ease;
  white-space:nowrap;
}
.inst-pill .inst-seg:hover:not(.active){
  background:var(--bg2,#17171b);color:var(--t1,#f5f7fb);
}
.inst-pill .inst-seg.active{
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.06) inset, 0 1px 0 rgba(0,0,0,.4);
}
.inst-pill .inst-seg[data-key="dax"].active{
  background:linear-gradient(180deg, #4da6ff 0%, #2070cc 100%);
}
.inst-pill .inst-seg[data-key="nikkei"].active{
  background:linear-gradient(180deg, #ff5757 0%, #c92c2c 100%);
}
.inst-dot{
  width:7px;height:7px;border-radius:50%;flex-shrink:0;
  box-shadow:0 0 0 1px rgba(0,0,0,.35) inset;
}
.inst-dot-dax   {background:#4da6ff}
.inst-dot-nikkei{background:#ff5757}
.inst-pill .inst-seg.active .inst-dot{
  background:#fff;box-shadow:0 0 4px rgba(255,255,255,.6);
}
.inst-lbl-short{display:none}   /* Desktop zeigt Langform */

/* SYSTEM-Pille in der Topbar (war zuvor in der Sysbar) — kompakte
   Variante, damit sie zwischen Konto-Info und Topbar-Right sauber sitzt. */
#topbar .topbar-sb-item{
  margin-left:8px;padding:0 10px;height:26px;min-height:26px;
  background:var(--bg0,#0c0c0e);border:1px solid var(--bd1,#2a2a2a);
  border-radius:6px;font-size:9px;
}
#topbar .topbar-sb-item:hover{background:rgba(90,122,158,.16)}

/* Sysbar: Instrument-Switch als erstes Element direkt links neben MARKT */
#sysbar > #instrument-switch{margin-left:0;margin-right:14px;height:22px;align-self:center}
#sysbar > #instrument-switch .inst-seg{padding:0 9px;font-size:10px}

/* Wenn Manual-Mode aktiv: Auto-Workspace ausblenden */
body.manual-mode #main,
body.manual-mode #sysbar{display:none !important}
body.manual-mode #manual-workspace{display:block !important}

/* Manual-Topbar */
#manual-topbar{
  display:flex;gap:0;align-items:stretch;
  background:var(--bg1,#181818);border-bottom:1px solid var(--bd1,#2a2a2a);
  padding:0;font-size:11px;
}
#manual-topbar .mt-block{
  display:flex;flex-direction:column;justify-content:center;
  padding:6px 14px;border-right:1px solid var(--bd1,#2a2a2a);min-width:90px;
}
#manual-topbar .mt-block-pending,
#manual-topbar .mt-block-hk{margin-left:auto;border-left:1px solid var(--bd1,#2a2a2a);border-right:0}
#manual-topbar .mt-block-kill{padding:8px 14px;border-right:0}
#manual-topbar .mt-label{
  color:var(--t2,#888);font-size:9px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;margin-bottom:2px;
}
#manual-topbar .mt-val{font-size:14px;font-weight:700;color:var(--t1,#eee)}
#manual-topbar .mt-unit{font-size:11px;color:var(--t2,#888);margin-left:2px}
#manual-topbar .mt-sub{font-size:10px;color:var(--t2,#888)}

/* Spread-Ampel */
#manual-topbar .mt-spread{display:flex;align-items:center;gap:6px}
#manual-topbar .mt-dot{width:10px;height:10px;border-radius:50%;background:#666}
#manual-topbar .mt-spread.green .mt-dot{background:#3dbb6b;box-shadow:0 0 6px #3dbb6b66}
#manual-topbar .mt-spread.yellow .mt-dot{background:#e6a93a;box-shadow:0 0 6px #e6a93a66}
#manual-topbar .mt-spread.red .mt-dot{background:#d9534f;box-shadow:0 0 8px #d9534f88}

/* Konto-Badge */
#manual-topbar .mt-acc{display:flex;align-items:center;gap:6px;font-size:12px}
#manual-topbar .mt-acc-badge{
  padding:1px 6px;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:.5px;
  background:#2a3a4d;color:#a8c8ee;
}
#manual-topbar .mt-acc-badge.live{background:#5a1f1f;color:#ffb6b6}
#manual-topbar .mt-acc-name{font-weight:600;color:var(--t1,#eee)}
#manual-topbar .mt-acc-epic{color:var(--t2,#888);font-size:10px}

/* Daily Loss Bar */
#manual-topbar .mt-loss{display:flex;flex-direction:column;gap:2px;min-width:120px}
#manual-topbar .mt-loss-bar{height:4px;background:#2a2a2a;border-radius:2px;overflow:hidden}
#manual-topbar .mt-loss-bar-fill{height:100%;background:#3dbb6b;width:0%;transition:width .3s,background .3s}
#manual-topbar .mt-loss-bar-fill.warn{background:#e6a93a}
#manual-topbar .mt-loss-bar-fill.crit{background:#d9534f}

/* Today-Stats */
#manual-topbar .mt-stats{display:flex;gap:10px;font-size:11px;color:var(--t2,#888)}
#manual-topbar .mt-stats-item b{color:var(--t1,#eee);margin-left:3px}

/* Pending */
#manual-topbar .mt-pending{font-size:11px;color:var(--t2,#888)}
#manual-topbar .mt-pending.active{color:#e6a93a;font-weight:600}

/* Hotkeys-Switch */
.mt-hk-switch{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:11px;color:var(--t2)}
.mt-hk-switch input{cursor:pointer}

/* Kill-Switch-Button */
.mt-kill-btn{
  background:#5a1f1f;color:#ffb6b6;border:1px solid #8a2f2f;
  padding:7px 14px;font-weight:700;font-size:11px;letter-spacing:.5px;
  border-radius:4px;cursor:pointer;
}
.mt-kill-btn:hover{background:#7a2828;color:#fff}
.mt-kill-btn.active{background:#d9534f;color:#fff;animation:mt-kill-pulse 1.4s infinite}
@keyframes mt-kill-pulse{0%,100%{box-shadow:0 0 0 0 #d9534f88}50%{box-shadow:0 0 0 6px #d9534f00}}

/* Kill-Switch-Banner */
.mt-kill-banner{
  background:#5a1f1f;color:#ffb6b6;text-align:center;padding:8px;font-weight:600;
  border-bottom:2px solid #d9534f;
}
.mt-kill-reset{
  margin-left:12px;background:#fff;color:#5a1f1f;border:0;padding:4px 10px;
  border-radius:3px;cursor:pointer;font-weight:700;
}

/* Workspace Grid */
#manual-grid{
  display:grid;grid-template-columns:1fr 360px;grid-template-rows:1fr auto;
  gap:8px;padding:8px;height:calc(100vh - 130px);
}
#manual-chart{grid-column:1;grid-row:1}
#manual-ticket{grid-column:2;grid-row:1 / span 2}
#manual-positions{grid-column:1;grid-row:2;min-height:180px}

/* Karte */
.mw-card{
  background:var(--bg1,#181818);border:1px solid var(--bd1,#2a2a2a);
  border-radius:6px;display:flex;flex-direction:column;overflow:hidden;
}
.mw-card-hdr{
  display:flex;align-items:center;gap:10px;padding:8px 12px;
  border-bottom:1px solid var(--bd1,#2a2a2a);background:var(--bg2,#202020);
}
.mw-card-title{font-size:11px;font-weight:700;letter-spacing:.8px;color:var(--t1,#eee)}
.mw-card-sub{font-size:10px;color:var(--t2,#888);flex:1}
.mw-card-action{
  background:transparent;border:1px solid var(--bd1,#333);color:var(--t2,#aaa);
  padding:2px 8px;border-radius:3px;cursor:pointer;font-size:12px;
}
.mw-card-action:hover{background:var(--bg3,#2a2a2a);color:var(--t1)}

.mw-chart-placeholder{
  flex:1;display:flex;align-items:center;justify-content:center;
  color:var(--t2,#666);font-style:italic;font-size:13px;
}

/* Order-Ticket */
.mw-ticket-body{padding:12px;display:flex;flex-direction:column;gap:10px}
.mw-row{display:flex;flex-direction:column;gap:3px}
.mw-row-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mw-row-2 > div{display:flex;flex-direction:column;gap:3px}
.mw-row label{font-size:10px;color:var(--t2,#888);font-weight:600;letter-spacing:.4px}
.mw-row input[type=number]{
  background:var(--bg0,#0e0e0e);color:var(--t1,#eee);
  border:1px solid var(--bd1,#2a2a2a);padding:6px 8px;border-radius:3px;font-size:12px;width:100%;
}
.mw-row-toggle{flex-direction:row;align-items:center}
.mw-check{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--t1,#ddd);font-size:11px}
.mw-checks{
  background:var(--bg0,#0e0e0e);border:1px solid var(--bd1,#2a2a2a);border-radius:3px;
  padding:8px;font-size:10.5px;color:var(--t2);min-height:32px;font-family:ui-monospace,monospace;
  white-space:pre-wrap;line-height:1.45;
}
.mw-checks.ok{border-color:#3a6b3a;color:#9ec99e}
.mw-checks.bad{border-color:#7a3a3a;color:#e8a8a8}
.mw-actions{flex-direction:row;gap:6px}
.mw-btn{
  flex:1;border:0;padding:11px 8px;font-size:13px;font-weight:700;letter-spacing:.6px;
  border-radius:4px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;
}
.mw-btn:disabled{opacity:.45;cursor:not-allowed}
.mw-btn-buy{background:#2e7d4a}
.mw-btn-buy:hover:not(:disabled){background:#3dbb6b}
.mw-btn-sell{background:#a23a3a}
.mw-btn-sell:hover:not(:disabled){background:#d9534f}
.mw-btn-validate{
  background:transparent;color:var(--t2,#aaa);border:1px solid var(--bd1,#333);font-size:11px;padding:6px;
}
.mw-btn-validate:hover{background:var(--bg2,#222);color:var(--t1)}
.mw-hk{
  font-size:9px;background:rgba(255,255,255,.18);padding:1px 5px;border-radius:2px;font-weight:600;
}
.mw-validate-row{margin-top:4px}

/* Positions-Liste */
.mw-pos-list{flex:1;overflow:auto}
.mw-empty{padding:18px;text-align:center;color:var(--t2,#666);font-size:11.5px}
.mw-pos-row{
  display:grid;
  grid-template-columns:68px 58px 48px minmax(96px,.75fr) minmax(144px,1fr) minmax(130px,.85fr) minmax(130px,.85fr) minmax(174px,auto);
  gap:10px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--bd1,#2a2a2a);
  font-size:11px;color:var(--t1);min-height:44px;
}
.mw-pos-row.dir-buy{border-left:3px solid #3dbb6b;background:linear-gradient(90deg,rgba(61,187,107,.055),transparent 28%)}
.mw-pos-row.dir-sell{border-left:3px solid #d9534f;background:linear-gradient(90deg,rgba(217,83,79,.055),transparent 28%)}
.mw-pos-own{font-size:9px;font-weight:800;letter-spacing:.5px;padding:2px 5px;border-radius:2px;text-align:center}
.mw-pos-own.MANUAL{background:#2a3a4d;color:#a8c8ee}
.mw-pos-own.AUTO{background:#3a3a3a;color:#aaa}
.mw-pos-own.UNKNOWN, .mw-pos-own.EXTERNAL{background:#5a1f1f;color:#ffb6b6}
.mw-pos-side{font-weight:800;letter-spacing:.08em}
.mw-pos-row.dir-buy .mw-pos-side{color:#3dbb6b}
.mw-pos-row.dir-sell .mw-pos-side{color:#d9534f}
.mw-pos-num,.mw-pos-price{font-family:var(--mono,ui-monospace,monospace);font-weight:700;white-space:nowrap}
.mw-pos-price b{color:var(--t3,#777);font-weight:800;margin-right:2px}
.mw-pos-current,.mw-pos-risk{font-family:var(--mono,ui-monospace,monospace);font-weight:800;white-space:nowrap;line-height:1.2}
.mw-pos-current b,
.mw-pos-risk b{font-family:var(--cond,inherit);font-size:9px;letter-spacing:.08em;margin-right:5px}
.mw-pos-current small,
.mw-pos-risk small{display:block;margin-top:2px;font-size:9px;font-weight:700;color:var(--t3,#777);letter-spacing:0}
.mw-pos-current.pos{color:#58d184}
.mw-pos-current.neg{color:#ff8f8b}
.mw-pos-current.flat{color:var(--t1,#eee)}
.mw-pos-current.pos small{color:#3dbb6b}
.mw-pos-current.neg small{color:#d9534f}
.mw-pos-risk{color:var(--t1,#eee)}
.mw-pos-risk small{color:var(--t3,#777)}
.mw-pos-sync{
  display:inline-flex;margin-left:6px;padding:1px 5px;border-radius:2px;
  background:rgba(74,144,226,.18);color:#a8c8ee;font-size:8px;font-weight:800;
  letter-spacing:.06em;vertical-align:middle;
}
.mw-pos-actions{display:flex;gap:4px;justify-content:flex-end;flex-wrap:wrap}
.mw-pos-btn{
  background:var(--bg2,#222);color:var(--t1,#eee);border:1px solid var(--bd1,#333);
  padding:3px 7px;border-radius:3px;font-size:10px;font-weight:600;cursor:pointer;
}
.mw-pos-btn:hover{background:var(--bg3,#2a2a2a)}
.mw-pos-btn.danger{background:#5a1f1f;color:#ffb6b6;border-color:#8a2f2f}
.mw-pos-btn.danger:hover{background:#7a2828}

/* Modal */
.mw-modal-bg{
  position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9000;
  display:flex;align-items:center;justify-content:center;
}
.mw-modal{
  background:var(--bg1,#181818);border:1px solid var(--bd1,#333);border-radius:8px;
  width:420px;max-width:92vw;box-shadow:0 12px 48px rgba(0,0,0,.6);overflow:hidden;
}
.mw-modal-hdr{padding:14px 16px;border-bottom:1px solid var(--bd1,#2a2a2a);font-weight:700;font-size:13px}
.mw-modal-body{padding:14px 16px;font-size:12px;color:var(--t1);line-height:1.5}
.mw-modal-body input{
  width:100%;background:var(--bg0,#0e0e0e);color:var(--t1);
  border:1px solid var(--bd1,#333);padding:7px 10px;border-radius:3px;font-size:13px;
}
.mw-modal-foot{
  padding:10px 16px;border-top:1px solid var(--bd1,#2a2a2a);display:flex;justify-content:flex-end;gap:8px;
}
.mw-modal-foot button{
  background:var(--bg2,#222);border:1px solid var(--bd1,#333);color:var(--t1);
  padding:7px 14px;border-radius:3px;cursor:pointer;font-weight:600;font-size:11px;
}
.mw-modal-foot .mw-modal-ok{background:var(--acc,#4a90e2);color:#fff;border-color:var(--acc,#4a90e2)}
.mw-modal-foot .mw-modal-ok.danger{background:#d9534f;border-color:#d9534f}

/* Manual-Ticket: Calculator + Quick + ATR (Phase 3b) */
.mw-calc{
  background:var(--bg0,#0e0e0e);border:1px solid var(--bd1,#2a2a2a);border-radius:4px;padding:8px;
}
.mw-calc-row{display:flex;align-items:center;gap:6px}
.mw-calc-row input{
  flex:1;background:var(--bg1,#181818);color:var(--t1,#eee);
  border:1px solid var(--bd1,#2a2a2a);padding:5px 8px;border-radius:3px;font-size:12px;
}
.mw-calc-eq{color:var(--t2,#888);font-weight:700}
.mw-calc-out{
  flex:1;font-weight:700;color:var(--acc,#4a90e2);font-size:13px;
  background:var(--bg1,#181818);padding:5px 8px;border-radius:3px;border:1px solid var(--bd1,#2a2a2a);
}
.mw-calc-apply{
  background:var(--acc,#4a90e2);color:#fff;border:0;padding:5px 10px;border-radius:3px;cursor:pointer;font-weight:700;
}
.mw-calc-hint{color:var(--t2,#666);font-size:9.5px;margin-top:4px;font-family:ui-monospace,monospace}

.mw-quick,.mw-atr-buttons{display:inline-flex;gap:3px;margin-left:6px}
.mw-quick button,.mw-atr-buttons button{
  background:var(--bg2,#222);color:var(--t1,#ccc);border:1px solid var(--bd1,#2a2a2a);
  padding:1px 6px;font-size:9px;border-radius:2px;cursor:pointer;font-weight:600;
}
.mw-quick button:hover,.mw-atr-buttons button:hover{background:var(--bg3,#2a2a2a);color:var(--t1)}

.mw-atr-info{
  flex-direction:row;justify-content:space-between;font-size:10.5px;color:var(--t2,#888);
  padding:4px 0;border-top:1px dashed var(--bd1,#2a2a2a);margin-top:-4px;
}
.mw-atr-info b{color:var(--t1,#ddd)}
.mw-risk-current{text-align:right}
.mw-risk-current b.warn{color:#e6a93a}
.mw-risk-current b.crit{color:#d9534f}

/* Manual-Chart (Phase 4) */
.mw-chart-wrap{position:relative;flex:1;overflow:hidden}
#mw-chart-canvas{width:100%;height:100%}
.mw-chart-profiles{display:inline-flex;gap:4px;margin-left:auto;align-items:center}
.mw-prof-btn{
  background:var(--bg2,#222);color:var(--t2,#aaa);border:1px solid var(--bd1,#333);
  padding:3px 9px;font-size:10px;border-radius:3px;cursor:pointer;font-weight:600;letter-spacing:.4px;
}
.mw-prof-btn.active{background:var(--acc,#4a90e2);color:#fff;border-color:var(--acc,#4a90e2)}
.mw-prof-btn:hover:not(.active){background:var(--bg3,#2a2a2a);color:var(--t1)}
.mw-layer-menu{
  position:absolute;top:8px;right:8px;background:var(--bg1,#181818);
  border:1px solid var(--bd1,#333);border-radius:5px;padding:10px 12px;z-index:50;
  display:flex;flex-direction:column;gap:5px;box-shadow:0 4px 16px rgba(0,0,0,.5);
  font-size:11px;min-width:160px;
}
.mw-layer-hdr{font-size:9px;color:var(--t2,#888);font-weight:700;letter-spacing:.6px;margin-bottom:4px}
.mw-layer-menu label{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--t1,#ddd)}
.mw-layer-foot{margin-top:6px;border-top:1px solid var(--bd1,#2a2a2a);padding-top:6px}
.mw-layer-foot button{
  background:var(--bg2,#222);color:var(--t1,#eee);border:1px solid var(--bd1,#333);
  padding:4px 10px;border-radius:3px;cursor:pointer;font-size:10px;width:100%;
}
.mw-layer-foot button:hover{background:var(--bg3,#2a2a2a)}

.mw-contract-info{
  flex-direction:row;justify-content:space-between;font-size:10.5px;color:var(--t2,#888);
  padding:4px 0;border-top:1px dashed var(--bd1,#2a2a2a);margin-top:-4px;
}
.mw-contract-info b{color:var(--t1,#ddd)}
.mw-margin{text-align:right}

/* Manual-Help (?-Button + Modal) */
#manual-topbar .mt-block-help{padding:8px 10px;border-right:0;border-left:1px solid var(--bd1,#2a2a2a)}
.mt-help-btn{
  background:var(--bg2,#222);color:var(--t1,#ddd);border:1px solid var(--bd1,#333);
  width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:14px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
}
.mt-help-btn:hover{background:var(--acc,#4a90e2);color:#fff;border-color:var(--acc,#4a90e2)}

.mw-modal-help{width:760px;max-width:94vw;max-height:88vh;display:flex;flex-direction:column}
.mw-modal-help .mw-modal-hdr{
  display:flex;align-items:center;justify-content:space-between;
}
.mw-help-close{
  background:transparent;border:0;color:var(--t2,#888);font-size:22px;line-height:1;
  cursor:pointer;padding:0 6px;
}
.mw-help-close:hover{color:var(--t1,#fff)}
.mw-help-body{
  overflow:auto;padding:18px 22px;line-height:1.55;font-size:12px;
}
.mw-help-body h3{
  margin:18px 0 6px 0;padding-bottom:4px;
  border-bottom:1px solid var(--bd1,#2a2a2a);
  font-size:12px;font-weight:700;letter-spacing:.6px;color:var(--acc,#4a90e2);
  text-transform:uppercase;
}
.mw-help-body h3:first-child{margin-top:0}
.mw-help-body dl{margin:0;display:grid;grid-template-columns:160px 1fr;gap:6px 14px;align-items:start}
.mw-help-body dt{font-weight:700;color:var(--t1,#ddd);font-size:11.5px}
.mw-help-body dd{margin:0;color:var(--t2,#aaa);font-size:11.5px}
.mw-help-body ul{margin:6px 0 0 0;padding-left:18px;color:var(--t2,#aaa)}
.mw-help-body li{margin:3px 0}
.mw-help-body li b,.mw-help-body dd b{color:var(--t1,#ddd);font-weight:600}
.mw-help-body code{
  background:var(--bg0,#0e0e0e);color:#a8c8ee;padding:1px 5px;border-radius:2px;
  font-size:10.5px;font-family:ui-monospace,monospace;
}
.mw-help-body p{margin:6px 0;color:var(--t2,#aaa);font-size:11.5px}

/* Volume-Profile Canvas-Overlay */
.mw-vp-canvas{
  position:absolute;top:0;right:60px;width:90px;height:100%;
  pointer-events:none;opacity:.65;
}
.mw-mca-pro{
  position:absolute;
  left:10px;
  top:10px;
  z-index:4;
  min-width:172px;
  max-width:240px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(13,15,18,.82);
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  backdrop-filter:blur(8px);
  pointer-events:none;
}
.mw-mca-pro.long{border-color:rgba(67,209,122,.45)}
.mw-mca-pro.short{border-color:rgba(255,107,107,.45)}
.mw-mca-pro.neutral{border-color:rgba(230,169,58,.42)}
.mw-mca-title{
  font-size:9px;
  font-weight:800;
  letter-spacing:.7px;
  color:var(--t2,#888);
  text-transform:uppercase;
}
.mw-mca-main{
  margin-top:2px;
  font-size:15px;
  font-weight:800;
  color:var(--t1,#eee);
}
.mw-mca-pro.long .mw-mca-main{color:#43d17a}
.mw-mca-pro.short .mw-mca-main{color:#ff8a8a}
.mw-mca-pro.neutral .mw-mca-main{color:#e6a93a}
.mw-mca-sub{
  margin-top:3px;
  color:var(--t2,#aaa);
  font-size:10px;
  line-height:1.35;
}
/* Layer-Menu: zwei-spaltig wenn viele Eintraege */
.mw-layer-menu{min-width:200px;max-height:560px;overflow:auto}
.mw-layer-foot{display:flex;gap:4px;flex-wrap:wrap}
.mw-layer-foot button{flex:1;min-width:70px}

/* ============================================================
   ORDER-TICKET TYPOGRAFIE — bessere Lesbarkeit, weiterhin kompakt
   ============================================================ */

/* Karten-Titel — kompakt aber lesbar */
#manual-ticket .mw-card-title{font-size:11px;letter-spacing:.7px}
#manual-ticket .mw-card-sub{font-size:10px}

/* Body: angenehmer System-Font fuer Labels */
#manual-ticket .mw-ticket-body{
  padding:11px;gap:9px;
  font-family:-apple-system,'SF Pro Text','Segoe UI','Inter',system-ui,sans-serif;
}

/* Labels — hell + lesbar, aber kompakt */
#manual-ticket .mw-row label{
  font-size:10.5px;
  color:var(--t1,#ddd);
  font-weight:600;
  letter-spacing:.3px;
  text-transform:none;
  display:flex;align-items:center;gap:8px;
}

/* Eingabefelder — Tabellen-Ziffern, dezent groesser als Standard */
#manual-ticket .mw-row input[type=number],
#manual-ticket .mw-calc-row input{
  font-size:12.5px;
  padding:6px 8px;
  font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-variant-numeric:tabular-nums;
  letter-spacing:.4px;
  color:#f0f0f0;
}
#manual-ticket .mw-row input[type=number]:focus,
#manual-ticket .mw-calc-row input:focus{
  outline:0;border-color:var(--acc,#4a90e2);
  background:#101822;
}

/* Calculator-Output prominent */
#manual-ticket .mw-calc-out{
  font-size:12.5px;
  font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-variant-numeric:tabular-nums;
}
#manual-ticket .mw-calc-hint{font-size:9.5px;letter-spacing:.2px;line-height:1.5}

/* Quick-Size + ATR-Buttons */
#manual-ticket .mw-quick button,
#manual-ticket .mw-atr-buttons button{
  font-size:9.5px;
  padding:2px 7px;
  letter-spacing:.4px;
  font-weight:700;
}

/* Bracket-Toggle */
#manual-ticket .mw-check{
  font-size:10.5px;color:var(--t1,#ddd);font-weight:500;
}

/* Checks-Feld */
#manual-ticket .mw-checks{
  font-size:10.5px;
  font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-variant-numeric:tabular-nums;
  line-height:1.5;
  padding:8px 10px;
  color:#cfd3d8;
}
#manual-ticket .mw-checks.ok{color:#b8e0b8}
#manual-ticket .mw-checks.bad{color:#f4c4c4}

/* Risk + Kontrakt-Info */
#manual-ticket .mw-atr-info,
#manual-ticket .mw-contract-info{
  font-size:10.5px;
  font-variant-numeric:tabular-nums;
  padding:5px 0;
}
#manual-ticket .mw-atr-info b,
#manual-ticket .mw-contract-info b{
  font-size:11.5px;
  font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
}

/* LONG/SHORT-Buttons */
#manual-ticket .mw-btn{
  font-size:12.5px;
  padding:11px 8px;
  letter-spacing:.7px;
  font-weight:700;
}
#manual-ticket .mw-hk{
  font-size:9px;
  padding:1px 5px;
  letter-spacing:.5px;
}

/* Validate-Button */
#manual-ticket .mw-btn-validate{
  font-size:10.5px;
  padding:6px;
  letter-spacing:.5px;
}

/* Konten-Modal: Auto/Manual Toggle-Buttons (2026-04-26 v3) */
/* Layout: Konto-Info links, AUTO + MANUAL nebeneinander, Aktionen rechts */
.acc-item{
  display:flex;align-items:center;gap:14px;
  padding:10px 12px;background:var(--bg3,#1a1a1a);
  border:1px solid var(--border,#2a2a2a);border-radius:6px;margin-bottom:6px;
}
.acc-item.active{border-color:#3dbb6b66}
.acc-item-info{flex:1;min-width:200px}
.acc-item-name{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--t1,#eee)}
.acc-item-title{color:var(--t1,#eee)}
.acc-item-sub{font-size:10.5px;color:var(--t3,#888);margin-top:3px;font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace}

.acc-roles{
  display:flex;gap:8px;align-items:stretch;flex-shrink:0;
}
.acc-role-btn{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  min-width:130px;
  background:var(--bg2,#181818);
  border:1px solid var(--border,#2a2a2a);
  color:var(--t3,#888);
  padding:7px 14px;border-radius:5px;
  font-family:-apple-system,'SF Pro Text','Segoe UI','Inter',system-ui,sans-serif;
  cursor:pointer;transition:all .15s;text-align:center;
}
.acc-role-tag{
  font-size:9.5px;font-weight:700;letter-spacing:1.2px;color:var(--t3,#888);
  text-transform:uppercase;
}
.acc-role-state{
  font-size:11px;font-weight:600;color:var(--t2,#aaa);
}

/* AKTIV — gruen, deutlich erkennbar */
.acc-role-btn.on{
  background:rgba(61,187,107,.16);
  border-color:#3dbb6b;
  box-shadow:inset 0 0 0 1px #3dbb6b66;
}
.acc-role-btn.on .acc-role-tag{color:#3dbb6b}
.acc-role-btn.on .acc-role-state{color:#b8e0b8;font-weight:700}

/* INAKTIV — neutral, hover wird einladend */
.acc-role-btn.off:hover{
  background:var(--bg3,#222);
  border-color:var(--acc2,#5aa3f0);
}
.acc-role-btn.off:hover .acc-role-state{color:var(--t1,#eee)}

/* SPERR-MODUS (Manual klickbar, aber zuerst Override-Confirm) */
.acc-role-btn.unlock{
  background:var(--bg2,#181818);
  border-color:var(--border,#3a3a3a);
  border-style:dashed;
}
.acc-role-btn.unlock .acc-role-tag{color:var(--t3,#888)}
.acc-role-btn.unlock .acc-role-state{
  color:var(--t2,#aaa);font-size:10px;font-style:normal;
}
.acc-role-btn.unlock .acc-role-state::before{content:"🔒 ";font-size:9px}
.acc-role-btn.unlock:hover{
  background:var(--bg3,#222);
  border-color:var(--t2,#888);border-style:solid;
}

/* Toolbar (Same-Account-Override) — neutrales Blau statt Gold */
.acc-toolbar{padding:6px 0 8px 0;border-bottom:1px solid var(--border,#222);margin-bottom:8px}
.acc-same-toggle{
  display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--t2,#aaa);
  cursor:pointer;
}
.acc-same-toggle input{cursor:pointer;accent-color:var(--acc,#4a90e2)}

/* Konten-Modal: Status-Header + Klick-Flash */
.acc-status-bar{
  display:flex;gap:14px;padding:10px 12px;margin-bottom:10px;
  background:var(--bg2,#181818);border:1px solid var(--border,#2a2a2a);border-radius:6px;
}
.acc-status-cell{display:flex;flex-direction:column;gap:2px;flex:1}
.acc-status-label{
  font-size:9px;font-weight:700;letter-spacing:1px;color:var(--t3,#888);
  text-transform:uppercase;
}
.acc-status-value{
  font-size:13px;font-weight:700;color:#3dbb6b;
  font-family:-apple-system,'SF Pro Text','Segoe UI',sans-serif;
}
.acc-status-value:empty::after,
.acc-status-value:contains('—'){color:var(--t3,#666)}

@keyframes acc-role-flash{
  0%{box-shadow:0 0 0 0 #3dbb6baa}
  100%{box-shadow:0 0 0 8px #3dbb6b00}
}
.acc-role-btn.flash{animation:acc-role-flash .38s ease-out}

/* Konten-Modal: Inline-Meldung statt Popup-Toast (2026-04-26) */
.acc-msg{
  padding:10px 14px;border-radius:5px;margin-bottom:10px;
  font-size:12px;line-height:1.5;
  border-left:3px solid var(--acc,#4a90e2);
  background:rgba(74,144,226,.08);color:var(--t1,#eee);
  font-family:-apple-system,'SF Pro Text','Segoe UI','Inter',system-ui,sans-serif;
}
.acc-msg.info{border-left-color:#5aa3f0;background:rgba(74,144,226,.10)}
.acc-msg.success{border-left-color:#3dbb6b;background:rgba(61,187,107,.10);color:#cfe9d4}
.acc-msg.warn{border-left-color:#e6a93a;background:rgba(230,169,58,.10);color:#f0d8a8}
.acc-msg.error{border-left-color:#d9534f;background:rgba(217,83,79,.10);color:#f4c4c4}

/* Backtest: Entry-Filter (Trend-Block / Regime-Stability / Event-Blackout) */
.nbt-filter-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
  background:var(--bg2,#181818);border:1px solid var(--border,#2a2a2a);
  border-radius:5px;padding:10px 12px;
}
.nbt-filter-cell{display:flex;flex-direction:column;gap:4px}
.nbt-filter-lbl{
  font-size:10px;font-weight:700;letter-spacing:.4px;color:var(--t2,#aaa);
  cursor:help;text-transform:uppercase;
}
.nbt-filter-cell select{
  background:var(--bg0,#0e0e0e);color:var(--t1,#eee);
  border:1px solid var(--border,#2a2a2a);padding:5px 8px;border-radius:3px;
  font-size:11.5px;font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
}
.nbt-filter-cell select:focus{outline:0;border-color:var(--acc,#4a90e2)}

/* Auto-Breakeven im Order-Ticket */
.mw-autobe{
  background:var(--bg2,#181818);border:1px solid var(--border,#2a2a2a);
  border-radius:5px;padding:8px 10px;
}
.mw-autobe-fields{
  display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px;
  padding-top:7px;border-top:1px dashed rgba(255,255,255,.06);
}
.mw-autobe-cell{display:flex;flex-direction:column;gap:3px}
.mw-autobe-cell label{
  font-size:9.5px;font-weight:600;letter-spacing:.3px;color:var(--t2,#aaa);
  text-transform:uppercase;
}
.mw-autobe-cell input{
  background:var(--bg0,#0e0e0e);color:var(--t1,#eee);
  border:1px solid var(--border,#2a2a2a);padding:5px 7px;border-radius:3px;
  font-size:12px;font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-variant-numeric:tabular-nums;
}
.mw-autobe-cell input:focus{outline:0;border-color:var(--acc,#4a90e2)}

/* Auto-BE Status-Tag in Positions-Liste */
.mw-pos-be{
  font-size:8.5px;font-weight:700;letter-spacing:.5px;padding:1px 5px;border-radius:2px;
  margin-left:5px;vertical-align:middle;
}
.mw-pos-be.armed{background:rgba(74,144,226,.18);color:#a8c8ee}
.mw-pos-be.armed::before{content:"BE@"}
.mw-pos-be.fired{background:rgba(61,187,107,.18);color:#3dbb6b}
.mw-pos-be.fired::before{content:"BE✓"}

/* SL/TP-Toggle-Rows (Calculator entfernt 2026-04-26) */
.mw-bracket-row{
  display:grid;grid-template-columns:1fr 110px;gap:10px;align-items:center;
  background:var(--bg2,#181818);border:1px solid var(--border,#2a2a2a);
  border-radius:5px;padding:7px 10px;
}
.mw-bracket-row input[type=number]{
  background:var(--bg0,#0e0e0e);color:var(--t1,#eee);
  border:1px solid var(--border,#2a2a2a);padding:5px 8px;border-radius:3px;
  font-size:12px;font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-variant-numeric:tabular-nums;text-align:right;
}
.mw-input-disabled{
  opacity:.4;background:var(--bg0,#0e0e0e) !important;color:var(--t3,#666) !important;
  cursor:not-allowed;
}

/* Validate-Checks: Close-Button + Pre-Layout (2026-04-26) */
.mw-checks{position:relative}
.mw-checks.has-content{padding-right:28px}
.mw-checks-close{
  position:absolute;top:4px;right:4px;
  background:transparent;border:0;color:var(--t3,#888);
  font-size:16px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:3px;
}
.mw-checks-close:hover{background:rgba(255,255,255,.1);color:var(--t1,#eee)}
.mw-checks-text{margin:0;font-family:inherit;font-size:inherit;color:inherit;white-space:pre-wrap}

/* IG-Min-Anforderungen unter Inputs (2026-04-26) */
.mw-hint{
  display:block;font-size:9.5px;color:var(--t3,#888);margin-top:3px;
  letter-spacing:.2px;font-family:'JetBrains Mono','SF Mono',ui-monospace,monospace;
  font-variant-numeric:tabular-nums;line-height:1.4;
}
.mw-hint b{color:var(--t1,#ddd);font-weight:600}
.mw-hint.warn{color:#e6a93a}
.mw-hint.crit{color:#d9534f}
/* Bracket-Row hat 2-Spalten-Grid → Hint soll spannen */
.mw-bracket-row .mw-hint-bracket{grid-column:1 / -1;text-align:right}

/* ─── REGIME LAB ─────────────────────────────────────────────── */
#rlab-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);
  display:none;align-items:center;justify-content:center;z-index:9100}
#rlab-overlay.open{display:flex}
#rlab-modal{background:var(--bg0);width:100vw;height:100vh;
  border:0;border-radius:0;display:flex;flex-direction:column;overflow:hidden}
.rlab-hdr{padding:8px 14px;border-bottom:1px solid var(--bd1);display:flex;align-items:center;gap:12px}
.rlab-title{font-weight:700;font-size:13px;color:var(--t1)}
.rlab-subtitle{flex:1;color:var(--t3);font-size:10px}
.rlab-close{background:transparent;border:0;color:var(--t2);font-size:14px;cursor:pointer;padding:4px 8px}
.rlab-close:hover{color:var(--err,#e55)}
.rlab-tabs{display:flex;border-bottom:1px solid var(--bd1);padding:0 8px;gap:0}
.rlab-tab{background:transparent;border:0;border-bottom:2px solid transparent;
  color:var(--t3);font-size:10px;padding:7px 14px;cursor:pointer;font-weight:600}
.rlab-tab.active{color:var(--t1);border-bottom-color:var(--acc,#4c9)}
.rlab-tab:hover{color:var(--t1)}
.rlab-body{flex:1;overflow:hidden;position:relative}
.rlab-pane{display:none;height:100%;overflow:auto;padding:12px}
.rlab-pane.active{display:block}

.rlab-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px}
.rlab-toolbar input[type=text]{flex:1;padding:5px 8px;background:var(--bg1);
  border:1px solid var(--bd1);color:var(--t1);font-size:11px;border-radius:3px}
.rlab-toolbar label{font-size:10px;color:var(--t2)}

.rlab-rules-list{display:flex;flex-direction:column;gap:4px}
.rlab-rule-row{display:grid;grid-template-columns:1fr 60px 70px 80px 1fr 90px;
  gap:8px;align-items:center;padding:6px 10px;background:var(--bg1);
  border:1px solid var(--bd1);border-radius:3px;font-size:11px}
.rlab-rule-row.disabled{opacity:.5}
.rlab-rule-name{font-family:monospace;color:var(--t1);font-weight:600}
.rlab-rule-prio{color:var(--t3);font-size:9px}
.rlab-rule-badge{font-size:8px;padding:1px 5px;border-radius:2px;display:inline-block}
.rlab-rule-badge.system{background:#36495e;color:#9cf}
.rlab-rule-badge.user{background:#3a4d3a;color:#9f9}
.rlab-rule-badge.active{background:#2d4a2d;color:#9d9}
.rlab-rule-badge.inactive{background:#4a3a3a;color:#d99}
.rlab-rule-tags{font-size:9px;color:var(--t3)}
.rlab-rule-actions{display:flex;gap:4px;justify-content:flex-end}
.rlab-rule-actions button{background:transparent;border:1px solid var(--bd1);
  color:var(--t2);font-size:9px;padding:2px 6px;cursor:pointer;border-radius:2px}
.rlab-rule-actions button:hover:not(:disabled){border-color:var(--acc,#4c9);color:var(--t1)}
.rlab-rule-actions button:disabled{opacity:.3;cursor:not-allowed}

.rlab-builder{display:grid;grid-template-columns:minmax(360px,40%) 1fr;gap:14px;height:100%}
.rlab-builder-left{display:flex;flex-direction:column;gap:8px;overflow:auto;padding-right:6px}
.rlab-builder-right{display:flex;flex-direction:column;gap:8px;overflow:hidden}
.rlab-form-row{display:flex;flex-direction:column;gap:3px}
.rlab-form-row label{font-size:9px;color:var(--t3);text-transform:uppercase}
.rlab-form-row label small{color:var(--t3);text-transform:none;font-size:8px}
.rlab-form-row input,.rlab-form-row textarea,.rlab-form-row select{
  background:var(--bg1);border:1px solid var(--bd1);color:var(--t1);
  padding:4px 6px;font-size:11px;border-radius:3px;font-family:inherit}
.rlab-form-row textarea{resize:vertical;min-height:34px}
.rlab-form-inline{flex-direction:row;gap:8px}
.rlab-form-inline > div{flex:1;display:flex;flex-direction:column;gap:3px}

.rlab-tree-hdr{font-size:9px;color:var(--t3);text-transform:uppercase;margin-top:4px;font-weight:600}
.rlab-tree{background:var(--bg1);border:1px solid var(--bd1);padding:6px;
  border-radius:3px;font-size:10px;min-height:60px}
.rlab-tree-node{margin:3px 0;padding-left:8px;border-left:2px solid var(--bd1)}
.rlab-tree-node.combinator{border-left-color:#4af}
.rlab-tree-node.leaf{border-left-color:var(--acc,#4c9)}
.rlab-tree-controls{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.rlab-tree-controls select,.rlab-tree-controls input{
  background:var(--bg2,#222);border:1px solid var(--bd1);color:var(--t1);
  padding:2px 4px;font-size:10px;border-radius:2px}
.rlab-tree-controls button{background:transparent;border:1px solid var(--bd1);
  color:var(--t2);font-size:9px;padding:1px 6px;cursor:pointer;border-radius:2px}
.rlab-tree-controls button:hover{border-color:var(--acc,#4c9);color:var(--t1)}

.rlab-builder-actions{display:flex;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid var(--bd1)}
.rlab-btn-primary,.rlab-btn-secondary,.rlab-btn-ghost{
  border:0;padding:5px 12px;font-size:10px;cursor:pointer;border-radius:3px;font-weight:600}
.rlab-btn-primary{background:var(--acc,#4c9);color:#000}
.rlab-btn-primary:hover{filter:brightness(1.1)}
.rlab-btn-secondary{background:var(--bg2,#252525);color:var(--t1);border:1px solid var(--bd1)}
.rlab-btn-secondary:hover{border-color:var(--acc,#4c9)}
.rlab-btn-ghost{background:transparent;color:var(--t3);border:1px solid var(--bd1)}
.rlab-msg{font-size:10px;padding:4px 0;min-height:14px}
.rlab-msg.ok{color:var(--acc,#4c9)}
.rlab-msg.err{color:var(--err,#e55)}

.rlab-preview-toolbar{display:flex;gap:6px;align-items:center}
.rlab-preview-toolbar input{background:var(--bg1);border:1px solid var(--bd1);
  color:var(--t1);padding:4px 6px;font-size:10px;border-radius:3px}
.rlab-pv-stats{display:flex;gap:14px;flex-wrap:wrap;font-size:10px;color:var(--t2);
  padding:4px 0;border-bottom:1px solid var(--bd1)}
.rlab-pv-stats span b{color:var(--t1)}
.rlab-pv-chart{flex:1;background:var(--bg1);border:1px solid var(--bd1);
  border-radius:3px;min-height:300px;color:var(--t3);font-size:10px;
  display:flex;align-items:center;justify-content:center;padding:8px}
.rlab-pv-warns{font-size:10px;color:var(--err,#e55);min-height:14px}

.rlab-affinity-info{font-size:11px;color:var(--t2);padding:14px;background:var(--bg1);
  border-radius:3px;margin-bottom:10px}

/* Indikator-Affinity Tab */
.aff-form{background:var(--bg1);border:1px solid var(--bd1);border-radius:4px;
  padding:10px 12px;margin-bottom:10px}
.aff-form-row{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-size:11px}
.aff-form-row label{color:var(--t2);min-width:80px}
.aff-form-row select,.aff-form-row input[type=date]{
  background:var(--bg0);color:var(--t1);border:1px solid var(--bd1);padding:3px 6px;
  border-radius:3px;font-size:11px;font-family:inherit}
.aff-radio{color:var(--t1);display:flex;align-items:center;gap:3px;min-width:unset !important}
.aff-actions{margin-top:8px}
#aff-status{font-size:11px;color:var(--t2)}
#aff-status.running{color:#ec8;animation:aff-pulse 1.2s ease-in-out infinite}
#aff-status.done{color:#7d9}
#aff-status.failed{color:#e88}
@keyframes aff-pulse{0%,100%{opacity:.6}50%{opacity:1}}

.aff-runs-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px;font-size:10px}
.aff-runs-row .aff-chip{background:var(--bg1);border:1px solid var(--bd1);padding:3px 8px;
  border-radius:12px;cursor:pointer;color:var(--t2)}
.aff-runs-row .aff-chip:hover{border-color:var(--t1);color:var(--t1)}
.aff-runs-row .aff-chip.active{background:var(--bg2);border-color:#6cf;color:#cef}

.aff-result{font-size:11px}
.aff-baseline{font-size:11px;color:var(--t2);padding:6px 8px;background:var(--bg1);
  border-radius:3px;margin-bottom:8px}
.aff-baseline b{color:var(--t1)}
.aff-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.aff-table th{font-size:10px;color:var(--t2);text-align:left;padding:4px 5px;
  border-bottom:1px solid var(--bd1);position:sticky;top:0;background:var(--bg0);z-index:1}
.aff-table td{font-size:10.5px;padding:3px 5px;border-bottom:1px solid var(--bd1)}
.aff-table tbody tr:hover{background:var(--bg1)}
.aff-ind-name{color:var(--t1);font-weight:600;white-space:nowrap}
.aff-ind-cat{color:var(--t2);font-size:9px}
.aff-edge{color:#cef;font-weight:600;text-align:right;min-width:50px}
.aff-bucket{display:inline-block;min-width:60px;text-align:center;padding:1px 4px;
  border-radius:2px;font-size:10px;line-height:1.4}
.aff-bucket.win{background:rgba(120,200,140,.15);color:#cfc}
.aff-bucket.loss{background:rgba(220,120,120,.18);color:#fcc}
.aff-bucket.neutral{background:transparent;color:var(--t2)}
.aff-bucket-line2{font-size:9px;color:var(--t2);display:block;margin-top:1px}
.aff-empty{padding:18px;text-align:center;color:var(--t2);font-size:11px}

/* Chart Live-Indikator (Stream vs Poll) */
#chart-live-indicator.live-stream{background:rgba(120,200,140,.18);color:#9eb;border:1px solid rgba(120,200,140,.4)}
#chart-live-indicator.live-poll{background:rgba(230,180,90,.18);color:#fc9;border:1px solid rgba(230,180,90,.4)}
#chart-live-indicator.live-idle{background:transparent;color:var(--t3);border:1px solid var(--bd1)}

/* Regime Lab Stats + Trade-Vergleich + Legende */
.rlab-stats-row{display:flex;gap:14px;flex-wrap:wrap;font-size:10px;color:var(--t2);
  padding:4px 0;border-bottom:1px solid var(--bd1)}
.rlab-stats-row span b{color:var(--t1)}
.rlab-trade-hdr{font-size:10px;color:var(--t2);padding:6px 0;display:flex;
  align-items:center;gap:8px;flex-wrap:wrap}
.rlab-trade-hdr b{color:var(--t1)}
.rlab-edge-badge{font-size:9px;padding:2px 8px;border-radius:3px;font-weight:700;letter-spacing:.04em}
.rlab-edge-badge.ok{background:#1f3d2c;color:#4c9;border:1px solid #2d6e4a}
.rlab-edge-badge.bad{background:#3d1f1f;color:#e55;border:1px solid #6e2d2d}
.rlab-edge-badge.neutral{background:#2a2a2a;color:#aaa;border:1px solid #444}
.rlab-trade-tbl{width:100%;font-size:10px;border-collapse:collapse}
.rlab-trade-tbl th{text-align:left;color:var(--t3);font-weight:600;
  padding:4px 8px;border-bottom:1px solid var(--bd1);background:var(--bg1)}
.rlab-trade-tbl td{padding:4px 8px;border-bottom:1px solid var(--bd1);color:var(--t1)}
.rlab-trade-tbl td:first-child{color:var(--t3)}
.rlab-trade-tbl td small{color:var(--t3);font-size:9px}
.rlab-trade-tbl tr.row-delta td{background:#1a1f25;font-weight:700}
.rlab-trade-tbl tr.row-delta td:first-child{color:var(--t1)}
.rlab-trade-tbl tr.row-blocked td{opacity:.7}

.rlab-legend{display:flex;gap:14px;flex-wrap:wrap;padding:6px 0;
  font-size:9px;color:var(--t3);border-top:1px solid var(--bd1)}
.rlab-leg-item{display:flex;align-items:center;gap:4px}
.rlab-leg-arrow{font-size:11px;font-weight:700;line-height:1}
.rlab-leg-arrow.green{color:#4c9}
.rlab-leg-arrow.red{color:#e55}
.rlab-leg-dot{display:inline-block;width:6px;height:6px;border-radius:50%;
  background:rgba(76,153,204,.7)}

/* Legende erweitert (V2) */
.rlab-legend{display:flex;gap:18px;flex-wrap:wrap;padding:8px 0;
  font-size:9px;color:var(--t3);border-top:1px solid var(--bd1)}
.rlab-leg-block{display:flex;flex-direction:column;gap:3px;min-width:180px}
.rlab-leg-hdr{color:var(--t2);font-size:8px;text-transform:uppercase;
  letter-spacing:.05em;font-weight:600;margin-bottom:2px}
.rlab-leg-arrow.neutral{color:#aaa}

/* Slot-Editor: Regime-Lab Allowlist Multi-Select */
.orch-rlab-grid{display:flex;flex-wrap:wrap;gap:6px;padding:6px;
  background:var(--bg1);border:1px solid var(--bd1);border-radius:3px;min-height:32px}
.orch-rlab-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;
  border:1px solid var(--bd1);border-radius:14px;font-size:10px;
  cursor:pointer;color:var(--t2);user-select:none;background:transparent}
.orch-rlab-chip:hover{border-color:var(--acc,#4c9);color:var(--t1)}
.orch-rlab-chip.selected{background:#1f3d2c;color:#4c9;border-color:#2d6e4a}
.orch-rlab-chip small{color:var(--t3);font-size:8px}

/* Regime Lab Parameter-Optimizer */
.rlab-opt-section{margin-top:8px;border-top:1px solid var(--bd1);padding-top:6px}
.rlab-opt-section summary{cursor:pointer;font-size:11px;color:var(--t1);font-weight:600;padding:4px 0}
.rlab-opt-section[open] summary{color:var(--acc,#4c9)}
.rlab-opt-leaves{display:flex;flex-direction:column;gap:4px;margin:6px 0;font-size:10px}
.rlab-opt-leaf{display:grid;grid-template-columns:1fr auto auto auto auto auto;gap:6px;
  align-items:center;background:var(--bg1);padding:4px 8px;border:1px solid var(--bd1);border-radius:3px}
.rlab-opt-leaf .opt-name{font-family:monospace;color:var(--t1);font-size:10px}
.rlab-opt-leaf .opt-name small{color:var(--t3);font-size:8px}
.rlab-opt-leaf input[type=number],.rlab-opt-leaf input[type=text]{
  width:60px;padding:2px 4px;background:var(--bg2,#222);border:1px solid var(--bd1);
  color:var(--t1);font-size:10px;border-radius:2px;font-family:monospace}
.rlab-opt-leaf select{padding:2px 4px;background:var(--bg2,#222);border:1px solid var(--bd1);
  color:var(--t1);font-size:10px;border-radius:2px}
.rlab-opt-leaf .opt-vals-input{width:160px}
.rlab-opt-leaf .opt-count{color:var(--t3);font-size:9px;font-family:monospace;min-width:40px;text-align:right}

.rlab-opt-toolbar{display:flex;gap:8px;align-items:center;margin:6px 0;font-size:10px;color:var(--t2)}
.rlab-opt-toolbar select{background:var(--bg1);border:1px solid var(--bd1);color:var(--t1);
  padding:3px 6px;font-size:10px;border-radius:3px}
.rlab-opt-combo-count{color:var(--t3);font-size:10px}
.rlab-opt-combo-count.danger{color:var(--err,#e55);font-weight:700}

.rlab-opt-results{margin-top:6px;font-size:10px;max-height:280px;overflow:auto}
.rlab-opt-results table{width:100%;border-collapse:collapse}
.rlab-opt-results th{background:var(--bg1);text-align:left;padding:3px 6px;
  border-bottom:1px solid var(--bd1);color:var(--t3);font-weight:600;position:sticky;top:0}
.rlab-opt-results td{padding:3px 6px;border-bottom:1px solid var(--bd1);color:var(--t1)}
.rlab-opt-results tr.best td{background:#1f3d2c}
.rlab-opt-results td.params{font-family:monospace;font-size:9px;color:var(--t2)}
.rlab-opt-apply-btn{background:transparent;border:1px solid var(--bd1);color:var(--t2);
  font-size:9px;padding:1px 6px;cursor:pointer;border-radius:2px}
.rlab-opt-apply-btn:hover{border-color:var(--acc,#4c9);color:var(--t1)}

/* Regime Lab Optimizer — Loading-Bar */
.rlab-opt-loading{padding:14px 8px;display:flex;flex-direction:column;gap:8px}
.rlab-opt-loading-bar{height:4px;background:var(--bg1);border-radius:2px;overflow:hidden;
  border:1px solid var(--bd1)}
.rlab-opt-loading-fill{height:100%;width:30%;background:linear-gradient(90deg,
  rgba(76,153,128,0) 0%, rgba(76,204,153,0.9) 50%, rgba(76,153,128,0) 100%);
  animation: rlab-opt-slide 1.1s ease-in-out infinite}
.rlab-opt-loading-msg{font-size:10px;color:var(--t2);display:flex;justify-content:space-between;
  align-items:center}
.rlab-opt-loading-msg #rlab-opt-elapsed{color:var(--acc,#4c9);font-family:monospace;font-weight:700}
@keyframes rlab-opt-slide{
  0%{transform:translateX(-110%)}
  100%{transform:translateX(420%)}
}

/* Regime Lab Builder — Inner Tabs (Chart / Optimizer) */
.rlab-inner-tabs{display:flex;gap:4px;border-bottom:1px solid var(--bd1);
  margin:6px 0 8px 0;padding:0}
.rlab-inner-tab{background:transparent;border:0;border-bottom:2px solid transparent;
  color:var(--t3);font-size:10px;padding:6px 14px;cursor:pointer;font-weight:600}
.rlab-inner-tab.active{color:var(--t1);border-bottom-color:var(--acc,#4c9)}
.rlab-inner-tab:hover{color:var(--t1)}
.rlab-inner-pane{display:none;flex:1;flex-direction:column;gap:8px;overflow:hidden;min-height:0}
.rlab-inner-pane.active{display:flex}

/* Optimizer Tab Layout */
.rlab-opt-hdr{padding:6px 0}
.rlab-opt-hdr-title{font-size:13px;color:var(--t1);font-weight:700;letter-spacing:.02em}
.rlab-opt-hdr-sub{font-size:10px;color:var(--t3);margin-top:3px;line-height:1.4}

#rlab-opt-leaves.rlab-opt-leaves{display:flex;flex-direction:column;gap:4px;
  background:var(--bg1);border:1px solid var(--bd1);border-radius:4px;padding:8px;
  max-height:240px;overflow:auto}
.rlab-opt-leaf{display:grid;grid-template-columns:160px 90px 1fr 60px 28px;
  gap:8px;align-items:center;background:var(--bg2,#1a1a1a);padding:5px 8px;
  border-radius:3px;border:1px solid transparent}
.rlab-opt-leaf:hover{border-color:var(--bd1)}

.rlab-opt-toolbar{display:flex;gap:10px;align-items:center;font-size:11px;
  color:var(--t2);padding:6px 0;border-top:1px solid var(--bd1);
  border-bottom:1px solid var(--bd1)}
.rlab-opt-toolbar label{color:var(--t3);font-size:10px}

.rlab-opt-results{flex:1;min-height:200px;overflow:auto;padding-top:6px}
.rlab-opt-results table{font-size:10.5px}
.rlab-opt-results th{padding:5px 8px;font-size:10px}
.rlab-opt-results td{padding:5px 8px}
.rlab-opt-results tr.best{box-shadow:inset 3px 0 0 var(--acc,#4c9)}
.rlab-opt-results td.params{font-size:10px;color:var(--t1)}

/* Optimizer-Leaf-Header (Spalten-Beschriftung) */
.rlab-opt-leaf-hdr{background:transparent !important;border:0 !important;
  padding:2px 8px 4px 8px !important;position:sticky;top:0;z-index:2;
  background:var(--bg1) !important}
.rlab-opt-leaf-hdr .opt-hdr{font-size:9px;color:var(--t3);font-weight:600;
  text-transform:uppercase;letter-spacing:.04em}
.rlab-opt-leaf-hdr .opt-name.opt-hdr small{color:var(--t3);text-transform:none;
  font-weight:400;font-size:8px;display:block;letter-spacing:0;margin-top:1px}
.rlab-opt-leaf-hdr .opt-range-hdr{display:flex;gap:8px;font-size:9px;color:var(--t3);
  font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.rlab-opt-leaf-hdr:hover{border-color:transparent !important}
.opt-count-hdr{text-align:right}

/* ── SYSTEM-MONITOR Side-Panel ──────────────────────────────────────────── */
.sysmon-panel{
  position:fixed;top:0;right:-440px;bottom:0;width:420px;
  background:var(--bg0,#0c0c0e);border-left:1px solid var(--bd1,#2a2a2a);
  z-index:9000;display:flex;flex-direction:column;
  box-shadow:-4px 0 20px rgba(0,0,0,.55);
  transition:right .22s ease;font-family:var(--cond);
}
.sysmon-panel.open{right:0}
.sysmon-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:8999;
  opacity:0;pointer-events:none;transition:opacity .22s;
}
.sysmon-backdrop.open{opacity:1;pointer-events:auto}

.sysmon-hdr{
  flex:0 0 auto;padding:12px 14px;border-bottom:1px solid var(--bd1,#2a2a2a);
  display:flex;align-items:center;justify-content:space-between;background:var(--bg1)
}
.sysmon-title{font-size:12px;font-weight:900;color:var(--t1);letter-spacing:.08em}
.sysmon-hdr-meta{display:flex;align-items:center;gap:10px}
.sysmon-refresh-lbl{font-size:9px;color:var(--t3);letter-spacing:.04em}
.sysmon-close{background:none;border:none;color:var(--t2);font-size:22px;cursor:pointer;line-height:1;padding:0 4px}
.sysmon-close:hover{color:var(--t1)}

.sysmon-body{flex:1;overflow-y:auto;padding:10px 12px 24px}
.sysmon-body::-webkit-scrollbar{width:6px}
.sysmon-body::-webkit-scrollbar-thumb{background:rgba(90,122,158,.3);border-radius:3px}

.sysmon-section{margin-bottom:14px}
.sysmon-section-hdr{
  font-size:9px;font-weight:900;letter-spacing:.1em;color:var(--t3);
  padding:4px 2px;border-bottom:1px solid var(--bd1,#2a2a2a);margin-bottom:8px;
  display:flex;justify-content:space-between;align-items:center;text-transform:uppercase
}
.sysmon-section-hdr-meta{font-size:8px;font-weight:600;color:var(--t3);letter-spacing:.05em;display:flex;align-items:center;gap:6px}

.sysmon-gauges{display:flex;flex-direction:column;gap:7px}
.sysmon-gauge-lbl{font-size:9.5px;color:var(--t2);font-weight:700;letter-spacing:.04em;
  display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2px}
.sysmon-gauge-lbl > span:first-child{color:var(--t3);font-weight:600}
.sysmon-gauge-sub{font-size:8px;color:var(--t3);font-weight:500;letter-spacing:0}
.sysmon-gauge-bar{height:6px;background:var(--bg2);border-radius:3px;overflow:hidden;
  border:1px solid var(--bd1)}
.sysmon-gauge-fill{height:100%;background:linear-gradient(90deg,#4da6ff,#7bbcff);
  transition:width .25s ease,background .25s}
.sysmon-gauge-fill.warn{background:linear-gradient(90deg,#f5c842,#f5a342)}
.sysmon-gauge-fill.crit{background:linear-gradient(90deg,#ff5757,#c92c2c)}
.sysmon-wal{font-size:8.5px;color:var(--t3);margin-top:6px;font-family:var(--mono);letter-spacing:0}

.sysmon-list{display:flex;flex-direction:column;gap:5px}
.sysmon-row{
  display:grid;grid-template-columns: 38px 1fr auto;gap:6px;
  padding:6px 8px;background:var(--bg1);border:1px solid var(--bd1);border-radius:4px;
  font-size:9.5px;align-items:center
}
.sysmon-row.stale{background:rgba(229,77,77,.07);border-color:rgba(229,77,77,.4)}
.sysmon-row-tag{font-family:var(--cond);font-size:8.5px;font-weight:900;letter-spacing:.06em;
  text-align:center;padding:2px 0;border-radius:2px;border:1px solid}
.sysmon-tag-nbt {color:#4da6ff;border-color:rgba(77,166,255,.45);background:rgba(77,166,255,.10)}
.sysmon-tag-rlopt{color:#e0a042;border-color:rgba(224,160,66,.45);background:rgba(224,160,66,.10)}
.sysmon-tag-cbt {color:#bda4ff;border-color:rgba(189,164,255,.45);background:rgba(189,164,255,.10)}
.sysmon-tag-disc{color:#42c69f;border-color:rgba(66,198,159,.45);background:rgba(66,198,159,.10)}
.sysmon-tag-aff {color:#ff7ec0;border-color:rgba(229,77,150,.45);background:rgba(229,77,150,.10)}
.sysmon-tag-sm  {color:#a0c4ff;border-color:rgba(160,196,255,.45);background:rgba(160,196,255,.10)}
.sysmon-tag-kern{color:#7ecf7e;border-color:rgba(126,207,126,.45);background:rgba(126,207,126,.08)}

.sysmon-row-mid{min-width:0;display:flex;flex-direction:column;gap:2px}
.sysmon-row-id{font-family:var(--mono);font-size:9px;color:var(--t1);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}
.sysmon-row-meta{font-size:8px;color:var(--t3);font-family:var(--cond);letter-spacing:.03em}
.sysmon-row-meta b{color:var(--t2);font-weight:700}
.sysmon-row-progbar{height:3px;background:var(--bg3);border-radius:2px;margin-top:2px;overflow:hidden}
.sysmon-row-progfill{height:100%;background:#4da6ff;transition:width .2s}

.sysmon-row-actions{display:flex;gap:4px}
.sysmon-act-btn{
  background:var(--bg2);border:1px solid var(--bd1);color:var(--t2);
  font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.05em;
  padding:3px 7px;border-radius:3px;cursor:pointer;transition:background .12s,color .12s,border-color .12s
}
.sysmon-act-btn:hover{background:var(--bg3);color:var(--t1)}
.sysmon-act-cancel:hover{border-color:#f5c842;color:#f5c842}
.sysmon-act-kill:hover{border-color:#ff5757;color:#ff5757}

.sysmon-list-recent .sysmon-row{opacity:.66}
.sysmon-list-recent .sysmon-row-id{font-weight:500}

.sysmon-cleanup-btn{
  background:var(--bg2);border:1px solid var(--bd1);color:var(--t2);
  font-family:var(--cond);font-size:8px;font-weight:800;letter-spacing:.05em;
  padding:2px 7px;border-radius:3px;cursor:pointer
}
.sysmon-cleanup-btn:hover{border-color:#f5c842;color:#f5c842}
.sysmon-empty{font-size:9px;color:var(--t3);padding:6px 4px;text-align:center}
