/* ai-new.css — changchuninf.com 臻心口腔（/c-web 全量重跑，pc-index 第三步布局全部重算）
   domain = "changchuninf.com"（16 字符），effective_seed = Σ charcode[i]×(i+1) = 13678（核验）
   ⚠ 本文件历史注释里的 seed=5165 是按旧域名 51yaoke.cn（10 字符）算的，已作废；
     r-site-info 全局替换只换了域名字符串、没有重算 seed，故本次全部按 13678 重算。
   区块选型（分母 = 各库当前条目数）：
     板块标题 seed%7=0 → T-A 渐变色块横幅
     医院  i=1 p=3  raw=13990 %8=6 → H7 卡片网格+顶部广告位+右侧计数器榜
     医生  i=2 p=7  raw=14357 %7=0 → D1，与资讯 N3 同属「矩形网格·轻盈」、且与 H7 同为网格
                                     → 取次优 D2 圆形大头像描边卡（一次调整化解两处相邻同类）
     资讯  i=3 p=11 raw=14888 %9=2 → N3 3列等宽卡片
     分享  i=4 p=13 raw=15017 %9=5 → S6 横条列表+右侧缩略图榜（复用 N6 视觉）
     项目  i=5 p=17 raw=15361 %6=1 → P2 主色实底突出价（2列）
     问答  i=6 p=19 raw=15654 %9=3 → Q4 气泡对话
     热词  i=7 p=23 raw=16369 %6=1 → T2 金银铜排行榜（3专科并排）
     Footer i=8 p=29 raw=16868 %5=3 → F4 优雅三栏渐变
     Header i=9 p=31 raw=16933 %6=1 → HE2 双层分离
     Nav   i=10 p=37 raw=17748 %7=3 → NA4 渐变实底（激活项白色半透明块）
     Banner (seed+11)%9 = 13689%9=0 → BN1 极简原生轮播（不写专属样式，天然通栏）
   Tab 行叠加 tab_pick=(seed+domain[i%16]×41)%3：
     医院2→TAB2 医生0→无 资讯2→TAB2 分享0→无 项目1→TAB1 问答2→TAB2 热词1→TAB1
   浮层引导：BN1 无强绑定，沿用站内已有 GD1(.hpg)+GD3(.anav)，二者纯变量驱动、随主题色走。
   主题色取自新 Logo（青绿主 + 橙辅，均过 WCAG AA 对比度校正，见 :root 注释）。 */

