/* ============ 调研中心 样式 ============ */
:root{
  --bg:#0f172a; --bg2:#1e293b; --card:#1e293b; --card2:#273449;
  --border:#334155; --text:#e2e8f0; --muted:#94a3b8;
  --accent:#38bdf8; --accent2:#34d399; --warn:#f59e0b; --danger:#f87171;
  --radius:12px; --topbar-h:64px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Segoe UI",Roboto,"Microsoft YaHei",sans-serif;background:var(--bg);color:var(--text);line-height:1.65}

/* 顶栏 */
.topbar{position:fixed;top:0;left:0;right:0;height:var(--topbar-h);display:flex;align-items:center;gap:14px;padding:0 18px;background:rgba(15,23,42,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);z-index:50}
.brand{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:var(--text)}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0f172a;font-weight:800;font-size:15px;flex-shrink:0}
.brand-text h1{font-size:16px;font-weight:700;white-space:nowrap}
.brand-text p{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-wrap{margin-left:auto;display:flex;align-items:center;gap:8px;flex:1;max-width:420px}
#searchInput{flex:1;background:var(--bg2);border:1px solid var(--border);border-radius:20px;padding:8px 16px;color:var(--text);font-size:13px;outline:none;min-width:0}
#searchInput:focus{border-color:var(--accent)}
.search-count{font-size:12px;color:var(--muted);white-space:nowrap}
.top-link{margin-left:auto;color:var(--muted);font-size:13px;text-decoration:none;white-space:nowrap}
.top-link:hover{color:var(--accent)}

/* 主体 */
.main{max-width:1080px;margin:0 auto;padding:calc(var(--topbar-h) + 26px) 24px 60px}
.page-title{font-size:22px;font-weight:700;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--border)}

/* 统计卡片 */
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:24px}
.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;text-align:center}
.stat-card .num{font-size:30px;font-weight:800;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.stat-card .lbl{font-size:12px;color:var(--muted);margin-top:4px}

/* 筛选 */
.filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}
.chip{background:var(--bg2);border:1px solid var(--border);color:var(--muted);border-radius:16px;padding:5px 14px;font-size:12.5px;cursor:pointer;transition:all .15s}
.chip:hover{color:var(--text);border-color:var(--accent)}
.chip.active{background:rgba(56,189,248,.15);border-color:var(--accent);color:var(--accent);font-weight:600}
.entry-count{font-size:12.5px;color:var(--muted);margin-bottom:12px}

/* 分类快捷跳转 */
.cat-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.cat-pill{display:inline-flex;align-items:center;gap:7px;background:var(--card);border:1px solid var(--border);border-radius:20px;padding:7px 16px;font-size:13px;color:var(--text);text-decoration:none;transition:all .15s}
.cat-pill:hover{border-color:var(--accent);transform:translateY(-1px)}
.cat-pill .ci{font-size:15px}
.cat-pill .cn{font-size:11px;color:var(--accent);background:rgba(56,189,248,.13);border-radius:9px;padding:0 7px;font-weight:700}

/* 分组区块 */
.group{margin-bottom:34px;scroll-margin-top:calc(var(--topbar-h) + 14px)}
.group-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.group-head .g-icon{font-size:24px;line-height:1.3}
.group-head h2{font-size:17px;font-weight:700}
.group-head .g-count{font-size:12px;color:var(--muted);font-weight:400;margin-left:10px}
.group-head .g-desc{font-size:12.5px;color:var(--muted)}

/* 分类配色：左侧色带区分 */
#cat-voice .report-card{border-left:3px solid var(--accent)}
#cat-route .report-card{border-left:3px solid var(--warn)}
#cat-llm .report-card{border-left:3px solid #a78bfa}
#cat-voice .group-head h2{color:var(--accent)}
#cat-route .group-head h2{color:var(--warn)}
#cat-llm .group-head h2{color:#a78bfa}

/* 跨站标记 */
.r-ext{color:var(--muted);font-size:13px;margin-left:6px}

