@charset "UTF-8";
/* BasinLens Category Insights Details Common Styles */

/* 1. Global Resets & Fonts */
.report-content {
  /* Ensure consistent font rendering if needed, though usually inherited */
}

/* 2. Header */
.report-title-main {
  font-size: 2.25rem !important; /* !text-4xl */
  text-align: center !important; /* !text-center */
  border-bottom-width: 0 !important; /* !border-b-0 */
  margin-bottom: 2rem !important; /* !mb-8 */
}

.report-toolbar {
  display: flex;
  justify-content: center; /* Default center for category-insights */
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
}

/* 3. Headings */
.report-content h1,
.report-content h2,
.report-content h3,
.report-content h4,
.report-content h5,
.report-content h6 {
  font-weight: 600;
  line-height: 1.5;
}

.report-content h2 {
  font-size: 1.875rem; /* text-3xl */
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom-width: 1px;
  border-color: #e5e7eb; /* gray-200 */
}
.report-content h3 {
  font-size: 1.5rem; /* text-2xl */
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
}
.report-content h4 {
  font-size: 1.25rem; /* text-xl */
  margin-top: 1.25rem;
  margin-bottom: 0.5rem;
}
.report-content h5 {
  font-size: 1.125rem; /* text-lg */
  margin-top: 1rem;
  margin-bottom: 0.25rem;
}

/* 4. Text & Lists */
.report-content p {
  margin-bottom: 1rem;
  line-height: 1.75;
}
.report-content ul {
  list-style-type: disc;
  /* list-style-position: inside; */
  list-style-position: outside;
  margin-bottom: 1rem;
  padding-left: 1.25rem;
}
.report-content li {
  padding-left: 0.5rem;
  margin-bottom: 0.5rem;
}
.report-content li::marker {
  color: #f97316;/* orange-400 */
}
.report-content strong {
  font-weight: 600;
}
blockquote {
  margin-top: .5rem!important;
  border-left: 4px solid #e5e7eb; /* gray-100 */
  padding-left: 1rem;
  color: #4b5563; /* text-gray-600 */
  font-style: italic;
}
/* List Circle */
.list-circle {
  list-style-type: circle !important; /* !list-[circle] */
}

/* Paragraph Indentation & Highlighting */
section p {
  text-indent: 2em;
}

