/* 報表簡單視覺化 */
.report-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.report-table th, .report-table td {
  padding: 8px 10px; text-align: left; border-bottom: 1px solid #eee; vertical-align: middle;
}
.report-table th { font-weight: 600; color: #555; background: #fafafa; }
.report-table td.num { text-align: right; font-variant-numeric: tabular-nums; }

/* 漏斗 / 進度條 */
.bar-cell { min-width: 200px; }
.bar-track { height: 18px; background: #f3f4f6; border-radius: 4px; overflow: hidden; position: relative; }
.bar-fill {
  height: 100%; transition: width 0.4s;
  background: linear-gradient(90deg, #4f46e5, #7c3aed);
}
.bar-cell .bar-label {
  position: absolute; inset: 0; display: flex; align-items: center; padding: 0 8px;
  font-size: 12px; font-weight: 500; color: #1f2937;
}

/* stacked bar for status distribution */
.stacked-bar { display: flex; height: 24px; border-radius: 4px; overflow: hidden; min-width: 280px; }
.stacked-bar > span {
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; color: rgba(255,255,255,0.95); font-weight: 500;
}
.seg-新名單     { background: #6366f1; }
.seg-第一次聯絡 { background: #3b82f6; }
.seg-興趣中     { background: #f59e0b; }
.seg-報價中     { background: #f97316; }
.seg-成交       { background: #10b981; }
.seg-無回應     { background: #9ca3af; }
.seg-不適合     { background: #ef4444; }

.legend { display: flex; gap: 12px; flex-wrap: wrap; font-size: 12px; margin: 8px 0 14px; }
.legend span { display: inline-flex; align-items: center; gap: 4px; }
.legend i {
  width: 10px; height: 10px; border-radius: 2px; display: inline-block;
}
