/* Batch 207.17: BTC pattern-builder backtest. */
.btc-workspace-v2.btc-deep-page{
  background:#070b12;
  min-height:100vh;
}
.btc-workspace-v2 .btc-page-shell{
  width:min(1840px,calc(100vw - 24px));
  margin:10px auto 26px;
  gap:10px;
}
.btc-workspace-v2 .btc-hero,
.btc-workspace-v2 .btc-control-card,
.btc-workspace-v2 .btc-stat,
.btc-workspace-v2 .btc-chart-panel,
.btc-workspace-v2 .btc-card{
  border-radius:8px;
  box-shadow:none;
  border-color:rgba(148,163,184,.16);
}
.btc-workspace-v2 .btc-hero{
  min-height:0;
  align-items:center;
  padding:12px 14px;
  background:#0b1220;
}
.btc-workspace-v2 .btc-heading-block{
  display:grid;
  grid-template-columns:auto auto minmax(280px,1fr);
  align-items:center;
  gap:10px 13px;
  min-width:0;
}
.btc-workspace-v2 .btc-heading-block .back-link{
  margin:0;
  color:#93c5fd;
  font-size:13px;
}
.btc-workspace-v2 .btc-kicker{
  margin:0;
  color:#64748b;
  letter-spacing:.08em;
}
.btc-workspace-v2 .btc-heading-block h1{
  margin:0;
  font-size:22px;
  letter-spacing:0;
}
.btc-workspace-v2 .btc-heading-block p{
  grid-column:1 / -1;
  margin:0;
  max-width:none;
  color:#94a3b8;
  font-size:13px;
}
.btc-workspace-v2 .btc-nav{
  padding-top:0;
}
.btc-workspace-v2 .btc-nav a{
  border-radius:8px;
  padding:8px 10px;
}
.btc-workspace-v2 .btc-control-card{
  padding:9px 10px;
  background:#0b1220;
  align-items:flex-start;
  flex-wrap:wrap;
}
.btc-workspace-v2 .btc-control-left{
  gap:8px;
}
.btc-workspace-v2 .btc-field select,
.btc-workspace-v2 .btc-refresh{
  border-radius:8px;
  height:34px;
}
.btc-workspace-v2 .btc-refresh{
  width:auto;
  min-width:74px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  line-height:1;
  white-space:nowrap;
}
.btc-workspace-v2 .btc-auto-toggle{
  margin-left:0;
}
.btc-workspace-v2 .btc-pill{
  border-radius:8px;
  min-height:28px;
}
.btc-workspace-v2 .btc-pill.ok{
  color:#86efac;
  border-color:rgba(34,197,94,.32);
  background:rgba(34,197,94,.08);
}
.btc-workspace-v2 .btc-pill.warn{
  color:#fde68a;
  border-color:rgba(245,158,11,.32);
  background:rgba(245,158,11,.08);
}
.btc-workspace-v2 .btc-build-pill{
  color:#93c5fd;
  border-color:rgba(96,165,250,.30);
  background:rgba(37,99,235,.10);
}
.btc-workspace-v2 .btc-panel-toggles{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  flex:1 0 100%;
  padding-top:4px;
}
.btc-workspace-v2 .btc-panel-toggles label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:28px;
  padding:4px 8px;
  border:1px solid rgba(148,163,184,.15);
  border-radius:8px;
  background:rgba(2,6,23,.28);
  color:#cbd5e1;
  font-size:12px;
  line-height:1;
  user-select:none;
}
.btc-workspace-v2 .btc-panel-toggles input{
  accent-color:#22c55e;
  width:13px;
  height:13px;
  margin:0;
}
.btc-workspace-v2 .btc-stats-grid{
  grid-template-columns:1fr 1.25fr 1fr 1fr;
  gap:8px;
}
.btc-workspace-v2 .btc-stat{
  min-height:58px;
  padding:10px 11px;
  background:#0b1220;
}
.btc-workspace-v2 .btc-stat span{
  margin-bottom:5px;
  letter-spacing:.08em;
}
.btc-workspace-v2 .btc-stat strong{
  font-size:19px;
  letter-spacing:0;
}
.btc-workspace-v2 .btc-stat small{
  margin-top:5px;
}
.btc-workspace-v2 .btc-chart-panel{
  min-height:0;
  background:#0b1220;
  position:relative;
  overflow:hidden;
}
.btc-workspace-v2 .btc-chart-toolbar{
  display:none;
}
.btc-workspace-v2 .btc-legend-item{
  border-radius:8px;
  padding:3px 7px;
}
.btc-workspace-v2 .btc-chart-container{
  height:560px;
  min-height:0;
  min-width:0;
  width:100%;
}
.btc-workspace-v2 #btcChartContainer.btc-chart-container{
  height:560px !important;
  min-height:0 !important;
  min-width:0 !important;
  width:100% !important;
}
.btc-workspace-v2 .btc-pane-badge-layer{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:24;
}
.btc-workspace-v2 .pane-badge{
  position:absolute;
  left:12px;
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:3px 8px;
  border-radius:8px;
  border:1px solid rgba(36,48,79,.85);
  background:rgba(6,11,26,.88);
  color:#e8ecf8;
  font-size:11px;
  font-weight:700;
  line-height:1;
  letter-spacing:0;
  white-space:nowrap;
  box-shadow:none;
}
.btc-workspace-v2 .pane-badge-title{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.btc-workspace-v2 .pane-badge-title::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--badge-color,#60a5fa);
}
.btc-workspace-v2 .btc-bottom-grid{
  grid-template-columns:minmax(360px,.78fr) minmax(620px,1.22fr);
  gap:8px;
}
.btc-workspace-v2 .btc-card{
  min-height:196px;
  padding:11px;
  background:#0b1220;
}
.btc-workspace-v2 .btc-card-head{
  margin-bottom:9px;
}
.btc-workspace-v2 .btc-card h2{
  font-size:14px;
}
.btc-workspace-v2 .venue-bars{
  gap:6px;
}
.btc-workspace-v2 .venue-bar-row{
  grid-template-columns:136px minmax(120px,1fr) 96px;
  gap:8px;
}
.btc-workspace-v2 .venue-track{
  height:15px;
  border-radius:8px;
}
.btc-workspace-v2 .venue-fill{
  border-radius:8px;
}
.btc-workspace-v2 .btc-table-wrap{
  max-height:302px;
}
.btc-workspace-v2 .btc-quality{
  border-radius:8px;
}
.btc-workspace-v2 .detail-status:not(.hidden){
  border-radius:8px;
}
@media(max-width:1200px){
  .btc-workspace-v2 .btc-hero{align-items:flex-start;flex-direction:column}
  .btc-workspace-v2 .btc-heading-block{grid-template-columns:auto 1fr}
  .btc-workspace-v2 .btc-heading-block h1,
  .btc-workspace-v2 .btc-heading-block p{grid-column:1 / -1}
  .btc-workspace-v2 .btc-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .btc-workspace-v2 .btc-bottom-grid{grid-template-columns:1fr}
  .btc-workspace-v2 .btc-chart-container,
  .btc-workspace-v2 #btcChartContainer.btc-chart-container{height:540px !important;min-width:0 !important}
  .btc-workspace-v2 .btc-chart-panel{min-height:0}
}
@media(max-width:720px){
  .btc-workspace-v2 .btc-page-shell{width:calc(100vw - 14px);margin:7px auto 20px}
  .btc-workspace-v2 .btc-heading-block h1{font-size:20px}
  .btc-workspace-v2 .btc-control-card{align-items:flex-start;flex-direction:column}
  .btc-workspace-v2 .btc-stats-grid{grid-template-columns:1fr}
  .btc-workspace-v2 .btc-chart-container,
  .btc-workspace-v2 #btcChartContainer.btc-chart-container{height:500px !important;min-height:0 !important;min-width:0 !important}
  .btc-workspace-v2 .btc-chart-panel{min-height:0}
  .btc-workspace-v2 .venue-bar-row{grid-template-columns:104px 1fr 82px}
}


