/*
Theme Name: 区块链全球时报网
Theme URI: http://jfoejdfoa.cn/
Author: jfoejdfoa.cn
Author URI: http://jfoejdfoa.cn/
Description: 区块链全球时报网 —— 新闻门户主题。区块链要闻 · 数字货币 · 链上数据。含焦点版块、栏目区块、图文侧栏、文章内页排版与移动端自适应；内置全站免责声明与栏目一键整理。代码与素材均为原创。
Version: 1.0.0
Requires PHP: 7.0
License: GNU General Public License v2 or later
Text Domain: chaintimes
Tags: news, magazine, portal, custom-menu, featured-images, translation-ready
*/

/* =========================================================
   新闻门户主题 · 基础样式
   所有配色/圆角通过 :root 变量控制，站点差异在文件末尾覆盖
   ========================================================= */

*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{font:15px/1.7 "PingFang SC","Hiragino Sans GB","Microsoft YaHei","Heiti SC",sans-serif;
  color:var(--ink);background:var(--bg);}
a{color:inherit;text-decoration:none;transition:color .15s;}
a:hover{color:var(--red);}
ul,ol{list-style:none;}
img{max-width:100%;height:auto;border:0;display:block;}
table{border-collapse:collapse;}
.clearfix:after{display:block;clear:both;visibility:hidden;height:0;content:".";}

.container{width:1200px;max-width:96%;margin:0 auto;}

