/* option dashboard 专属样式 — 叠加在 model_training style.css 之上 */

/* KPI 信号大字: 降波/升波/BG 状态 */
.kpi-value.sig-down { color: var(--pos); text-shadow: 0 0 24px rgba(164, 201, 136, 0.18); }
.kpi-value.sig-up   { color: var(--neg); text-shadow: 0 0 24px rgba(216, 136, 118, 0.18); }
.kpi-value.sig-on   { color: var(--gold-bright); }
.kpi-value.sig-off  { color: var(--cream-mute); }
.kpi-value { font-size: 52px; }
.kpi-card.is-hero .kpi-value { font-size: 60px; }

/* 账户 greeks 横条 */
.greek-strip {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
    padding: 6px 32px 28px;
}
.greek-cell {
    padding: 16px 18px;
    background: var(--card-pressed);
    border: 1px solid var(--hairline);
    border-radius: var(--r-md, 14px);
    box-shadow: var(--shadow-pressed);
}
.greek-label {
    font-family: var(--font-mono); font-size: 10px; letter-spacing: .18em;
    text-transform: uppercase; color: var(--cream-mute); margin-bottom: 6px;
}
.greek-value {
    font-family: var(--font-mono); font-size: 18px; color: var(--cream);
    font-variant-numeric: tabular-nums; letter-spacing: -0.01em;
}
.greek-value.is-pos { color: var(--pos); }
.greek-value.is-neg { color: var(--neg); }
.greek-sub { font-family: var(--font-mono); font-size: 10px; color: var(--cream-mute); margin-top: 4px; }

/* 策略卡底部统计行 */
.strat-stats {
    display: flex; flex-wrap: wrap; gap: 26px;
    padding: 18px 32px 26px;
    border-top: 1px solid var(--hairline);
    margin-top: 14px;
    font-family: var(--font-mono); font-size: 12px; color: var(--cream-dim);
}
.strat-stats b {
    color: var(--cream); font-weight: 500; font-variant-numeric: tabular-nums; margin-left: 6px;
}
.strat-stats b.is-pos { color: var(--pos); }
.strat-stats b.is-neg { color: var(--neg); }
.strat-stats b.is-gold { color: var(--gold-bright); }

.subhead {
    font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .18em;
    text-transform: uppercase; color: var(--gold); margin: 18px 0 8px;
}
.bk-closed-wrap { margin-top: 6px; padding-bottom: 24px; }

/* 信号图 */
.chart-wrap-signal { height: 380px; }

/* 突破指标 chips: 名字长且多, 收窄换行避免溢出卡片 */
#bk-indicators { flex-wrap: wrap; justify-content: flex-end; max-width: 52%; }
#bk-indicators .chip { font-size: 9px; padding: 4px 9px; letter-spacing: .03em; }

/* 表格里的方向/策略小药丸 */
.pill {
    display: inline-block; font-family: var(--font-mono); font-size: 10px;
    padding: 2px 9px; border-radius: var(--r-pill); letter-spacing: .06em;
}
.pill-sell  { color: var(--neg); background: rgba(216, 136, 118, 0.12); }
.pill-buy   { color: var(--pos); background: rgba(164, 201, 136, 0.12); }
.pill-short { color: #8FA3B8; background: rgba(143, 163, 184, 0.12); }
.pill-bk    { color: var(--gold-bright); background: rgba(232, 201, 122, 0.10); }
.pill-dim   { color: var(--cream-mute); background: rgba(243, 234, 219, 0.05); }
.pill-lock  { color: var(--neg); background: rgba(216, 136, 118, 0.14); }

/* 成交记录滚动区 */
.fills-wrap { max-height: 520px; overflow-y: auto; padding-bottom: 24px; }
.fills-wrap::-webkit-scrollbar { width: 8px; }
.fills-wrap::-webkit-scrollbar-thumb { background: rgba(243, 234, 219, 0.10); border-radius: 4px; }

/* 页脚 */
.page-foot {
    display: flex; justify-content: space-between; align-items: center;
    padding: 4px 8px 24px;
    font-family: var(--font-mono); font-size: 11px; color: var(--cream-mute);
}
.err-note { color: var(--neg); }

.reveal-6 { animation-delay: .55s; }
.reveal-7 { animation-delay: .65s; }

@media (max-width: 1100px) {
    .greek-strip { grid-template-columns: repeat(3, 1fr); }
    .kpi-value { font-size: 40px; }
    .kpi-card.is-hero .kpi-value { font-size: 46px; }
}
