/* Dashboard (/dashboard.html) — bổ sung trên Tabler. */
.kpi .kpi-value { font-size: 1.75rem; font-weight: 700; line-height: 1.2; font-variant-numeric: tabular-nums; }
.kpi .kpi-sub { font-size: 0.85rem; min-height: 1.3em; }
.pos { color: var(--tblr-green, #2fb344); }
.neg { color: var(--tblr-red, #d63939); }
.num { font-variant-numeric: tabular-nums; }
.equity-chart { position: relative; min-height: 240px; }
.equity-chart svg { width: 100%; height: 240px; display: block; overflow: visible; }
.equity-tip {
  position: absolute; pointer-events: none; transform: translate(-50%, -110%);
  background: var(--tblr-bg-surface, #fff); border: 1px solid var(--tblr-border-color, #e6e7e9);
  border-radius: 6px; padding: 4px 8px; font-size: 0.8rem; white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0,0,0,.12); display: none; z-index: 2;
}
.perf-row { display: flex; justify-content: space-between; padding: 0.4rem 0; border-bottom: 1px dashed var(--tblr-border-color, #e6e7e9); }
.perf-row:last-child { border-bottom: 0; }
.splitbar { display: flex; height: 10px; border-radius: 5px; overflow: hidden; background: var(--tblr-bg-surface-secondary, #f1f3f5); margin: 0.25rem 0 0.75rem; }
.splitbar > span:first-child { background: var(--tblr-green, #2fb344); }
.splitbar > span:last-child { background: var(--tblr-red, #d63939); }
.splitbar > span.manual { background: var(--tblr-azure, #4299e1); }
.splitbar > span + span { margin-left: 2px; }
.empty-state { text-align: center; padding: 1.5rem 0; color: var(--tblr-secondary, #667382); }