/* Batch 207.6 hard layout fix: override legacy btc.css and any calc-based chart sizing. */
body.btc-workspace-v2 .detail-panel.btc-chart-panel,
body.btc-workspace-v2 section.detail-panel.btc-chart-panel{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:hidden!important;
}
body.btc-workspace-v2 #btcChartContainer.btc-chart-container,
body.btc-workspace-v2 .btc-chart-panel #btcChartContainer,
body.detail-body.btc-deep-page.btc-workspace-v2 #btcChartContainer{
  height:560px!important;
  min-height:0!important;
  max-height:560px!important;
  min-width:0!important;
  width:100%!important;
  flex:0 0 560px!important;
}
@media(max-width:1200px){
  body.btc-workspace-v2 #btcChartContainer.btc-chart-container,
  body.btc-workspace-v2 .btc-chart-panel #btcChartContainer,
  body.detail-body.btc-deep-page.btc-workspace-v2 #btcChartContainer{height:540px!important;max-height:540px!important;flex-basis:540px!important;}
}
@media(max-width:720px){
  body.btc-workspace-v2 #btcChartContainer.btc-chart-container,
  body.btc-workspace-v2 .btc-chart-panel #btcChartContainer,
  body.detail-body.btc-deep-page.btc-workspace-v2 #btcChartContainer{height:500px!important;max-height:500px!important;flex-basis:500px!important;}
}

