/* ============ 文章列表 / 详情页专用样式 ============ */
.art-layout{display:grid;grid-template-columns:1fr 320px;gap:28px;align-items:start;}
@media(max-width:980px){.art-layout{grid-template-columns:1fr;}}

/* 分类筛选 */
.cat-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px;}
.cat-bar a{padding:8px 18px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:14px;font-weight:600;color:var(--ink);}
.cat-bar a.on{background:var(--primary);color:#fff;border-color:var(--primary);}

/* 文章卡片列表 */
.art-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:20px 24px;margin-bottom:14px;box-shadow:var(--shadow);transition:.18s;display:block;color:var(--ink);
}
.art-card:hover{border-color:var(--primary-2);transform:translateY(-2px);color:var(--ink);}
.art-card h3{font-size:17.5px;line-height:1.5;margin-bottom:8px;}
.art-card:hover h3{color:var(--primary);}
.art-card .ex{font-size:14px;color:var(--muted);margin-bottom:10px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.art-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:#9aa3ad;align-items:center;}
.art-meta .cat{background:#eef4fa;color:var(--primary);border-radius:6px;padding:2px 9px;font-weight:600;}

/* 分页 */
.pager{display:flex;gap:8px;justify-content:center;margin:26px 0 0;flex-wrap:wrap;}
.pager a,.pager span{
  min-width:40px;height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px;color:var(--ink);
}
.pager a.on,.pager span.on{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:700;}
.pager .disabled{color:#c3ccd6;}

/* 侧栏 */
.side-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:16px;box-shadow:var(--shadow);}
.side-card .blk-h{font-size:15.5px;font-weight:700;margin-bottom:12px;padding-left:10px;border-left:3px solid var(--accent);}
.side-card ol{padding-left:20px;}
.side-card ol li{font-size:13.8px;margin-bottom:9px;line-height:1.55;}
.side-card ol li a{color:var(--ink);}
.side-card ol li a:hover{color:var(--primary-2);}
.side-quote{background:linear-gradient(135deg,#0F4C81,#1d84c8);color:#fff;border:none;}
.side-quote .blk-h{border-left-color:#fff;}
.side-quote p{font-size:13.5px;opacity:.9;margin-bottom:14px;}
.side-quote a{display:block;text-align:center;background:var(--accent);color:#3a2a00;font-weight:700;padding:11px;border-radius:10px;}
.side-call{text-align:center;}
.side-call .num{font-size:21px;font-weight:800;color:var(--primary);margin:4px 0;}
.side-call p{font-size:12.5px;color:var(--muted);}

/* 列表页顶部说明（SEO 文字） */
.list-intro{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px;margin-bottom:22px;}
.list-intro h2{font-size:18px;margin-bottom:8px;}
.list-intro p{font-size:14px;color:var(--muted);}

/* ===== 详情页 ===== */
.art-body{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 38px;box-shadow:var(--shadow);}
@media(max-width:899px){.art-body{padding:22px 18px 30px;}}

/* 标题区：栏目 → H1 → 导语 → 元信息，阅读动线自上而下不打断 */
.art-header{margin-bottom:20px;}
.art-cat{display:inline-block;font-size:12.5px;font-weight:600;color:var(--primary);background:#eef4fa;border-radius:999px;padding:3px 12px;margin-bottom:12px;}
.art-cat:hover{background:#e2eefa;color:var(--primary);}
.art-body h1{font-size:26px;line-height:1.42;margin:0 0 12px;}
@media(max-width:899px){.art-body h1{font-size:21px;}}
.art-lede{font-size:15px;line-height:1.75;color:#54606e;margin:0 0 16px;padding-left:12px;border-left:3px solid #dbe8f3;}
@media(max-width:899px){.art-lede{font-size:14.2px;}}
.art-head-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:#8a93a0;padding:14px 0 16px;border-bottom:1px solid var(--line);}
.art-head-meta .m-ic{display:inline-flex;align-items:center;gap:5px;}
.art-head-meta .m-upd{color:var(--primary);background:#f1f7fc;border-radius:6px;padding:1px 8px;}

/* 封面 / 正文首图：固定 16:9 占位，图片到达前不塌版 */
.art-cover{margin:0 0 22px;border-radius:12px;overflow:hidden;background:#eef4fa;}
.art-cover img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;}
@media(max-width:899px){.art-cover{margin:0 0 16px;border-radius:10px;}}

/* 正文：16px / 1.85 行高，一行约 40 个汉字，长段落不再糊成一片 */
.art-body p,.art-body li{font-size:15.2px;color:#2f3b49;margin-bottom:10px;}
.art-content{font-size:16px;line-height:1.85;color:#2f3b49;}
.art-content p{margin:0 0 16px;font-size:16px;}
.art-content > p:first-of-type{color:#243040;font-size:16.5px;line-height:1.88;}
.art-content ul,.art-content ol{padding-left:22px;margin:0 0 16px;}
.art-content li{margin-bottom:7px;font-size:16px;}
.art-content h2{font-size:19.5px;line-height:1.5;margin:34px 0 14px;padding-left:12px;border-left:4px solid var(--primary);scroll-margin-top:80px;}
.art-content h3{font-size:16.5px;margin:24px 0 10px;scroll-margin-top:80px;}
.art-content h4{font-size:15.5px;margin:18px 0 8px;color:#3a4a5c;scroll-margin-top:80px;}
.art-content img{max-width:100%;height:auto;border-radius:10px;}
.art-fig{margin:20px 0;}
.art-fig img{display:block;width:100%;height:auto;border-radius:10px;}
.art-fig figcaption{font-size:12.5px;color:#8a93a0;text-align:center;margin-top:8px;}
.art-table-wrap{overflow-x:auto;margin:18px 0;-webkit-overflow-scrolling:touch;}
.art-body table{width:100%;border-collapse:collapse;font-size:14px;margin:0;}
.art-body th{background:#eef4fa;padding:10px;border:1px solid var(--line);text-align:left;color:var(--primary);}
.art-body td{padding:9px 10px;border:1px solid var(--line);}
.art-body blockquote{border-left:4px solid var(--accent);background:#fffaf0;padding:12px 16px;margin:16px 0;font-size:14.5px;color:#5b6472;border-radius:0 8px 8px 0;}
.art-body strong{color:var(--primary);}

/* 阅读进度条 */
.read-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:120;pointer-events:none;}
.read-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0F4C81,#1d84c8);}

/* 侧栏目录：跟随滚动，当前章节高亮 */
.art-toc{position:sticky;top:80px;max-height:calc(100vh - 108px);overflow:auto;}
.art-toc .blk-h{margin-bottom:10px;}
.art-toc ol{list-style:none;padding:0;margin:0;counter-reset:toc;}
.art-toc > ol > li{counter-increment:toc;margin-bottom:4px;}
.art-toc > ol > li > a::before{content:counter(toc) ". ";color:#9aa3ad;}
.art-toc ol ol{margin:4px 0 6px 12px;padding-left:10px;border-left:1px solid var(--line);counter-reset:none;}
.art-toc ol ol li{margin-bottom:3px;}
.art-toc a{display:block;font-size:13.2px;line-height:1.55;color:#3a4a5c;border-radius:6px;padding:4px 6px;}
.art-toc a:hover{color:var(--primary-2);background:#f5f9fd;}
.art-toc a.on{color:var(--primary);background:#eef4fa;font-weight:600;}
.art-toc ol ol a{font-size:12.8px;color:#6b7684;}
@media(max-width:980px){.art-toc{display:none;}}

/* 移动端目录：折叠在正文之前，不占首屏 */
.art-toc-m{background:#f8fbfe;border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:0 0 20px;}
.art-toc-m summary{font-size:14px;font-weight:600;color:var(--primary);cursor:pointer;list-style:none;}
.art-toc-m summary::-webkit-details-marker{display:none;}
.art-toc-m summary::after{content:"展开";float:right;font-size:12px;color:#9aa3ad;font-weight:400;}
.art-toc-m[open] summary::after{content:"收起";}
.art-toc-m ol{margin:10px 0 0;padding-left:18px;font-size:13.5px;line-height:1.75;}
.art-toc-m ol ol{padding-left:14px;font-size:13px;color:#6b7684;}
@media(min-width:981px){.art-toc-m{display:none;}}

/* 话题标签 + 分享 */
.art-tags{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:22px 0 4px;}
.art-tags .t-label{font-size:13px;color:#8a93a0;}
.art-tags a{font-size:13px;background:#f1f7fc;border:1px solid #dbe8f3;color:#0F4C81;border-radius:999px;padding:3px 12px;}
.art-tags a:hover{background:#e2eefa;}
.art-share{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 0;padding-top:18px;border-top:1px solid var(--line);}
.art-share button{font:inherit;font-size:13px;padding:8px 16px;border-radius:999px;border:1px solid #dbe8f3;background:#fff;color:var(--primary);cursor:pointer;}
.art-share button:hover{background:#f1f7fc;}
.art-share .share-tip{font-size:12.5px;color:#9aa3ad;}

/* 文内转化条 */
.inline-cta{
  background:linear-gradient(120deg,#0F4C81,#1d84c8);color:#fff;border-radius:14px;
  padding:20px 24px;margin:26px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.inline-cta p{color:#fff;margin:0;font-size:14.5px;}
.inline-cta a{background:var(--accent);color:#3a2a00;font-weight:700;padding:10px 22px;border-radius:999px;white-space:nowrap;}

/* 文内 FAQ */
.art-faq{background:#f8fbfe;border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin:26px 0 16px;}
.art-faq h2{font-size:17px;border:none;padding:0;margin:0 0 10px;}
.art-faq details{border-bottom:1px dashed var(--line);padding:10px 0;}
.art-faq details:last-child{border-bottom:none;}
.art-faq summary{font-weight:600;font-size:14.8px;cursor:pointer;list-style:none;color:var(--ink);}
.art-faq summary::-webkit-details-marker{display:none;}
.art-faq summary::before{content:"Q ";color:var(--primary);font-weight:800;}
.art-faq .ans{font-size:14px;color:var(--muted);padding:8px 0 0 20px;line-height:1.7;}

/* 作者卡 + 上下篇 */
.author-card{display:flex;gap:16px;align-items:center;background:#f8fbfe;border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-top:28px;}
.author-card .av{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#0F4C81,#1d84c8);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:19px;flex:none;}
.author-card b{font-size:15px;}
.author-card p{font-size:13px;color:var(--muted);margin:2px 0 0;line-height:1.6;}
.art-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;}
@media(max-width:899px){.art-nav{grid-template-columns:1fr;}}
.art-nav a{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;font-size:14px;color:var(--ink);}
.art-nav a:hover{border-color:var(--primary-2);color:var(--primary);}
.art-nav span{display:block;font-size:12px;color:#9aa3ad;margin-bottom:4px;}

/* 相关阅读卡片：标题 + 摘要 + 栏目/日期，比纯标题列表更容易被点 */
.art-related h2{font-size:19.5px;border:none;padding:0;margin:34px 0 0;}
.rel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;}
@media(max-width:899px){.rel-grid{grid-template-columns:1fr;}}

/* 分站线路报价页 */
.quote-box{background:linear-gradient(120deg,#0F4C81,#1d84c8);border-radius:14px;padding:22px 26px;margin:0 0 22px;color:#fff;}
.qb-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.qb-label{font-size:13px;opacity:.85;}
.qb-price b{font-size:32px;font-weight:500;color:#ffd75e;letter-spacing:-.5px;}
.qb-price b i{font-style:normal;font-size:22px;margin:0 2px;}
.qb-avg{font-size:13px;opacity:.9;}
.qb-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0 14px;}
@media(max-width:640px){.qb-meta{grid-template-columns:1fr 1fr;}}
.qb-meta div{background:rgba(255,255,255,.12);border-radius:8px;padding:8px 12px;}
.qb-meta span{display:block;font-size:11.5px;opacity:.8;}
.qb-meta b{font-size:14.5px;font-weight:500;}
.qb-cta{display:inline-block;background:#ffd75e;color:#5a4000;font-weight:600;padding:10px 26px;border-radius:999px;}
.qb-note{margin:10px 0 0;font-size:12px;opacity:.75;}
.fq-body{font-size:15.2px;line-height:1.85;color:#2f3b49;}
.fq-body img{max-width:100%;height:auto;border-radius:10px;margin:8px auto;display:block;}
.fq-rel-h{border:none;padding:0;margin:28px 0 12px;font-size:18px;}
.fq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
@media(max-width:980px){.fq-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.fq-grid{grid-template-columns:1fr;}}
.fq-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:5px;transition:border-color .2s,transform .2s;}
.fq-card:hover{border-color:var(--primary-2);transform:translateY(-2px);}
.fq-card b{font-size:13.8px;font-weight:500;color:var(--ink);line-height:1.5;}
.fq-card:hover b{color:var(--primary);}
.fq-card .fq-price{color:#c2451e;font-weight:600;font-size:14.5px;}
.fq-card .fq-meta{font-size:12px;color:#9aa3ad;}
.fq-station{margin-top:6px;}

/* ---------- 分站落地页：分组 + 筛选 + 搜索 ---------- */
.fz-hero{text-align:center;padding:10px 0 22px;}
.fz-hero.photo{
  position:relative;border-radius:16px;margin:6px 0 4px;padding:38px 20px 28px;
  background-size:cover;background-position:center 42%;color:#fff;overflow:hidden;
}
.fz-hero.photo h1{color:#fff;text-shadow:0 1px 10px rgba(8,30,55,.45);}
.fz-hero.photo .fz-hero-sub{color:rgba(255,255,255,.9);}
.fz-hero.photo .fz-stat{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35);color:rgba(255,255,255,.92);backdrop-filter:blur(4px);}
.fz-hero.photo .fz-stat b{color:#fff;}
.fz-hero h1{font-size:30px;margin:0 0 10px;}
.fz-hero-sub{color:var(--muted);font-size:14.5px;margin:0 auto 18px;max-width:640px;line-height:1.7;}
.fz-stats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.fz-stat{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-size:13px;color:var(--muted);}
.fz-stat b{color:var(--primary);font-size:15px;margin:0 2px;}
.fz-bar{position:sticky;top:62px;z-index:40;background:rgba(247,250,253,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);}
@media(max-width:980px){.fz-bar{top:56px;}}
.fz-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 0;}
.fz-search{flex:1 1 240px;min-width:200px;position:relative;}
.fz-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#9aa3ad;pointer-events:none;}
.fz-search input{width:100%;box-sizing:border-box;padding:10px 16px 10px 38px;border:1px solid var(--line);border-radius:999px;font-size:14px;background:#fff;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s;}
.fz-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(21,101,192,.12);}
.fz-chips{display:flex;gap:8px;flex-wrap:wrap;}
.fz-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;transition:all .15s;}
.fz-chip i{font-style:normal;font-size:11.5px;color:#9aa3ad;font-weight:400;}
.fz-chip:hover{border-color:var(--primary-2);color:var(--primary);}
.fz-chip.on{background:var(--primary);border-color:var(--primary);color:#fff;}
.fz-chip.on i{color:rgba(255,255,255,.75);}
.fz-hint{font-size:13px;color:#9aa3ad;margin:2px 0 6px;}
.fz-hint b{color:var(--primary);}
.fz-region{margin-top:30px;}
.fz-region-h{display:flex;align-items:baseline;gap:12px;margin:0 0 14px;}
.fz-region-h h2{font-size:21px;margin:0;}
.fz-region-h h2::before{content:"";display:inline-block;width:4px;height:16px;border-radius:2px;background:var(--primary);margin-right:9px;vertical-align:-2px;}
.fz-region-h span{font-size:13px;color:#9aa3ad;}
.fq-prov{margin-bottom:24px;}
.fz-prov-h{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#5b6673;margin:0 0 10px;}
.fz-prov-h i{font-style:normal;font-weight:400;font-size:12px;color:#9aa3ad;}
.fz-prov-h::after{content:"";flex:1;height:1px;background:var(--line);}
/* 全国分站导航页（/quanguofenzhan.html） */
.fz-region-sec{margin-top:28px;}
.fz-prov{margin-bottom:18px;}
.fz-prov > .fz-prov-h{font-weight:600;color:#41536b;}
.fz-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;}
.fz-card{display:flex;flex-direction:column;gap:2px;padding:9px 12px;border-radius:9px;border:1px solid var(--line);background:#fff;transition:border-color .2s,transform .2s;}
.fz-card b{font-size:13.5px;font-weight:500;color:var(--ink);line-height:1.5;}
.fz-card span{font-size:11.5px;color:#9aa3ad;}
a.fz-card:hover{border-color:var(--primary-2);transform:translateY(-2px);}
a.fz-card:hover b{color:var(--primary);}
.fz-card.online span{color:#2e7d43;}
.fz-card.offline{background:#f6f8fa;border-style:dashed;cursor:default;}
.fz-card.offline b{color:#8a93a0;}
.fz-card.offline span{color:#b3bcc5;}
.fz-count{font-size:13px;color:#8a97a5;margin:14px 0 4px;}
@media (max-width:640px){.fz-cards{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));}}
.fz-list{grid-template-columns:repeat(3,1fr);gap:14px;}
@media(max-width:980px){.fz-list{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.fz-list{grid-template-columns:1fr;}}
.fz-list .fq-card{padding:14px 16px;gap:7px;}
.fz-list .fq-card .fq-route{display:flex;align-items:center;gap:7px;font-size:14.5px;flex-wrap:wrap;}
.fz-list .fq-card .fq-route b{font-size:14.5px;font-weight:700;}
.fz-list .fq-card .fq-route i{font-style:normal;color:#b6bec7;font-weight:400;}
.fz-list .fq-card .fq-price{font-size:17px;font-weight:700;}
.fz-list .fq-card .fq-price em{font-style:normal;font-weight:400;color:#d8917a;padding:0 1px;}
.fz-list .fq-card .fq-go{font-size:12px;color:var(--primary);opacity:0;transform:translateX(-4px);transition:all .2s;}
.fz-list .fq-card:hover .fq-go{opacity:1;transform:translateX(0);}
@media(max-width:980px){.fz-list .fq-card .fq-go{opacity:1;transform:none;}}
.fz-empty{text-align:center;padding:50px 0;color:var(--muted);font-size:15px;line-height:2;}
.fz-empty a{color:var(--primary);font-weight:700;}
.rel-grid a.rel-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;}
.rel-grid a.rel-card:hover{border-color:var(--primary-2);}
.rel-card b{font-size:14.2px;line-height:1.5;color:var(--ink);font-weight:600;}
.rel-card:hover b{color:var(--primary);}
.rel-card .rel-topic{font-size:12.8px;color:#7b8694;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.rel-card .rel-meta{font-size:12px;color:#9aa3ad;}

/* 文章卡缩略图（配图来自 lib/article-images.js 主题匹配图库） */
.art-card.has-thumb{display:flex;gap:16px;padding:14px 18px;align-items:flex-start;}
.ac-thumb{width:150px;height:96px;object-fit:cover;border-radius:10px;flex-shrink:0;background:#eef4fa;}
.ac-bd{display:block;min-width:0;}
.art-card.has-thumb h3{margin-top:2px;}
.art-card.has-thumb .ex{margin-bottom:8px;}
@media(max-width:640px){
  .art-card.has-thumb{gap:12px;padding:12px 14px;}
  .ac-thumb{width:110px;height:74px;}
}

/* 零图文章自动插入的实拍图（art-injected） */
.art-fig.art-injected{margin:22px 0;}
.art-fig.art-injected img{width:100%;aspect-ratio:16/9;object-fit:cover;}
