main { padding-top:24px; padding-bottom:48px; }
main>section { margin-top:48px; }
.page-title { margin-bottom:16px; }
.section-head .text-button { max-width:none; flex-shrink:0; white-space:nowrap; }
p.small { font-size:13px; margin-top:16px; }
#discovery-visual { margin-top:24px; }
#discovery-visual svg { display:block; width:100%; }
.cost-choices { display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:16px; }
.cost-choices button { max-width:none; }
.cost-choices button[aria-pressed=true] { font-weight:600; text-decoration:underline; }
#cost-chart { margin-top:24px; }
#cost-chart svg { display:block; width:100%; }
.lab-chart { height:280px; margin-top:24px; }
.legend { display:flex; flex-wrap:wrap; gap:24px; margin-top:8px; font-size:13px; }
.legend span { display:flex; align-items:center; gap:8px; }
.legend i { display:inline-block; width:24px; height:0; border-top:3px solid; }
.legend i.flow { border-top-style:dashed; }
.legend i.adaptive { border-top-style:dashed; }
.legend i.selective,.legend i.repeat4 { border-top-style:dotted; }
.legend i.response_exit { border-top-style:dashed; }
.decision-row { display:grid; grid-template-columns:1fr 2fr 1fr 1fr; gap:24px; padding-block:16px; }
.decision-row small,.decision-row .num span,.comparison-row small { display:block; color:var(--muted); font-size:13px; }
.decision-row strong,.comparison-row strong { display:block; }
.comparison-row { display:grid; grid-template-columns:1fr auto; gap:24px; padding-block:16px; }
.holding { cursor:default; }
.holding-meta { flex-wrap:wrap; }
.holding-bar { margin-top:16px; }
.signal-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 48px; margin-top:24px; }
.signal { display:grid; grid-template-columns:1fr auto; gap:4px 16px; }
.signal small { color:var(--muted); }
.market-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:24px; margin:24px 0; }
.market-item strong,.market-item span { display:block; }
.market-item span { color:var(--muted); font-size:13px; }
.market-item.inactive { opacity:.6; }
.empty { padding:24px 0; color:var(--muted); }
.table-scroll { margin-top:24px; }
.table-scroll th { white-space:nowrap; }
.table-scroll td small { display:block; color:var(--muted); font-size:13px; }
footer { padding-block:32px; color:var(--muted); font-size:13px; }
footer a { display:inline-block; margin-top:8px; }
input[type=search] { border:1px solid var(--line); background:transparent; padding:8px 12px; max-width:200px; }
details p { max-width:75ch; }
#error { margin-top:16px; }
@media(max-width:1024px) { .market-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } .holdings-visual { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
  #longflow-state { flex-basis:100%; }
  .header>a:nth-child(2) { font-size:13px; }
  .page-title { align-items:flex-start; flex-direction:column; gap:8px; }
  h1 { font-size:28px; }
  .section-head { flex-wrap:wrap; }
  .section-head>span { font-size:13px; }
  .lab-chart { height:224px; }
  .legend { gap:8px 16px; }
  .signal-list,.holdings-visual { grid-template-columns:1fr; }
  .decision-row { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .decision-row>div:nth-child(2) { text-align:right; }
  .comparison-row { grid-template-columns:1fr; gap:8px; }
  .market-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
  .table-scroll table { min-width:0; }
  .model-table thead,.exit-table thead,.discovery-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .model-table tbody,.exit-table tbody,.discovery-table tbody { display:block; }
  .model-table tr,.exit-table tr,.discovery-table tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 16px; padding-block:16px; border-bottom:1px solid var(--line); }
  .model-table td,.exit-table td,.discovery-table td { padding:0; border:0; white-space:normal; }
  .model-table td:first-child,.discovery-table td:first-child { grid-column:1/-1; }
  .model-table td[data-label]::before,.exit-table td[data-label]::before,.discovery-table td[data-label]::before { content:attr(data-label); display:block; color:var(--muted); font-size:13px; font-weight:400; }
  .exit-table td:nth-child(2) { text-align:right; }
  .exit-table td:nth-child(3) { grid-column:1/-1; }
  main>section { margin-top:32px; }
}

#longflow-chart { margin-block:24px; }
#longflow-chart svg { display:block; width:100%; }
#longflow-positions { margin-top:16px; }

.history-chart { margin-block:24px; }
.history-chart svg { display:block; width:100%; }

@media(max-width:760px) { .history-table { font-size:13px; } }