/* 报告卡片 */
.report-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}
.report-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;text-decoration:none;color:var(--text);display:block;transition:all .15s}
.report-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.report-card .r-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.report-card .r-cat{font-size:11px;padding:2px 10px;border-radius:10px;background:rgba(56,189,248,.15);color:var(--accent);white-space:nowrap}
.report-card .r-date{font-size:11px;color:var(--muted);margin-left:auto;white-space:nowrap}
.report-card .r-title{font-size:15.5px;font-weight:700;margin-bottom:6px}
.report-card .r-summary{font-size:13px;color:var(--muted);margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.report-card .r-meta{font-size:11.5px;color:var(--accent2)}
.empty-tip{color:var(--muted);font-size:14px;padding:30px 0;text-align:center}

/* ===== 报告页 ===== */
.report-main{max-width:960px}
.report-hero{margin-bottom:22px}
.report-hero .r-cat{font-size:12px;padding:3px 12px;border-radius:10px;background:rgba(56,189,248,.15);color:var(--accent)}
.report-hero h1{font-size:26px;font-weight:800;margin:10px 0 6px}
.report-hero .meta{font-size:12.5px;color:var(--muted)}

/* 页内目录 */
.toc{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;margin-bottom:24px;font-size:13.5px}
.toc b{color:var(--accent)}
.toc a{color:var(--muted);text-decoration:none;margin-right:14px;line-height:2}
.toc a:hover{color:var(--accent)}

/* 章节 */
.report-section{margin-bottom:34px;scroll-margin-top:calc(var(--topbar-h) + 14px)}
.report-section h2{font-size:19px;font-weight:700;color:var(--accent);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.report-section h3{font-size:15.5px;font-weight:700;margin:18px 0 10px;color:var(--text)}
.report-section p{font-size:14px;margin-bottom:10px}
.report-section li{font-size:14px;margin:6px 0 6px 22px}
.report-section b{color:var(--accent2)}
.report-section a{color:var(--accent);text-decoration:none}
.report-section a:hover{text-decoration:underline}

/* 结论卡片 */
.tldr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.tldr-card{background:var(--card);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);padding:14px 16px}
.tldr-card .t-no{font-size:12px;color:var(--accent);font-weight:700;margin-bottom:4px}
.tldr-card .t-body{font-size:13.5px}

/* 表格 */
.table-wrap{overflow-x:auto;margin:12px 0}
table.data{width:100%;border-collapse:collapse;font-size:13px;background:var(--card);border-radius:var(--radius);overflow:hidden}
table.data th{background:var(--card2);color:var(--accent);text-align:left;padding:9px 12px;border:1px solid var(--border);white-space:nowrap}
table.data td{padding:9px 12px;border:1px solid var(--border);vertical-align:top}
table.data tr:hover td{background:rgba(56,189,248,.05)}
.tag-good{color:var(--accent2);font-weight:700}
.tag-warn{color:var(--warn);font-weight:700}
.tag-bad{color:var(--danger);font-weight:700}
.stars{color:var(--warn);letter-spacing:1px}

/* 图表 */
.chart-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;margin:14px 0}
.chart-card h3{font-size:14px;margin:0 0 12px;color:var(--text)}
.chart-box{position:relative;height:300px}
.chart-note{font-size:11.5px;color:var(--muted);margin-top:10px}

/* 提示块 */
.callout{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.35);border-left:4px solid var(--warn);border-radius:var(--radius);padding:12px 16px;margin:14px 0;font-size:13.5px}
.callout.info{background:rgba(56,189,248,.07);border-color:rgba(56,189,248,.35);border-left-color:var(--accent)}

/* 来源列表 */
.source-list{list-style:none}
.source-list li{margin:7px 0;font-size:13px;padding-left:0;margin-left:0}
.source-list .s-tag{display:inline-block;font-size:11px;color:var(--muted);border:1px solid var(--border);border-radius:8px;padding:0 8px;margin-right:8px}

/* 返回顶部/返回列表 */
.back-bar{margin-top:36px;padding-top:16px;border-top:1px solid var(--border);font-size:13.5px}
.back-bar a{color:var(--accent);text-decoration:none;margin-right:18px}

.footer{max-width:1080px;margin:0 auto;padding:0 24px 30px;font-size:11.5px;color:var(--muted)}

@media (max-width:640px){
  .brand-text p{display:none}
  .search-wrap{max-width:200px}
  .report-hero h1{font-size:21px}
  .chart-box{height:240px}
  .report-grid{grid-template-columns:1fr}
  .main{padding-left:14px;padding-right:14px}
  .cat-pill{padding:6px 12px;font-size:12px}
}