/* Batch 207.17: source coverage table retained. */
.btc-workspace-v2 .btc-source-card{
  margin-top:8px;
  min-height:0;
}
.btc-workspace-v2 .btc-coverage-table-wrap{
  max-height:260px;
}
.btc-workspace-v2 .btc-coverage-table th,
.btc-workspace-v2 .btc-coverage-table td{
  white-space:nowrap;
}
.btc-workspace-v2 .btc-quality.partial{
  color:#fde68a;
  border-color:rgba(245,158,11,.35);
  background:rgba(245,158,11,.08);
}

/* Batch 207.17: BTC pattern-builder lab. */
.btc-workspace-v2 .btc-backtest-card{
  margin-top:8px;
  min-height:0;
}
.btc-workspace-v2 .btc-backtest-controls{
  display:grid;
  grid-template-columns:repeat(7,minmax(120px,1fr));
  gap:8px;
  align-items:end;
  margin-bottom:10px;
}
.btc-workspace-v2 .btc-backtest-controls .btc-field input,
.btc-workspace-v2 .btc-backtest-controls .btc-field select{
  width:100%;
}
.btc-workspace-v2 .btc-backtest-run{
  min-width:132px;
  justify-content:center;
}
.btc-workspace-v2 .btc-backtest-summary{
  display:grid;
  grid-template-columns:repeat(8,minmax(96px,1fr));
  gap:8px;
  margin:8px 0 10px;
}
.btc-workspace-v2 .btc-backtest-metric{
  border:1px solid rgba(148,163,184,.18);
  border-radius:10px;
  padding:8px 9px;
  background:rgba(15,23,42,.55);
}
.btc-workspace-v2 .btc-backtest-metric span{
  display:block;
  color:#94a3b8;
  font-size:11px;
  margin-bottom:4px;
}
.btc-workspace-v2 .btc-backtest-metric strong{
  color:#e5e7eb;
  font-size:14px;
}
.btc-workspace-v2 .btc-backtest-table-wrap{
  max-height:360px;
}
.btc-workspace-v2 .btc-backtest-table th,
.btc-workspace-v2 .btc-backtest-table td{
  white-space:nowrap;
}
@media(max-width:1200px){
  .btc-workspace-v2 .btc-backtest-controls{grid-template-columns:repeat(4,minmax(120px,1fr));}
  .btc-workspace-v2 .btc-backtest-summary{grid-template-columns:repeat(4,minmax(96px,1fr));}
}
@media(max-width:720px){
  .btc-workspace-v2 .btc-backtest-controls{grid-template-columns:repeat(2,minmax(120px,1fr));}
  .btc-workspace-v2 .btc-backtest-summary{grid-template-columns:repeat(2,minmax(96px,1fr));}
}
/* Batch 207.17: pattern-builder backtest refinements. */
.btc-workspace-v2 .btc-backtest-note{
  margin:-2px 0 10px;
  color:#94a3b8;
  font-size:12px;
  line-height:1.35;
}

