/* curves.css — 组合收益 view (#curves-view): 各档组合收益率曲线 + 指标面板 + 交易明细下载
 * 曲线/下载复用 site.css 全局类: .mood-chart-* (SVG) · .strike-pill (sub-tab) · .sd-* (下载) · .strike-toolbar/.strike-stat/.strike-empty.
 * 本文件仅补 #curves-view 专属布局 + 7 档系列色 (SVG 用 style="stroke:var(--cv-cN)" 引用, JS 不写裸 hex).
 * 2026-06-20. */

#curves-view {
  /* 7 档系列色: 低饱和, 贴米白底, 与 tokens 气质一致 (色值集中在 CSS, 不散落 JS) */
  --cv-c0: #c0563e;  /* 短线组 h1 — 红橙 */
  --cv-c1: #d2913f;  /* 中线组 h5 — 橙   */
  --cv-c2: #3f8a5f;  /* 长线组 h10 — 绿  */
  --cv-c3: #3f6ea8;  /* 长线20 h20 — 蓝  */
  --cv-c4: #8a6fae;  /* 反转5 rev5 — 紫  */
  --cv-c5: #a9894f;  /* 反转10 rev10 — 土黄 */
  --cv-c6: #7d828b;  /* 反转20 rev20 — 灰 */
}

#curves-view .curves-sub-tabs { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-bottom: var(--sp-3); }
#curves-view .curves-chart { margin: var(--sp-2) 0; min-height: 220px; }
#curves-view .cv-svg { width: 100%; height: auto; display: block; touch-action: none; }
#curves-view .cv-line { fill: none; stroke-width: 1.6; }
#curves-view .cv-dot { stroke: var(--bg-0, #fff); stroke-width: 0.6; }
#curves-view .cv-last { stroke-width: 1; }
#curves-view .cv-zero { stroke: var(--border-strong); stroke-width: 1; stroke-dasharray: 4,3; opacity: 0.8; }
#curves-view .cv-endlab { font-size: var(--fs-meta); font-weight: 600; }

#curves-view .cv-legend-row { display: flex; flex-wrap: wrap; gap: var(--sp-2) var(--sp-4); margin: var(--sp-2) 0 var(--sp-3); }
#curves-view .cv-leg { cursor: pointer; color: var(--text-2); font-size: var(--fs-meta); display: inline-flex; align-items: center; gap: 6px; }
#curves-view .cv-leg:hover { color: var(--text-0); }
#curves-view .cv-sw { width: 14px; height: 3px; border-radius: 2px; display: inline-block; }

#curves-view .cv-up { color: var(--up); }
#curves-view .cv-dn { color: var(--dn); }

#curves-view .cv-kpi-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: var(--sp-3) var(--sp-4); margin: var(--sp-3) 0; }
#curves-view .cv-kpi { border-top: 2px solid var(--border-strong); padding-top: var(--sp-1); }
#curves-view .cv-kpi-lab { color: var(--text-3); font-size: var(--fs-meta); }
#curves-view .cv-kpi-val { color: var(--text-0); font-weight: 600; margin-top: 2px; }

#curves-view .cv-table { width: 100%; border-collapse: collapse; margin: var(--sp-3) 0; }
#curves-view .cv-table th { color: var(--text-3); text-align: left; font-weight: 600; padding: var(--pad-cell-y) var(--pad-cell-x); border-bottom: 1px solid var(--border-strong); }
#curves-view .cv-table td { padding: var(--pad-cell-y) var(--pad-cell-x); border-bottom: 1px solid var(--border-soft); }
#curves-view .cv-table tr:last-child td { border-bottom: none; }

#curves-view .curves-downloads { margin-top: var(--sp-4); }
#curves-view .curves-caliber { margin-top: var(--sp-3); }
#curves-view .cv-caliber-text { color: var(--text-3); font-size: var(--fs-meta); line-height: 1.7; border-top: 1px solid var(--border-soft); padding-top: var(--sp-2); }

@media (max-width: 640px) {
  #curves-view .cv-kpi-grid { grid-template-columns: repeat(3, 1fr); }
}