/* ========== 顶部信息条 ========== */
.topbar{background:var(--deep);color:#b9bcc2;font-size:12px;height:34px;line-height:34px;}
.topbar .container{display:flex;justify-content:space-between;}
.topbar a{color:#c8cbd1;margin-left:16px;}
.topbar a:hover{color:#fff;}
.topbar .tb-date{color:#8d9199;}

/* ========== 站头 ========== */
.site-head{background:var(--head-bg);padding:16px 0;color:var(--head-ink);}
.site-head .container{display:flex;align-items:center;justify-content:space-between;gap:20px;}
.logo{display:flex;align-items:center;gap:12px;min-width:0;}
.logo-badge{background:var(--red);color:#fff;font-size:25px;font-weight:800;padding:7px 12px;
  letter-spacing:1px;border-radius:var(--radius-sm);line-height:1.15;flex:none;}
.logo-name{font-size:25px;font-weight:800;color:var(--head-ink);letter-spacing:2px;line-height:1.25;}
.logo-name small{display:block;font-size:10.5px;font-weight:400;color:var(--head-sub);
  letter-spacing:2.6px;margin-top:2px;white-space:nowrap;}
.head-banner{width:520px;max-width:44%;height:70px;border-radius:var(--radius-sm);
  background:var(--banner-bg);color:#eef0f2;display:flex;align-items:center;
  justify-content:center;font-size:17px;letter-spacing:3px;overflow:hidden;position:relative;}
.head-banner em{font-style:normal;color:var(--banner-em);}
.head-banner span{opacity:.9;}

/* 站头样式：居中报头 */
.site-head.hd-masthead{padding:22px 0 16px;}
.site-head.hd-masthead .container{flex-direction:column;justify-content:center;gap:0;}
.site-head.hd-masthead .logo{flex-direction:column;gap:6px;text-align:center;}
.site-head.hd-masthead .logo-badge{display:none;}
.site-head.hd-masthead .logo-name{font-size:38px;letter-spacing:6px;}
.site-head.hd-masthead .logo-name small{letter-spacing:5px;font-size:11px;margin-top:6px;}
.site-head.hd-masthead .head-banner{display:none;}

/* 站头样式：深色科技头 */
.site-head.hd-dark{background:var(--deep);padding:18px 0;}
.site-head.hd-dark .logo-name{color:#fff;}
.site-head.hd-dark .logo-name small{color:var(--head-sub);}
.site-head.hd-dark .logo-badge{background:var(--red);box-shadow:0 0 0 1px rgba(255,255,255,.18) inset;}
.site-head.hd-dark .head-banner{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);}

/* ========== 主导航 ========== */
.mainnav{background:var(--nav-bg);border-bottom:2px solid var(--red);position:sticky;top:0;z-index:99;
  box-shadow:0 1px 5px rgba(0,0,0,.07);}
.mainnav .container{display:flex;align-items:center;}
.mainnav ul{display:flex;flex-wrap:nowrap;overflow-x:auto;flex:1;}
.mainnav li a{display:block;padding:0 22px;height:46px;line-height:46px;font-size:16px;
  color:var(--nav-ink);white-space:nowrap;}
.mainnav li.current-menu-item>a,.mainnav li.current-cat>a,
.mainnav li.current-menu-parent>a,.mainnav li a:hover{color:var(--nav-on);background:var(--red);}
.site-head.hd-masthead+.mainnav ul{justify-content:center;}

/* ========== 首页栅格 ========== */
.home-wrap{margin-top:20px;}
.home-main{float:left;width:830px;}
.home-side{float:right;width:330px;}

/* 缩略图 */
.thumb{position:relative;overflow:hidden;background-color:#dde0e4;background-size:cover;
  background-position:center;border-radius:var(--radius-sm);}
.thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.thumb .ph{position:absolute;left:10px;top:10px;z-index:2;font-size:12px;font-weight:400;
  color:rgba(255,255,255,.9);letter-spacing:2px;border:1px solid rgba(255,255,255,.5);
  border-radius:2px;padding:1px 7px;}
.thumb .cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:28px 12px 9px;
  background:linear-gradient(transparent,rgba(0,0,0,.74));color:#fff;font-size:15px;
  line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;text-align:left;}
.t-c1{background-image:linear-gradient(135deg,var(--t1a),var(--t1b));}
.t-c2{background-image:linear-gradient(135deg,var(--t2a),var(--t2b));}
.t-c3{background-image:linear-gradient(135deg,var(--t3a),var(--t3b));}
.t-c4{background-image:linear-gradient(135deg,var(--t4a),var(--t4b));}
.t-c5{background-image:linear-gradient(135deg,var(--t5a),var(--t5b));}
.hotlist .thumb .ph,.hero-left .duo .thumb .ph,.postlist .thumb .ph,
.cardrow .thumb .ph,.card-grid .thumb .ph,.mg-quad .thumb .ph,.topstrip .thumb .ph{
  font-size:10px;letter-spacing:1px;padding:0 4px;left:6px;top:6px;}
.hotlist .thumb .cap,.hero-left .duo .thumb .cap{font-size:12px;padding:16px 8px 6px;}

/* ---------- 块标题 ---------- */
.sec-hd{display:flex;align-items:center;border-top:2px solid var(--red);margin-top:32px;padding-top:10px;}
.sec-hd .sq{width:22px;height:22px;background:var(--red);color:#fff;font-size:13px;line-height:22px;
  text-align:center;margin-right:8px;font-weight:700;border-radius:var(--radius-sm);}
.sec-hd h2{font-size:20px;color:var(--ink-strong);letter-spacing:1px;}
.sec-hd h2 a{color:var(--ink-strong);}
.sec-hd h2 a:hover{color:var(--red);}
.sec-hd .more{margin-left:auto;font-size:13px;color:var(--gray);}
.sec-hd .more:hover{color:var(--red);}

/* ---------- 文字列表 ---------- */
.midlist li{height:34px;line-height:34px;font-size:17px;overflow:hidden;white-space:nowrap;
  text-overflow:ellipsis;}
.midlist li:before{content:"";display:inline-block;width:5px;height:5px;background:var(--red);
  border-radius:50%;margin-right:10px;vertical-align:2px;}
.midlist li em{font-style:normal;color:var(--red);border:1px solid var(--red);border-radius:3px;
  padding:0 4px;margin-right:8px;font-size:11px;}
.midlist.mt{margin-top:10px;}
.hotlist li{display:flex;gap:10px;padding:9px 0;border-bottom:1px dashed var(--line);}
.hotlist li:last-child{border-bottom:0;}
.hotlist .thumb{width:104px;height:70px;flex:none;}
.hotlist h4{font-size:15px;font-weight:400;line-height:1.5;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.hotlist h4:hover{color:var(--red);}
.hotlist .meta{font-size:12px;color:var(--gray-2);margin-top:4px;}

/* =========================================================
   版式一：slider —— 轮播 + 双图 + 要闻Tab
   ========================================================= */
.hero{background:var(--card);padding:16px;box-shadow:var(--shadow);border-radius:var(--radius);
  display:flex;gap:16px;align-items:flex-start;}
.hero:after{content:none;}
.hero-left{width:370px;flex:none;min-width:0;}
.hero-mid{flex:1;min-width:0;}
.slider{position:relative;width:370px;height:300px;overflow:hidden;border-radius:var(--radius-sm);}
.slider .slide{position:absolute;inset:0;opacity:0;transition:opacity .5s;}
.slider .slide.on{opacity:1;}
.slider .slide .thumb{width:100%;height:100%;border-radius:0;}
.slider .cap{font-size:16px;}
.slider-dots{position:absolute;right:10px;top:10px;z-index:5;background:rgba(0,0,0,.4);
  border-radius:11px;padding:5px 9px;line-height:0;}
.slider-dots i{display:inline-block;width:8px;height:8px;border-radius:50%;
  background:rgba(255,255,255,.6);margin-left:6px;cursor:pointer;}
.slider-dots i:first-child{margin-left:0;}
.slider-dots i.on{background:#fff;}
.hero-left .duo{margin-top:14px;display:flex;gap:14px;}
.hero-left .duo a{flex:1;min-width:0;}
.hero-left .duo .thumb{width:100%;height:112px;}
.tabbar{display:flex;border-bottom:2px solid var(--red);}
.tabbar span{padding:8px 18px;font-size:17px;cursor:pointer;color:var(--ink-strong);}
.tabbar span.on{background:var(--red);color:#fff;}
.tabpane{display:none;}
.tabpane.on{display:block;}
.hero-mid .midlist{margin-top:12px;}
.standfirst{font-size:15px;color:var(--gray);line-height:1.7;margin:10px 0 4px;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.standfirst strong{color:var(--red);font-weight:400;}

/* =========================================================
   版式二：lead —— 大头条 + 侧列表 + 三卡
   ========================================================= */
.lead{display:flex;gap:18px;background:var(--card);box-shadow:var(--shadow);
  border-radius:var(--radius);padding:16px;}
.lead-main{display:block;width:490px;flex:none;min-width:0;}
.lead-main .thumb{width:100%;height:300px;}
.lead-main h2{font-size:24px;line-height:1.45;color:var(--ink-strong);margin-top:12px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.lead-main:hover h2{color:var(--red);}
.lead-main p{font-size:14px;color:#6f7378;line-height:1.65;margin-top:8px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.lead-side{flex:1;min-width:0;border-left:1px solid var(--line);padding-left:18px;}
.lead-side li{display:flex;gap:12px;padding:12px 0;border-bottom:1px dashed var(--line);}
.lead-side li:last-child{border-bottom:0;}
.lead-side .n{font-size:22px;font-weight:800;color:var(--red);opacity:.32;line-height:1;
  font-style:italic;flex:none;width:26px;padding-top:2px;}
.lead-side li:nth-child(-n+2) .n{opacity:.9;}
.lead-side h3{font-size:16px;font-weight:600;line-height:1.5;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.lead-side li:hover h3{color:var(--red);}
.lead-side .t{font-size:12px;color:var(--gray-2);margin-top:4px;}

.cardrow{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px;}
.cardrow .cd{background:var(--card);box-shadow:var(--shadow);border-radius:var(--radius);
  padding:12px;display:block;min-width:0;}
.cardrow .thumb{width:100%;height:150px;}
.cardrow h3{font-size:16.5px;line-height:1.5;margin-top:9px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cardrow .cd:hover h3{color:var(--red);}
.cardrow p{font-size:13px;color:#7a7e84;line-height:1.6;margin-top:6px;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cardrow .m{font-size:12px;color:var(--gray-2);margin-top:8px;}

/* =========================================================
   版式三：grid —— 通栏置顶 + 卡片矩阵
   ========================================================= */
.topstrip{display:flex;gap:20px;background:var(--card);box-shadow:var(--shadow);
  border-radius:var(--radius);padding:16px;align-items:stretch;}
.topstrip .thumb{width:420px;height:250px;flex:none;}
.topstrip .ts-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;}
.topstrip .tag{display:inline-block;align-self:flex-start;background:var(--red);color:#fff;
  font-size:12px;padding:2px 10px;border-radius:2px;letter-spacing:1px;margin-bottom:10px;}
.topstrip h2{font-size:26px;line-height:1.42;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.topstrip:hover h2{color:var(--red);}
.topstrip p{font-size:14px;color:#6f7378;line-height:1.75;margin-top:10px;display:-webkit-box;
  -webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.topstrip .m{font-size:12px;color:var(--gray-2);margin-top:12px;}

.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px;}
.card-grid .cd{background:var(--card);box-shadow:var(--shadow);border-radius:var(--radius);
  overflow:hidden;display:block;min-width:0;}
.card-grid .thumb{width:100%;height:128px;border-radius:0;}
.card-grid .cg-body{padding:11px 12px 13px;}
.card-grid h3{font-size:15.5px;line-height:1.5;color:var(--ink-strong);display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.card-grid .cd:hover h3{color:var(--red);}
.card-grid .m{font-size:12px;color:var(--gray-2);margin-top:8px;}

/* =========================================================
   版式四：magazine —— 左大三小（2×2）+ 双栏文字
   ========================================================= */
.mg{display:flex;gap:18px;background:var(--card);box-shadow:var(--shadow);
  border-radius:var(--radius);padding:16px;}
.mg-big{width:520px;flex:none;min-width:0;display:block;}
.mg-big .thumb{width:100%;height:340px;}
.mg-big h2{font-size:25px;line-height:1.4;color:var(--ink-strong);margin-top:12px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mg-big:hover h2{color:var(--red);}
.mg-big p{font-size:14px;color:#6f7378;line-height:1.7;margin-top:8px;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mg-quad{flex:1;min-width:0;display:flex;flex-direction:column;gap:15px;}
.mg-quad .cd{display:flex;gap:11px;align-items:flex-start;min-width:0;}
.mg-quad .thumb{width:106px;height:74px;flex:none;}
.mg-quad h3{font-size:14.5px;line-height:1.5;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.mg-quad .cd:hover h3{color:var(--red);}
.mg-quad .mt2{font-size:12px;color:var(--gray-2);margin-top:5px;}

.twocol{background:var(--card);box-shadow:var(--shadow);border-radius:var(--radius);
  padding:14px 18px;margin-top:16px;}
.twocol ul{columns:2;column-gap:34px;}
.twocol li{height:36px;line-height:36px;font-size:16.5px;overflow:hidden;white-space:nowrap;
  text-overflow:ellipsis;break-inside:avoid;border-bottom:1px dashed var(--line);}
.twocol li:before{content:"";display:inline-block;width:5px;height:5px;background:var(--red);
  border-radius:50%;margin-right:10px;vertical-align:2px;}
.twocol .m{float:right;font-size:12px;color:var(--gray-2);}

/* =========================================================
   分类区块
   ========================================================= */
.catblock{margin-top:26px;}
.catblock .grid{background:var(--card);padding:16px;margin-top:12px;box-shadow:var(--shadow);
  border-radius:var(--radius);display:flex;gap:18px;}
.catblock .cb-l{width:322px;flex:none;}
.catblock .cb-l .thumb{width:100%;height:186px;margin-bottom:14px;}
.catblock .cb-c{flex:1;min-width:0;}

/* 最新发布网格 */
.latest-grid{background:var(--card);padding:16px;margin-top:12px;box-shadow:var(--shadow);
  border-radius:var(--radius);display:grid;grid-template-columns:repeat(3,1fr);gap:20px 16px;}
.latest-grid .lg-item{display:block;min-width:0;}
.latest-grid .thumb{width:100%;height:132px;}
.latest-grid .lg-t{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;font-size:15px;line-height:1.5;margin-top:6px;color:var(--ink-strong);}
.latest-grid .lg-item:hover .lg-t{color:var(--red);}
.latest-grid .lg-meta{display:block;font-size:12px;color:var(--gray-2);margin-top:7px;}
.empty-tip{color:#999;font-size:13px;}

/* =========================================================
   侧栏
   ========================================================= */
.side-box{background:var(--card);padding:16px;margin-bottom:18px;box-shadow:var(--shadow);
  border-radius:var(--radius);}
.side-t{font-size:17px;color:var(--ink-strong);border-left:4px solid var(--red);
  padding-left:10px;line-height:1.3;margin-bottom:12px;}
.side-t a{float:right;font-size:12px;color:var(--gray);font-weight:400;}
.ranklist li{height:32px;line-height:32px;font-size:15px;white-space:nowrap;overflow:hidden;
  text-overflow:ellipsis;display:flex;}
.ranklist li i{font-style:normal;width:20px;height:20px;line-height:20px;text-align:center;
  background:#c9ccd1;color:#fff;font-size:12px;border-radius:2px;margin:6px 10px 0 0;flex:none;}
.ranklist li:nth-child(1) i,.ranklist li:nth-child(2) i,.ranklist li:nth-child(3) i{background:var(--red);}
.ranklist li span{overflow:hidden;text-overflow:ellipsis;}
.widget ul li{font-size:14px;}
.widget_tag_cloud .tagcloud a{display:inline-block;background:#f3f4f6;color:#666;
  font-size:13px!important;padding:4px 10px;margin:0 6px 8px 0;border-radius:3px;}
.widget_tag_cloud .tagcloud a:hover{background:var(--red);color:#fff;}
.wg-cats li{height:34px;line-height:34px;border-bottom:1px dashed var(--line);font-size:14px;
  display:flex;justify-content:space-between;}
.wg-cats li:last-child{border-bottom:0;}
.wg-cats .c{color:var(--gray-2);font-size:12px;}

/* =========================================================
   内页
   ========================================================= */
.crumb{margin:16px auto;font-size:13px;color:var(--gray-2);}
.crumb a{color:var(--gray);}
.crumb a:hover{color:var(--red);}
.crumb b{color:var(--red);font-weight:400;}
.page-grid{background:var(--card);box-shadow:var(--shadow);border-radius:var(--radius);
  padding:26px 30px;}
.page-main{float:left;width:830px;}
.page-side{float:right;width:330px;}

.art-title{font-size:30px;line-height:1.45;color:var(--ink-strong);text-align:center;font-weight:700;}
.art-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;margin:16px 0 6px;
  font-size:13px;color:var(--gray-2);border-bottom:1px solid var(--line);padding-bottom:14px;}
.art-meta b{color:var(--red);font-weight:400;}
.art-body{margin-top:18px;font-size:18px;line-height:1.9;color:#222;}
.art-body p{margin:0 0 20px;text-indent:2em;}
.art-body h2,.art-body h3,.art-body h4{font-size:20px;margin:28px 0 14px;color:var(--ink-strong);
  text-indent:0;line-height:1.5;}
.art-body ul,.art-body ol{margin:0 0 20px 2em;}
.art-body ul li{list-style:disc;margin-bottom:8px;}
.art-body ol li{list-style:decimal;margin-bottom:8px;}
.art-body img{margin:10px auto;border-radius:4px;}
.art-body table{width:100%;font-size:15px;}
.art-body th{background:#f2f4f7;padding:10px 12px;border:1px solid var(--line);font-weight:600;text-align:left;}
.art-body td{padding:10px 12px;border:1px solid var(--line);}
.art-body blockquote{border-left:4px solid var(--red);background:#fafafa;padding:12px 16px;
  margin:0 0 20px;color:#555;text-indent:0;}
.art-body a{color:var(--red);border-bottom:1px solid var(--red-a30);}
.art-tags{margin-top:24px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;}
.art-tags a{display:inline-block;background:#f3f4f6;padding:4px 12px;margin:0 8px 8px 0;
  border-radius:3px;color:#666;}
.art-tags a:hover{background:var(--red);color:#fff;}
.art-nav{display:flex;justify-content:space-between;gap:16px;margin-top:20px;font-size:14px;color:var(--gray);}
.art-nav a{max-width:46%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
.art-nav a:hover{color:var(--red);}

.related{margin-top:30px;border-top:2px solid var(--red);padding-top:12px;}
.related h3{font-size:18px;margin-bottom:6px;}
.related ul{columns:2;column-gap:36px;margin-top:8px;}
.related li{height:34px;line-height:34px;font-size:16px;overflow:hidden;white-space:nowrap;
  text-overflow:ellipsis;break-inside:avoid;}
.related li:before{content:"";display:inline-block;width:5px;height:5px;background:var(--red);
  border-radius:50%;margin-right:10px;vertical-align:2px;}

/* 列表页 */
.cat-head{background:var(--card);border-left:5px solid var(--red);padding:14px 18px;margin-top:16px;
  box-shadow:var(--shadow);border-radius:var(--radius);}
.cat-head h1{font-size:22px;color:var(--ink-strong);}
.cat-head p{font-size:13px;color:var(--gray-2);margin-top:2px;}
.postlist{margin-top:14px;}
.postlist article{background:var(--card);box-shadow:var(--shadow);padding:16px;display:flex;
  gap:18px;margin-bottom:14px;border-radius:var(--radius);}
.postlist .thumb{width:240px;height:150px;flex:none;}
.postlist h2{font-size:20px;line-height:1.5;}
.postlist h2 a:hover{color:var(--red);}
.postlist .ex{font-size:14px;color:#666;margin-top:8px;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.postlist .meta{font-size:12px;color:var(--gray-2);margin-top:10px;}
.postlist .meta b{color:var(--red);font-weight:400;margin-right:10px;}
.pagenav{margin:24px 0;text-align:center;}
.pagenav .page-numbers{display:inline-block;min-width:34px;height:34px;line-height:34px;
  padding:0 10px;background:var(--card);margin:0 4px;border:1px solid var(--line);font-size:14px;}
.pagenav .current,.pagenav .page-numbers:hover{background:var(--red);color:#fff;border-color:var(--red);}

.page-title{font-size:24px;color:var(--ink-strong);border-left:5px solid var(--red);
  padding-left:14px;margin-top:20px;}
.nores{background:var(--card);padding:60px;text-align:center;color:var(--gray);
  box-shadow:var(--shadow);margin-top:16px;border-radius:var(--radius);}

/* =========================================================
   页脚
   ========================================================= */
.footer{background:var(--foot-bg);color:#8b8f96;margin-top:40px;padding:30px 0 0;font-size:13px;}
.footer a{color:#b9bdc4;}
.footer a:hover{color:#fff;}
.foot-links{display:flex;flex-wrap:wrap;gap:6px 18px;padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.08);}
.foot-links .fl-t{color:#d7dade;font-weight:600;}
.foot-copyright{text-align:center;padding:18px 0;line-height:2;}

/* 免责声明 */
.disclaimer{background:var(--dc-bg);border:1px solid var(--dc-line);border-left:3px solid var(--red);
  border-radius:3px;padding:14px 16px;margin-bottom:20px;}
.disclaimer .dc-hd{display:flex;align-items:center;gap:6px;color:#e8eaed;font-weight:700;
  font-size:14px;margin-bottom:8px;}
.disclaimer .dc-ico{display:inline-flex;align-items:center;justify-content:center;width:16px;
  height:16px;flex:none;border-radius:50%;background:var(--red);color:#fff;font-size:11px;
  font-weight:700;font-style:normal;line-height:1;}
.disclaimer .dc-tag{margin-left:10px;padding:1px 8px;border:1px solid var(--red);
  border-radius:99px;color:#fff;background:var(--red);font-size:11px;font-weight:400;letter-spacing:.5px;}
.disclaimer .dc-tx{margin:0;color:#95999f;font-size:12.5px;line-height:1.95;text-align:justify;}
.disclaimer .dc-tx a{color:#e2685f;text-decoration:underline;}
.disclaimer .dc-tx a:hover{color:#fff;}
.disclaimer .dc-tx strong{color:#d7dade;font-weight:600;}

/* 返回顶部 */
.backtop{position:fixed;right:24px;bottom:80px;width:44px;height:44px;background:#fff;
  border:1px solid var(--line);border-radius:4px;text-align:center;line-height:44px;font-size:18px;
  cursor:pointer;color:var(--gray);display:none;z-index:98;box-shadow:0 2px 8px rgba(0,0,0,.12);}
.backtop:hover{background:var(--red);color:#fff;border-color:var(--red);}

/* =========================================================
   响应式
   ========================================================= */
@media (max-width:1100px){
  .head-banner{display:none;}
  .home-main,.page-main{width:100%;float:none;}
  .home-side,.page-side{width:100%;float:none;margin-top:24px;}
  .hero{flex-direction:column;}
  .hero-left,.hero-mid{width:100%;}
  .hero-mid{margin-top:18px;}
  .slider{width:100%;height:auto;aspect-ratio:16/9;max-height:420px;}
  .hero-left .duo a{flex:1;min-width:0;}
  .hero-left .duo .thumb{width:100%;height:auto;aspect-ratio:16/9;}
  .lead{flex-direction:column;}
  .lead-main{width:100%;}
  .lead-main .thumb{height:auto;aspect-ratio:16/9;}
  .lead-side{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:6px;}
  .topstrip{flex-direction:column;}
  .topstrip .thumb{width:100%;height:auto;aspect-ratio:16/9;}
  .card-grid{grid-template-columns:repeat(3,1fr);}
  .mg{flex-direction:column;}
  .mg-big{width:100%;}
  .mg-big .thumb{height:auto;aspect-ratio:16/9;}
}
@media (max-width:760px){
  .topbar{display:none;}
  .logo-name{font-size:19px;letter-spacing:1px;}
  .logo-badge{font-size:17px;padding:5px 9px;}
  .logo-name small{font-size:9px;letter-spacing:2px;}
  .site-head.hd-masthead .logo-name{font-size:26px;letter-spacing:3px;}
  .mainnav li a{padding:0 14px;font-size:15px;height:42px;line-height:42px;}
  .hero{padding:12px;}
  .hero-left .duo{margin-bottom:14px;}
  .cardrow{grid-template-columns:1fr;}
  .cardrow .thumb{height:auto;aspect-ratio:16/9;}
  .card-grid{grid-template-columns:repeat(2,1fr);gap:12px;}
  .card-grid .thumb{height:110px;}
  .mg-quad{gap:10px;}
  .mg-quad .thumb{width:96px;height:68px;}
  .twocol ul{columns:1;}
  .catblock .grid{flex-direction:column;}
  .catblock .cb-l{width:100%;}
  .catblock .cb-l .thumb{width:100%;height:auto;aspect-ratio:16/9;}
  .latest-grid{grid-template-columns:repeat(2,1fr);gap:16px 12px;}
  .latest-grid .thumb{height:118px;}
  .art-title{font-size:22px;text-align:left;}
  .art-meta{justify-content:flex-start;}
  .art-body{font-size:17px;}
  .art-body p{text-indent:0;}
  .page-grid{padding:18px 16px;}
  .postlist article{flex-direction:column;}
  .postlist .thumb{width:100%;height:auto;aspect-ratio:16/9;}
  .related ul{columns:1;}
  .disclaimer{padding:12px;margin-bottom:16px;}
  .disclaimer .dc-tx{font-size:12px;line-height:1.9;text-align:left;}
  .backtop{right:14px;bottom:64px;width:40px;height:40px;line-height:40px;}
}

/* =========================================================
   第二批：10 套互不相同的首页版式
   全部使用 .lz-* 前缀，与基础样式互不干扰
   ========================================================= */
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.82)}}
@keyframes tkr{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* =========================================================
   1. bbs —— 论坛板块
   ========================================================= */
.bb-stat{display:flex;align-items:center;gap:26px;background:var(--card);border:1px solid var(--line);
  border-left:4px solid var(--red);padding:11px 16px;font-size:13px;color:var(--gray);margin-top:18px;}
.bb-stat b{color:var(--red);font-size:18px;margin-right:3px;font-weight:800;}
.bb-live{margin-left:auto;display:flex;align-items:center;gap:7px;color:#2f9e44;}
.bb-live i{width:7px;height:7px;border-radius:50%;background:#2f9e44;animation:pulse 1.6s infinite;}
.bb-wrap{display:flex;gap:16px;margin-top:16px;align-items:flex-start;}
.bb-boards{flex:1;min-width:0;background:var(--card);border:1px solid var(--line);}
.bb-hd{display:flex;align-items:baseline;gap:10px;padding:12px 16px;border-bottom:2px solid var(--red);}
.bb-hd h2{font-size:19px;color:var(--ink-strong);}
.bb-hd span{font-size:10.5px;letter-spacing:2.5px;color:var(--gray-2);}
.bb-boards li{display:flex;align-items:center;gap:12px;padding:0 16px;height:47px;
  border-bottom:1px dashed var(--line);}
.bb-boards li:last-child{border-bottom:0;}
.bb-boards li>i{font-style:normal;font-size:11.5px;font-weight:700;color:#fff;background:var(--deep);
  width:22px;height:22px;line-height:22px;text-align:center;flex:none;}
.bb-boards li:nth-child(-n+3)>i{background:var(--red);}
.bb-name{font-size:16px;font-weight:600;color:var(--ink-strong);flex:none;width:126px;}
.bb-boards li em{font-style:normal;font-size:12px;color:var(--gray-2);flex:none;width:64px;}
.bb-last{flex:1;min-width:0;font-size:13px;color:var(--gray);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;}
.bb-hot{width:330px;flex:none;background:var(--card);border:1px solid var(--line);}
.bb-hot ol{padding:4px 0;}
.bb-hot li{display:flex;gap:9px;padding:9px 16px;font-size:14px;line-height:1.5;
  border-bottom:1px dashed var(--line);}
.bb-hot li:last-child{border-bottom:0;}
.bb-hot li i{font-style:normal;flex:none;width:18px;height:18px;line-height:18px;text-align:center;
  background:#dcdfe3;color:#fff;font-size:11px;margin-top:3px;}
.bb-hot li.top i{background:var(--red);}
.bb-sec{margin-top:22px;}
.bb-sec-t{font-size:18px;color:var(--ink-strong);border-left:4px solid var(--red);padding-left:10px;
  line-height:1.2;}
.bb-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:12px;}
.bb-card{background:var(--card);border:1px solid var(--line);padding:10px;display:block;min-width:0;}
.bb-card .thumb{width:100%;height:104px;border-radius:0;}
.bb-card h3{font-size:14px;line-height:1.5;margin-top:8px;height:42px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.bb-card:hover h3{color:var(--red);}
.bb-m{display:flex;justify-content:space-between;font-size:11.5px;color:var(--gray-2);margin-top:7px;
  border-top:1px dashed var(--line);padding-top:6px;}
.bb-tag{color:var(--red);}
.bb-foot2{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px;background:var(--card);
  border:1px solid var(--line);padding:16px 18px;}
.bb-foot2 h3{font-size:15px;color:var(--ink-strong);border-bottom:2px solid var(--red);
  padding-bottom:7px;margin-bottom:4px;}
.bb-txt li{display:flex;gap:10px;height:33px;line-height:33px;font-size:14px;
  border-bottom:1px dashed var(--line);}
.bb-txt a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bb-txt em{font-style:normal;font-size:11.5px;color:var(--gray-2);flex:none;}

/* =========================================================
   2. city —— 城市民生
   ========================================================= */
.ct-search{background:var(--deep);padding:22px 24px;margin-top:18px;border-radius:var(--radius);}
.ct-search form{display:flex;max-width:760px;margin:0 auto;}
.ct-search input{flex:1;min-width:0;height:46px;border:0;padding:0 18px;font-size:15px;outline:none;
  font-family:inherit;border-radius:2px 0 0 2px;color:#333;}
.ct-search button{width:100px;height:46px;border:0;background:var(--red);color:#fff;font-size:16px;
  cursor:pointer;border-radius:0 2px 2px 0;font-family:inherit;letter-spacing:2px;}
.ct-words{text-align:center;margin-top:12px;font-size:12.5px;color:rgba(255,255,255,.6);}
.ct-words a{color:rgba(255,255,255,.86);margin-left:12px;}
.ct-words a:hover{color:#fff;}
.ct-chans{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;margin-top:14px;}
.ct-chans a{background:var(--card);border:1px solid var(--line);padding:15px 6px;text-align:center;
  display:block;min-width:0;}
.ct-chans i{display:block;width:42px;height:42px;line-height:42px;margin:0 auto 8px;font-style:normal;
  background:var(--red-a30);color:var(--red);font-weight:700;font-size:19px;border-radius:50%;}
.ct-chans span{font-size:13px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ct-chans a:hover{background:var(--red);}
.ct-chans a:hover i{background:rgba(255,255,255,.24);color:#fff;}
.ct-chans a:hover span{color:#fff;}
.ct-top{display:flex;gap:16px;margin-top:16px;align-items:stretch;}
.ct-lead{width:62%;min-width:0;display:block;background:var(--card);padding:12px;
  border-radius:var(--radius);}
.ct-lead .thumb{width:100%;height:322px;}
.ct-badge{display:inline-block;background:var(--red);color:#fff;font-size:12px;padding:2px 10px;
  margin-top:12px;letter-spacing:1px;}
.ct-lead h2{font-size:23px;line-height:1.45;margin-top:8px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ct-lead:hover h2{color:var(--red);}
.ct-lead p{font-size:13.5px;color:#6f7378;line-height:1.7;margin-top:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ct-quick{flex:1;min-width:0;background:var(--card);padding:8px 18px;border-radius:var(--radius);
  display:flex;flex-direction:column;justify-content:center;}
.ct-quick li{display:flex;gap:10px;padding:11px 0;border-bottom:1px dashed var(--line);
  font-size:15px;line-height:1.5;align-items:flex-start;}
.ct-quick li:last-child{border-bottom:0;}
.ct-time{flex:none;font-size:11.5px;color:var(--red);background:var(--bg);padding:1px 6px;
  line-height:18px;margin-top:2px;}
.ct-quick a{flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  overflow:hidden;}
.ct-tl{margin-top:18px;background:var(--card);padding:16px 20px;border-radius:var(--radius);}
.ct-tl-hd{display:flex;justify-content:space-between;align-items:baseline;
  border-bottom:2px solid var(--red);padding-bottom:8px;}
.ct-tl-hd h2{font-size:19px;color:var(--ink-strong);}
.ct-tl-hd a{font-size:12.5px;color:var(--gray);}
.ct-tl li{display:flex;gap:12px;padding:12px 0 12px 2px;border-bottom:1px dashed var(--line);}
.ct-tl li i{width:9px;height:9px;border-radius:50%;border:2px solid var(--red);background:#fff;
  margin-top:8px;flex:none;}
.ct-tl li a{font-size:16px;color:var(--ink-strong);}
.ct-tl li span{display:block;font-size:11.5px;color:var(--gray-2);margin-top:4px;}
.ct-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px;}
.ct-card{background:var(--card);padding:12px;display:block;border-radius:var(--radius);min-width:0;}
.ct-card .thumb{width:100%;height:150px;}
.ct-card h3{font-size:16px;margin-top:9px;line-height:1.5;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ct-card:hover h3{color:var(--red);}
.ct-card p{font-size:13px;color:#7a7e84;margin-top:6px;line-height:1.6;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* =========================================================
   3. ev —— 全幅大图
   ========================================================= */
.ev-hero{position:relative;margin-top:18px;border-radius:var(--radius);overflow:hidden;
  box-shadow:var(--shadow);background:#111;}
.ev-hero-a{display:block;position:relative;}
.ev-hero .thumb{width:100%;height:430px;border-radius:0;}
.ev-hero-t{position:absolute;left:0;right:0;bottom:0;padding:90px 28px 24px;color:#fff;
  background:linear-gradient(transparent,rgba(0,0,0,.8));}
.ev-tag{display:inline-block;background:var(--red);font-size:12px;padding:3px 11px;letter-spacing:1px;}
.ev-hero-t h2{font-size:30px;line-height:1.35;margin-top:10px;max-width:660px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ev-hero-t p{font-size:14px;opacity:.82;margin-top:8px;max-width:600px;line-height:1.7;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ev-spec{position:absolute;right:20px;top:20px;width:218px;background:rgba(255,255,255,.95);
  padding:14px 16px;border-radius:var(--radius-sm);box-shadow:0 4px 18px rgba(0,0,0,.16);}
.ev-spec-hd{font-size:13px;font-weight:700;color:var(--deep);border-bottom:1px solid var(--line);
  padding-bottom:8px;letter-spacing:1px;}
.ev-spec li{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;
  border-bottom:1px dashed var(--line);font-size:12.5px;color:var(--gray);}
.ev-spec li b{font-size:17px;color:var(--red);font-weight:800;}
.ev-spec li b i{font-style:normal;font-size:11px;font-weight:400;margin-left:2px;color:var(--gray);}
.ev-spec-ft{font-size:11px;color:var(--gray-2);padding-top:8px;}
.ev-rail-hd{display:flex;justify-content:space-between;align-items:baseline;margin-top:26px;}
.ev-rail-hd h2{font-size:20px;color:var(--ink-strong);border-left:4px solid var(--red);
  padding-left:11px;}
.ev-rail-hd span{font-size:12px;color:var(--gray-2);}
.ev-rail{display:flex;gap:12px;overflow-x:auto;padding:12px 2px 16px;}
.ev-rail a{flex:none;width:212px;background:var(--card);padding:10px;border-radius:var(--radius);
  min-width:0;}
.ev-rail .thumb{width:100%;height:118px;}
.ev-rail h4{font-size:14px;line-height:1.5;margin-top:8px;height:42px;color:var(--ink-strong);
  overflow:hidden;}
.ev-rail a:hover h4{color:var(--red);}
.ev-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px;}
.ev-card{background:var(--card);border-radius:var(--radius);overflow:hidden;display:block;
  box-shadow:var(--shadow);min-width:0;}
.ev-card .thumb{width:100%;height:196px;border-radius:0;}
.ev-card-b{padding:12px 14px 16px;}
.ev-cat{font-size:11.5px;color:var(--red);letter-spacing:1px;}
.ev-card h3{font-size:16.5px;line-height:1.5;margin-top:5px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ev-card:hover h3{color:var(--red);}
.ev-card p{font-size:13px;color:#7a7e84;line-height:1.65;margin-top:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ev-split{display:flex;gap:16px;margin-top:24px;align-items:flex-start;}
.ev-split section{flex:1;min-width:0;background:var(--card);padding:16px 18px;
  border-radius:var(--radius);}
.ev-side{width:330px;flex:none;background:var(--card);padding:16px 18px;border-radius:var(--radius);}
.ev-sec-t{font-size:18px;color:var(--ink-strong);border-bottom:2px solid var(--red);
  padding-bottom:8px;}
.ev-list li{display:flex;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);
  font-size:15.5px;align-items:baseline;}
.ev-list em{font-style:normal;font-size:11.5px;color:var(--gray-2);flex:none;}
.ev-list a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ev-rank li{display:flex;gap:8px;padding:8px 0;font-size:14.5px;line-height:1.5;
  border-bottom:1px dashed var(--line);}
.ev-rank i{width:18px;height:18px;line-height:18px;text-align:center;font-style:normal;
  font-size:11.5px;background:#dfe2e6;color:#fff;flex:none;margin-top:3px;border-radius:2px;}
.ev-rank li:nth-child(-n+3) i{background:var(--red);}

/* =========================================================
   4. timeline —— 快讯时间流
   ========================================================= */
.tl-wrap{display:flex;gap:16px;margin-top:18px;align-items:flex-start;}
.tl-feed{flex:1;min-width:0;background:var(--card);box-shadow:var(--shadow);
  border-radius:var(--radius);padding:16px 20px;}
.tl-feed-hd{display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid var(--line);padding-bottom:10px;}
.tl-feed-hd h2{font-size:19px;color:var(--ink-strong);display:flex;align-items:center;gap:9px;}
.tl-feed-hd h2 i{width:8px;height:8px;border-radius:50%;background:var(--red);
  animation:pulse 1.4s infinite;}
.tl-upd{font-size:12px;color:var(--gray-2);font-variant-numeric:tabular-nums;}
.tl-feed li{display:flex;gap:12px;padding:13px 0;border-bottom:1px dashed var(--line);}
.tl-feed li:last-child{border-bottom:0;}
.tl-feed time{flex:none;width:48px;font-size:13px;color:var(--red);font-weight:700;padding-top:2px;
  font-variant-numeric:tabular-nums;}
.tl-feed .dot{width:7px;height:7px;border-radius:50%;background:var(--red);margin-top:9px;
  flex:none;opacity:.45;}
.tl-feed li:first-child .dot{opacity:1;box-shadow:0 0 0 3px var(--red-a30);}
.tl-c{flex:1;min-width:0;}
.tl-c a{font-size:16px;color:var(--ink-strong);line-height:1.5;}
.tl-c a:hover{color:var(--red);}
.tl-c p{font-size:13px;color:#7d8187;line-height:1.65;margin-top:5px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tl-cat{display:inline-block;font-size:11.5px;color:var(--gray);background:var(--bg);
  padding:1px 8px;margin-top:6px;}
.tl-side{width:330px;flex:none;}
.tl-big{display:block;background:var(--card);padding:12px;border-radius:var(--radius);}
.tl-big .thumb{width:100%;height:186px;}
.tl-big h3{font-size:16.5px;line-height:1.5;margin-top:9px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tl-big:hover h3{color:var(--red);}
.tl-mini{display:flex;gap:10px;background:var(--card);padding:10px;margin-top:12px;
  border-radius:var(--radius);align-items:center;}
.tl-mini .thumb{width:96px;height:64px;flex:none;}
.tl-mini h4{font-size:14.5px;line-height:1.5;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tl-mini:hover h4{color:var(--red);}
.tl-note{margin-top:12px;background:var(--card);border-left:3px solid #e5a50a;padding:12px 14px;
  font-size:12.5px;color:var(--gray);line-height:1.8;}
.tl-note-t{font-weight:700;color:var(--ink-strong);margin-bottom:4px;font-size:13px;}
.tl-quote{display:grid;grid-template-columns:repeat(4,1fr);background:var(--deep);color:#fff;
  margin-top:16px;border-radius:var(--radius);overflow:hidden;}
.tl-q{padding:14px 18px;border-right:1px solid rgba(255,255,255,.09);}
.tl-q:last-child{border-right:0;}
.tl-q span{font-size:12.5px;color:rgba(255,255,255,.6);display:block;}
.tl-q b{font-size:20px;font-variant-numeric:tabular-nums;line-height:1.5;}
.tl-q em{font-style:normal;font-size:12.5px;display:inline-block;margin-left:8px;}
.tl-q.up em{color:#f2695e;}
.tl-q.down em{color:#4ec97a;}
.tl-rank{margin-top:16px;background:var(--card);padding:16px 18px;border-radius:var(--radius);}
.tl-rk-hd{font-size:18px;color:var(--ink-strong);border-bottom:2px solid var(--red);
  padding-bottom:8px;margin-bottom:2px;}
.tl-rank ol{columns:2;column-gap:34px;}
.tl-rank li{display:flex;gap:8px;padding:8px 0;font-size:14.5px;align-items:baseline;
  border-bottom:1px dashed var(--line);break-inside:avoid;}
.tl-rank i{font-style:normal;font-size:12px;font-weight:700;color:var(--red);flex:none;
  font-variant-numeric:tabular-nums;}
.tl-rank a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tl-rank em{font-style:normal;font-size:11.5px;color:var(--gray-2);flex:none;}

/* =========================================================
   5. broadsheet —— 报章
   ========================================================= */
.lz-bs{font-family:"Songti SC","Source Han Serif SC","Noto Serif SC",SimSun,serif;
  background:var(--card);padding:0 26px 24px;margin-top:18px;box-shadow:var(--shadow);
  border-radius:var(--radius);}
.bs-meta{display:flex;flex-wrap:wrap;gap:6px 26px;font-size:12px;color:var(--gray);
  border-bottom:1px solid #d9d2c4;padding:11px 0;letter-spacing:.5px;}
.bs-lead{display:flex;padding-top:18px;}
.bs-c1{width:36%;padding-right:22px;min-width:0;}
.bs-c1 h2{font-size:29px;line-height:1.34;color:#1a1a1a;letter-spacing:.5px;}
.bs-c1 h2 a{color:inherit;}
.bs-c1 h2 a:hover{color:var(--red);}
.bs-stand{font-size:15px;line-height:1.8;color:#4a4a4a;margin-top:12px;
  border-top:2px solid #1a1a1a;padding-top:10px;}
.bs-by{font-size:12px;color:var(--gray-2);margin-top:10px;letter-spacing:1px;}
.bs-drop{margin-top:12px;font-size:14.5px;line-height:1.95;color:#3d3d3d;text-align:justify;}
.bs-drop p:first-letter{font-size:44px;float:left;line-height:.9;padding:5px 9px 0 0;
  color:var(--red);font-weight:700;}
.bs-c2{width:34%;padding:0 22px;border-left:1px solid #e3ddd0;border-right:1px solid #e3ddd0;
  min-width:0;}
.bs-c2 .thumb{width:100%;height:198px;border-radius:0;}
.bs-c2 h4{font-size:15px;line-height:1.55;margin-top:9px;color:#1a1a1a;}
.bs-h3{font-size:12.5px;letter-spacing:3px;color:var(--red);border-top:2px solid var(--red);
  padding-top:6px;margin:16px 0 4px;font-weight:700;}
.bs-h3:first-child{margin-top:0;}
.bs-c3{flex:1;min-width:0;padding-left:22px;}
.bs-txt li{font-size:14px;line-height:1.5;padding:7px 0;border-bottom:1px dotted #dfd9cc;
  display:flex;gap:8px;}
.bs-txt li a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bs-txt li em{font-style:normal;font-size:11.5px;color:var(--gray-2);flex:none;}
.bs-tb{width:100%;font-size:13px;font-family:inherit;}
.bs-tb td{padding:6px 0;border-bottom:1px dotted #dfd9cc;}
.bs-tb td:nth-child(2){text-align:right;font-variant-numeric:tabular-nums;}
.bs-tb td:last-child{text-align:right;width:66px;font-variant-numeric:tabular-nums;}
.bs-tb .up{color:#c0392b;}
.bs-tb .dn{color:#1e7d43;}
.bs-rule{height:5px;border-top:1px solid #1a1a1a;border-bottom:1px solid #1a1a1a;
  margin:22px 0 12px;}
.bs-brief{display:flex;}
.bs-bcol{flex:1;min-width:0;padding:0 20px;border-right:1px solid #e3ddd0;}
.bs-bcol:first-child{padding-left:0;}
.bs-bcol:last-child{border-right:0;padding-right:0;}

/* =========================================================
   6. county —— 县域信息
   ========================================================= */
.cty-banner{display:flex;justify-content:space-between;align-items:flex-end;margin-top:18px;
  padding:26px 28px;border-radius:var(--radius);color:#fff;
  background:linear-gradient(112deg,var(--deep) 10%,var(--red) 135%);}
.cty-banner-t h2{font-size:30px;letter-spacing:4px;line-height:1.2;}
.cty-banner-t p{font-size:13px;opacity:.8;margin-top:7px;letter-spacing:1.5px;}
.cty-banner-d{text-align:right;line-height:1;}
.cty-banner-d b{font-size:46px;font-weight:800;display:block;letter-spacing:-1px;}
.cty-banner-d span{font-size:13px;opacity:.72;letter-spacing:2px;}
.cty-main{display:flex;gap:16px;margin-top:16px;align-items:flex-start;}
.cty-cats{width:196px;flex:none;background:var(--card);border-top:3px solid var(--red);
  padding:0 0 8px;}
.cty-cats-hd{font-size:15px;font-weight:700;padding:12px 16px 10px;color:var(--ink-strong);
  border-bottom:1px dashed var(--line);letter-spacing:1px;}
.cty-cats li{display:flex;gap:9px;align-items:baseline;padding:9px 16px;}
.cty-cats li i{font-style:normal;font-size:11.5px;color:var(--red);font-weight:700;flex:none;}
.cty-cats li a{font-size:14.5px;}
.cty-mid{flex:1;min-width:0;}
.cty-lead{display:block;background:var(--card);padding:14px;border-radius:var(--radius);}
.cty-lead .thumb{width:100%;height:330px;}
.cty-lead h2{font-size:23px;line-height:1.45;margin-top:10px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cty-lead:hover h2{color:var(--red);}
.cty-lead p{font-size:13.5px;color:#767a80;line-height:1.7;margin-top:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cty-sub{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;}
.cty-sub a{background:var(--card);padding:12px;display:block;border-radius:var(--radius);
  min-width:0;}
.cty-sub .thumb{width:100%;height:140px;}
.cty-sub h3{font-size:15px;line-height:1.5;margin-top:8px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cty-sub a:hover h3{color:var(--red);}
.cty-serv{width:250px;flex:none;background:var(--card);border-top:3px solid var(--red);
  padding:0 0 12px;}
.cty-serv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  margin:12px 12px 0;}
.cty-serv-grid a{background:var(--card);text-align:center;padding:12px 0;font-size:12.5px;
  color:var(--gray);}
.cty-serv-grid i{display:block;font-style:normal;font-size:17px;color:var(--red);
  font-weight:700;margin-bottom:4px;line-height:1.2;}
.cty-serv-grid a:hover{background:var(--bg);}
.cty-hot{padding:14px 16px 0;}
.cty-hot-t{font-size:13px;font-weight:700;border-bottom:1px dashed var(--line);
  padding-bottom:7px;margin-bottom:2px;color:var(--ink-strong);}
.cty-hot li{display:flex;gap:8px;font-size:13.5px;line-height:1.55;padding:7px 0;}
.cty-hot i{font-style:normal;color:var(--red);font-weight:700;flex:none;}
.cty-town-hd{display:flex;align-items:baseline;gap:12px;margin-top:24px;
  border-bottom:2px solid var(--red);padding-bottom:8px;}
.cty-town-hd h2{font-size:20px;color:var(--ink-strong);}
.cty-town-hd span{font-size:12px;color:var(--gray-2);letter-spacing:1px;}
.cty-town{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px;}
.cty-town a{background:var(--card);display:block;padding:10px;border-radius:var(--radius);
  min-width:0;}
.cty-town .thumb{width:100%;height:130px;}
.cty-town-b{padding-top:8px;}
.cty-town-b span{font-size:11.5px;color:var(--red);}
.cty-town-b h3{font-size:14.5px;line-height:1.5;margin-top:3px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cty-town a:hover h3{color:var(--red);}

/* =========================================================
   7. portal —— 经典三栏门户
   ========================================================= */
.pt-ticker{display:flex;align-items:center;margin-top:18px;background:var(--card);
  border:1px solid var(--line);height:44px;overflow:hidden;border-radius:var(--radius);}
.pt-tk-lb{background:var(--red);color:#fff;font-size:14px;padding:0 18px;height:44px;
  line-height:44px;flex:none;font-weight:700;letter-spacing:2px;}
.pt-tk-mask{flex:1;overflow:hidden;height:44px;}
.pt-tk-run{display:flex;gap:44px;white-space:nowrap;animation:tkr 40s linear infinite;
  padding-left:20px;line-height:44px;}
.pt-tk-run li{font-size:14.5px;}
.pt-3{display:flex;gap:16px;margin-top:14px;align-items:flex-start;}
.pt-left{width:248px;flex:none;}
.pt-center{flex:1;min-width:0;background:var(--card);padding:14px;border-radius:var(--radius);}
.pt-right{width:290px;flex:none;}
.pt-blk{background:var(--card);padding:12px 14px;margin-bottom:14px;border-radius:var(--radius);}
.pt-blk-t{font-size:15px;color:var(--ink-strong);border-bottom:2px solid var(--red);
  padding-bottom:7px;margin-bottom:4px;letter-spacing:1px;}
.pt-blk-t a:hover{color:var(--red);}
.pt-txt li{font-size:14px;line-height:1.55;padding:6px 0;border-bottom:1px dashed var(--line);
  display:flex;gap:8px;}
.pt-txt li:last-child{border-bottom:0;}
.pt-txt li a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pt-txt li em{font-style:normal;font-size:11.5px;color:var(--gray-2);flex:none;}
.pt-txt2 li{font-size:15.5px;padding:8px 0;}
.pt-lead{display:block;}
.pt-lead .thumb{width:100%;height:300px;}
.pt-lead h2{font-size:24px;line-height:1.45;margin-top:10px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.pt-lead:hover h2{color:var(--red);}
.pt-abs{font-size:14px;color:#6f7378;line-height:1.75;margin-top:8px;padding-bottom:10px;
  border-bottom:1px solid var(--line);display:-webkit-box;-webkit-line-clamp:2;
  -webkit-box-orient:vertical;overflow:hidden;}
.pt-rank li{display:flex;gap:8px;font-size:13.5px;line-height:1.5;padding:7px 0;}
.pt-rank i{width:17px;height:17px;line-height:17px;text-align:center;background:#dcdfe3;
  color:#fff;font-style:normal;font-size:11px;flex:none;margin-top:2px;}
.pt-rank li:nth-child(-n+3) i{background:var(--red);}
.pt-rank a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pt-pics li{display:flex;gap:9px;padding:8px 0;border-bottom:1px dashed var(--line);}
.pt-pics li:last-child{border-bottom:0;padding-bottom:0;}
.pt-pics .thumb{width:88px;height:60px;flex:none;}
.pt-pics h4{font-size:13.5px;line-height:1.5;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.pt-4blk{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.pt-4blk .pt-blk{margin-bottom:0;}

/* =========================================================
   8. ticker —— 黑金快报
   ========================================================= */
.tk-hero{display:flex;margin-top:18px;background:#0d1015;color:#fff;
  border-radius:var(--radius);overflow:hidden;}
.tk-brand{width:336px;flex:none;padding:26px 24px;display:flex;flex-direction:column;
  background:linear-gradient(155deg,#181d25,#0a0d11);}
.tk-kicker{font-size:10px;letter-spacing:3.5px;color:var(--red);font-weight:700;}
.tk-brand h2{font-size:40px;letter-spacing:5px;margin-top:10px;line-height:1.1;font-weight:800;}
.tk-brand p{font-size:12.5px;color:rgba(255,255,255,.48);margin-top:10px;letter-spacing:1.5px;}
.tk-nums{display:flex;gap:28px;margin-top:auto;padding-top:22px;}
.tk-nums b{display:block;font-size:27px;color:var(--red);line-height:1.15;font-weight:800;}
.tk-nums span{font-size:11px;color:rgba(255,255,255,.42);letter-spacing:1px;}
.tk-quad{flex:1;min-width:0;display:grid;grid-template-columns:1fr 1fr;
  grid-template-rows:1fr 1fr;gap:2px;background:#000;}
.tk-q{position:relative;display:block;overflow:hidden;min-height:150px;}
.tk-q .thumb{width:100%;height:100%;border-radius:0;}
.tk-q span{position:absolute;inset:auto 0 0 0;padding:30px 14px 12px;font-size:14px;
  line-height:1.45;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.82));
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tk-q:hover span{color:#ffd9a0;}
.tk-strip{display:flex;align-items:center;background:var(--red);color:#fff;height:42px;
  overflow:hidden;margin-top:2px;border-radius:0 0 var(--radius) var(--radius);}
.tk-strip-lb{flex:none;padding:0 16px;font-size:12.5px;font-weight:700;letter-spacing:2px;
  height:42px;line-height:42px;border-right:1px solid rgba(255,255,255,.28);}
.tk-strip-mask{flex:1;overflow:hidden;}
.tk-strip-run{display:flex;gap:36px;line-height:42px;white-space:nowrap;
  animation:tkr 44s linear infinite;padding-left:18px;}
.tk-strip-run li{font-size:13.5px;}
.tk-strip-run em{font-style:normal;opacity:.68;margin-right:8px;
  font-variant-numeric:tabular-nums;}
.tk-strip-run a{color:#fff;}
.tk-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;}
.tk-two section{background:var(--card);padding:14px 18px;border-radius:var(--radius);}
.tk-h3{font-size:17px;color:var(--ink-strong);border-left:4px solid var(--red);
  padding-left:10px;margin-bottom:4px;}
.tk-list li{display:flex;gap:10px;align-items:baseline;padding:9px 0;
  border-bottom:1px dashed var(--line);font-size:15px;}
.tk-list li:last-child{border-bottom:0;}
.tk-list i{font-style:normal;font-size:12px;font-weight:700;color:var(--red);flex:none;
  font-variant-numeric:tabular-nums;}
.tk-list a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.tk-list span{font-size:11.5px;color:var(--gray-2);flex:none;}
.tk-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px;}
.tk-card{background:var(--card);padding:10px;display:block;border-radius:var(--radius);
  min-width:0;}
.tk-card .thumb{width:100%;height:120px;}
.tk-card h3{font-size:14.5px;line-height:1.5;margin-top:8px;color:var(--ink-strong);
  height:44px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;
  -webkit-box-orient:vertical;}
.tk-card:hover h3{color:var(--red);}

/* =========================================================
   9. gallery —— 画册
   ========================================================= */
.gl-wall{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:206px 206px;
  gap:10px;margin-top:18px;}
.gl-cell{position:relative;overflow:hidden;display:block;background:#dfd8ca;}
.gl-c1{grid-column:span 2;grid-row:span 2;}
.gl-cell .thumb{width:100%;height:100%;border-radius:0;}
.gl-over{position:absolute;inset:auto 0 0 0;padding:36px 14px 12px;color:#fff;
  background:linear-gradient(transparent,rgba(0,0,0,.82));}
.gl-over span{font-size:11px;letter-spacing:2px;opacity:.82;}
.gl-over h3{font-size:15px;line-height:1.45;margin-top:3px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.gl-c1 .gl-over h3{font-size:21px;}
.gl-cell:hover .thumb img{transform:scale(1.03);transition:transform .4s;}
.gl-band{display:flex;justify-content:space-between;align-items:center;gap:20px;
  margin-top:22px;border-top:3px double #cbbfa8;border-bottom:1px solid #e2dacb;
  padding:12px 0;}
.gl-band h2{font-size:26px;letter-spacing:7px;color:var(--red);line-height:1.2;}
.gl-band p{font-size:12.5px;color:var(--gray-2);letter-spacing:2px;margin-top:2px;}
.gl-band-r{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;justify-content:flex-end;}
.gl-body{display:flex;gap:26px;margin-top:16px;align-items:flex-start;}
.gl-texts{flex:1;display:flex;gap:26px;min-width:0;}
.gl-texts section{flex:1;min-width:0;}
.gl-texts h3{font-size:15px;letter-spacing:2px;border-bottom:2px solid var(--ink-strong);
  padding-bottom:6px;color:var(--ink-strong);}
.gl-texts li{display:flex;gap:8px;padding:8px 0;border-bottom:1px dotted #ded6c6;
  font-size:14.5px;line-height:1.55;}
.gl-texts li a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gl-texts li em{font-style:normal;font-size:11.5px;color:var(--gray-2);flex:none;}
.gl-quote{width:286px;flex:none;background:#f8f4ec;border:1px solid #e6dfd0;padding:14px 16px;}
.gl-quote h3{font-size:14px;letter-spacing:2px;color:var(--red);margin-bottom:6px;}
.gl-quote li{font-size:13.5px;line-height:1.55;padding:7px 0;border-bottom:1px dotted #ded6c6;}
.gl-quote li:last-child{border-bottom:0;}
.gl-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px;}
.gl-tiles a{display:block;min-width:0;}
.gl-tiles .thumb{width:100%;height:206px;border:1px solid #e2dacb;padding:5px;background:#fff;}
.gl-tiles h4{font-size:15.5px;line-height:1.5;margin-top:9px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.gl-tiles a:hover h4{color:var(--red);}
.gl-tiles p{font-size:12.5px;color:#7d8187;line-height:1.7;margin-top:4px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* =========================================================
   10. lane —— 街巷信息流
   ========================================================= */
.ln-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  margin-top:18px;background:var(--card);padding:18px 20px;border-radius:var(--radius);}
.ln-head h2{font-size:26px;letter-spacing:4px;color:var(--ink-strong);line-height:1.2;}
.ln-head p{font-size:12.5px;color:var(--gray);margin-top:5px;}
.ln-tags{display:flex;flex-wrap:wrap;gap:8px;max-width:56%;justify-content:flex-end;}
.ln-tags a{font-size:12.5px;background:var(--bg);color:var(--gray);padding:4px 11px;
  border-radius:20px;white-space:nowrap;}
.ln-tags a:hover{background:var(--red);color:#fff;}
.ln-top{display:flex;gap:16px;margin-top:16px;align-items:stretch;}
.ln-pick{flex:1;min-width:0;background:var(--card);border-radius:var(--radius);
  overflow:hidden;display:block;}
.ln-pick .thumb{width:100%;height:330px;border-radius:0;}
.ln-pick-b{padding:14px 16px 18px;}
.ln-pick-b span{font-size:11.5px;color:var(--red);letter-spacing:2px;}
.ln-pick-b h2{font-size:23px;line-height:1.45;margin-top:6px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ln-pick:hover h2{color:var(--red);}
.ln-pick-b p{font-size:13.5px;color:#767a80;line-height:1.7;margin-top:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ln-pick2{width:320px;flex:none;display:flex;flex-direction:column;gap:16px;}
.ln-pick2 a{background:var(--card);border-radius:var(--radius);overflow:hidden;display:block;
  flex:1;min-width:0;}
.ln-pick2 .thumb{width:100%;height:150px;border-radius:0;flex:none;}
.ln-pick2 h3{font-size:15px;line-height:1.5;padding:10px 12px 14px;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ln-pick2 a:hover h3{color:var(--red);}
.ln-flow{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;}
.ln-item{background:var(--card);border-radius:var(--radius);display:flex;gap:12px;
  padding:14px;border-left:4px solid var(--red);align-items:flex-start;min-width:0;}
.ln-no{font-size:15px;font-weight:800;color:var(--red);opacity:.5;flex:none;width:22px;
  font-variant-numeric:tabular-nums;line-height:1.5;}
.ln-body{flex:1;min-width:0;}
.ln-body h3{font-size:16px;line-height:1.5;color:var(--ink-strong);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ln-body h3 a:hover{color:var(--red);}
.ln-body p{font-size:13px;color:#7d8187;line-height:1.65;margin-top:5px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ln-meta{display:flex;gap:10px;font-size:11.5px;color:var(--gray-2);margin-top:8px;}
.ln-cat{color:var(--red);background:var(--bg);padding:0 7px;border-radius:3px;}
.ln-thumb{flex:none;width:112px;}
.ln-thumb .thumb{width:112px;height:78px;}
.ln-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;}
.ln-bottom section{background:var(--card);padding:14px 16px;border-radius:var(--radius);}
.ln-bottom h3{font-size:15.5px;border-bottom:2px solid var(--red);padding-bottom:7px;
  color:var(--ink-strong);}
.ln-bottom h3 a:hover{color:var(--red);}
.ln-bottom li{font-size:14px;line-height:1.55;padding:7px 0;border-bottom:1px dashed var(--line);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ln-bottom li:last-child{border-bottom:0;}

/* =========================================================
   响应式
   ========================================================= */
@media (max-width:1100px){
  .bb-grid{grid-template-columns:repeat(3,1fr);}
  .bb-foot2{grid-template-columns:1fr;}
  .ct-lead{width:100%;}
  .ct-top{flex-direction:column;}
  .ct-lead .thumb{height:auto;aspect-ratio:16/9;}
  .ct-chans{grid-template-columns:repeat(4,1fr);}
  .ct-cards{grid-template-columns:1fr 1fr;}
  .ev-hero .thumb{height:340px;}
  .ev-cards{grid-template-columns:1fr 1fr;}
  .ev-split{flex-direction:column;}
  .ev-side{width:100%;}
  .tl-wrap{flex-direction:column;}
  .tl-side{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .tl-big{grid-column:1/-1;}
  .tl-mini{margin-top:0;}
  .tl-note{grid-column:1/-1;margin-top:0;}
  .tl-quote{grid-template-columns:1fr 1fr;}
  .tl-q:nth-child(2){border-right:0;}
  .tl-q:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.09);}
  .bs-lead{flex-direction:column;}
  .bs-c1,.bs-c2,.bs-c3{width:100%;padding:0;border:0;}
  .bs-c1{margin-bottom:18px;}
  .bs-c2{border-top:1px solid #e3ddd0;border-bottom:1px solid #e3ddd0;padding:16px 0;}
  .bs-c3{padding-top:16px;}
  .cty-main{flex-wrap:wrap;}
  .cty-cats{width:100%;display:flex;flex-wrap:wrap;align-items:center;padding:0 12px 8px;}
  .cty-cats-hd{width:100%;border-bottom:0;padding:10px 4px 6px;}
  .cty-cats li{padding:6px 10px;}
  .cty-mid{width:100%;flex:none;}
  .cty-serv{width:100%;flex:none;}
  .cty-town{grid-template-columns:1fr 1fr;}
  .pt-3{flex-wrap:wrap;}
  .pt-left{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .pt-left .pt-blk{margin-bottom:0;}
  .pt-center{width:100%;flex:none;order:-1;}
  .pt-right{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .pt-right .pt-blk{margin-bottom:0;}
  .tk-hero{flex-direction:column;}
  .tk-brand{width:100%;}
  .tk-brand h2{font-size:34px;}
  .tk-quad{grid-template-rows:170px 170px;}
  .tk-cards{grid-template-columns:1fr 1fr;}
  .gl-wall{grid-template-rows:170px 170px;}
  .gl-body{flex-direction:column;}
  .gl-quote{width:100%;}
  .ln-top{flex-direction:column;}
  .ln-pick2{width:100%;flex-direction:row;}
  .ln-pick2 a{flex:1;}
  .ln-pick .thumb{height:280px;}
  .ln-bottom{grid-template-columns:1fr 1fr;}
}
@media (max-width:760px){
  .bb-stat{flex-wrap:wrap;gap:8px 18px;font-size:12px;padding:10px 12px;}
  .bb-stat b{font-size:16px;}
  .bb-live{margin-left:0;}
  .bb-wrap{flex-direction:column;}
  .bb-hot{width:100%;}
  .bb-boards li{flex-wrap:wrap;height:auto;padding:10px 12px;gap:8px;}
  .bb-name{width:auto;flex:1;}
  .bb-boards li em{width:auto;}
  .bb-last{width:100%;flex:none;padding-left:34px;}
  .bb-grid{grid-template-columns:1fr 1fr;}
  .bb-card .thumb{height:110px;}
  .ct-search{padding:14px;}
  .ct-search input,.ct-search button{height:42px;}
  .ct-search button{width:74px;font-size:14px;}
  .ct-chans{grid-template-columns:repeat(4,1fr);gap:8px;}
  .ct-chans i{width:34px;height:34px;line-height:34px;font-size:16px;}
  .ct-chans span{font-size:12px;}
  .ct-cards{grid-template-columns:1fr;}
  .ct-card .thumb{height:auto;aspect-ratio:16/9;}
  .ev-hero .thumb{height:250px;}
  .ev-hero-t{padding:60px 16px 18px;}
  .ev-hero-t h2{font-size:21px;}
  .ev-spec{position:static;width:100%;border-radius:0;box-shadow:none;
    display:flex;flex-wrap:wrap;gap:0 20px;padding:12px 16px;}
  .ev-spec-hd{width:100%;border-bottom:1px solid var(--line);}
  .ev-spec li{flex:1;min-width:96px;border-bottom:0;flex-direction:column;align-items:flex-start;
    gap:2px;}
  .ev-spec-ft{width:100%;padding-top:4px;}
  .ev-cards{grid-template-columns:1fr;}
  .ev-card .thumb{height:auto;aspect-ratio:16/9;}
  .ev-rail a{width:168px;}
  .ev-rail .thumb{height:96px;}
  .tl-side{grid-template-columns:1fr;}
  .tl-quote{grid-template-columns:1fr 1fr;}
  .tl-q{padding:12px 14px;}
  .tl-q b{font-size:17px;}
  .tl-rank ol{columns:1;}
  .tl-feed{padding:12px 14px;}
  .tl-feed time{width:42px;font-size:12px;}
  .lz-bs{padding:0 16px 18px;}
  .bs-c1 h2{font-size:23px;}
  .bs-c2 .thumb{height:auto;aspect-ratio:16/9;}
  .bs-brief{flex-direction:column;}
  .bs-bcol{padding:0;border-right:0;}
  .bs-bcol+.bs-bcol{margin-top:14px;border-top:1px solid #e3ddd0;padding-top:10px;}
  .cty-banner{padding:18px;align-items:center;}
  .cty-banner-t h2{font-size:22px;letter-spacing:2px;}
  .cty-banner-t p{font-size:11.5px;}
  .cty-banner-d b{font-size:34px;}
  .cty-lead .thumb{height:auto;aspect-ratio:16/9;}
  .cty-sub{grid-template-columns:1fr;}
  .cty-sub .thumb{height:auto;aspect-ratio:16/9;}
  .cty-town{grid-template-columns:1fr 1fr;}
  .cty-town .thumb{height:auto;aspect-ratio:16/9;}
  .pt-left{grid-template-columns:1fr;}
  .pt-right{grid-template-columns:1fr;}
  .pt-lead .thumb{height:auto;aspect-ratio:16/9;}
  .pt-4blk{grid-template-columns:1fr;}
  .pt-tk-lb{padding:0 12px;font-size:12.5px;}
  .tk-brand{padding:20px;}
  .tk-brand h2{font-size:28px;letter-spacing:3px;}
  .tk-quad{grid-template-rows:140px 140px;}
  .tk-q span{font-size:12.5px;padding:22px 10px 8px;}
  .tk-two{grid-template-columns:1fr;}
  .tk-cards{grid-template-columns:1fr 1fr;}
  .tk-card .thumb{height:100px;}
  .gl-wall{grid-template-columns:1fr 1fr;grid-template-rows:150px 130px 130px;}
  .gl-c1{grid-column:span 2;grid-row:span 1;}
  .gl-cell:nth-child(4),.gl-cell:nth-child(5){}
  .gl-over h3{font-size:13.5px;}
  .gl-c1 .gl-over h3{font-size:18px;}
  .gl-band{flex-direction:column;align-items:flex-start;gap:8px;}
  .gl-band h2{font-size:22px;letter-spacing:4px;}
  .gl-band-r{justify-content:flex-start;}
  .gl-texts{flex-direction:column;gap:20px;}
  .gl-tiles{grid-template-columns:1fr;}
  .gl-tiles .thumb{height:auto;aspect-ratio:16/9;}
  .ln-head{flex-direction:column;align-items:flex-start;}
  .ln-tags{max-width:100%;justify-content:flex-start;}
  .ln-pick .thumb{height:auto;aspect-ratio:16/9;}
  .ln-pick2{flex-direction:column;}
  .ln-pick2 .thumb{height:auto;aspect-ratio:16/9;}
  .ln-flow{grid-template-columns:1fr;}
  .ln-thumb{width:92px;}
  .ln-thumb .thumb{width:92px;height:66px;}
  .ln-bottom{grid-template-columns:1fr;}
}

/* =========================================================
   第三批（20 站）专用版式样式：10 套全新首页结构
   依赖 base.css 的 :root 变量（--red/--deep/--bg/--card/--line/--radius/--shadow）
   ========================================================= */

/* ============ 1. 榜单 rk ============ */
.rk { padding: 22px 0 46px; }
.rk-hero { display: grid; grid-template-columns: 1fr 300px; gap: 18px; }
.rk-lead {
  position: relative; display: block; overflow: hidden; border-radius: var(--radius);
  background: var(--card); box-shadow: var(--shadow); min-height: 420px;
}
.rk-lead-img { position: absolute; inset: 0; }
.rk-lead-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.rk-lead:hover .rk-lead-img img { transform: scale(1.035); }
.rk-lead-img::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,.78) 100%);
}
.rk-lead-body { position: absolute; left: 0; right: 0; bottom: 0; padding: 26px 28px; color: #fff; z-index: 2; }
.rk-lead-body em {
  display: inline-block; font-style: normal; font-size: 12px; letter-spacing: 1px;
  background: var(--red); color: #fff; padding: 2px 10px; border-radius: 2px;
}
.rk-lead-body h2 { font-size: 26px; line-height: 1.4; margin: 12px 0 8px; font-weight: 700; }
.rk-lead-body p { font-size: 13.5px; line-height: 1.7; color: rgba(255,255,255,.78); }
.rk-lead-body i { display: block; margin-top: 12px; font-style: normal; font-size: 12px; color: rgba(255,255,255,.55); }
.rk-side { display: grid; gap: 18px; grid-auto-rows: 1fr; }
.rk-scard {
  display: block; background: var(--card); border-radius: var(--radius); overflow: hidden;
  box-shadow: var(--shadow); padding-bottom: 12px;
}
.rk-simg { height: 126px; overflow: hidden; }
.rk-simg img { width: 100%; height: 100%; object-fit: cover; }
.rk-scard h3 { font-size: 14.5px; line-height: 1.5; padding: 10px 13px 6px; font-weight: 600; }
.rk-scard span { display: block; padding: 0 13px; font-size: 11.5px; color: var(--gray); }
.rk-mid { display: grid; grid-template-columns: 1fr 318px; gap: 18px; margin-top: 18px; }
.rk-rank, .rk-nav { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); padding: 4px 18px 14px; }
.rk-hd { display: flex; align-items: baseline; gap: 10px; border-bottom: 2px solid var(--deep); padding: 12px 0 9px; margin-bottom: 4px; }
.rk-hd h2 { font-size: 16px; font-weight: 700; }
.rk-hd span { font-size: 10.5px; color: var(--gray); letter-spacing: 1.6px; }
.rk-rank ol li { display: flex; align-items: center; gap: 12px; padding: 11px 0; border-bottom: 1px dashed var(--line); }
.rk-rank ol li:last-child { border-bottom: 0; }
.rk-rank b { font: 700 17px/1 Georgia, serif; color: #c8ccd2; width: 26px; font-variant-numeric: tabular-nums; }
.rk-rank li.hot b { color: var(--red); font-size: 21px; }
.rk-rank a { flex: 1; font-size: 14px; line-height: 1.5; }
.rk-rank li.hot a { font-weight: 600; }
.rk-rank li > span { font-size: 11.5px; color: var(--gray); white-space: nowrap; }
.rk-nav-list a {
  display: flex; justify-content: space-between; align-items: center;
  padding: 10px 12px; margin-bottom: 7px; border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--bg) 70%, #fff); font-size: 13.5px;
}
.rk-nav-list a:hover { background: var(--red); color: #fff; }
.rk-nav-list i { font-style: normal; font-size: 11.5px; color: var(--gray); }
.rk-nav-list a:hover i { color: rgba(255,255,255,.8); }
.rk-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 18px; }
.rk-col { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); padding: 2px 16px 12px; }
.rk-col h3 { display: flex; justify-content: space-between; align-items: center; font-size: 14.5px; padding: 13px 0 9px; border-bottom: 1px solid var(--line); }
.rk-col h3 i { font-style: normal; font-size: 11px; color: var(--gray); font-weight: 400; }
.rk-row { display: flex; gap: 10px; justify-content: space-between; padding: 9px 0; border-bottom: 1px dotted var(--line); font-size: 13.5px; line-height: 1.55; }
.rk-row:last-child { border-bottom: 0; }
.rk-row em { font-style: normal; font-size: 11.5px; color: var(--gray); white-space: nowrap; }

/* ============ 2. 期刊 jr ============ */
.jr { padding: 26px 0 50px; }
.jr-mast {
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
  border-top: 3px double var(--ink-strong); border-bottom: 1px solid var(--ink-strong);
  padding: 14px 4px;
}
.jr-mast-l span, .jr-mast-r span { font-size: 11.5px; letter-spacing: 1.4px; color: var(--ink-strong); }
.jr-mast-l em, .jr-mast-r em { display: block; font-style: normal; font-size: 10.5px; color: var(--gray); letter-spacing: 1px; margin-top: 3px; }
.jr-mast-r { text-align: right; }
.jr-mast-c { text-align: center; padding: 0 30px; }
.jr-mast-c h1 { font: 700 33px/1.2 "Songti SC", "Noto Serif SC", SimSun, serif; letter-spacing: 9px; }
.jr-mast-c p { font-size: 9.5px; letter-spacing: 3.6px; color: var(--gray); margin-top: 4px; }
.jr-abs { display: grid; grid-template-columns: 1fr 316px; gap: 34px; padding: 26px 0; border-bottom: 1px solid var(--line); }
.jr-tag { font-size: 11px; letter-spacing: 2px; color: var(--red); border-bottom: 1px solid var(--red); padding-bottom: 3px; }
.jr-abs-main h2 { font: 700 27px/1.45 "Songti SC", "Noto Serif SC", SimSun, serif; margin: 16px 0 10px; }
.jr-abs-meta { display: flex; gap: 16px; font-size: 11.5px; color: var(--gray); padding-bottom: 14px; border-bottom: 1px dotted var(--line); }
.jr-abs-tx { font-size: 14.5px; line-height: 2; color: var(--ink); margin: 14px 0 12px; text-align: justify; }
.jr-more { font-size: 12.5px; color: var(--red); }
.jr-toc-hd { font-size: 12px; letter-spacing: 3px; padding-bottom: 10px; border-bottom: 2px solid var(--ink-strong); }
.jr-toc ol li { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px dotted var(--line); font-size: 13.5px; line-height: 1.5; }
.jr-toc ol li i { font-style: normal; font: 700 11.5px/1.8 Georgia, serif; color: var(--red); }
.jr-sec-hd { display: flex; align-items: baseline; gap: 12px; margin: 30px 0 6px; }
.jr-sec-hd span { font: 700 18px/1 "Songti SC", "Noto Serif SC", SimSun, serif; letter-spacing: 5px; }
.jr-sec-hd em { font-style: normal; font-size: 10.5px; letter-spacing: 2.4px; color: var(--gray); }
.jr-body { columns: 2; column-gap: 34px; padding: 14px 0 22px; border-bottom: 1px solid var(--line); }
.jr-item { break-inside: avoid; display: block; padding: 13px 0; border-bottom: 1px dotted var(--line); }
.jr-item h3 { font: 600 15px/1.55 "Songti SC", "Noto Serif SC", SimSun, serif; }
.jr-item p { font-size: 12.5px; line-height: 1.75; color: #5c6168; margin: 5px 0 6px; }
.jr-item span { font-size: 11px; color: var(--gray); }
.jr-cats { display: flex; flex-wrap: wrap; gap: 8px; padding: 20px 0 14px; }
.jr-cats a { font-size: 12px; padding: 5px 12px; border: 1px solid var(--line); border-radius: 2px; color: var(--ink); }
.jr-cats a:hover { border-color: var(--red); color: var(--red); }
.jr-cats i { font-style: normal; font-size: 10.5px; color: var(--gray); margin-left: 6px; }
.jr-note { font-size: 11.5px; color: var(--gray); line-height: 1.8; border-top: 1px dashed var(--line); padding-top: 12px; }

/* ============ 3. 电讯 wr ============ */
.wr { padding: 20px 0 46px; }
.wr-bar { display: flex; align-items: center; gap: 14px; background: var(--deep); color: #fff; padding: 11px 18px; border-radius: var(--radius); }
.wr-live { font: 700 12.5px/1 sans-serif; letter-spacing: 2px; display: flex; align-items: center; }
.wr-live i { width: 8px; height: 8px; border-radius: 50%; background: #ff3b30; margin-right: 8px; box-shadow: 0 0 0 0 rgba(255,59,48,.7); animation: wrPulse 1.8s infinite; }
@keyframes wrPulse { 70% { box-shadow: 0 0 0 9px rgba(255,59,48,0); } 100% { box-shadow: 0 0 0 0 rgba(255,59,48,0); } }
.wr-bar em { font-style: normal; font-size: 12.5px; color: rgba(255,255,255,.62); }
.wr-clock { margin-left: auto; font-size: 12px; letter-spacing: 1px; color: rgba(255,255,255,.8); font-variant-numeric: tabular-nums; }
.wr-wrap { display: grid; grid-template-columns: 1fr 304px; gap: 26px; margin-top: 20px; }
.wr-item { display: grid; grid-template-columns: 74px 1px 1fr; gap: 16px; padding: 13px 0 15px; }
.wr-time { font-size: 15px; font-weight: 700; color: var(--ink-strong); font-variant-numeric: tabular-nums; letter-spacing: .5px; }
.wr-time i { display: block; font-style: normal; font-size: 10.5px; color: var(--gray); font-weight: 400; letter-spacing: 0; }
.wr-line { background: var(--line); position: relative; }
.wr-line::before {
  content: ""; position: absolute; top: 6px; left: -3px; width: 7px; height: 7px;
  border-radius: 50%; background: var(--card); border: 2px solid var(--red);
}
.wr-item:hover .wr-line::before { background: var(--red); }
.wr-tx strong { display: block; font-size: 15.5px; line-height: 1.55; font-weight: 600; }
.wr-tx em { display: block; font-style: normal; font-size: 12.5px; line-height: 1.7; color: #6a6f77; margin: 4px 0 5px; }
.wr-tx b { font-size: 11px; font-weight: 400; color: var(--red); }
.wr-box { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); padding: 2px 16px 14px; margin-bottom: 18px; }
.wr-box h3 { font-size: 14px; padding: 13px 0 9px; border-bottom: 2px solid var(--deep); margin-bottom: 4px; }
.wr-cats li a { display: flex; justify-content: space-between; padding: 8px 0; font-size: 13px; border-bottom: 1px dotted var(--line); }
.wr-cats i { font-style: normal; font-size: 11px; color: var(--gray); }
.wr-pics { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding-top: 10px; }
.wr-pic { height: 82px; overflow: hidden; border-radius: var(--radius-sm); }
.wr-pic img { width: 100%; height: 100%; object-fit: cover; }

/* ============ 4. 卡片瀑布 cw ============ */
.cw { padding: 24px 0 50px; }
.cw-head { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
.cw-head h2 { font-size: 19px; font-weight: 700; letter-spacing: 1px; }
.cw-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-left: auto; }
.cw-chips a { font-size: 12.5px; padding: 5px 13px; border-radius: 999px; background: var(--card); border: 1px solid var(--line); }
.cw-chips a:hover { background: var(--red); border-color: var(--red); color: #fff; }
.cw-flow { columns: 3; column-gap: 18px; }
.cw-card {
  break-inside: avoid; display: block; background: var(--card); border-radius: var(--radius);
  overflow: hidden; box-shadow: var(--shadow); margin-bottom: 18px; transition: transform .2s, box-shadow .2s;
}
.cw-card:hover { transform: translateY(-3px); box-shadow: 0 8px 22px rgba(0,0,0,.1); }
.cw-img { overflow: hidden; }
.cw-img img { width: 100%; height: 148px; object-fit: cover; transition: transform .45s; }
.cw-card.big .cw-img img { height: 232px; }
.cw-card:hover .cw-img img { transform: scale(1.05); }
.cw-body { display: block; padding: 13px 15px 16px; }
.cw-body em { font-style: normal; font-size: 11px; color: var(--red); letter-spacing: .6px; }
.cw-body h3 { font-size: 15px; line-height: 1.55; margin: 6px 0 7px; font-weight: 600; }
.cw-card.big .cw-body h3 { font-size: 18px; line-height: 1.5; }
.cw-body p { font-size: 12.5px; line-height: 1.75; color: #6a6f77; margin-bottom: 9px; }
.cw-meta { font-size: 11px; color: var(--gray); }

/* ============ 5. 深色科技流 dk ============ */
.dk { background: #0d1015; color: #d7dce4; padding: 16px 0 50px; }
.dk a { color: inherit; }
.dk a:hover { color: #fff; }
.dk-tabs { display: flex; gap: 9px; overflow-x: auto; padding: 12px 0 16px; border-bottom: 1px solid rgba(255,255,255,.08); }
.dk-tabs a {
  flex: none; font-size: 12.5px; padding: 6px 15px; border-radius: 999px;
  background: rgba(255,255,255,.055); color: #aab3c0; transition: .18s;
}
.dk-tabs a.on, .dk-tabs a:hover { background: var(--red); color: #fff; }
.dk-top { display: grid; grid-template-columns: 1fr 306px; gap: 18px; margin: 20px 0; }
.dk-hero { position: relative; display: block; overflow: hidden; border-radius: var(--radius); min-height: 400px; }
.dk-hero-img { position: absolute; inset: 0; }
.dk-hero-img img { width: 100%; height: 100%; object-fit: cover; filter: brightness(.78) saturate(1.1); }
.dk-hero-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(13,16,21,.1) 20%, rgba(13,16,21,.92) 100%); }
.dk-hero-tx { position: absolute; left: 0; right: 0; bottom: 0; padding: 26px; z-index: 2; }
.dk-hero-tx em { font-style: normal; font-size: 11px; letter-spacing: 1px; color: #0d1015; background: var(--accent, #5be0c0); padding: 2px 9px; border-radius: 2px; font-weight: 700; }
.dk-hero-tx h2 { font-size: 26px; line-height: 1.4; color: #fff; margin: 12px 0 8px; }
.dk-hero-tx p { font-size: 13px; line-height: 1.75; color: rgba(255,255,255,.7); }
.dk-hots { display: grid; gap: 12px; grid-auto-rows: 1fr; }
.dk-hot {
  display: block; padding: 14px 15px; background: rgba(255,255,255,.045);
  border-left: 2px solid var(--red); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; transition: .18s;
}
.dk-hot:hover { background: rgba(255,255,255,.09); }
.dk-hot h3 { font-size: 14px; line-height: 1.55; font-weight: 600; color: #eef1f6; }
.dk-hot span { display: block; margin-top: 7px; font-size: 11px; color: #79828f; }
.dk-mid { display: grid; grid-template-columns: 1fr 306px; gap: 18px; }
.dk-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.dk-card { display: block; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.07); border-radius: var(--radius); overflow: hidden; transition: .18s; }
.dk-card:hover { border-color: rgba(255,255,255,.2); transform: translateY(-2px); }
.dk-img img { width: 100%; height: 128px; object-fit: cover; opacity: .9; }
.dk-card h3 { font-size: 13.5px; line-height: 1.55; padding: 10px 12px 5px; color: #dfe4ec; font-weight: 500; }
.dk-card span { display: block; padding: 0 12px 11px; font-size: 10.5px; color: #6d7682; }
.dk-news { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.07); border-radius: var(--radius); padding: 2px 16px 12px; }
.dk-news h3 { display: flex; align-items: center; font-size: 14px; color: #fff; padding: 14px 0 10px; border-bottom: 1px solid rgba(255,255,255,.1); }
.dk-news h3 i { width: 3px; height: 13px; background: var(--red); margin-right: 8px; }
.dk-news li { display: flex; gap: 10px; justify-content: space-between; padding: 9px 0; border-bottom: 1px dashed rgba(255,255,255,.07); }
.dk-news li a { font-size: 13px; line-height: 1.55; color: #c5ccd6; }
.dk-news li em { font-style: normal; font-size: 10.5px; color: #5f6874; white-space: nowrap; }

/* ============ 6. 高密度 dz ============ */
.dz { padding: 20px 0 46px; }
.dz-top { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 3px solid var(--deep); border-bottom: 1px solid var(--line); }
.dz-top-item { padding: 13px 15px; border-right: 1px solid var(--line); }
.dz-top-item:last-child { border-right: 0; }
.dz-top-item em { display: block; font-style: normal; font-size: 10.5px; color: var(--red); letter-spacing: .8px; margin-bottom: 5px; }
.dz-top-item strong { font-size: 14px; line-height: 1.55; font-weight: 600; display: block; }
.dz-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 6px; }
.dz-col { padding: 0 15px; border-right: 1px solid var(--line); }
.dz-col:last-child { border-right: 0; }
.dz-col h3 { font-size: 13.5px; padding: 14px 0 9px; margin-bottom: 2px; border-bottom: 1px solid var(--ink-strong); letter-spacing: .5px; }
.dz-row { display: block; padding: 8px 0; border-bottom: 1px dotted var(--line); font-size: 12.8px; line-height: 1.6; }
.dz-row span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.dz-row em { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  font-style: normal; font-size: 11.5px; color: var(--gray); line-height: 1.7; margin-top: 3px; }
.dz-row.first span { font-weight: 700; font-size: 13.8px; line-height: 1.55; -webkit-line-clamp: 3; }
.dz-foot { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 24px; margin-top: 20px; padding-top: 14px; border-top: 2px solid var(--deep); }
.dz-foot a { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; font-size: 12.5px; border-bottom: 1px dotted var(--line); }
.dz-foot i { font-style: normal; font-size: 10.5px; color: var(--gray); }

/* ============ 7. 橱窗 shn ============ */
.shn { padding: 20px 0 48px; }
.shn-stage { display: grid; grid-template-columns: 1.62fr 1fr 1fr; gap: 7px; }
.shn-item { position: relative; display: block; overflow: hidden; border-radius: var(--radius); height: 366px; }
.shn-img { position: absolute; inset: 0; }
.shn-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s; }
.shn-item:hover .shn-img img { transform: scale(1.045); }
.shn-item::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 42%, rgba(0,0,0,.75)); }
.shn-tx { position: absolute; left: 0; right: 0; bottom: 0; padding: 20px; z-index: 2; color: #fff; }
.shn-tx em { font-style: normal; font-size: 11px; background: var(--red); padding: 2px 9px; border-radius: 2px; }
.shn-tx h2 { font-size: 17px; line-height: 1.5; margin-top: 9px; font-weight: 600; }
.shn-item.main .shn-tx h2 { font-size: 22px; }
.shn-bar { display: flex; align-items: baseline; gap: 12px; margin: 26px 0 14px; padding-bottom: 10px; border-bottom: 2px solid var(--deep); }
.shn-bar h2 { font-size: 18px; font-weight: 700; }
.shn-bar span { font-size: 11px; color: var(--gray); letter-spacing: 1.4px; }
.shn-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.shn-card { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); transition: transform .2s; }
.shn-card:hover { transform: translateY(-3px); }
.shn-card-img img { width: 100%; height: 146px; object-fit: cover; }
.shn-card h3 { font-size: 14px; line-height: 1.55; padding: 11px 13px 9px; font-weight: 600; }
.shn-spec { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.shn-spec span { padding: 8px 4px 10px; text-align: center; font-size: 11.5px; border-right: 1px solid var(--line); color: var(--ink); }
.shn-spec span:last-child { border-right: 0; }
.shn-spec i { display: block; font-style: normal; font-size: 10px; color: var(--gray); margin-bottom: 2px; }
.shn-foot { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.shn-foot a { flex: 1 1 150px; display: flex; justify-content: space-between; align-items: center; padding: 10px 14px; background: var(--card); border-radius: var(--radius-sm); box-shadow: var(--shadow); font-size: 13px; }
.shn-foot a:hover { background: var(--red); color: #fff; }
.shn-foot i { font-style: normal; font-size: 11px; color: var(--gray); }
.shn-foot a:hover i { color: rgba(255,255,255,.8); }

/* ============ 8. 杂志封面 mz ============ */
.mz { padding: 20px 0 48px; }
.mz-cover { display: grid; grid-template-columns: 1.2fr 1fr; gap: 16px; }
.mz-hero { position: relative; display: block; overflow: hidden; border-radius: var(--radius); height: 508px; }
.mz-hero-img { position: absolute; inset: 0; }
.mz-hero-img img { width: 100%; height: 100%; object-fit: cover; }
.mz-cover-tx { position: absolute; inset: auto 0 0 0; padding: 30px; color: #fff; z-index: 2; background: linear-gradient(180deg, transparent, rgba(0,0,0,.82)); }
.mz-cover-tx b { display: inline-block; font: 700 12px/1 Georgia, serif; letter-spacing: 3px; border-bottom: 2px solid #fff; padding-bottom: 5px; }
.mz-cover-tx h2 { font: 700 27px/1.42 "Songti SC", "Noto Serif SC", SimSun, serif; margin: 14px 0 9px; }
.mz-cover-tx p { font-size: 13px; line-height: 1.75; color: rgba(255,255,255,.76); }
.mz-ribbon { position: absolute; top: 20px; left: 20px; z-index: 2; font-size: 11.5px; letter-spacing: 1.5px; background: var(--red); color: #fff; padding: 4px 11px; }
.mz-six { display: grid; grid-template-columns: 1fr 1fr; grid-auto-rows: 1fr; gap: 12px; }
.mz-cell { display: block; overflow: hidden; background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); }
.mz-cell-img img { width: 100%; height: 88px; object-fit: cover; }
.mz-cell h3 { font-size: 12.8px; line-height: 1.5; padding: 8px 11px 4px; font-weight: 600; }
.mz-cell em { display: block; font-style: normal; font-size: 10.5px; color: var(--gray); padding: 0 11px 9px; }
.mz-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 26px; padding-top: 18px; border-top: 2px solid var(--deep); }
.mz-col h3 { font-size: 15px; padding-bottom: 9px; margin-bottom: 4px; border-bottom: 1px solid var(--line); }
.mz-row { display: block; padding: 9px 0; font-size: 13.2px; line-height: 1.6; border-bottom: 1px dotted var(--line); }
.mz-tags { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px; }
.mz-tags a { font-size: 12px; color: var(--gray); padding: 4px 11px; border: 1px solid var(--line); border-radius: 999px; }
.mz-tags a:hover { color: var(--red); border-color: var(--red); }

/* ============ 9. 堆叠头条 stk ============ */
.stk { padding: 18px 0 50px; }
.stk-big { position: relative; display: block; overflow: hidden; border-radius: var(--radius); height: 452px; }
.stk-big-img { position: absolute; inset: 0; }
.stk-big-img img { width: 100%; height: 100%; object-fit: cover; }
.stk-big-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 34%, rgba(0,0,0,.8)); }
.stk-big-tx { position: absolute; left: 0; right: 0; bottom: 0; padding: 34px 38px; color: #fff; z-index: 2; }
.stk-big-tx em { font-style: normal; font-size: 11.5px; letter-spacing: 1px; background: var(--red); padding: 3px 10px; }
.stk-big-tx h2 { font-size: 31px; line-height: 1.38; margin: 14px 0 9px; font-weight: 700; max-width: 76%; }
.stk-big-tx p { font-size: 13.5px; line-height: 1.75; color: rgba(255,255,255,.78); max-width: 70%; }
.stk-mid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; width: 88%; margin: -52px auto 0; position: relative; z-index: 3; }
.stk-card { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: 0 6px 20px rgba(0,0,0,.12); }
.stk-mid-img img { width: 100%; height: 150px; object-fit: cover; }
.stk-card h3 { font-size: 15.5px; line-height: 1.5; padding: 12px 15px 6px; font-weight: 600; }
.stk-card span { display: block; padding: 0 15px 14px; font-size: 11.5px; color: var(--gray); }
.stk-band { margin-top: 26px; border-top: 2px solid var(--deep); }
.stk-band.odd { background: color-mix(in srgb, var(--bg) 55%, #fff); }
.stk-band-hd { display: flex; align-items: center; justify-content: space-between; padding: 13px 0 10px; }
.stk-band-hd h3 { font-size: 16px; font-weight: 700; letter-spacing: 1px; }
.stk-more { font-size: 11.5px; color: var(--gray); }
.stk-band-bd { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }
.stk-brow { display: block; padding: 12px 14px; border-right: 1px solid var(--line); font-size: 13.2px; line-height: 1.6; }
.stk-brow:last-child { border-right: 0; }
.stk-brow em { display: block; font-style: normal; font-size: 11px; color: var(--gray); margin-top: 5px; }

/* ============ 10. 左右分屏 spl ============ */
.spl { display: grid; grid-template-columns: 37% 63%; align-items: stretch; }
.spl-panel { background: var(--deep); color: #fff; padding: 42px 36px 46px; }
.spl-pin { position: sticky; top: 26px; }
.spl-kicker { font-size: 10px; letter-spacing: 3px; color: rgba(255,255,255,.45); }
.spl-panel h2 { font-size: 30px; line-height: 1.35; margin: 10px 0 8px; font-weight: 700; letter-spacing: 1px; }
.spl-tag { font-size: 13px; line-height: 1.8; color: rgba(255,255,255,.62); padding-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.14); }
.spl-nums { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; padding: 20px 0 22px; border-bottom: 1px solid rgba(255,255,255,.14); }
.spl-nums b { display: block; font: 700 21px/1.2 Georgia, serif; color: var(--accent, #fff); }
.spl-nums i { font-style: normal; font-size: 11px; color: rgba(255,255,255,.5); }
.spl-nav { padding-top: 14px; }
.spl-nav a { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; font-size: 13.5px; color: rgba(255,255,255,.72); border-bottom: 1px solid rgba(255,255,255,.08); }
.spl-nav a:hover { color: #fff; padding-left: 6px; }
.spl-nav i { font-style: normal; font-size: 11px; color: rgba(255,255,255,.38); }
.spl-stream { background: var(--card); padding: 30px 34px 46px; }
.spl-lead { display: grid; grid-template-columns: 1.1fr 1fr; gap: 18px; padding-bottom: 20px; border-bottom: 2px solid var(--line); }
.spl-lead-img { height: 218px; overflow: hidden; border-radius: var(--radius); }
.spl-lead-img img { width: 100%; height: 100%; object-fit: cover; }
.spl-lead-tx em { font-style: normal; font-size: 11px; color: var(--red); letter-spacing: 1px; }
.spl-lead-tx h3 { font-size: 21px; line-height: 1.45; margin: 9px 0 8px; font-weight: 700; }
.spl-lead-tx p { font-size: 13px; line-height: 1.78; color: #6a6f77; }
.spl-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 26px; padding-top: 8px; }
.spl-row { display: grid; grid-template-columns: 92px 1fr; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.spl-thumb { height: 66px; overflow: hidden; border-radius: var(--radius-sm); }
.spl-thumb img { width: 100%; height: 100%; object-fit: cover; }
.spl-row-tx h4 { font-size: 13.8px; line-height: 1.55; font-weight: 600; }
.spl-row-tx em { display: block; font-style: normal; font-size: 11px; color: var(--gray); margin-top: 5px; }

/* ============ 响应式 ============ */
@media (max-width: 1080px) {
  .rk-hero, .rk-mid, .wr-wrap, .dk-top, .dk-mid, .jr-abs { grid-template-columns: 1fr; }
  .rk-side { grid-template-columns: 1fr 1fr; grid-auto-rows: auto; }
  .rk-cols, .mz-cols, .dz-foot { grid-template-columns: 1fr 1fr; }
  .cw-flow { columns: 2; }
  .dk-grid { grid-template-columns: 1fr 1fr; }
  .shn-grid { grid-template-columns: 1fr 1fr; }
  .spl { grid-template-columns: 1fr; }
  .spl-pin { position: static; }
  .dz-grid { grid-template-columns: 1fr 1fr; }
  .dz-col:nth-child(2) { border-right: 0; }
  .stk-band-bd { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .rk-side, .rk-cols, .mz-cols, .dz-foot, .dz-grid, .dz-top,
  .cw-flow, .dk-grid, .shn-grid, .stk-mid, .stk-band-bd,
  .spl-list, .spl-nums, .rk-cols { grid-template-columns: 1fr; }
  .cw-flow { columns: 1; }
  .shn-stage { grid-template-columns: 1fr; height: auto; }
  .shn-item, .shn-item.main { height: 220px; }
  .mz-cover { grid-template-columns: 1fr; }
  .mz-hero { height: 320px; }
  .mz-six { grid-template-columns: 1fr 1fr; }
  .stk-big, .dk-hero, .rk-lead { height: 300px; min-height: 0; }
  .stk-big-tx h2, .rk-lead-body h2 { font-size: 20px; }
  .stk-big-tx p, .stk-big-tx h2 { max-width: 100%; }
  .stk-mid { width: 100%; margin-top: 14px; }
  .spl-lead { grid-template-columns: 1fr; }
  .jr-body { columns: 1; }
  .jr-mast { grid-template-columns: 1fr; text-align: center; gap: 6px; }
  .jr-mast-r { text-align: center; }
  .jr-mast-c { padding: 6px 0; }
  .jr-mast-c h1 { font-size: 24px; letter-spacing: 4px; }
  .wr-item { grid-template-columns: 58px 1px 1fr; gap: 11px; }
  .dz-col { border-right: 0; padding: 0; }
  .dz-col h3 { margin-top: 10px; }
}

/* =========================================================
   第四批：6 套新版式（九宫格 / 左栏 / 双图 / 三栏 / 图文列表 / 便当盒）
   + 全局版式变体（v2 / v3）结构覆盖
   ========================================================= */

/* ---- 21. 九宫格 g9 ---- */
.g9 { padding: 22px 0 46px; }
.g9-bar { display: flex; align-items: baseline; gap: 12px; padding-bottom: 11px; border-bottom: 2px solid var(--deep); margin-bottom: 16px; }
.g9-bar h2 { font-size: 19px; font-weight: 700; letter-spacing: 1px; }
.g9-bar > span { font-size: 10.5px; color: var(--gray); letter-spacing: 1.5px; }
.g9-more { margin-left: auto; font-size: 12px; color: var(--red); }
.g9-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.g9-cell { position: relative; display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); transition: transform .2s; }
.g9-cell:hover { transform: translateY(-3px); }
.g9-img { overflow: hidden; }
.g9-img img { width: 100%; height: 168px; object-fit: cover; transition: transform .45s; }
.g9-cell:hover .g9-img img { transform: scale(1.05); }
.g9-num { position: absolute; top: 10px; left: 10px; font: 700 12px/1 Georgia, serif; background: rgba(0,0,0,.6); color: #fff; padding: 4px 7px; border-radius: 2px; z-index: 2; }
.g9-body { display: block; padding: 12px 14px 15px; }
.g9-body em { font-style: normal; font-size: 11px; color: var(--red); }
.g9-body h3 { font-size: 14.5px; line-height: 1.5; margin: 5px 0 7px; font-weight: 600; }
.g9-meta { font-size: 11px; color: var(--gray); }
.g9-cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 22px; }
.g9-col { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); padding: 2px 14px 12px; }
.g9-col h3 { font-size: 14px; padding: 12px 0 8px; border-bottom: 2px solid var(--deep); margin-bottom: 3px; }
.g9-row { display: block; padding: 8px 0; font-size: 13px; line-height: 1.55; border-bottom: 1px dotted var(--line); }
.g9-row:last-child { border-bottom: 0; }

/* ---- 22. 左栏 sidebar sl ---- */
.sl { display: grid; grid-template-columns: 274px 1fr; gap: 22px; padding: 22px 0 46px; }
.sl-side { min-width: 0; }
.sl-nav, .sl-hot { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); padding: 2px 14px 12px; margin-bottom: 16px; }
.sl-nav h3, .sl-hot h3 { font-size: 14px; padding: 12px 0 9px; border-bottom: 2px solid var(--deep); margin-bottom: 3px; }
.sl-nav a { display: flex; justify-content: space-between; align-items: center; padding: 9px 0; font-size: 13px; border-bottom: 1px dotted var(--line); }
.sl-nav a:last-child { border-bottom: 0; }
.sl-nav i { font-style: normal; font-size: 11px; color: var(--gray); }
.sl-hot ol li { display: flex; gap: 9px; padding: 7px 0; font-size: 13px; line-height: 1.55; }
.sl-hot b { flex: none; font: 700 12px/1.7 Georgia, serif; color: var(--red); }
.sl-pics { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.sl-pic { height: 78px; overflow: hidden; border-radius: var(--radius-sm); }
.sl-pic img { width: 100%; height: 100%; object-fit: cover; }
.sl-main { min-width: 0; }
.sl-lead { position: relative; display: block; height: 372px; border-radius: var(--radius); overflow: hidden; }
.sl-lead-img { position: absolute; inset: 0; }
.sl-lead-img img { width: 100%; height: 100%; object-fit: cover; }
.sl-lead-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 38%, rgba(0,0,0,.8)); }
.sl-lead-tx { position: absolute; left: 0; right: 0; bottom: 0; padding: 26px 28px; color: #fff; z-index: 2; }
.sl-lead-tx em { font-style: normal; font-size: 11px; background: var(--red); padding: 2px 9px; }
.sl-lead-tx h2 { font-size: 25px; line-height: 1.4; margin: 11px 0 8px; font-weight: 700; }
.sl-lead-tx p { font-size: 13px; line-height: 1.7; color: rgba(255,255,255,.78); }
.sl-rows { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); margin-top: 16px; }
.sl-row { display: grid; grid-template-columns: 128px 1fr; gap: 15px; padding: 14px; border-bottom: 1px solid var(--line); }
.sl-row:last-child { border-bottom: 0; }
.sl-thumb { height: 80px; overflow: hidden; border-radius: var(--radius-sm); }
.sl-thumb img { width: 100%; height: 100%; object-fit: cover; }
.sl-row h4 { font-size: 14.5px; line-height: 1.55; font-weight: 600; }
.sl-row em { display: block; font-style: normal; font-size: 12px; line-height: 1.7; color: #6a6f77; margin-top: 5px; }
.sl-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 16px; }
.sl-card { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.sl-card-img img { width: 100%; height: 128px; object-fit: cover; }
.sl-card h4 { font-size: 13.5px; line-height: 1.5; padding: 10px 12px 4px; font-weight: 600; }
.sl-card > span { display: block; padding: 0 12px 11px; font-size: 11px; color: var(--gray); }

/* ---- 23. 双图 hero hv ---- */
.hv { padding: 20px 0 46px; }
.hv-twin { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.hv-card { position: relative; display: block; height: 356px; border-radius: var(--radius); overflow: hidden; }
.hv-img { position: absolute; inset: 0; }
.hv-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.hv-card:hover .hv-img img { transform: scale(1.04); }
.hv-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,.78)); }
.hv-tx { position: absolute; left: 0; right: 0; bottom: 0; padding: 24px 26px; color: #fff; z-index: 2; }
.hv-tx em { font-style: normal; font-size: 11px; background: var(--red); padding: 2px 9px; }
.hv-tx h2 { font-size: 22px; line-height: 1.42; margin: 10px 0 7px; font-weight: 700; }
.hv-meta { font-size: 11.5px; color: rgba(255,255,255,.6); }
.hv-railwrap { margin-top: 22px; }
.hv-railhd { display: flex; align-items: baseline; gap: 10px; padding-bottom: 10px; border-bottom: 2px solid var(--deep); margin-bottom: 12px; }
.hv-railhd h3 { font-size: 17px; font-weight: 700; }
.hv-railhd span { font-size: 10.5px; color: var(--gray); letter-spacing: 1.5px; }
.hv-rail { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
.hv-item { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.hv-item-img img { width: 100%; height: 92px; object-fit: cover; }
.hv-item h4 { font-size: 12.8px; line-height: 1.5; padding: 9px 10px 5px; font-weight: 600;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.hv-item em { display: block; font-style: normal; font-size: 10.5px; color: var(--red); padding: 0 10px 10px; }
.hv-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--line); }
.hv-col h3 { display: flex; justify-content: space-between; align-items: center; font-size: 14.5px; padding-bottom: 9px; border-bottom: 1px solid var(--line); margin-bottom: 4px; }
.hv-col h3 i { font-style: normal; font-size: 11px; color: var(--gray); font-weight: 400; }
.hv-row { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; font-size: 13.2px; line-height: 1.55; border-bottom: 1px dotted var(--line); }
.hv-row em { font-style: normal; font-size: 11px; color: var(--gray); }

/* ---- 24. 三栏 columns cm ---- */
.cm { display: grid; grid-template-columns: 236px 1fr 258px; gap: 20px; padding: 22px 0 46px; align-items: start; }
.cm-left, .cm-right > .cm-box { background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); }
.cm-left { padding: 2px 14px 12px; }
.cm-left h3 { font-size: 14px; padding: 12px 0 9px; border-bottom: 2px solid var(--deep); }
.cm-lrow { display: flex; justify-content: space-between; gap: 8px; padding: 8px 0; font-size: 13px; line-height: 1.55; border-bottom: 1px dotted var(--line); }
.cm-lrow em { flex: none; font-style: normal; font-size: 11px; color: var(--gray); }
.cm-mid { min-width: 0; }
.cm-lead { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.cm-lead-img { height: 326px; overflow: hidden; }
.cm-lead-img img { width: 100%; height: 100%; object-fit: cover; }
.cm-lead h2 { font-size: 22px; line-height: 1.42; padding: 16px 18px 8px; font-weight: 700; }
.cm-lead p { font-size: 13px; line-height: 1.78; color: #6a6f77; padding: 0 18px 18px; }
.cm-sub { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px; }
.cm-subcard { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.cm-sub-img img { width: 100%; height: 128px; object-fit: cover; }
.cm-subcard h3 { font-size: 13.5px; line-height: 1.5; padding: 10px 12px 12px; font-weight: 600; }
.cm-secs { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 18px; }
.cm-secs h3 { font-size: 14px; padding-bottom: 8px; border-bottom: 2px solid var(--deep); margin-bottom: 3px; }
.cm-srow { display: block; padding: 7px 0; font-size: 13px; border-bottom: 1px dotted var(--line); }
.cm-right > .cm-box { padding: 2px 14px 12px; margin-bottom: 16px; }
.cm-box h3 { font-size: 14px; padding: 12px 0 8px; border-bottom: 2px solid var(--deep); margin-bottom: 6px; }
.cm-cat { display: inline-block; font-size: 12px; padding: 4px 10px; margin: 0 5px 5px 0; border: 1px solid var(--line); border-radius: 2px; }
.cm-cat:hover { border-color: var(--red); color: var(--red); }
.cm-pic { display: block; margin-bottom: 10px; }
.cm-pic-img { height: 78px; overflow: hidden; border-radius: var(--radius-sm); margin-bottom: 5px; }
.cm-pic-img img { width: 100%; height: 100%; object-fit: cover; }
.cm-pic span { font-size: 12.5px; line-height: 1.5; }

/* ---- 25. 图文列表 listmag lm ---- */
.lm { padding: 18px 0 46px; }
.lm-head { display: flex; flex-wrap: wrap; gap: 9px; padding: 12px 0 14px; border-bottom: 2px solid var(--deep); }
.lm-head a { font-size: 12.5px; padding: 5px 13px; border-radius: 999px; background: var(--card); border: 1px solid var(--line); }
.lm-head a:hover { background: var(--red); border-color: var(--red); color: #fff; }
.lm-wrap { display: grid; grid-template-columns: 1fr 372px; gap: 26px; margin-top: 18px; }
.lm-item { display: grid; grid-template-columns: 214px 1fr; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.lm-item:first-child { padding-top: 0; }
.lm-img { height: 132px; overflow: hidden; border-radius: var(--radius); }
.lm-img img { width: 100%; height: 100%; object-fit: cover; }
.lm-tx em { font-style: normal; font-size: 11px; color: var(--red); }
.lm-tx h3 { font-size: 16.5px; line-height: 1.5; margin: 6px 0 7px; font-weight: 600; }
.lm-tx p { font-size: 12.8px; line-height: 1.75; color: #6a6f77; }
.lm-m { display: block; margin-top: 8px; font-size: 11px; color: var(--gray); }
.lm-side { min-width: 0; }
.lm-tris { display: grid; gap: 12px; }
.lm-tri { display: block; background: var(--card); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.lm-tri-img img { width: 100%; height: 128px; object-fit: cover; }
.lm-tri h4 { font-size: 13.5px; line-height: 1.5; padding: 10px 12px 12px; font-weight: 600; }
.lm-more { margin-top: 18px; background: var(--card); border-radius: var(--radius); box-shadow: var(--shadow); padding: 2px 14px 12px; }
.lm-more h4 { font-size: 14px; padding: 12px 0 9px; border-bottom: 2px solid var(--deep); margin-bottom: 3px; }
.lm-more a { display: block; padding: 7px 0; font-size: 12.8px; border-bottom: 1px dotted var(--line); }

/* ---- 26. 便当盒 bento bt ---- */
.bt { padding: 20px 0 46px; }
.bt-grid {
  display: grid; gap: 10px; grid-auto-rows: 146px;
  grid-template-columns: repeat(4, 1fr);
  grid-template-areas: "a a b c" "a a d d" "e f g g";
}
.bt-a { grid-area: a; } .bt-b { grid-area: b; } .bt-c { grid-area: c; }
.bt-d { grid-area: d; } .bt-e { grid-area: e; } .bt-f { grid-area: f; } .bt-g { grid-area: g; }
.bt-box { position: relative; display: block; overflow: hidden; border-radius: var(--radius); background: var(--deep); }
.bt-img { position: absolute; inset: 0; }
.bt-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.bt-box:hover .bt-img img { transform: scale(1.05); }
.bt-img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(0,0,0,.82)); }
.bt-tx { position: absolute; left: 0; right: 0; bottom: 0; padding: 16px 18px; color: #fff; z-index: 2; }
.bt-tx em { font-style: normal; font-size: 10.5px; background: var(--red); padding: 2px 8px; }
.bt-tx h3 { font-size: 15px; line-height: 1.48; margin-top: 8px; font-weight: 600; }
.bt-a .bt-tx h3 { font-size: 23px; line-height: 1.4; }
.bt-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 14px; }
.bt-chip { display: block; background: var(--card); border-radius: var(--radius-sm); padding: 10px 13px; box-shadow: var(--shadow); }
.bt-chip b { display: block; font-size: 13px; font-weight: 700; }
.bt-chip span { display: block; font-size: 11.5px; color: var(--gray); margin-top: 3px;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bt-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 26px; margin-top: 20px; padding-top: 14px; border-top: 2px solid var(--deep); }
.bt-list a { display: flex; justify-content: space-between; gap: 10px; padding: 8px 0; font-size: 13.2px; border-bottom: 1px dotted var(--line); }
.bt-list em { flex: none; font-style: normal; font-size: 11px; color: var(--gray); }

/* =========================================================
   版式变体 v2 / v3（不改 DOM，只调结构方向与列数）
   ========================================================= */

/* rk 榜单：v2 侧栏左置 / v3 四列栏目 */
.v2 .rk-hero { grid-template-columns: 300px 1fr; }
.v2 .rk-lead { order: 2; }
.v2 .rk-mid { grid-template-columns: 318px 1fr; }
.v2 .rk-rank { order: 2; }
.v3 .rk-cols { grid-template-columns: repeat(4, 1fr); }
.v3 .rk-hero { grid-template-columns: 1fr 260px; }

/* jr 期刊：v2 目录左置 / v3 单栏摘要 */
.v2 .jr-abs { grid-template-columns: 316px 1fr; }
.v2 .jr-abs-main { order: 2; }
.v3 .jr-body { columns: 3; column-gap: 26px; }

/* wr 电讯：v2 侧栏左置 */
.v2 .wr-wrap { grid-template-columns: 304px 1fr; }
.v2 .wr-side { order: -1; }

/* cw 瀑布：v2 两列大图 / v3 四列 */
.v2 .cw-flow { columns: 2; }
.v2 .cw-img img { height: 190px; }
.v2 .cw-card.big .cw-img img { height: 280px; }
.v3 .cw-flow { columns: 4; }
.v3 .cw-img img { height: 126px; }

/* dk 深色：v2 无侧栏通栏 / v3 侧栏左置 */
.v2 .dk-top, .v2 .dk-mid { grid-template-columns: 1fr; }
.v3 .dk-mid { grid-template-columns: 306px 1fr; }
.v3 .dk-news { order: -1; }

/* dz 高密度：v2 三栏 / v3 五栏 */
.v2 .dz-grid, .v2 .dz-top { grid-template-columns: repeat(3, 1fr); }
.v2 .dz-foot { grid-template-columns: 1fr 1fr; }
.v3 .dz-grid { grid-template-columns: repeat(5, 1fr); }
.v3 .dz-top { grid-template-columns: repeat(4, 1fr); }

/* shn 橱窗：v2 三列 / v3 五列 */
.v2 .shn-grid { grid-template-columns: repeat(3, 1fr); }
.v2 .shn-stage { grid-template-columns: 1fr 1fr; height: 330px; }
.v2 .shn-item:last-child { display: none; }
.v3 .shn-grid { grid-template-columns: repeat(5, 1fr); }

/* mz 杂志：v2 封面右置 / v3 六宫格单列 */
.v2 .mz-cover { grid-template-columns: 1fr 1.2fr; }
.v2 .mz-hero { order: 2; }
.v3 .mz-six { grid-template-columns: repeat(3, 1fr); }

/* stk 堆叠：v2 中幅三列 / v3 无叠压 */
.v2 .stk-mid { grid-template-columns: repeat(3, 1fr); width: 100%; margin-top: 18px; }
.v3 .stk-big { height: 380px; }
.v3 .stk-band-bd { grid-template-columns: repeat(3, 1fr); }

/* spl 分屏：v2 面板右置 */
.v2 .spl { grid-template-columns: 63% 37%; }
.v2 .spl-panel { order: 2; }

/* g9 九宫格：v2 四列 / v3 两列大卡 */
.v2 .g9-grid { grid-template-columns: repeat(4, 1fr); }
.v2 .g9-img img { height: 138px; }
.v2 .g9-cols { grid-template-columns: repeat(3, 1fr); }
.v3 .g9-grid { grid-template-columns: repeat(2, 1fr); }
.v3 .g9-img img { height: 240px; }

/* sl 左栏：v2 侧栏右置 / v3 侧栏加宽 */
.v2 .sl { grid-template-columns: 1fr 274px; }
.v2 .sl-side { order: 2; }
.v3 .sl { grid-template-columns: 320px 1fr; }
.v3 .sl-cards { grid-template-columns: repeat(2, 1fr); }

/* hv 双图：v2 双图上下 / v3 轨道四列 */
.v2 .hv-twin { grid-template-columns: 1fr; }
.v2 .hv-card { height: 260px; }
.v3 .hv-rail { grid-template-columns: repeat(4, 1fr); }
.v3 .hv-cols { grid-template-columns: 1fr 1fr; }

/* cm 三栏：v2 左右互换 / v3 两栏 */
.v2 .cm { grid-template-columns: 258px 1fr 236px; }
.v2 .cm-left { order: 3; }
.v2 .cm-right { order: 1; }
.v3 .cm { grid-template-columns: 1fr 260px; }
.v3 .cm-left { display: none; }

/* lm 图文列表：v2 右栏左置 / v3 列表满宽 */
.v2 .lm-wrap { grid-template-columns: 372px 1fr; }
.v2 .lm-side { order: -1; }
.v3 .lm-wrap { grid-template-columns: 1fr; }
.v3 .lm-item { grid-template-columns: 250px 1fr; }

/* bt 便当：v2 三列两行 / v3 两列 */
.v2 .bt-grid { grid-template-columns: repeat(3, 1fr); grid-template-areas: "a a b" "c d d" "e f g"; }
.v3 .bt-grid { grid-template-columns: 1fr 1fr; grid-template-areas: "a b" "a c" "d e" "f g"; }
.v3 .bt-list { grid-template-columns: 1fr; }

/* 响应式：新版式 */
@media (max-width: 1080px) {
  .sl, .v2 .sl, .v3 .sl, .lm-wrap, .v2 .lm-wrap, .v3 .lm-wrap { grid-template-columns: 1fr; }
  .v2 .sl-side, .v2 .lm-side { order: 0; }
  .cm, .v2 .cm, .v3 .cm { grid-template-columns: 1fr; }
  .cm-left { display: none; }
  .g9-grid, .v2 .g9-grid, .g9-cols, .hv-cols, .hv-rail, .bt-list { grid-template-columns: repeat(2, 1fr); }
  .bt-grid, .v2 .bt-grid, .v3 .bt-grid { grid-template-columns: 1fr 1fr; grid-template-areas: "a a" "b c" "d d" "e f" "g g"; }
  .hv-twin { grid-template-columns: 1fr; }
  .hv-card { height: 260px; }
  .sl-cards { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .g9-grid, .v2 .g9-grid, .v3 .g9-grid, .g9-cols, .hv-cols, .hv-rail,
  .sl-cards, .v3 .sl-cards, .bt-list, .bt-strip, .cm-sub, .cm-secs { grid-template-columns: 1fr; }
  .bt-grid, .v2 .bt-grid, .v3 .bt-grid { grid-template-columns: 1fr; grid-template-areas: "a" "b" "c" "d" "e" "f" "g"; grid-auto-rows: 190px; }
  .sl-lead, .hv-card, .mz-hero { height: 250px; }
  .sl-lead-tx h2, .hv-tx h2 { font-size: 19px; }
  .cm-lead-img { height: 210px; }
  .lm-item, .v3 .lm-item { grid-template-columns: 1fr; }
  .lm-img { height: 190px; }
  .sl-row { grid-template-columns: 100px 1fr; }
  .sl-thumb { height: 68px; }
}

/* =========================================================
   站点专属：区块链全球时报网
   ========================================================= */
:root{
  --red:#8e2644;--red-2:#661b31;
  --red-a30:#dfc2cb;
  --deep:#28151f;
  --ink:#3a3d42;--ink-strong:#191b1e;--gray:#94979c;--gray-2:#a3a6ab;
  --line:#e9eaec;--bg:#f9f3f5;--card:#ffffff;
  --head-bg:#28151f;--head-ink:#ffffff;--head-sub:rgba(255,255,255,.62);
  --nav-bg:#33212a;--nav-ink:#e6e8ee;--nav-on:#ffffff;
  --banner-bg:linear-gradient(115deg,#28151f 0%,#601e33 52%,#28151f 100%);
  --banner-em:#cc8457;
  --foot-bg:#1e1017;--dc-bg:#391e2c;--dc-line:#502a3e;
  --radius:10px;--radius-sm:10px;
  --shadow:0 2px 10px rgba(0,0,0,.055);
  --t1a:#61162c;--t1b:#a1325f;
  --t2a:#130809;--t2b:#63231e;
  --t3a:#261e20;--t3b:#6c3d45;
  --t4a:#15392f;--t4b:#237c4d;
  --t5a:#23120c;--t5b:#77451e;
}


/* ===== mkj-clamp: 摘要/标题行数限制（中文无空格时防溢出） ===== */
.rk-lead-body h2,.sl-lead-tx h2,.hv-tx h2,.stk-big-tx h2,.dk-hero-tx h2,
.mz-cover-tx h2,.shn-tx h2,.bt-tx h3,.g9-body h3,.lm-tx h3,.cm-lead h2,.cm-subcard h3,
.sl-card h4,.lm-tri h4,.hv-item h4,.cw-body h3,.dk-card h3,.rk-scard h3,.stk-card h3,
.mz-cell h3,.shn-card h3,.sl-row h4,.spl-row-tx h4,.bt-list a span,.dz-row span{
  display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:3;
}
.rk-lead-body p,.sl-lead-tx p,.hv-tx p,.stk-big-tx p,.dk-hero-tx p,.mz-cover-tx p,
.cm-lead p,.lm-tx p,.cw-body p,.sl-row em,.wr-tx em,.jr-abs-tx,.jr-item p,
.spl-lead-tx p,.stk-big-tx p,.dz-row em{
  display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:3;
}
.cm-lead p,.jr-abs-tx{-webkit-line-clamp:5;}
.g9-body h3,.bt-tx h3,.shn-tx h2,.lm-tx h3,.sl-card h4,.mz-cell h3{-webkit-line-clamp:2;}