section p strong,
ol li strong {
  font-weight: 500;
  /* Medium 马克笔划线效果 */
  background-image: linear-gradient(to right, #ffe5ea, #ffe5ea);
  background-size: 100% 0.5em;
  background-repeat: no-repeat;
  background-position: 0 88%;
}



/* 5. Footer */
footer .disclaimer {
  color: #9ca3af; /* text-gray-400 */
  font-size: 0.75rem; /* text-xs */
  line-height: 1.625; /* leading-relaxed */
  text-align: left;
  margin-bottom: 0;
}

/* 6. Components */

/* Highlight Blocks */
.hightlight-block-red {
  background-color: #fef2f2; /* red-50 */
  padding: 1rem;
  border: 1px solid #fecaca; /* red-300 */
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.hightlight-block-orange {
  background-color: #fff7ed; /* orange-50 */
  padding: 1rem;
  border: 1px solid #fdba74; /* orange-300 */
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.hightlight-block-green {
  background-color: #f0fdf4; /* green-50 */
  padding: 1rem;
  border: 1px solid #bbf7d0; /* green-300 */
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.hightlight-block-blue {
  background-color: #eff6ff; /* blue-50 */
  padding: 1rem;
  border: 1px solid #bfdbfe; /* blue-300 */
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.hightlight-block-purple {
  background-color: #f3e8ff; /* purple-50 */
  padding: 1rem;
  border: 1px solid #c4b5fd; /* purple-300 */
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
.hightlight-block-gray {
  background-color: #f9fafb; /* gray-50 */
  padding: 1rem;
  border: 1px solid #d1d5db; /* gray-300 */
  border-radius: 0.5rem;
  margin-bottom: 1rem;
}
/* hightlight-block-* 内部最后一个 p, margin-bottom 设置为 0 */
.hightlight-block-red p:last-child,
.hightlight-block-orange p:last-child,
.hightlight-block-green p:last-child,
.hightlight-block-blue p:last-child,
.hightlight-block-purple p:last-child,
.hightlight-block-gray p:last-child {
  margin-bottom: 0;
}

/* Semantic Data Table */
.data-table-wrapper {
  overflow: hidden;
  border-radius: 0.5rem; /* rounded-lg */
  border: 1px solid #e5e7eb; /* border-gray-200 */
  font-size: 1rem; /* text-base */
}
.data-table {
  width: 100%;
  text-align: left;
}
.data-table thead {
  color: #1f2937; /* text-gray-800 */
  background-color: #f9fafb; /* bg-gray-50 */
  border-bottom: 1px solid #e5e7eb; /* border-gray-200 */
}
.data-table th {
  padding: 0.75rem; /* p-3 */
  font-weight: 600; /* font-semibold */
}
.data-table th:first-child {
  padding-left: 1.5rem; /* pl-6 */
}
.data-table th:last-child {
  padding-right: 1.5rem; /* pr-6 */
}
.data-table tbody {
  background-color: #fff;
}
.data-table tr {
  border-bottom: 1px solid #f3f4f6; /* divide-gray-100 */
  transition: background-color 0.15s;
}
.data-table tr:last-child {
  border-bottom: none;
}
.data-table tr:hover {
  background-color: rgba(249, 250, 251, 0.5); /* hover:bg-gray-50/50 */
}
.data-table td {
  padding: 0.75rem; /* p-3 */
  vertical-align: top;
}
.data-table td:first-child {
  padding-left: 1.5rem; /* pl-6 */
}
.data-table td:last-child {
  padding-right: 1.5rem; /* pr-6 */
}

/* KANO & Decision Factors - Info Icon */
.info-icon {
  width: 1rem; /* size-4 */
  height: 1rem; /* size-4 */
  color: #9ca3af; /* text-gray-400 */
  margin-left: 0.25rem; /* ml-1 */
  cursor: pointer;
}

/* Opportunities */
.recommendation-score {
  color: #f97316; /* text-orange-500 */
  font-size: 1.125rem; /* text-lg */
  font-weight: 500; /* font-medium */
  margin-left: 0.5rem;
  white-space: nowrap;
}
.insight-tag {
  display: inline-block;
  font-size: 0.75rem; /* text-xs */
  color: #1f2937; /* text-gray-800 */
  background-color: #f3f4f6; /* bg-gray-100 */
  padding: 0.25rem 0.5rem; /* px-2 py-1 */
  border-radius: 0.375rem; /* rounded */
  margin-right: 0.5rem; /* mr-2 */
}

/* 7. Widget */
/* 响应式隐藏 Widget - 1250px 以下隐藏 */
@media (max-width: 1249px) {
  .lens-widget {
    display: none !important;
  }
}

/* 8. TOC */
.toc-item {
  display: block;
  padding: 0.25rem;
  color: #64748b;
  text-decoration: none;
  border-radius: 0.25rem;
  transition: all 0.15s ease;
  /* line-clamp 样式 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
  font-weight: 400;
}
.toc-item:hover {
  color: #4b5563; /* gray-600 */
}
.toc-item.active {
  color: #4b5563; /* gray-600 */
  font-weight: 500;
}
.toc-item.h1-item {
  display: none;
}
.toc-item.h2-item {
  font-size: 0.75rem; /* text-sm */
}
.toc-disabled .toc-item {
    color: #9ca3af; /* gray-400 */
    cursor: not-allowed;
    pointer-events: none; /* 禁用所有鼠标事件 */
}
.toc-disabled .toc-item.active {
    color: #9ca3af; /* 确保激活状态也是灰色 */
    border-left-color: transparent; /* 移除激活状态的边框 */
}

/* 9. Responsive Overrides */
/* 在小屏幕上让工具栏换行 */
@media (max-width: 640px) {
  .report-toolbar {
    flex-direction: column;
    align-items: center; /* Default center align for mobile category-insights */
  }
}

/* Responsive overrides for mobile - Reset min-width */
@media (max-width: 1535px) {
  html,
  body {
    min-width: initial !important;
  }
}
