/* 报告样式（数据报告 / AI 分析报告），作用域限定 .report-doc，避免污染主页面 */
.report-doc {
  font-family: -apple-system, "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif;
  font-size: 13px;
  color: #333;
  line-height: 1.8;
  max-width: 210mm;
  margin: 0 auto;
  padding: 20px;
  background: #fff;
}
.report-doc .header {
  text-align: center;
  border-bottom: 3px solid #0077b6;
  padding-bottom: 15px;
  margin-bottom: 25px;
}
.report-doc .header h1 { font-size: 22px; color: #0077b6; margin: 0; }
.report-doc .header .subtitle { font-size: 13px; color: #666; margin-top: 8px; }
.report-doc .header .date { font-size: 11px; color: #999; margin-top: 5px; }

.report-doc .report-section { margin-bottom: 28px; }
.report-doc .report-section h2 {
  font-size: 16px;
  color: #0077b6;
  border-left: 4px solid #0077b6;
  padding-left: 12px;
  margin-bottom: 12px;
}

.report-doc .chart-container {
  text-align: center;
  background: #f8f9fa;
  border-radius: 8px;
  padding: 15px;
  min-height: 200px;
}
.report-doc .chart-container img { max-width: 100%; height: auto; border-radius: 4px; }

.report-doc .data-table { width: 100%; border-collapse: collapse; font-size: 11px; }
.report-doc .data-table th {
  background: linear-gradient(135deg, #0077b6, #0096c7);
  color: #fff;
  padding: 10px 8px;
  text-align: center;
  font-weight: 600;
}
.report-doc .data-table td { padding: 8px; border-bottom: 1px solid #e0e0e0; text-align: center; }
.report-doc .data-table tr:nth-child(even) td { background: #f5fafd; }

.report-doc .ai-content {
  background: #f8fafc;
  border: 1px solid #e3eef5;
  border-radius: 8px;
  padding: 18px 22px;
}
.report-doc .ai-content strong { color: #005a8c; }
.report-doc .ai-content p { margin: 0 0 10px; }
.report-doc .ai-content ul, .report-doc .ai-content ol { margin: 0 0 10px 22px; padding: 0; }
.report-doc .ai-content li { margin-bottom: 4px; }

.report-doc .ai-conditions table { width: 100%; border-collapse: collapse; font-size: 12px; }
.report-doc .ai-conditions td { padding: 7px 10px; border-bottom: 1px solid #eee; vertical-align: top; }
.report-doc .ai-conditions .cond-label { color: #666; width: 90px; font-weight: 600; white-space: nowrap; }
.report-doc .ai-cached-badge {
  display: inline-block;
  margin-top: 10px;
  font-size: 11px;
  color: #888;
  background: #eef3f7;
  border-radius: 4px;
  padding: 2px 8px;
}

.report-doc .footer {
  text-align: center;
  font-size: 10px;
  color: #999;
  margin-top: 40px;
  padding-top: 15px;
  border-top: 1px solid #e0e0e0;
}