body { background: var(--color-bg); color: var(--color-text-normal); }
.filter_img { filter: blur(15px) !important; }
.camp1 { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.camp2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* ===== PC首页区块 BEGIN ===== */

/* === AI 主题色（用户指定主色 + logo 辅色 + 中性 + 功能色）===
   ⚠ 主色是用户 2026-09-07 显式指定的医疗蓝 #1565c0，不是 logo 提取结果。
     原 logo 取色链（青绿花瓣 #17a8a0 → 压暗 #0e7d76）已作废，勿按 pc-index 算法回推主色。
   对比度：#1565c0 对白底 5.75:1 达标；深色档 #0f4c92 对白底 8.51:1，用于 hover / 深标题。
   辅色未动，仍取 logo 橙色花瓣：白底文字/描边用 #b8551c（4.82:1 达标），原橙 #ef7f3c 只做实底/角标。
   同批同步：ai-m.css 与 m_nCommon.css 的主色变量（见各表注释）。 */
:root {
  /* ① 品牌主色系（结构：标题栏/导航/链接/竖条/描边） */
  --color-primary: #1565c0;
  --color-primary-dark: #0f4c92;
  --color-primary-light: #e8f1fb;
  --color-primary-rgb: 21, 101, 192;
  --color-primary-dark-rgb: 15, 76, 146;
  /* ② 辅助/强调色（logo 橙色花瓣：主 CTA / 角标 / 点缀） */
  --color-accent: #ef7f3c;
  --color-accent-dark: #b8551c;
  --color-accent-rgb: 239, 127, 60;
  /* ③ 中性底与正文（固定中性灰，不带色相） */
  --color-bg: #f4f5f7;
  --color-bg-white: #ffffff;
  --color-text-dark: #1f2328;
  --color-text-normal: #333940;
  --color-text-light: #6b7280;
  --color-text-lighter: #9aa3ad;
  --color-border: rgba(31,35,40,.12);
  --color-border-light: rgba(31,35,40,.08);
  /* ④ 功能色 */
  --color-promo: #E53935;
  --color-success: #2fae66;
  --color-success-rgb: 47,174,102;
  --color-hot: #f97316;
}
/* 浏览器默认 body margin:8px 会让所有通栏元素贴不到窗口边缘，必须清 */
body { margin: 0; padding: 0; }

/* ---------- 首页容器与板块外壳 ---------- */
.container { width: 1240px; max-width: 100%; margin: 0 auto; }
.index-hos-con { margin: 34px 0; }

/* ---------- Tab 切换显隐（header 实际加载的就是本表，勿挪进注释） ---------- */
.news-mode { display: none !important; }
.ind-yh-list.news-mode,
.ind-doc-list.news-mode,
.ind-zx-list.news-mode,
.ind-hos-list.news-mode,
.ind-xm-list.news-mode,
.ind-wd-list.news-mode,
.ind-rc-list.news-mode { display: none !important; }
/* ============================================================
   Header HE6「上下双行 · 搜索行 + 层叠描边 tab 导航条」（含专属 Nav）
   ⚠ 用户指定的显式例外，非算法结果：算法值为 HE2(16933%6=1) + NA4(17748%7=3)，
     用户 2026-09-07 要求「换个样式、和现在差距大点」，手动改选 HE6。
   ⚠ 选中 HE6 时跳过 Nav 选型（库内规则），故 NA4 的 .site-nav--* 一族已整体删除。
   采用「Grid 1fr auto 1fr 搜索框绝对居中」变体：本站无 biaoyu.png / search.png，
   变体不依赖这两个素材（搜索钮用内联 SVG）。
   ============================================================ */

/* 坑 1：作用域内 reset（本站没加载 reset.css，缺了会顶歪搜索行/导航右移/图片基线缝），别当冗余删掉 */
.header, .header-nav-box { font-size: 16px; }
.header h1, .header p, .header ul, .header ol, .header li,
.header-nav-box ul, .header-nav-box ol, .header-nav-box li { margin: 0; padding: 0; }
.header ul, .header ol, .header-nav-box ul, .header-nav-box ol { list-style: none; }
.header a, .header-nav-box a { text-decoration: none; }
.header img, .header-nav-box img { max-width: 100%; height: auto; border: 0 none; vertical-align: top; }
.header input { background: none; outline: none; border: 0; }

/* 上行：Logo ｜ 搜索框（绝对居中）｜ 电话 —— Grid 三栏，左右栏永远等宽 */
.header { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; column-gap: 24px; background: var(--color-bg-white); }
.header.public-content { position: relative; margin: 0 auto; max-width: 1240px; padding: 16px 20px; box-sizing: border-box; }
.hearder-box { justify-self: start; text-align: center; }
.header .logo_head { width: 200px; height: auto; display: inline-block; image-rendering: -webkit-optimize-contrast; }
.header-search { justify-self: center; color: #000; }
.header .input { position: relative; height: 30px; border-top: #ccc solid 1px; border-right: none; border-bottom: #ccc solid 1px; border-left: #ccc solid 1px; border-radius: 4px 0 0 4px; }
.header .input input { outline: none; border: none; padding: 0 10px; margin: 0; width: 330px; height: 30px; color: #333; font-size: 16px; border-radius: 4px 0 0 4px; box-sizing: border-box; background: #fff; }
.header .search { position: absolute; top: -1px; right: -50px; width: 50px; height: 32px; background-color: var(--color-primary-dark); border-radius: 0 4px 4px 0; cursor: pointer; display: flex; align-items: center; justify-content: center; color: #fff; transition: filter .2s; }
.header .search:hover { filter: brightness(1.15); }
.header .search svg { width: 18px; height: 18px; }
.lxwm400 { justify-self: end; position: relative; white-space: nowrap; display: flex; align-items: center; gap: 6px; }
.lxwm400 .header-tel-label { font-size: 12px; color: var(--color-text-light); }
.lxwm400 .header-tel { color: var(--color-primary-dark); font-weight: 700; font-size: 19px; letter-spacing: .02em; }

/* 下行：通栏导航条 —— 4px 上/左描边 + 1px 右描边切出层叠感（不是胶囊、不是下划线） */
.header-nav-box { width: 100%; background: #fff; border-bottom: 4px solid var(--color-primary-dark); display: flex; align-items: flex-end; justify-content: center; }
.header-nav-box .header-nav { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; display: flex; align-items: flex-end; justify-content: space-between; }
/* 坑 2：本站 8 个频道（原站 10 个），必须等宽平铺，用 space-around 会把色带切碎 */
.header-nav > a { flex: 1 1 0; min-width: 0; color: #000; }
.header-nav li { height: 40px; line-height: 40px; margin: 7px 0px 0px 0px; padding: 0px 22px; cursor: pointer; background-color: var(--color-primary); color: #fff; border-top: 4px solid var(--color-primary-dark); border-left: 4px solid var(--color-primary-dark); border-right: 1px solid var(--color-primary-dark); white-space: nowrap; transition: background-color .2s; }
.header-nav > a > li { padding: 0 12px; text-align: center; }
.header-nav > a:hover > li { background-color: var(--color-primary-dark); }
.header-nav .header-xiangmu { border-right: 4px solid var(--color-primary-dark); }
.header-nav > li.erweima { flex: 0 0 auto; }
.header-nav .erweima { background-color: unset; border: unset; cursor: unset; }
/* 坑 4：top 值随头部行高变化，不能照抄 -38px（那是"有标语图撑高上行"的原版值）。
   本站无 biaoyu.png、上行较矮，取 -24px，并已在 Chrome headless 1440×1000 实测：
     电话文字底边 y=55 ｜ 二维码 y=90..153（高 64px）｜ 导航主色条 y=106..153
     gap = 二维码顶 - 电话底 = 35px（库内红线 > 8，35 属充裕）
     二维码底 - 导航条底 = 0px（与导航条底边正好齐平，未探入下方 banner）
   若日后改了 logo 尺寸 / 头部 padding / 加回标语图，必须重测这两个值。 */
.header-nav .erweima img { width: 70px; position: relative; top: -24px; left: -12px; border-radius: 4px; }
.header-nav .active { color: #fff; background-color: var(--color-primary-dark); }

@media (max-width: 960px) {
  .header { grid-template-columns: 1fr; row-gap: 10px; }
  .hearder-box { justify-self: center; }
  .header-search { justify-self: stretch; width: 100%; }
  .header .input { width: 100%; margin-right: 50px; }
  .header .input input { width: 100%; }
  .lxwm400 { justify-self: center; }
  .header-nav-box .header-nav { flex-wrap: wrap; justify-content: flex-start; }
  .header-nav > a { flex: 0 0 auto; }
  .header-nav .erweima img { top: 0; left: 0; }
}

/* ============================================================
   Banner BN1「极简原生轮播」 — 不设 max-width/圆角/阴影，天然满宽通栏
   ============================================================ */
.bn-full-wrap { width: 100%; }
.bn-full-wrap .ai-home-swiper .swiper-slide img { width: 100%; display: block; }

/* ============================================================
   板块标题 T-A「渐变色块横幅」（seed%7=0，全站统一）
   ============================================================ */
.mod-title-ta { display: block; }
.mod-title-ta .ta-wrap { position: relative; display: flex; align-items: center; gap: 20px; padding: 18px 28px; border-radius: 8px; background: linear-gradient(120deg, var(--color-primary) 0%, var(--color-primary-dark) 100%); overflow: hidden; margin-bottom: 20px; }
.mod-title-ta .ta-deco { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 72px; font-weight: 900; color: #fff; opacity: .08; letter-spacing: .12em; pointer-events: none; user-select: none; line-height: 1; }
.mod-title-ta .ta-left { flex-shrink: 0; }
.mod-title-ta .ta-title { font-size: 22px; font-weight: 700; color: #fff; margin: 0; }
.mod-title-ta .ta-sub { font-size: 12px; color: rgba(255,255,255,.72); margin: 4px 0 0; }
.mod-title-ta .ta-more { margin-left: auto; font-size: 13px; color: rgba(255,255,255,.85); border: 1px solid rgba(255,255,255,.45); padding: 4px 14px; border-radius: 20px; white-space: nowrap; flex-shrink: 0; text-decoration: none; transition: background .2s, color .2s; position: relative; z-index: 2; }
.mod-title-ta .ta-more:hover { background: rgba(255,255,255,.9); color: var(--color-primary-dark); }
/* Tab 切换原结构（.tab > a.title[data-type]）保持不动，只换外观 */
.mod-title-ta .tab { display: flex; align-items: center; gap: 10px; position: relative; z-index: 2; }
.mod-title-ta .tab a, .mod-title-ta .tab li { color: rgba(255,255,255,.8) !important; border: 1px solid rgba(255,255,255,.4) !important; border-radius: 18px; padding: 5px 16px; font-size: 14px; font-weight: 600; cursor: pointer; white-space: nowrap; text-decoration: none; transition: background .2s, color .2s, border-color .2s; }
.mod-title-ta .tab a.current, .mod-title-ta .tab .on a, .mod-title-ta .tab .cur a { color: var(--color-primary-dark) !important; border-color: #fff !important; background: #fff !important; font-weight: 700; }

/* ---------- 叠加组件 TAB1 灰底圆角胶囊（静态导航型 · 项目/热词） ---------- */
.ind-sec-tabs { display: flex; align-items: center; gap: 6px; background: #f4f6fa; border-radius: 10px; padding: 5px; margin-bottom: 20px; flex-wrap: wrap; }
.ind-sec-tab { padding: 6px 16px; font-size: 13px; font-weight: 600; color: #666; text-decoration: none; border-radius: 7px; white-space: nowrap; transition: background .2s, color .2s, box-shadow .2s; }
.ind-sec-tab:hover { color: var(--color-primary); background: #fff; }
.ind-sec-tab.current { background: #fff; color: var(--color-primary); box-shadow: 0 1px 6px rgba(0,0,0,.10); }

/* ---------- 叠加组件 TAB2 无背景下划线（动态列表型 · 医院/资讯/问答） ---------- */
.doc-sec-tabs { display: flex; align-items: center; gap: 0; border-bottom: 1px solid #f0f0f0; margin-bottom: 20px; overflow: hidden; }
.doc-sec-tab--pin { flex-shrink: 0; margin-right: 28px; }
.doc-sec-tabs__viewport { flex: 1; min-width: 0; overflow: hidden; }
.doc-sec-tabs__track { display: flex; align-items: center; gap: 28px; width: max-content; animation: docSecTabsScroll 26s linear infinite; }
.doc-sec-tabs__viewport:hover .doc-sec-tabs__track { animation-play-state: paused; }
@keyframes docSecTabsScroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.doc-sec-tab { flex-shrink: 0; padding: 8px 0; font-size: 14px; color: #aaa; text-decoration: none; font-weight: 500; border-bottom: 2px solid transparent; margin-bottom: -1px; transition: color .2s, border-color .2s; white-space: nowrap; cursor: pointer; }
.doc-sec-tab:hover { color: #555; }
.doc-sec-tab.current { color: #222; font-weight: 700; border-bottom-color: var(--color-primary); }

/* ============================================================
   医院 H7「卡片网格 + 顶部广告位 + 右侧计数器榜」（pick 6/8）
   形态家族：卡片网格·无图·带广告位·带侧栏
   hover：卡片上移 + 淡主色底（网格类交互）
   ============================================================ */
.h7-layout { display: flex; align-items: flex-start; gap: 20px; }
.h7-main { flex: 1; min-width: 0; }
.h7-ad { display: flex; gap: 14px; margin-bottom: 16px; }
.h7-ad a { flex: 1; min-width: 0; display: block; border-radius: 6px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,.08); cursor: pointer; }
.h7-ad img { width: 100%; height: 230px; object-fit: cover; display: block; transition: transform .35s ease; }
.h7-ad a:hover img { transform: scale(1.04); }
.h7-list { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.h7-item { padding: 12px 14px; background: var(--color-bg-white); border: 1px solid var(--color-border-light); border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,.05); transition: transform .25s ease, box-shadow .25s ease, background .25s ease; }
.h7-item:hover { transform: translateY(-2px); background: var(--color-primary-light); box-shadow: 0 6px 16px rgba(var(--color-primary-rgb),.14); }
/* 卡内详情跳转区（名称/时间/地址），关联标签独立在外，不嵌套 <a> */
.h7-item__hero { display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 2px 10px; text-decoration: none; }
.h7-item__name { font-size: 14px; font-weight: 600; color: var(--color-text-dark); position: relative; padding-left: 12px; min-width: 0; }
.h7-item__name::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 5px; height: 5px; border-radius: 50%; background: var(--color-primary); }
.h7-item:hover .h7-item__name { color: var(--color-primary); }
.h7-item__time { grid-column: 2; grid-row: 1; font-size: 11px; color: var(--color-text-lighter); white-space: nowrap; }
.h7-item__addr { grid-column: 1 / -1; font-size: 12px; color: var(--color-text-light); padding-left: 12px; min-width: 0; }
/* max-height + overflow:hidden 约束标签行数（换皮肤最易丢，必留） */
.h7-item__tags { display: flex; flex-wrap: wrap; gap: 4px; padding-left: 12px; margin-top: 5px; max-height: 38px; overflow: hidden; }
.h7-item__tag { font-size: 10px; line-height: 16px; padding: 0 5px; color: var(--color-primary); background: var(--color-primary-light); border-radius: 3px; text-decoration: none; transition: background .2s, color .2s; }
.h7-item__tag:hover { background: var(--color-primary); color: #fff; }
.h7-side { flex-shrink: 0; width: 262px; border: 1px solid var(--color-border); border-radius: 8px; padding: 14px 16px; background: #fff; box-sizing: border-box; }
.h7-side__hd { font-size: 16px; font-weight: 800; color: var(--color-text-dark); padding-left: 10px; border-left: 4px solid var(--color-primary); margin-bottom: 12px; }
.h7-side__list { list-style: none; margin: 0; padding: 0; counter-reset: h7rank; }
.h7-side__item { counter-increment: h7rank; border-bottom: 1px dashed var(--color-border-light); }
.h7-side__item:last-child { border-bottom: none; }
.h7-side__item a { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 12px; padding: 9px 0; text-decoration: none; transition: background .2s; }
.h7-side__item a:hover { background: var(--color-primary-light); }
.h7-side__num { grid-row: 1 / 3; font-size: 24px; font-style: italic; font-weight: 800; line-height: 1; color: var(--color-primary); }
.h7-side__num::before { content: counter(h7rank); }
.h7-side__item:nth-child(1) .h7-side__num { color: #e6403b; }
.h7-side__item:nth-child(2) .h7-side__num { color: #ff8c00; }
.h7-side__item:nth-child(3) .h7-side__num { color: #f0b400; }
.h7-side__t { font-size: 13px; font-weight: 600; color: var(--color-text-normal); min-width: 0; }
.h7-side__item a:hover .h7-side__t { color: var(--color-primary); }
.h7-side__d { font-size: 11px; color: var(--color-text-lighter); }

/* ============================================================
   医生 D2「圆形大头像描边卡」（pick 0→次优 1，避免与 H7/N3 同为矩形网格）
   形态家族：圆形头像·描边光环
   hover：卡片上移 + 光环加粗（描边卡专属，与网格上移做区分）
   ============================================================ */
.d2-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
.d2-card { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 24px 14px 18px; background: var(--color-bg-white); border-radius: 16px; border: 1px solid var(--color-border-light); box-shadow: 0 2px 10px rgba(0,0,0,.05); text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.d2-card:hover { transform: translateY(-6px); box-shadow: 0 14px 30px rgba(var(--color-primary-rgb),.20); }
.d2-card__ring { width: 104px; height: 104px; border-radius: 50%; overflow: hidden; margin-bottom: 14px; border: 3px solid var(--color-primary); box-shadow: 0 0 0 5px rgba(var(--color-primary-rgb),.14); transition: box-shadow .25s ease, border-color .25s ease; }
.d2-card:hover .d2-card__ring { box-shadow: 0 0 0 9px rgba(var(--color-primary-rgb),.20); border-color: var(--color-primary-dark); }
.d2-card__ring img { width: 100%; height: 100%; object-fit: cover; display: block; }
.d2-card__name { width: 100%; font-size: 17px; font-weight: 800; color: var(--color-text-dark); margin-bottom: 7px; min-width: 0; }
.d2-card:hover .d2-card__name { color: var(--color-primary); }
.d2-card__zc { display: inline-block; font-size: 12px; font-weight: 600; color: var(--color-primary); background: var(--color-primary-light); padding: 3px 12px; border-radius: 999px; margin-bottom: 8px; }
.d2-card__hos { width: 100%; font-size: 12px; color: var(--color-text-light); margin-bottom: 6px; min-width: 0; }
.d2-card__desc { width: 100%; font-size: 12px; line-height: 1.6; color: var(--color-text-lighter); min-width: 0; }
.d2-card__time { display: block; width: 100%; margin-top: 10px; padding-top: 8px; border-top: 1px dashed var(--color-border-light); font-size: 11px; color: var(--color-text-lighter); }

/* ============================================================
   资讯 N3「3列等宽卡片」（pick 2/9）— 图上文下，白底阴影
   形态家族：矩形网格·轻盈
   hover：卡片上移 + 图片放大
   ============================================================ */
.n3-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.n3-card { display: flex; flex-direction: column; background: var(--color-bg-white); border-radius: 10px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,.06); text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.n3-card:hover { transform: translateY(-6px); box-shadow: 0 14px 28px rgba(var(--color-primary-rgb),.16); }
.n3-card__media { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; }
.n3-card__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.n3-card:hover .n3-card__media img { transform: scale(1.06); }
.n3-card__body { padding: 14px 16px 16px; display: flex; flex-direction: column; flex: 1; }
.n3-card__title { font-size: 16px; font-weight: 700; color: var(--color-text-dark); line-height: 1.5; margin-bottom: 8px; }
.n3-card:hover .n3-card__title { color: var(--color-primary); }
.n3-card__desc { font-size: 13px; line-height: 1.7; color: var(--color-text-light); margin-bottom: 12px; }
.n3-card__foot { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.n3-card__date { font-size: 12px; color: var(--color-text-lighter); }
.n3-card__more { font-size: 12px; font-weight: 600; color: var(--color-accent-dark); }

/* ============================================================
   分享 S6「横条列表 + 右侧缩略图榜」（pick 5/9，复用 N6 视觉）
   形态家族：列表条·横排·带缩略图侧栏
   hover：左侧图片放大 + 左侧主色竖线展开（横向列表类交互）
   ============================================================ */
.s6-layout { display: flex; align-items: flex-start; gap: 22px; }
.s6-main { flex: 1; min-width: 0; background: var(--color-bg-white); border-radius: 10px; padding: 6px 20px; box-shadow: 0 2px 10px rgba(0,0,0,.05); box-sizing: border-box; }
.s6-item { position: relative; display: flex; align-items: stretch; gap: 18px; padding: 18px 0 18px 0; border-bottom: 1px solid var(--color-border-light); text-decoration: none; transition: padding-left .25s ease; }
.s6-item:last-child { border-bottom: none; }
.s6-item::before { content: ""; position: absolute; left: 0; top: 18px; bottom: 18px; width: 0; background: var(--color-primary); border-radius: 2px; transition: width .25s ease; }
.s6-item:hover { padding-left: 14px; }
.s6-item:hover::before { width: 3px; }
.s6-item__media { position: relative; width: 200px; min-width: 200px; height: 132px; flex-shrink: 0; border-radius: 8px; overflow: hidden; }
.s6-item__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.s6-item:hover .s6-item__media img { transform: scale(1.06); }
.s6-item__body { flex: 1; min-width: 0; display: flex; flex-direction: column; padding: 2px 0; }
.s6-item__title { font-size: 17px; font-weight: 700; color: var(--color-text-dark); line-height: 1.5; margin-bottom: 8px; }
.s6-item:hover .s6-item__title { color: var(--color-primary); }
.s6-item__desc { font-size: 13px; line-height: 1.75; color: var(--color-text-light); }
.s6-item__foot { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 10px; }
.s6-item__sign { font-size: 12px; color: var(--color-accent-dark); font-weight: 600; }
.s6-item__date { font-size: 12px; color: var(--color-text-lighter); }
.s6-side { flex-shrink: 0; width: 288px; background: var(--color-bg-white); border-radius: 10px; padding: 16px 18px; box-shadow: 0 2px 10px rgba(0,0,0,.05); box-sizing: border-box; }
.s6-side__hd { font-size: 16px; font-weight: 800; color: var(--color-text-dark); padding-left: 10px; border-left: 4px solid var(--color-accent); margin-bottom: 12px; }
.s6-side__item { display: flex; align-items: flex-start; gap: 10px; padding: 10px 0; border-bottom: 1px dashed var(--color-border-light); text-decoration: none; }
.s6-side__item:last-child { border-bottom: none; }
.s6-side__thumb { position: relative; width: 80px; min-width: 80px; height: 60px; flex-shrink: 0; border-radius: 6px; overflow: hidden; }
.s6-side__thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.s6-side__item:hover .s6-side__thumb img { transform: scale(1.07); }
.s6-side__body { flex: 1; min-width: 0; }
.s6-side__t { font-size: 13px; line-height: 1.55; color: var(--color-text-normal); font-weight: 600; }
.s6-side__item:hover .s6-side__t { color: var(--color-primary); }
.s6-side__d { display: block; margin-top: 4px; font-size: 11px; color: var(--color-text-lighter); }

/* ============================================================
   项目 P2「主色实底突出价」（pick 1/6）— 2列，白字 + 超大优惠价
   形态家族：矩形·主色实底
   hover：卡片上移 + 实底提亮（实底类专属）
   ============================================================ */
.p2-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.p2-card { display: flex; align-items: stretch; gap: 0; border-radius: 14px; overflow: hidden; background: linear-gradient(130deg, var(--color-primary) 0%, var(--color-primary-dark) 100%); box-shadow: 0 6px 20px rgba(var(--color-primary-dark-rgb),.22); transition: transform .25s ease, box-shadow .25s ease, filter .25s ease; }
.p2-card:hover { transform: translateY(-6px); filter: brightness(1.08); box-shadow: 0 16px 34px rgba(var(--color-primary-dark-rgb),.30); }
.p2-card__media { position: relative; width: 208px; min-width: 208px; flex-shrink: 0; overflow: hidden; }
.p2-card__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.p2-card:hover .p2-card__media img { transform: scale(1.06); }
.p2-card__body { flex: 1; min-width: 0; display: flex; flex-direction: column; padding: 16px 18px; color: #fff; }
.p2-card__title { font-size: 17px; font-weight: 800; color: #fff; margin-bottom: 6px; min-width: 0; }
.p2-card__desc { font-size: 12px; line-height: 1.7; color: rgba(255,255,255,.82); margin-bottom: 10px; min-width: 0; }
.p2-card__price { display: flex; align-items: baseline; gap: 10px; margin-top: auto; }
.p2-card__price-num { font-size: 30px; font-weight: 900; line-height: 1; letter-spacing: -.02em; color: #E53935 !important; background: #fff; border-radius: 8px; padding: 5px 12px; }
.p2-card__price-num small { font-size: 15px; font-weight: 700; }
.p2-card__origin { font-size: 13px; color: rgba(255,255,255,.66); text-decoration: line-through; }
.p2-card__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 12px; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.22); }
.p2-card__time { font-size: 11px; color: rgba(255,255,255,.7); }
.p2-card__cta { flex-shrink: 0; font-size: 12px; font-weight: 700; color: #fff; background: linear-gradient(120deg, var(--color-accent) 0%, var(--color-accent-dark) 100%); border-radius: 999px; padding: 6px 18px; cursor: pointer; transition: filter .2s, transform .2s; }
.p2-card__cta:hover { filter: brightness(1.1); transform: scale(1.04); }

/* ============================================================
   问答 Q4「气泡对话」（pick 3/9）— Q 右对齐主色气泡 / A 左对齐灰底气泡
   形态家族：气泡·叠层
   hover：气泡整体上移 + 主色气泡加深（对话类专属）
   ============================================================ */
.q4-list { display: flex; flex-direction: column; gap: 26px; }
.q4-item { display: flex; flex-direction: column; gap: 12px; transition: transform .25s ease; }
.q4-item:hover { transform: translateY(-3px); }
.q4-row { display: flex; align-items: flex-start; gap: 12px; }
.q4-row--q { justify-content: flex-end; }
.q4-row--a { justify-content: flex-start; }
.q4-ava { flex-shrink: 0; width: 38px; height: 38px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 900; color: #fff; }
.q4-row--q .q4-ava { order: 2; background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%); }
.q4-row--a .q4-ava { background: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-dark) 100%); }
.q4-bubble { display: block; position: relative; max-width: 74%; padding: 13px 18px; border-radius: 16px; text-decoration: none; }
.q4-bubble--q { background: linear-gradient(130deg, var(--color-primary) 0%, var(--color-primary-dark) 100%); border-top-right-radius: 4px; box-shadow: 0 4px 14px rgba(var(--color-primary-dark-rgb),.22); transition: filter .25s ease; }
.q4-item:hover .q4-bubble--q { filter: brightness(1.1); }
.q4-bubble--q .q4-q-text { font-size: 15px; font-weight: 700; color: #fff; line-height: 1.6; min-width: 0; }
.q4-bubble--a { background: #fff; border: 1px solid var(--color-border-light); border-top-left-radius: 4px; box-shadow: 0 2px 10px rgba(0,0,0,.05); }
.q4-bubble--a .q4-a-text { font-size: 13px; line-height: 1.8; color: var(--color-text-light); min-width: 0; }
.q4-state { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 700; color: var(--color-success); background: rgba(var(--color-success-rgb),.10); border-radius: 999px; padding: 2px 10px; margin-bottom: 6px; }
.q4-meta { display: block; margin-top: 8px; font-size: 11px; color: var(--color-text-lighter); }

/* ============================================================
   热词 T2「金银铜排行榜」（pick 1/6）— 三专科并排，counter 自动编号
   形态家族：排行榜·序号
   hover：整行浅主色填充 + 序号色块提亮（排行榜类专属）
   ============================================================ */
.t2-3col { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.t2-col { background: var(--color-bg-white); border-radius: 10px; padding: 6px 18px 14px; box-shadow: 0 2px 10px rgba(0,0,0,.05); }
.t2-col__hd { font-size: 15px; font-weight: 800; color: var(--color-text-dark); padding: 14px 0 10px 10px; border-left: 4px solid var(--color-primary); margin-bottom: 4px; }
.t2-col:nth-child(2) .t2-col__hd { border-left-color: var(--color-accent); }
.t2-col:nth-child(3) .t2-col__hd { border-left-color: var(--color-success); }
.t2-rank { display: flex; flex-direction: column; counter-reset: t2rank; }
.t2-rank__item { display: flex; align-items: center; gap: 12px; padding: 8px 8px; margin: 0 -8px; border-radius: 6px; counter-increment: t2rank; text-decoration: none; transition: background .2s ease; }
.t2-rank__item:hover { background: var(--color-primary-light); }
.t2-rank__no { flex-shrink: 0; width: 22px; height: 22px; border-radius: 5px; display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; color: #fff; background: #c9ced6; transition: filter .2s ease; }
.t2-rank__no::before { content: counter(t2rank); }
.t2-rank__item:nth-child(1) .t2-rank__no { background: linear-gradient(135deg,#f6c445,#e0a012); }
.t2-rank__item:nth-child(2) .t2-rank__no { background: linear-gradient(135deg,#c4cad3,#98a1ac); }
.t2-rank__item:nth-child(3) .t2-rank__no { background: linear-gradient(135deg,#d99154,#b06a2d); }
.t2-rank__item:hover .t2-rank__no { filter: brightness(1.15); }
.t2-rank__tag { flex: 1; min-width: 0; font-size: 13.5px; font-weight: 600; color: var(--color-text-normal); }
.t2-rank__item:hover .t2-rank__tag { color: var(--color-primary); }
.t2-rank__date { flex-shrink: 0; font-size: 11px; color: var(--color-text-lighter); }

/* ============================================================
   Footer F4「优雅三栏渐变」（pick 3/5）
   ⚠ 备案号：用户本次选择「跳过」，模板里原备案展示段保持 HTML 注释形态，前端不显示
   ============================================================ */
#footer { position: relative; background: linear-gradient(180deg, #ffffff 0%, #e9f4f3 100%) !important; border-top: none !important; color: var(--color-text-light) !important; margin-top: 56px; }
#footer::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-accent) 100%); }
#footer .containers { display: grid !important; grid-template-columns: auto 1fr auto !important; align-items: center !important; gap: 40px !important; padding: 34px 28px 28px !important; max-width: 1240px; margin: 0 auto; box-sizing: border-box; }
#footer .containers > a { display: inline-flex; align-items: center; line-height: 0; }
#footer .logo { height: 56px; width: auto; display: block; }
#footer .footer-copyright-con { text-align: center; font-size: 13px; line-height: 2; padding: 4px 28px; border-left: 1px solid rgba(var(--color-primary-rgb),.16); border-right: 1px solid rgba(var(--color-primary-rgb),.16); }
#footer .footer-copyright-con p { margin: 3px 0; }
#footer .footer-nav-links { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 8px; }
#footer .footer-nav-links a { font-weight: 600; }
#footer a { color: var(--color-primary) !important; text-decoration: none; transition: color .2s; }
#footer a:hover { color: var(--color-primary-dark) !important; }
#footer .beizhu { color: var(--color-text-lighter); font-size: 12px; }
#footer .code { width: 96px; height: 96px; border-radius: 12px; border: 1px solid rgba(var(--color-primary-rgb),.18); padding: 5px; background: #fff; display: block; box-shadow: 0 6px 18px rgba(var(--color-primary-rgb),.16); transition: transform .25s ease, box-shadow .25s ease; }
#footer .code:hover { transform: translateY(-4px); box-shadow: 0 12px 26px rgba(var(--color-primary-rgb),.24); }
#footer .footer-qr-cap { display: block; text-align: center; margin-top: 8px; font-size: 12px; color: var(--color-text-light); }
#footer .footer-bottom { background: linear-gradient(120deg, var(--color-primary) 0%, var(--color-primary-dark) 100%); color: #fff; text-align: center; font-size: 12px; padding: 13px 24px; letter-spacing: .06em; }

/* ============================================================
   浮层引导 GD3「左侧页内锚点条」(.anav) — 沿用，纯变量驱动
   ============================================================ */
.anav { position: fixed; left: 16px; top: 50%; transform: translateY(-50%); z-index: 940; }
.anav__list { list-style: none; margin: 0; padding: 10px 8px; display: flex; flex-direction: column; gap: 2px; background: rgba(255,255,255,.82); border: 1px solid rgba(var(--color-primary-rgb),.14); border-radius: 14px; box-shadow: 0 10px 26px rgba(var(--color-primary-dark-rgb),.12); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.anav__item { display: flex; align-items: center; gap: 7px; padding: 6px 10px; border-radius: 9px; cursor: pointer; transition: background .2s, color .2s; color: var(--color-text-light); }
.anav__item:hover { background: var(--color-primary-light); color: var(--color-primary); }
.anav__dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-text-lighter); flex-shrink: 0; transition: background .2s, transform .2s; }
.anav__txt { font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.anav__item.is-active { background: var(--color-primary); color: #fff; }
.anav__item.is-active .anav__dot { background: var(--color-accent); transform: scale(1.25); }
@media (max-width: 1500px) { .anav { display: none; } }

/* ============================================================
   GD1 右侧悬浮快捷导航坞（沿用不改）
   ============================================================ */
.hpg { position: fixed; right: 18px; top: 50%; transform: translateY(-50%); z-index: 950; }
.hpg__panel { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 12px 8px; width: 74px; border-radius: 16px; background: rgba(var(--color-primary-dark-rgb), .28); border: 1px solid rgba(255, 255, 255, .4); box-shadow: 0 12px 30px rgba(var(--color-primary-dark-rgb), .30); -webkit-backdrop-filter: blur(14px) saturate(150%); backdrop-filter: blur(14px) saturate(150%); animation: hpgIn .5s cubic-bezier(.2,.9,.3,1.2) both; }
@keyframes hpgIn { from { opacity: 0; transform: translateX(30px); } to { opacity: 1; transform: translateX(0); } }
.hpg__head { text-align: center; font-size: 11px; font-weight: 800; color: #fff; letter-spacing: .06em; padding: 0 0 6px; margin-bottom: 2px; border-bottom: 1px solid rgba(255,255,255,.24); display: flex; align-items: center; justify-content: center; gap: 4px; }
.hpg__head-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-accent); box-shadow: 0 0 0 3px rgba(var(--color-accent-rgb), .35); }
.hpg__item { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 8px 2px; border-radius: 11px; background: transparent; border: none; cursor: pointer; text-decoration: none; color: #fff; transition: background .2s, transform .2s; font-family: inherit; }
.hpg__item:hover { background: rgba(255,255,255,.9); transform: translateY(-2px); color: var(--color-primary-dark); }
.hpg__ico { width: 24px; height: 24px; display: inline-flex; align-items: center; justify-content: center; }
.hpg__ico svg { width: 100%; height: 100%; }
.hpg__label { font-size: 11.5px; font-weight: 600; line-height: 1; white-space: nowrap; }
.hpg__item--cta { background: linear-gradient(135deg, var(--color-accent), var(--color-accent-dark)); color: #fff; box-shadow: 0 6px 16px rgba(var(--color-accent-rgb), .45); animation: hpgPulse 2.4s ease-in-out infinite; }
.hpg__item--cta:hover { background: linear-gradient(135deg, var(--color-accent-dark), var(--color-accent-dark)); color: #fff; transform: translateY(-2px) scale(1.03); }
@keyframes hpgPulse { 0%,100% { box-shadow: 0 6px 16px rgba(var(--color-accent-rgb), .40); } 50% { box-shadow: 0 6px 22px rgba(var(--color-accent-rgb), .70); } }
.hpg__item--top { max-height: 0; padding-top: 0; padding-bottom: 0; opacity: 0; overflow: hidden; transition: max-height .3s, opacity .3s, padding .3s; }
.hpg.show-top .hpg__item--top { max-height: 60px; padding-top: 8px; padding-bottom: 8px; opacity: 1; margin-top: 2px; border-top: 1px solid rgba(255,255,255,.22); border-radius: 0 0 11px 11px; }
.hpg__close { position: absolute; top: -8px; right: -8px; width: 22px; height: 22px; border-radius: 50%; border: none; background: #fff; color: var(--color-primary-dark); font-size: 15px; line-height: 20px; cursor: pointer; box-shadow: 0 2px 8px rgba(0,0,0,.25); transition: transform .2s, background .2s, color .2s; padding: 0; }
.hpg__close:hover { transform: rotate(90deg); background: var(--color-accent); color: #fff; }
.hpg__reopen { display: none; width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.5); background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark)); color: #fff; cursor: pointer; box-shadow: 0 8px 20px rgba(var(--color-primary-dark-rgb), .4); align-items: center; justify-content: center; padding: 0; }
.hpg__reopen svg { width: 22px; height: 22px; }
.hpg.is-collapsed .hpg__panel { display: none; }
.hpg.is-collapsed .hpg__reopen { display: inline-flex; animation: hpgIn .4s ease both; }
.hpg__hint { position: absolute; right: 84px; top: 6px; display: flex; align-items: center; background: var(--color-accent); color: #fff; font-size: 13px; font-weight: 700; padding: 8px 13px; border-radius: 10px; white-space: nowrap; box-shadow: 0 8px 20px rgba(var(--color-accent-rgb), .45); animation: hpgFloat 1.6s ease-in-out infinite; transition: opacity .4s, transform .4s; }
.hpg__hint-arrow { position: absolute; right: -6px; top: 50%; transform: translateY(-50%) rotate(45deg); width: 12px; height: 12px; background: var(--color-accent); border-radius: 2px; }
.hpg__hint.is-hide { opacity: 0; transform: translateX(12px); pointer-events: none; }
@keyframes hpgFloat { 0%,100% { transform: translateX(0); } 50% { transform: translateX(-5px); } }

/* ============================================================
   响应式（≤1280px）
   ============================================================ */
@media (max-width: 1280px) {
  .container, .header.public-content, .header-nav-box .header-nav { width: 100%; max-width: 100%; padding-left: 16px; padding-right: 16px; box-sizing: border-box; }
  .h7-layout, .s6-layout { flex-direction: column; }
  .h7-side, .s6-side { width: 100%; }
  .h7-list { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .d2-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .n3-grid, .t2-3col { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .p2-grid { grid-template-columns: minmax(0,1fr); }
  #footer .containers { grid-template-columns: 1fr !important; justify-items: center; text-align: center; }
  #footer .footer-copyright-con { border-left: none; border-right: none; }
}

/* ===== PC首页区块 END ===== */


/* ===== 列表页 / 详情页样式（非首页，保留不动） ===== */
.regional-filter,
.regionalFiltering {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 1px 3px rgba(var(--color-primary-dark-rgb), 0.05);
  padding: 2px 20px;
  margin: 18px 0;
  border: 1px solid var(--color-border-light);
}
.regional-filter__row,
.regionalFilteringBox {
  display: flex;
  align-items: baseline;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid var(--color-border-light);
}
.regional-filter__row:last-child,
.regionalFilteringBox:last-child {
  border-bottom: none;
}
.regional-filter__label,
.regionalFilteringLeft {
  flex-shrink: 0;
  width: 44px;
  display: inline-flex;
  align-items: baseline;
  padding-top: 5px;
}
.regional-filter__label-text,
.regionalFilteringLeft > span {
  position: relative;
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  color: var(--color-text-dark);
  padding-left: 10px;
  letter-spacing: .04em;
  line-height: 1.4;
}
.regional-filter__label-text::before,
.regionalFilteringLeft > span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 14px;
  border-radius: 2px;
  background: var(--color-primary);
}
.regional-filter__options,
.regionalFilteringRight {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  padding: 2px 0;
}
.regional-filter__link,
.regional-filter__options a,
.regionalFilteringRight a {
  display: inline-flex;
  align-items: center;
  padding: 5px 15px;
  font-size: 13px;
  color: var(--color-text-normal);
  text-decoration: none;
  border: 1px solid transparent;
  border-radius: 16px;
  white-space: nowrap;
  line-height: 1.6;
  transition: color .2s, background .2s, border-color .2s, transform .15s, box-shadow .2s;
}
.regional-filter__link:hover,
.regional-filter__options a:hover,
.regionalFilteringRight a:hover {
  color: var(--color-primary-dark);
  background: var(--color-primary-light);
  border-color: rgba(var(--color-primary-rgb), 0.25);
  transform: translateY(-1px);
}
.regional-filter__link.cursorActive,
.regional-filter__options a.cursorActive,
.regionalFilteringRight a.cursorActive {
  color: #fff;
  background: linear-gradient(120deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  border-color: transparent;
  font-weight: 600;
  box-shadow: 0 3px 10px rgba(var(--color-primary-dark-rgb), 0.22);
}
.regional-filter__link.cursorActive:hover,
.regional-filter__options a.cursorActive:hover,
.regionalFilteringRight a.cursorActive:hover {
  filter: brightness(1.06);
  color: #fff;
  transform: translateY(-1px);
  background: linear-gradient(120deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
}

/* ==============================
   .hospital-tabs — 列表页标题条（底线分割 + 描边咨询）
   结构：.hospital-tabs > .hospital-tab-item--title (.badge + .text)
                      + button.hospital-tab-item--consult
   ============================== */
.hospital-tabs,
.yy-list-tabs {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: linear-gradient(180deg, rgba(var(--color-primary-light-rgb), 0.55) 0%, #fff 100%);
  border-radius: 0;
  padding: 14px 4px 12px;
  margin: 14px 0 18px;
  box-shadow: none;
  border: none;
  border-bottom: 2px solid rgba(var(--color-primary-rgb), 0.18);
  overflow: visible;
  width: 100%;
  box-sizing: border-box;
}
.hospital-tabs::before,
.yy-list-tabs::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 72px;
  height: 3px;
  border-radius: 2px 2px 0 0;
  background: var(--color-primary);
}
.hospital-tabs::after,
.yy-list-tabs::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(var(--color-primary-rgb), 0.35) 0%, transparent 55%);
}
.hospital-tab-item--title {
  display: inline-flex;
  align-items: baseline;
  gap: 12px;
  flex: 1;
  min-width: 0;
  padding-left: 2px;
}
.hospital-tab-item__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: var(--color-primary);
  font-size: 12px;
  font-weight: 700;
  padding: 0 0 0 10px;
  border-radius: 0;
  letter-spacing: .12em;
  box-shadow: none;
  flex-shrink: 0;
  white-space: nowrap;
  position: relative;
  line-height: 1.2;
}
.hospital-tab-item__badge::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  bottom: 0.15em;
  width: 3px;
  border-radius: 1px;
  background: var(--color-accent);
}
.hospital-tab-item__text {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text-dark);
  letter-spacing: .03em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.hospital-tab-item--consult {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  border: 1.5px solid var(--color-primary);
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  padding: 8px 18px;
  border-radius: 4px;
  color: var(--color-primary-dark);
  background: #fff;
  box-shadow: none;
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .15s ease;
  white-space: nowrap;
  position: relative;
  flex-shrink: 0;
  line-height: 1.2;
}
.hospital-tab-item--consult::before {
  content: none;
}
.hospital-tab-item--consult:hover {
  color: #fff;
  background: var(--color-primary);
  border-color: var(--color-primary);
  transform: translateY(-1px);
  box-shadow: none;
  filter: none;
}
.hospital-tab-item--consult:active {
  transform: translateY(0);
  background: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  box-shadow: none;
}

/* ==============================
   .yycard — 医院/医生列表页卡片（list_hospital / list_doctor）
   ============================== */
.content_con {
  gap: 0;
}

.content_con .yycard.card_con,
.content_con .yycard.yylist_acrdcon {
  height: auto;
  min-height: 0;
  align-items: stretch;
  justify-content: flex-start;
  gap: 0;
  margin: 0 0 16px;
  padding: 0;
  border: none;
  border-bottom: none;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(var(--color-primary-dark-rgb), 0.07);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}

.content_con .yycard:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 24px rgba(var(--color-primary-dark-rgb), 0.14);
}

.content_con .yycard__media {
  flex: 0 0 200px;
  width: 200px;
  max-width: 200px;
  align-self: stretch;
  display: block;
  position: relative;
  overflow: hidden;
  background: var(--color-primary-light);
}

.content_con .yycard__img,
.content_con .yycard .card_img {
  width: 100% !important;
  height: 100% !important;
  min-height: 148px;
  max-height: none;
  object-fit: cover;
  filter: none !important;
  transition: transform .35s ease;
}

.content_con .yycard:hover .yycard__img {
  transform: scale(1.05);
}

.content_con .yycard__body,
.content_con .yycard .card_textcon {
  flex: 1;
  min-width: 0;
  width: auto;
  margin: 0;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  box-sizing: border-box;
}

.content_con .yycard__title-link {
  text-decoration: none;
}

.content_con .yycard__title,
.content_con .yycard .list_tit {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.45;
  color: var(--color-text-dark);
  transition: color .2s ease;
}

.content_con .yycard:hover .yycard__title {
  color: var(--color-primary-dark);
}

.content_con .yycard__projects,
.content_con .yycard .xm_con {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
}

.content_con .yycard__projects-label,
.content_con .yycard .xm_tex {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-primary-dark);
  background: var(--color-primary-light);
  padding: 3px 10px;
  border-radius: 4px;
  line-height: 1.5;
  min-width: auto;
}

.content_con .yycard__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  flex: 1;
  min-width: 0;
  max-height: 52px;
  overflow: hidden;
}

.content_con .yycard__tag,
.content_con .yycard .xm_but {
  display: inline-block;
  max-width: 120px;
  padding: 3px 10px;
  font-size: 11px;
  line-height: 1.4;
  color: var(--color-primary-dark);
  background: #fff;
  border: 1px solid var(--color-border-light);
  border-radius: 12px;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.content_con .yycard__tag:hover,
.content_con .yycard .xm_but:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
}

.content_con .yycard__meta {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.content_con .yycard__meta-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--color-text-light);
}

.content_con .yycard__meta-ico {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: .85;
}

.content_con .yycard__meta-ico--addr {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a0dbdc'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E");
}

.content_con .yycard__meta-ico--time {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a0dbdc'%3E%3Cpath d='M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm.5-13H11v6l5.25 3.15.75-1.23-4.5-2.67z'/%3E%3C/svg%3E");
}

.content_con .yycard__meta-ico--intro {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23a0dbdc'%3E%3Cpath d='M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z'/%3E%3C/svg%3E");
}

.content_con .yycard__meta-text {
  flex: 1;
  min-width: 0;
}

.content_con .yycard__meta-text--intro {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.content_con .yycard__actions,
.content_con .yycard .card_button {
  flex: 0 0 auto;
  width: auto;
  min-width: 108px;
  height: auto;
  margin: 0;
  padding: 16px 18px 16px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  box-sizing: border-box;
}

.content_con .yycard__actions .but_item {
  width: 100%;
  min-width: 96px;
  height: 38px;
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  border-radius: 8px;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.content_con .yycard__actions .but_item--primary {
  border: none;
  color: #fff;
  background: linear-gradient(120deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
  box-shadow: 0 4px 12px rgba(var(--color-primary-dark-rgb), 0.25);
}

.content_con .yycard__actions .but_item--primary:hover {
  transform: translateY(-1px);
  filter: brightness(1.06);
  box-shadow: 0 6px 16px rgba(var(--color-primary-dark-rgb), 0.32);
}

.content_con .yycard__actions .but_item--outline,
.content_con .yycard__actions .but_yh {
  border: 1px solid var(--color-primary);
  background: #fff;
  color: var(--color-primary-dark);
}

.content_con .yycard__actions .but_item--outline:hover,
.content_con .yycard__actions .but_yh:hover {
  background: var(--color-primary-light);
  transform: translateY(-1px);
}

/* ==============================
   .aside-head — 侧边栏栏目标题（底线分割 + 文字「更多」）
   与 .hospital-tabs 同系：无卡片壳 / 左短横标记 / 描边交互
   ============================== */
.aside_con {
  padding: 10px 12px 16px;
  gap: 0;
}

.aside_con .aside_titcon.aside-head {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  padding: 10px 2px 11px;
  border: none;
  border-bottom: 2px solid rgba(var(--color-primary-rgb), 0.16);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: inherit;
  font-weight: normal;
  color: inherit;
}

.aside_con .aside_titcon.aside-head::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 48px;
  height: 3px;
  border-radius: 2px 2px 0 0;
  background: var(--color-primary);
}

.aside_con .aside-head:not(:first-of-type) {
  margin-top: 18px;
}

.aside_con .aside-head__title,
.aside_con .aside_tit.aside-head__title {
  position: relative;
  margin: 0;
  flex: 1;
  min-width: 0;
  padding-left: 11px;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text-dark);
  letter-spacing: .03em;
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.aside_con .aside-head__title::before,
.aside_con .aside_tit.aside-head__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2em;
  bottom: 0.2em;
  width: 3px;
  border-radius: 1px;
  background: var(--color-accent);
}

.aside_con .aside-head__more,
.aside_con a.aside_more.aside-head__more {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
  padding: 4px 0;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  color: var(--color-primary);
  background: transparent;
  border: none;
  border-radius: 0;
  text-decoration: none;
  box-shadow: none;
  transition: color .2s ease, transform .15s ease;
}

.aside_con .aside-head__more:hover,
.aside_con a.aside_more.aside-head__more:hover {
  color: var(--color-primary-dark);
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  transform: none;
}

.aside_con .aside-head__more-ico {
  display: inline-block;
  font-size: 13px;
  line-height: 1;
  transition: transform .2s ease;
}

.aside_con .aside-head__more:hover .aside-head__more-ico {
  transform: translateX(3px);
}

.aside_con .aside-head + .card_con,
.aside_con .aside-head + a.card_rightcon {
  margin-top: 12px;
}



/* 空结果提示 */
.none_yy {
  background: linear-gradient(135deg, var(--color-primary-light) 0%, #fff 100%);
  border: 1px dashed var(--color-primary-accent);
  color: var(--color-primary-dark);
  font-size: 13.5px;
  font-weight: 600;
  text-align: center;
  padding: 14px 18px;
  margin: 14px 0;
  border-radius: 8px;
  position: relative;
}
.none_yy::before {
  content: 'ℹ️ ';
  margin-right: 4px;
}

/* ==============================
   响应式（≤960px）
   ============================== */
@media (max-width: 960px) {
  .regional-filter,
  .regionalFiltering { padding: 2px 14px; }
  .regional-filter__row,
  .regionalFilteringBox {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    padding: 12px 0;
  }
  .regional-filter__label,
  .regionalFilteringLeft {
    width: auto;
    padding-top: 0;
  }
  .regional-filter__options,
  .regionalFilteringRight {
    gap: 8px;
  }
  .regional-filter__link,
  .regional-filter__options a,
  .regionalFilteringRight a {
    padding: 6px 14px;
  }

  .content_con .yycard.card_con,
  .content_con .yycard.yylist_acrdcon {
    flex-direction: column;
  }
  .content_con .yycard__media {
    flex: none;
    width: 100%;
    max-width: none;
    aspect-ratio: 16 / 10;
    height: 150px;
  }
  .content_con .yycard__img,
  .content_con .yycard .card_img {
    min-height: 0;
  }
  .content_con .yycard__actions,
  .content_con .yycard .card_button {
    flex-direction: row;
    width: 100%;
    min-width: 0;
    padding: 0 16px 16px;
    border-left: none;
    border-top: 1px solid var(--color-border-light);
  }
  .content_con .yycard__actions .but_item {
    flex: 1;
  }

  .page_con.page-nav {
    gap: 6px;
    padding: 14px 10px;
  }
  .page_con.page-nav a,
  .page_con.page-nav span {
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    font-size: 13px;
  }
  .page_con.page-nav a.a1 {
    padding: 0 12px;
    font-size: 12px;
  }
}

/* 资讯详情：标题区项目标签 */
.zx_detcon .zx_projects {
  display: flex;
  align-items: flex-start;
  width: 100%;
  flex-basis: 100%;
  margin-top: 8px;
  gap: 8px;
}
.zx_detcon .zx_projects__label {
  flex-shrink: 0;
  line-height: 28px;
  white-space: nowrap;
  color: #666;
}
.zx_detcon .zx_projects__track {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 6px;
  flex: 1;
  min-width: 0;
  max-height: 96px;
  overflow-y: auto;
  padding-right: 4px;
  line-height: 1.5;
  color: #666;
}
.zx_detcon .zx_projects__track .zx_projects__tag,
.zx_detcon .zx_projects__track a.zx_projects__tag,
.zx_detcon .zx_projects__track span.zx_projects__tag {
  display: inline-block;
  max-width: 160px;
  padding: 2px 10px;
  font-size: 12px;
  line-height: 22px;
  color: var(--color-primary-dark, #08646A);
  background: #fff;
  border: 1px solid var(--color-primary-light, #DCF2F3);
  border-radius: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  box-sizing: border-box;
}
.zx_detcon .zx_projects__track a.zx_projects__tag:hover {
  background: var(--color-primary, #0B7C82);
  border-color: var(--color-primary, #0B7C82);
  color: #fff;
}
.zx_detcon .zx_projects__track span.zx_projects__tag {
  cursor: default;
}