/* Batch 207.17: backtest progress lab UX. */
.btc-workspace-v2 .btc-backtest-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 12px;
}
.btc-workspace-v2 .btc-mini-btn{
  min-height:32px;
  padding:6px 10px;
  font-size:12px;
}
.btc-workspace-v2 .btc-backtest-builder{
  display:grid;
  grid-template-columns:1fr 1.15fr 1.15fr 1fr;
  gap:12px;
  align-items:stretch;
}
.btc-workspace-v2 .btc-bt-group{
  border:1px solid rgba(148,163,184,.18);
  border-radius:12px;
  padding:12px;
  background:rgba(15,23,42,.42);
  display:grid;
  grid-template-columns:repeat(2,minmax(120px,1fr));
  gap:8px;
  min-width:0;
}
.btc-workspace-v2 .btc-bt-group legend{
  padding:0 6px;
  color:#cbd5e1;
  font-size:12px;
  font-weight:700;
}
.btc-workspace-v2 .btc-bt-group .btc-field input,
.btc-workspace-v2 .btc-bt-group .btc-field select{
  width:100%;
}
.btc-workspace-v2 .btc-bt-actions{
  display:flex;
  gap:8px;
  align-items:end;
  grid-column:1 / -1;
}
.btc-workspace-v2 .btc-progress-wrap{
  border:1px solid rgba(148,163,184,.16);
  border-radius:12px;
  padding:10px 12px;
  background:rgba(2,6,23,.38);
  margin:10px 0;
}
.btc-workspace-v2 .btc-progress-head{
  display:flex;
  justify-content:space-between;
  color:#cbd5e1;
  font-size:12px;
  margin-bottom:6px;
}
.btc-workspace-v2 .btc-progress-track{
  height:9px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(51,65,85,.9);
}
.btc-workspace-v2 .btc-progress-bar{
  height:100%;
  width:0%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(56,189,248,.95), rgba(34,197,94,.95));
  transition:width .18s ease;
}
.btc-workspace-v2 .btc-progress-sub{
  color:#94a3b8;
  font-size:11px;
  margin-top:6px;
}
.btc-workspace-v2 .btc-backtest-diagnostics{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  color:#94a3b8;
  font-size:12px;
  margin:4px 0 10px;
}
.btc-workspace-v2 .btc-backtest-diagnostics b{
  color:#cbd5e1;
  font-weight:600;
}
.btc-workspace-v2 .btc-equity-wrap{
  height:150px;
  border:1px solid rgba(148,163,184,.14);
  border-radius:12px;
  margin:8px 0 10px;
  background:rgba(15,23,42,.35);
  overflow:hidden;
}
.btc-workspace-v2 .btc-equity-svg{
  width:100%;
  height:150px;
  display:block;
}
.btc-workspace-v2 .btc-equity-line{
  fill:none;
  stroke:#38bdf8;
  stroke-width:2.2;
  vector-effect:non-scaling-stroke;
}
.btc-workspace-v2 .btc-equity-label,
.btc-workspace-v2 .btc-equity-empty{
  fill:#94a3b8;
  font-size:12px;
}
.btc-workspace-v2 .btc-backtest-summary{
  grid-template-columns:repeat(5,minmax(96px,1fr));
}
.btc-workspace-v2 .btc-pattern-builder .btc-bt-group{
  grid-template-columns:repeat(2,minmax(116px,1fr));
}
.btc-workspace-v2 .btc-pattern-builder .btc-field span{
  white-space:normal;
}
.btc-workspace-v2 .btc-backtest-table-wrap{
  max-height:460px;
}
@media(max-width:1280px){
  .btc-workspace-v2 .btc-backtest-builder{grid-template-columns:1fr;}
  .btc-workspace-v2 .btc-bt-group{grid-template-columns:repeat(4,minmax(120px,1fr));}
}
@media(max-width:720px){
  .btc-workspace-v2 .btc-bt-group{grid-template-columns:repeat(2,minmax(120px,1fr));}
  .btc-workspace-v2 .btc-backtest-summary{grid-template-columns:repeat(2,minmax(96px,1fr));}
}

/* Batch 207.17: fix narrow pattern-builder layout and make fields readable. */
.btc-workspace-v2 .btc-backtest-card{
  overflow:hidden;
}
.btc-workspace-v2 .btc-backtest-toolbar{
  align-items:flex-start;
}
.btc-workspace-v2 .btc-backtest-toolbar .btc-mini-btn{
  white-space:normal;
  line-height:1.15;
  min-height:34px;
}
.btc-workspace-v2 .btc-pattern-builder{
  grid-template-columns:minmax(260px,.9fr) minmax(320px,1.15fr) minmax(340px,1.25fr) minmax(260px,.9fr);
}
.btc-workspace-v2 .btc-pattern-builder .btc-bt-group{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-content:start;
  gap:10px;
  min-width:0;
}
.btc-workspace-v2 .btc-pattern-builder .btc-field{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
  align-items:start;
  min-width:0;
}
.btc-workspace-v2 .btc-pattern-builder .btc-field span{
  display:block;
  min-height:0;
  line-height:1.2;
  white-space:normal;
  overflow-wrap:anywhere;
}
.btc-workspace-v2 .btc-pattern-builder .btc-field input,
.btc-workspace-v2 .btc-pattern-builder .btc-field select{
  width:100%;
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow .btc-field:first-of-type{
  grid-column:span 2;
}
.btc-workspace-v2 .btc-backtest-table-wrap{
  overflow:auto;
}
@media(max-width:1440px){
  .btc-workspace-v2 .btc-pattern-builder{grid-template-columns:1fr 1fr;}
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow{grid-template-columns:repeat(2,minmax(0,1fr));}
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow .btc-field:first-of-type{grid-column:1 / -1;}
}
@media(max-width:860px){
  .btc-workspace-v2 .btc-pattern-builder{grid-template-columns:1fr;}
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group,
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .btc-workspace-v2 .btc-backtest-toolbar{display:grid;grid-template-columns:1fr 1fr;}
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group,
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow{grid-template-columns:1fr;}
  .btc-workspace-v2 .btc-pattern-builder .btc-bt-group-flow .btc-field:first-of-type{grid-column:auto;}
  .btc-workspace-v2 .btc-bt-actions{flex-direction:column;align-items:stretch;}
  .btc-workspace-v2 .btc-bt-actions .icon-btn{justify-content:center;}
}
