/* t5 视觉重构覆盖层：统一观感与交互态，中性灰+朱红、无渐变 */

:root{
  --ink:#2a2f35;
  --text:#33373d;
  --text-2:#5f6770;
  --muted:#959da6;
  --line:#e7e9ec;
  --line-2:#dde0e4;
  --bg:#f4f5f7;
  --card:#ffffff;
  --head:#23262a;
  --accent:#b23a2b;
  --accent-2:#983023;
  --accent-soft:rgba(178,58,43,.08);
  --price:#c03a28;
  --ok:#2e7d50;
  --radius:12px;
  --radius-sm:7px;
  --shadow:0 1px 2px rgba(20,24,30,.04),0 3px 12px rgba(20,24,30,.05);
  --shadow-lg:0 10px 26px rgba(20,24,30,.11);

  /* 主题色变量（渐变相关旧变量已置空） */
  --brand:#b23a2b;
  --brand-2:#983023;
  --brand-soft:rgba(178,58,43,.08);
  --grad:transparent;
  --grad-warm:transparent;
  --header:#23262a;
  --header-soft:#2b2f34;
  --gold:transparent;
}

/* ---------- base / typography ---------- */
body{
  background:var(--bg);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
  font-size:14px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%}
a{color:inherit;text-decoration:none;transition:color .16s ease,background-color .16s ease,box-shadow .16s ease,border-color .16s ease}
a:hover{color:var(--accent)}
::selection{background:rgba(178,58,43,.14)}

/* ---------- header ---------- */
header{
  background:var(--head);
  padding:0;
  height:52px;
  box-shadow:0 1px 0 rgba(255,255,255,.05),0 2px 10px rgba(0,0,0,.09);
  position:relative;
  z-index:300;
}
header::before{
  display:none; /* 移除 base 的彩虹线 */
}
.navbox{width:1200px;height:52px}
.logo{display:flex;align-items:center;height:52px;line-height:1;margin-right:40px}
.logo a{display:flex;align-items:center;line-height:1}
.logo img{height:32px !important;width:auto;margin-top:0 !important;vertical-align:middle}
nav{height:52px;line-height:52px}
#starlist li a{
  padding:0 16px;
  color:rgba(255,255,255,.84);
  font-size:15px;
  font-weight:500;
}
#starlist li a:hover{color:#fff}
#starlist li a#selected{
  color:#fff;
  font-weight:600;
  box-shadow:inset 0 -3px 0 0 var(--accent);
  background:none;
}
#starlist li.menu:before,#starlist .menu:before{display:none}
#starlist li.menu>span{display:none}
#starlist li.menu>a{padding-right:26px;position:relative}
#starlist li.menu>a:after{
  content:"";
  position:absolute;
  right:10px;top:50%;
  width:6px;height:6px;
  margin-top:-5px;
  border-right:1.5px solid rgba(255,255,255,.7);
  border-bottom:1.5px solid rgba(255,255,255,.7);
  transform:rotate(45deg);
  transition:transform .2s ease;
}
#starlist li.menu:hover>a:after{transform:rotate(225deg);margin-top:-2px}

/* 下拉子菜单 */
#starlist ul.sub{
  background:linear-gradient(180deg,#f8fafb,#eef1f4);
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:var(--shadow-lg);
  overflow:hidden;
  top:52px;
  padding:4px;
  min-width:132px;
  left:50%;
  transform:translateX(-50%);
  z-index:9;
}
#starlist li.menu:hover>ul.sub{display:block}
#starlist ul.sub li{float:none;display:block;width:auto;height:auto;line-height:1}
#starlist ul.sub li:last-child{padding-bottom:0}
#starlist ul.sub li a{
  color:var(--text-2);
  padding:9px 10px;
  display:block;
  float:none;
  text-align:center;
  border-radius:6px;
  background:transparent;
  font-size:14.5px;
  font-weight:500;
  line-height:1.4;
  white-space:nowrap;
}
#starlist ul.sub li a:hover{background:var(--accent-soft);color:var(--accent)}

/* 顶部右侧 登录/注册 */
.navbox a[href*="login"],.navbox a[href*="reg"],.navbox a[href="member"],.navbox a[href="member/"]{
  line-height:52px !important;
  color:rgba(255,255,255,.85) !important;
  font-size:13.5px;
}
.navbox a[href*="login"]:hover,.navbox a[href*="reg"]:hover{color:#fff !important}
/* 未登录：登录/注册 胶囊按钮组 */
.navbox a[href="member/login.php"],.navbox a[href="member/reg.php"]{
  display:inline-block;
  height:30px;
  line-height:28px !important;
  border-radius:15px;
  padding:0 16px;
  margin-top:11px;
  box-sizing:border-box;
  font-size:13.5px;
  text-align:center;
}
.navbox a[href="member/login.php"]{
  border:1px solid rgba(255,255,255,.42);
  color:#fff !important;
  background:transparent;
  margin-right:8px !important;
}
.navbox a[href="member/login.php"]:hover{
  border-color:#fff;
  background:rgba(255,255,255,.12);
}
.navbox a[href="member/reg.php"]{
  border:1px solid var(--accent);
  color:#fff !important;
  background:var(--accent);
  margin-right:14px;
}
.navbox a[href="member/reg.php"]:hover{
  border-color:var(--accent-2);
  background:var(--accent-2);
}

/* 搜索按钮（使用模板原始 bg.png 图标） */
.searchico{
  float:right;
  width:39px;height:39px;
  margin:0;
  margin-top:7px;
  background:url(../images/bg.png) no-repeat center !important;
  background-size:24px auto !important;
  cursor:pointer;
  transition:opacity .15s ease;
}
.searchico:hover{opacity:.85}
/* 搜索面板（默认收起；打开时由 .open 控制） */
.searchbox{
  position:absolute;
  left:0;right:0;top:52px;
  width:100%;
  margin:0;
  background:#fff;
  box-shadow:0 10px 26px rgba(0,0,0,.12);
  z-index:290;
  box-sizing:border-box;
  display:none;
}
.searchbox.open{display:block}

/* 桌面端：弹性下拉/收回动效（点击 .searchico 展开、点 X 收起） */
@media screen and (min-width:1024px){
  .searchbox{
    display:block;
    max-height:0;
    overflow:hidden;
    opacity:0;
    padding:0;
    border-top:1px solid transparent;
    transition:max-height .32s ease,opacity .22s ease,padding .32s ease;
  }
  .searchbox.open{
    max-height:120px;
    opacity:1;
    padding:10px 0;
    border-top:1px solid var(--line);
  }
}
.search{
  max-width:1200px;
  margin:0 auto;
  width:auto;
  padding:0 12px;
  display:block;
  background:none;
  border:0;
  border-radius:0;
}
.search form{display:flex;align-items:center;width:100%;max-width:640px;margin:0 auto}
.search input.input_text{
  flex:1 1 auto;
  border-radius:20px 0 0 20px;
  background:#f3f4f6;
  border:1px solid var(--line-2);
  height:40px;
  padding:0 18px;
  outline:none;
  font-size:14px;
  box-sizing:border-box;
}
.search input.input_text:focus{border-color:var(--accent);background:#fff}
.search input.input_submit{
  background:var(--accent);
  color:#fff;
  border:0;
  border-radius:0 20px 20px 0;
  height:40px;
  width:92px;
  flex:0 0 92px;
  cursor:pointer;
  font-size:14px;
  position:static;
  padding:0;
  box-sizing:border-box;
}
.search input.input_submit:hover{background:var(--accent-2)}
.searchclose{
  position:absolute;
  right:14px;top:50%;
  width:26px;height:26px;
  margin-top:-13px;
  border-radius:50%;
  background:#eef0f2 url(../images/close.png) center no-repeat;
  background-size:12px 12px;
  cursor:pointer;
  transition:background-color .15s ease;
}
.searchclose:hover{background-color:#e2e4e8}

/* PC：顶部导航固定不随滚动上滑 */
@media screen and (min-width:1024px){
  header{position:fixed;top:0;left:0;right:0;z-index:900}
  body{padding-top:52px}
  article{padding-top:22px}
}

/* ---------- 页面布局 ---------- */
.box,article{width:1200px}
article{padding:22px 0 40px}
.lbox{width:75.5%}
.rbox{width:23.5%}

/* ---------- 卡片统一 ---------- */
.whitebg{
  border-radius:var(--radius);
  background:var(--card);
  padding:20px 22px;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  margin-bottom:18px;
}
.whitebg:last-child{margin-bottom:0}
.htitle{
  position:relative;
  padding-left:13px;
  font-size:16.5px;
  font-weight:700;
  color:var(--ink);
  line-height:22px;
  border-bottom:1px solid var(--line);
  padding-bottom:12px;
  margin-bottom:16px;
}
.htitle:after{
  content:"";
  position:absolute;
  left:0;top:2px;
  height:18px;width:4px;
  border-radius:2px;
  background:var(--accent);
}
/* 压平旧 base 样式：hover 时竖条禁止拉宽遮住标题 */
.htitle:hover:after,.htitle:hover:before,
.htitle:active:after,.htitle:active:before{
  width:4px;
  transition:none;
}

/* ---------- 首页横幅 ---------- */
.banner{margin-bottom:0}
.banbox{width:100%;border-radius:var(--radius);overflow:hidden}
.fader{height:300px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#111}
.fader .slide img{height:300px;object-fit:cover}
.fader .prev,.fader .next{
  width:42px;height:42px;
  margin-top:-21px;
  opacity:0;
  background:rgba(20,24,30,.35) url(../images/left.png) center no-repeat;
  background-size:16px 16px;
  border-radius:50%;
  transition:all .18s ease;
}
.fader .next{background-image:url(../images/right.png)}
.banner:hover .fader_controls .page.prev{opacity:.85;left:14px}
.banner:hover .fader_controls .page.next{opacity:.85;right:14px}
.fader .prev:hover,.fader .next:hover{background-color:var(--accent);opacity:1 !important}
.fader .pager_list li{
  width:8px;height:8px;
  background:rgba(255,255,255,.6);
  border-radius:50%;
  box-shadow:0 0 0 1px rgba(0,0,0,.15);
  transition:all .16s ease;
}
.fader .pager_list li.active,.fader .pager_list li:hover{background:#fff;width:22px;border-radius:5px}

/* ---------- headline（桌面：右栏头条图卡；移动：焦点图下方左右并排） ---------- */
.lbox .headline{display:none}
.headline{width:100%;float:none;margin:0 0 18px}
.headline ul{height:300px}
.headline ul li{
  width:100%;
  height:145px;
  margin-bottom:10px;
  background:#16191d;
  border-radius:10px;
  overflow:hidden;
  position:relative;
}
.headline ul li:last-child{margin-bottom:0}
.headline ul li a{
  position:absolute;left:0;top:0;
  width:100%;height:100%;
  display:block;
  overflow:hidden;
  z-index:1;
}
.headline ul li img{width:100%;height:100%;object-fit:cover;opacity:.92;transition:transform .4s ease,opacity .3s ease}
.headline ul li:hover img{transform:scale(1.06);opacity:1}
.headline ul li span{
  position:absolute;
  left:0;right:0;bottom:0;top:auto;
  z-index:2;
  padding:5px 12px 6px;
  color:#fff;
  font-size:13px;
  text-align:left;
  line-height:1.4;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  height:auto;
  margin:0;
  background:rgba(7,10,15,.5);
  pointer-events:none;
}

/* ---------- 首页 tab_box ---------- */
.tab_box{margin-bottom:20px;padding:18px 22px 8px}
.tab_buttons{border-bottom:1px solid var(--line) !important;margin-bottom:4px}
.tab_buttons ul{overflow:hidden}
.tab_buttons li{
  float:left;
  width:auto;
  display:block;
  padding:0 2px;
  font-size:15px;
  line-height:44px;
  margin:0 24px 0 0;
  color:var(--text-2);
  border-radius:0;
  cursor:pointer;
  position:relative;
  transition:color .15s ease;
  background:transparent;
}
.tab_buttons li:hover{color:var(--ink)}
.tab_buttons li.newscurrent{
  color:var(--accent);
  font-weight:700;
  background:transparent;
  border-radius:0;
  box-shadow:none;
}
.tab_buttons li.newscurrent:after{
  content:"";
  display:block;
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:3px;
  border-radius:2px;
  background:var(--accent);
  width:100%;
}
/* 面板显隐：默认隐藏，JS 点击切换 .act */
.newstab .newsitem{display:none}
.newstab .newsitem:nth-child(1){display:block}
.newsitem{padding-top:2px;overflow:hidden}

/* ---- 左列：最新两篇大图卡片 ---- */
.newspic{width:31%;height:218px}
.newspic ul li{
  width:100%;
  height:104px;
  margin-bottom:10px;
  border-radius:8px;
  overflow:hidden;
  position:relative;
  background:#16191d;
}
.newspic ul li:last-child{margin-bottom:0}
.newspic ul li a{display:block;height:100%;position:relative}
.newspic ul li img{width:100%;height:100%;object-fit:cover;opacity:.92;transition:transform .4s ease}
.newspic ul li:hover img{transform:scale(1.06)}
.newspic ul li span{
  position:absolute;left:0;right:0;bottom:0;
  padding:18px 10px 6px;
  color:#fff;font-size:12.5px;
  line-height:1.4;
  text-align:left;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,0));
}

/* ---- 右列：纯文字列表 ---- */
.newslist{float:right;width:67%}
.newslist li{
  position:relative;
  padding:6px 0 6px 16px;
  border-bottom:1px dashed var(--line-2);
  background:none;
  height:auto;
  line-height:1.5;
  overflow:hidden;
}
.newslist li:last-child{border-bottom:0}
.newslist li i{
  position:absolute;left:0;top:15px;
  width:5px;height:5px;
  border-radius:50%;
  background:var(--muted);
}
.newslist li a{
  color:var(--text);
  font-size:14px;
  line-height:1.5;
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:400;
}
.newslist li a:hover{color:var(--accent)}
.newslist li:nth-child(1) a{color:var(--ink);font-weight:600}
.newslist li:nth-child(1) i{background:var(--accent)}
.newslist li p{
  margin:0 0 0 0;
  font-size:12.5px;
  color:var(--muted);
  line-height:1.6;
  height:auto;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.newslist li:nth-child(1) p{-webkit-line-clamp:2}
.newslist li:nth-child(1){padding-top:8px;padding-bottom:10px}

/* 桌面分类面板：两张大头条卡 + 下方文字列表 */
@media screen and (min-width:1024px){
  .newstab .newsitem:nth-child(1),
  .newstab .newsitem.act{display:block}
  .newstab .newsitem .newspic{
    display:block;
    width:100%;
    height:auto;
    margin-bottom:6px;
  }
  .newstab .newsitem .newspic ul{
    display:flex;
    flex-direction:row;
    gap:14px;
    overflow:hidden;
  }
  .newstab .newsitem .newspic ul li{
    flex:1 1 0;
    height:auto;
    margin:0;
    aspect-ratio:16/6.4;
  }
  .newstab .newsitem .newspic ul li a{display:block;height:100%}
  .newstab .newsitem .newspic ul li img{width:100%;height:100%;object-fit:cover}
  .newstab .newsitem .newslist{
    float:none;
    width:auto;
    display:block;
    padding-left:0;
  }
}

/* ---------- 专题 zhuanti（首页特别推荐） ---------- */
.whitebg.zhuanti{display:block}
.zhuanti ul{padding:6px 0 0;display:flex;flex-wrap:wrap;margin:0 -9px}
.zhuanti ul:before,.zhuanti ul:after{display:none}
.zhuanti li{
  width:33.333%;
  box-sizing:border-box;
  border:0;
  padding:9px;
  float:none;
}
.zhuanti li:hover{background:none;box-shadow:none}
.ztpic{
  width:100%;
  height:118px;
  border-radius:10px;
  overflow:hidden;
  display:block;
  background:#eef0f3;
}
.ztpic img{width:100%;height:100%;min-height:0;object-fit:cover;transition:transform .4s ease}
.zhuanti li:hover img{transform:scale(1.05)}
.zhuanti li b{
  height:auto;
  line-height:1.5;
  margin:9px 2px 3px;
  font-size:14.5px;
  color:var(--ink);
  font-weight:600;
  white-space:nowrap;
}
.zhuanti li b a{color:inherit}
.zhuanti li b a:hover{color:var(--accent)}
.zhuanti li span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  height:40px;
  margin:0 2px;
  font-size:12.5px;
  line-height:20px;
  color:var(--muted);
}
.zhuanti li a.readmore{
  display:none;
}

/* ---------- 博客/新闻列表（首页最新博文、news、search 共用） ---------- */
.bloglist ul>li{
  position:relative;
  padding:18px 0 20px 228px;
  min-height:142px;
  border-bottom:1px solid var(--line);
}
.bloglist ul>li:last-child{border-bottom:0}
.bloglist ul>li>span.blogpic{
  position:absolute;
  left:0;top:18px;
  width:200px;height:142px;
  border-radius:10px;
  overflow:hidden;
  background:#eef0f3;
  box-shadow:0 1px 3px rgba(0,0,0,.06);
}
.bloglist ul>li>span.blogpic img{width:100%;height:100%;object-fit:cover}
.bloglist ul>li>span.blogpic i{
  position:absolute;
  left:8px;top:8px;
  background:rgba(23,26,30,.66);
  color:#fff;
  border-radius:5px;
  padding:1px 8px;
  font-size:12px;
  font-style:normal;
  z-index:2;
}
.bloglist .blogtitle{
  font-size:17px;
  margin:0 0 8px;
  font-weight:600;
  line-height:1.5;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.bloglist .blogtitle a{color:var(--ink)}
.bloglist .blogtitle a:hover{color:var(--accent)}
.bloglist .blogtext{
  color:var(--text-2);
  font-size:13.5px;
  margin:0 0 8px;
  line-height:1.75;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.bloglist .bloginfo{color:var(--muted);font-size:12.5px;margin:0 0 6px}
.bloglist .bloginfo span{margin-right:16px;display:inline-block}
.bloglist .bloginfo a{color:var(--text-2)}
.bloglist .bloginfo a:hover{color:var(--accent)}
.bloglist .viewmore{
  position:absolute;
  right:0;bottom:20px;
  background:#fff;
  color:var(--accent);
  font-size:13px;
  padding:3px 14px;
  border-radius:14px;
  border:1px solid rgba(178,58,43,.4);
}
.bloglist .viewmore:hover{background:var(--accent);color:#fff;border-color:var(--accent)}

/* ---------- 目录分类条 lanmu ---------- */
.lanmu{display:flex;align-items:center;flex-wrap:wrap;gap:0 16px;padding:18px 22px}
.lanmu img{height:74px;width:74px;object-fit:cover;border-radius:10px}
.lanmu h1{font-size:21px;margin:0;font-weight:700;width:100%;flex:1 1 auto}
.lanmu p{margin:0;color:var(--text-2);width:100%}

/* ---------- 搜索结果（全站混排，标题相关度排序） ---------- */
.sr-result .sr-bar{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.sr-result .sr-kw{margin:0;font-size:19px;font-weight:700;line-height:1.6;color:var(--ink);overflow-wrap:anywhere;min-width:0}
.sr-result .sr-total{margin-left:auto;flex:none;white-space:nowrap;font-size:12px;color:#5f6b7a;background:#f2f4f6;border:1px solid #e3e7ec;border-radius:999px;padding:5px 15px;font-weight:600;line-height:1.5}
.sr-result .sr-empty{padding:38px 16px;text-align:center;color:var(--muted)}
.sr-result .sr-empty b{display:block;font-size:18px;font-weight:700;color:var(--text-2);line-height:1.6}
.sr-result .sr-empty p{margin:8px 0 0;font-size:13.5px;line-height:1.9}
.sr-result .sr-empty a{color:var(--accent);margin:0 3px}
ol.sr-list{list-style:none;margin:0;padding:0}
.sr-item{position:relative;display:grid;grid-template-columns:156px minmax(0,1fr);column-gap:16px;align-items:flex-start;padding:12px 2px;border-bottom:1px solid var(--line);transition:background .15s ease}
.sr-item:last-child{border-bottom:0}
.sr-item.np{grid-template-columns:minmax(0,1fr)}
.sr-thumb{display:block;width:156px;height:102px;border-radius:10px;overflow:hidden;background:var(--bg);border:1px solid var(--line-2);text-decoration:none}
.sr-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.sr-item:hover .sr-thumb img{transform:scale(1.06)}
.sr-item.sq .sr-thumb{height:156px}
.sr-body{min-width:0;position:relative;display:flex;flex-direction:column}
.sr-item .sr-body{min-height:102px}
.sr-item.sq .sr-body{min-height:156px}
.sr-item.np .sr-body{min-height:0}
.sr-title{margin:0;font-size:16px;font-weight:600;line-height:26px;max-height:52px;overflow:hidden}
.sr-title .sr-txt{color:var(--ink);text-decoration:none;transition:color .15s ease;overflow-wrap:anywhere}
.sr-title .sr-txt:hover{color:var(--accent)}
.sr-type{float:right;margin:3px 0 0 8px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;line-height:1;padding:4px 7px;border-radius:5px;font-style:normal;letter-spacing:.2px}
.sr-type.t-product{color:#b23a2b;background:#fdebe9}
.sr-type.t-course{color:#2b6bd8;background:#e9f0fd}
.sr-type.t-news{color:#12804a;background:#e8f6ef}
.sr-type.t-page{color:#5a6572;background:#edf0f3}
.sr-ex{margin:3px 0 0;color:var(--text-2);font-size:13px;line-height:1.6;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sr-meta{margin-top:auto;padding-top:4px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px;color:var(--text-2);font-size:12px;line-height:1.6}
.sr-meta .sr-ml{display:inline-flex;align-items:center}
.sr-meta .sr-mr{margin-left:auto;display:inline-flex;align-items:center;color:var(--muted)}
.sr-meta a{color:var(--text-2);text-decoration:none}
.sr-meta a:hover{color:var(--accent)}
em.hl{font-style:normal;font-weight:700;color:var(--accent)}
.sr-pager{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:18px;float:none;height:auto;line-height:normal}
.sr-pager .pg-wrap{flex:1 1 auto;min-width:0}
.sr-pager .pg-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}
.sr-pager a,.sr-pager b{min-width:34px;height:34px;padding:0 6px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-2);border-radius:8px;color:var(--text-2);font-size:13px;font-weight:400;text-decoration:none;background:#fff;transition:all .15s ease}
.sr-pager a:hover{color:var(--accent);border-color:var(--accent)}
.sr-pager b.cur{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;cursor:default}
.sr-pager a.pg-nav{padding:0 13px}
.sr-pager a.is-dis{opacity:.4;pointer-events:none}
.sr-pager .pg-sum{font-size:12px;color:var(--text-2);white-space:nowrap}
@media (max-width:767px){
  article.srpage{width:100%}
  .srpage .whitebg.sr-result{padding:12px 10px 30px;border-radius:8px}
  .sr-item{grid-template-columns:90px minmax(0,1fr);column-gap:10px;padding:11px 0}
  .sr-item.np{grid-template-columns:minmax(0,1fr)}
  .sr-item .sr-thumb{width:90px;height:60px}
  .sr-item.sq .sr-thumb{height:90px}
  .sr-item .sr-body{min-height:60px}
  .sr-item.sq .sr-body{min-height:90px}
  .sr-item.np .sr-body{min-height:0}
  .sr-title{font-size:15px;line-height:24px;max-height:48px}
  .sr-type{margin:2px 0 0 6px;padding:3px 6px}
  .sr-ex{font-size:12.5px;line-height:1.55;-webkit-line-clamp:2}
  .sr-item:not(.np) .sr-ex{display:none}
  .sr-meta{padding-top:2px;gap:2px 10px;font-size:11.5px}
  .sr-pager{margin-top:14px;justify-content:center;row-gap:8px}
  .sr-pager .pg-wrap{flex:1 1 100%}
  .sr-pager .pg-links{justify-content:center;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .sr-pager .pg-links::-webkit-scrollbar{display:none}
  .sr-pager .pg-sum{flex:1 1 100%;text-align:center;line-height:1.9;color:var(--text-2)}
}
@media (min-width:768px){
  .sr-pager{position:relative;justify-content:center}
  .sr-pager .pg-wrap{margin:0 auto}
  .sr-pager .pg-links{justify-content:center}
  .sr-pager .pg-sum{position:absolute;right:0;top:50%;transform:translateY(-50%)}
}
@media (max-width:1023px){
  article.srpage .rbox .tuijian,
  article.srpage .rbox .wenzi,
  article.srpage .rbox .tongji{display:none}
}

/* ---------- 商品列表网格 ---------- */
ul.xiangsi:has(li.tscc-pic){font-size:0}
ul.xiangsi li.tscc-pic{
  display:inline-block;
  vertical-align:top;
  width:24.4%;
  margin:0 .3% 2%;
  font-size:0;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
ul.xiangsi li.tscc-pic:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow-lg);
  border-color:var(--line-2);
}
ul.xiangsi li.tscc-pic>a{display:block}
ul.xiangsi li.tscc-pic i{
  display:block;
  position:relative;
  width:100%;
  padding-top:72%;
  overflow:hidden;
  background:#f3f4f6;
}
ul.xiangsi li.tscc-pic i img{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
ul.xiangsi li.tscc-pic:hover i img{transform:scale(1.06)}
ul.xiangsi li.tscc-pic p{
  font-size:13.5px;
  line-height:1.5;
  height:40px;
  margin:11px 12px 4px;
  color:var(--text);
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  text-overflow:ellipsis;
  white-space:normal;
  text-align:left;
  font-weight:500;
}
ul.xiangsi li.tscc-pic p:hover{color:var(--accent)}
ul.xiangsi li.tscc-pic>a>span{
  display:block;
  margin:4px 12px 13px;
  font-size:16px;
  font-weight:700;
  color:var(--price);
  text-align:left;
}
ul.xiangsi li.tscc-pic>a>span b{
  font-weight:400;
  color:#fff;
  background:#d8432e;
  font-size:11px;
  border-radius:4px;
  padding:0 6px;
  vertical-align:2px;
  margin-left:6px;
}
/* 随机图文 / 相关阅读（新闻卡片式 xiangsi，非商品 tscc） */
ul.xiangsi li:not(.tscc-pic){width:25%;float:left;overflow:hidden}
ul.xiangsi li:not(.tscc-pic)>a{
  display:block;
  margin:0 8px 16px;
  padding:0 0 12px;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow);
  transition:transform .18s ease,box-shadow .18s ease;
}
ul.xiangsi li:not(.tscc-pic)>a:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
ul.xiangsi li:not(.tscc-pic)>a>i{
  display:block;
  height:130px;
  overflow:hidden;
  margin-bottom:10px;
  background:#f3f4f6;
}
ul.xiangsi li:not(.tscc-pic)>a>i img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .35s ease;
}
ul.xiangsi li:not(.tscc-pic)>a:hover i img{transform:scale(1.06)}
ul.xiangsi li:not(.tscc-pic)>a>p{
  font-size:14px;
  font-weight:600;
  color:var(--ink);
  line-height:1.5;
  margin:0 10px 6px;
  padding:0;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
  text-overflow:clip;
}
ul.xiangsi li:not(.tscc-pic)>a>p:hover{color:var(--accent)}
ul.xiangsi li:not(.tscc-pic)>a>span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:var(--muted);
  font-size:12.5px;
  line-height:1.6;
  margin:0 10px;
  padding:0;
  text-align:left;
  white-space:normal;
}

/* ---------- 分页（jquery.pager 生成 ul.pages>li） ---------- */
/* 分页与卡片底缘之间的留白收紧 */
body #pager{margin-bottom:-12px}
.pagelist{clear:both;text-align:center;padding:10px 0 4px;margin:0}
.met_pager{display:flex;justify-content:center;padding:10px 0 6px}
/* 移动优先：圆形按钮。首页/末页显示单字“首/末”，上一页/下一页只显示 <> 箭头图标 */
body #pager ul.pages{
  display:inline-flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:3px;
  margin:0;
  padding:0;
  list-style:none;
  font-size:0;
  white-space:nowrap;
}
body #pager ul.pages li{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:34px;
  height:34px;
  min-width:34px;
  padding:0;
  font-size:14px;
  line-height:1;
  text-align:center;
  color:var(--text-2);
  background:#fff;
  border:1px solid var(--line-2);
  border-radius:50%;
  cursor:pointer;
  user-select:none;
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
body #pager ul.pages li .arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-style:normal;
}
body #pager ul.pages li .arrow svg{width:18px;height:18px;display:block}
body #pager ul.pages li .lbl,
body #pager ul.pages li .l{display:none}
body #pager ul.pages li .s{display:inline}
body #pager ul.pages li:hover{color:var(--accent);border-color:var(--accent)}
body #pager ul.pages li.pgCurrent{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
  font-weight:700;
  cursor:default;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
}
body #pager ul.pages li.pgEmpty{display:none}
body #pager ul.pages li.pgFirst,
body #pager ul.pages li.pgLast,
body #pager ul.pages li.pgPrev,
body #pager ul.pages li.pgNext{
  color:var(--accent);
  background:#fff;
  border-color:var(--accent);
}
body #pager ul.pages li.pgFirst:hover,
body #pager ul.pages li.pgLast:hover,
body #pager ul.pages li.pgPrev:hover,
body #pager ul.pages li.pgNext:hover{
  color:#fff;
  background:var(--accent);
}
body #pager ul.pages li.pgSep{
  width:auto;
  min-width:auto;
  border:0;
  background:none;
  color:var(--muted);
  font-size:14px;
  cursor:default;
  pointer-events:none;
  padding:0;
}
/* PC 宽屏：分页显示完整文字；触屏一律用 <> 图标 */
@media (min-width:768px) and (hover:hover) and (pointer:fine){
  body #pager ul.pages{gap:7px}
  body #pager ul.pages li{width:auto;height:34px;min-width:34px;padding:0 7px;font-size:14px;border-radius:9px}
  body #pager ul.pages li .lbl,
  body #pager ul.pages li .l{display:inline;font-size:13px;font-weight:600;font-style:normal}
  body #pager ul.pages li .s{display:none}
  body #pager ul.pages li .arrow svg{width:15px;height:15px}
  body #pager ul.pages li.pgPrev .arrow,
  body #pager ul.pages li.pgNext .arrow{display:none}
  body #pager ul.pages li.pgFirst,
  body #pager ul.pages li.pgLast,
  body #pager ul.pages li.pgPrev,
  body #pager ul.pages li.pgNext{width:auto;min-width:0;padding:0 12px;gap:4px;border-radius:17px}
}

/* ---------- 空列表提示 ---------- */
ul.xiangsi .empty-tip{width:100%!important;list-style:none;float:none!important;margin:0}
ul.xiangsi li.empty-tip>.empty{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  padding:46px 0 40px;text-align:center;color:var(--muted);
}
ul.xiangsi li.empty-tip>.empty i{
  width:58px;height:58px;border-radius:16px;
  background:var(--accent-soft);position:relative;
}
ul.xiangsi li.empty-tip>.empty i::before{
  content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:24px;height:24px;border:2px solid var(--accent);border-radius:50%;
  border-right-color:transparent;animation:empty-spin 1s linear infinite;
}
@keyframes empty-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
ul.xiangsi li.empty-tip>.empty p{font-size:14px;margin:0}
ul.xiangsi li.empty-tip>.empty a{
  font-size:13px;color:var(--accent);border:1px solid var(--accent);
  border-radius:var(--radius-sm);padding:7px 18px;transition:all .18s ease;
}
ul.xiangsi li.empty-tip>.empty a:hover{background:var(--accent);color:#fff}


/* ---------- 课程介绍页 ---------- */
.whitebg.course-cover{display:flex;gap:26px;padding:24px 26px;margin-bottom:18px}
.course-cover .cover-pic{flex:0 0 300px;max-width:300px;border-radius:var(--radius);overflow:hidden;background:var(--bg);box-shadow:var(--shadow)}
.course-cover .cover-pic img{display:block;width:100%;height:auto;min-height:170px;object-fit:cover}
.course-cover .cover-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.course-cover .cover-info h1{font-size:24px;color:var(--ink);margin:0 0 12px;line-height:1.4}
.course-cover .cover-info .pd-price{margin:4px 0 12px}
.course-cover .cover-info .pd-paid{margin:2px 0 12px}
.course-cover .cover-info .pd-paid{display:flex;align-items:center;gap:12px;padding:11px 16px;border-radius:12px;border:1px solid rgba(31,157,97,.18);background:linear-gradient(180deg,#f0fbf5 0%,#e2f4ea 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 1px 3px rgba(31,157,97,.06)}
.course-cover .cover-info .pd-paid .pd-paid-ck{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#1f9d61;position:relative;box-shadow:0 2px 6px rgba(31,157,97,.35)}
.course-cover .cover-info .pd-paid .pd-paid-ck::after{content:"";position:absolute;left:6px;top:3px;width:11px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.course-cover .cover-info .pd-paid .pd-paid-t{min-width:0}
.course-cover .cover-info .pd-paid .pd-paid-t b{display:block;font-size:18px;line-height:1.25;color:#177a4a;font-weight:700;font-style:normal;letter-spacing:.4px}
.course-cover .cover-info .pd-paid .pd-paid-t .pd-paid-s{display:block;font-size:12.5px;line-height:1.3;color:#34905f;font-weight:500;font-style:normal;margin-top:3px;letter-spacing:.2px}
.course-btns{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.course-btns .btn-go{
  background:var(--accent);color:#fff;border-radius:var(--radius-sm);
  padding:11px 34px;font-size:16px;transition:background .18s ease;text-decoration:none;
}
.course-btns .btn-go:hover{background:var(--accent-2);color:#fff}
.course-btns .btn-cart{
  color:var(--text-2);border:1px solid var(--line-2);border-radius:var(--radius-sm);
  padding:11px 26px;font-size:14px;transition:all .18s ease;text-decoration:none;
}
.course-btns .btn-cart:hover{color:var(--accent);border-color:var(--accent)}
@media (max-width:760px){
  .whitebg.course-cover{flex-direction:column;padding:16px}
  .course-cover .cover-pic{flex:0 0 auto;max-width:100%}
  .course-cover .cover-info h1{font-size:20px}
}

/* ---------- 正文文章 ---------- */
.con_text{overflow-wrap:break-word}
.con_text img{border-radius:8px}
.content_box.whitebg{padding:24px 28px}
.content_box h1,.content_box .con_tilte{font-size:22px}
.con_tilte{margin:0 0 12px}
.con_text h2{font-size:20px;margin:18px 0 10px;padding-left:10px;border-left:4px solid var(--accent)}
.con_text p{margin:0 0 12px;color:var(--text);font-size:14.5px;line-height:1.9}
.con_text ul,.con_text ol{padding-left:22px}
.con_text a{color:var(--accent)}
.con_text table{border-collapse:collapse;width:100%}
.con_text table td,.con_text table th{border:1px solid var(--line-2);padding:8px 12px;font-size:13.5px}

/* ---------- 文章详情页（.artinfo）美化 ---------- */
.artinfo .content_box.whitebg{padding:26px 30px 18px}
.artinfo h1.con_tilte{font-size:25px;line-height:1.5;font-weight:700;color:var(--ink);margin:0 0 6px}
.artinfo p.bloginfo{display:flex;flex-wrap:wrap;align-items:center;column-gap:18px;row-gap:4px;margin:2px 0 20px;padding-bottom:14px;border-bottom:1px dashed var(--line-2);color:var(--muted);font-size:13px;line-height:1.7}
.artinfo p.bloginfo a{color:var(--accent);font-weight:500}
.artinfo p.bloginfo span{white-space:nowrap}
.artinfo .con_text{color:var(--text);overflow-wrap:break-word}
.artinfo .con_text p{font-size:15px;line-height:2;margin:0 0 16px;text-align:justify}
.artinfo .con_text img{border-radius:8px;margin:6px 0}
.artinfo .nextinfo{margin-top:22px;padding-top:16px;border-top:1px solid var(--line-2)}
.artinfo .nextinfo p{font-size:14px;line-height:1.9;color:var(--text-2);margin:0 0 10px}
.artinfo .nextinfo p:last-child{margin-bottom:0}
.artinfo .nextinfo a{color:var(--text-2)}
.artinfo .nextinfo a:hover{color:var(--accent)}
@media (max-width:768px){
  body.artinfo article{width:100%}
  .artinfo .content_box.whitebg{padding:20px 12px 8px}
  .artinfo h1.con_tilte{font-size:20px;line-height:1.5}
  .artinfo p.bloginfo{column-gap:12px;font-size:12.5px;margin:2px 0 14px;padding-bottom:12px}
  .artinfo .con_text p{font-size:15.5px;line-height:1.95}
}

/* ---------- 详情页“随机图文”双列卡片（与文章分类卡片同形态） ---------- */
ul.xiangsi.art-rand{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  row-gap:12px;
  column-gap:6px;
  margin:0 -10px 0;
  padding:0;
  list-style:none;
}
ul.xiangsi.art-rand li{
  display:block;
  width:auto;
  min-width:0;
  height:auto;
  margin:0;
  float:none;
  box-sizing:border-box;
  font-size:0;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
ul.xiangsi.art-rand li:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--line-2)}
ul.xiangsi.art-rand li>a{display:flex;flex-direction:column;height:auto;text-decoration:none}
/* 主图按原图比例完整显示（不裁剪） */
ul.xiangsi.art-rand li>a>i{
  display:block;
  width:100%;
  position:relative;
  overflow:hidden;
  background:#f4f5f7;
  line-height:0;
  aspect-ratio:auto;
}
ul.xiangsi.art-rand li>a>i img{
  display:block;
  width:100%;
  height:auto;
  object-fit:fill;
  transition:none;
}
ul.xiangsi.art-rand li>a>p{
  margin:8px 9px 3px;
  font-size:13.5px;
  line-height:1.5;
  color:var(--text);
  font-weight:600;
  display:block;
}
ul.xiangsi.art-rand li>a>p em{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-style:normal;
}
ul.xiangsi.art-rand li>a>p:hover{color:var(--accent)}
ul.xiangsi.art-rand li>a>span{
  margin:0 9px 0;
  font-size:12px;
  line-height:1.6;
  color:var(--muted);
  display:block;
  height:auto;
  padding:0;
  -webkit-line-clamp:none;
  text-overflow:clip;
}
ul.xiangsi.art-rand li>a>span em{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-style:normal;
  line-height:1.4;
}
@media (min-width:1024px){
  ul.xiangsi.art-rand{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:12px}
}

/* ---------- 侧栏 ---------- */
.notice ul>li{line-height:1.5;padding:6px 0 6px 14px;position:relative;border-bottom:1px dashed var(--line-2)}
.notice ul>li:last-child{border-bottom:0}
.notice ul>li:before{content:"";position:absolute;left:0;top:14px;width:5px;height:5px;border-radius:50%;background:var(--muted)}
.notice ul>li a{font-size:13.5px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
.notice ul>li a:hover{color:var(--accent)}

.topnews{border-radius:10px;overflow:hidden;max-height:118px;margin:12px 0}
.topnews img{opacity:1;height:118px;object-fit:cover;transition:transform .4s ease,opacity .3s ease}
.topnews:hover img{opacity:.96;transform:scale(1.05)}
.topnews span{
  background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,0));
  padding:34px 12px 9px;
  font-size:13px;
  line-height:1.5;
  left:0;
  right:0;
  bottom:0;
  top:auto;
  height:auto;
  text-align:left;
}
.whitebg.paihang ul>li,.whitebg.wenzi ul>li{
  border-bottom:1px dashed var(--line-2);
  line-height:1.5;
  padding:7px 0 7px 18px;
  position:relative;
  font-size:13.5px;
  height:auto;
  margin-bottom:0;
  overflow:hidden;
}
.whitebg.paihang ul>li:last-child,.whitebg.wenzi ul>li:last-child{border-bottom:0}
.whitebg.paihang ul>li i{
  position:absolute;
  left:0;top:9px;
  width:14px;height:14px;
  border-radius:50%;
  background:#c9ced4;
  font-style:normal;
  text-align:center;
  line-height:14px;
  font-size:10px;
  color:#fff;
  font-weight:600;
}
.whitebg.paihang ul>li:first-child i,.whitebg.paihang ul>li:nth-child(2) i,.whitebg.paihang ul>li:nth-child(3) i{background:var(--accent)}
.whitebg.paihang ul>li i::before{font-size:9px;line-height:14px;width:14px}
.whitebg.paihang ul>li a,.whitebg.wenzi ul>li a{
  color:var(--text-2);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  display:block;
}
.whitebg.paihang ul>li a:hover,.whitebg.wenzi ul>li a:hover{color:var(--accent)}
.whitebg.wenzi ul>li:before{display:none}
.whitebg.tuijian ul>li{
  display:flex;
  gap:10px;
  padding:9px 0;
  border-bottom:1px dashed var(--line-2);
  align-items:flex-start;
  height:auto;
  margin-bottom:0;
}
.whitebg.tuijian ul>li:last-child{border-bottom:0}
.whitebg.tuijian ul>li a{display:flex;gap:10px;width:100%;overflow:hidden}
.whitebg.tuijian ul>li i{width:74px;height:54px;overflow:hidden;border-radius:7px;flex:0 0 auto;background:#eef0f3}
.whitebg.tuijian ul>li i img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.whitebg.tuijian ul>li:hover i img{transform:scale(1.08)}
.whitebg.tuijian ul>li p{
  margin:0;font-size:13.5px;color:var(--ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.55;
  align-self:center;
}
.whitebg.tongji ul>li{font-size:13px;color:var(--text-2);padding:5px 0}
.whitebg.tongji ul>li b{color:var(--ink)}
.whitebg.tongji .tongji_gzh img{width:132px;border-radius:8px;display:block;margin:6px auto 0}

/* ---------- footer ---------- */
footer{
  background:var(--head);
  color:rgba(255,255,255,.6);
  padding:34px 0 36px;
  margin-top:8px;
  font-size:13px;
  border-top:0;
}
footer .box{overflow:hidden}
footer .wxbox{display:none}
footer .endnav{float:none;width:auto;margin:0;text-align:center}
footer .endnav p{margin:4px 0;line-height:1.9;font-size:13px;color:rgba(255,255,255,.55)}
footer .endnav p b{color:#fff;font-size:13px}
footer .endnav a{color:rgba(255,255,255,.55)}
footer .endnav a:hover{color:#fff}
footer .top{
  right:22px;
  bottom:34px;
  width:42px;height:42px;
  background:rgba(255,255,255,.08);
  border-radius:10px;
  position:fixed;
  z-index:280;
  box-shadow:0 4px 14px rgba(0,0,0,.22);
  transition:background .18s ease,transform .18s ease;
  opacity:0;
  visibility:hidden;
}
footer .top.show{opacity:1;visibility:visible}
footer .top::before{
  content:"";
  position:absolute;
  left:50%;top:17px;
  width:9px;height:9px;
  border-top:2px solid #fff;
  border-left:2px solid #fff;
  transform:translateX(-50%) rotate(45deg);
}
footer .top:hover{background:var(--accent);transform:translateY(-2px)}
footer a{color:rgba(255,255,255,.6)}
footer a:hover{color:#fff}

/* ---------- 移动底部导航 ---------- */
.tab_bar{
  box-shadow:0 -6px 20px rgba(0,0,0,.08);
  border-radius:14px 14px 0 0;
}
.tab_bar .tab{color:#8a93a3;font-weight:500}
.tab_bar .active{color:var(--accent) !important}

/* 商品详情页（pd 前缀） */
article.pdetail{width:auto}
.pd-page{max-width:1200px;margin:0 auto;padding:22px 14px 40px}
.pd-bread{
  color:var(--muted);
  font-size:13px;
  margin:0 0 12px 2px;
}
.pd-bread a{color:var(--muted)}
.pd-bread a:hover{color:var(--accent)}
.pd-bread .pd-cur{color:var(--text-2)}

/* 主卡 */
.pd-main{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:24px 28px 26px;
  margin-bottom:20px;
}
.pd-top{display:flex;gap:32px}

/* 图廊 */
.pd-gallery{width:380px;flex:0 0 auto}
.pd-stage{
  width:100%;
  padding-top:100%;
  position:relative;
  background:#f4f5f7;
  border-radius:12px;
  overflow:hidden;
  border:1px solid var(--line);
}
.pd-stage img{
  position:absolute;top:0;left:0;
  width:100%;height:100%;
  object-fit:cover;
}
.pd-thumbs{display:flex;gap:8px;margin-top:10px}
.pd-thumbs img{
  width:60px;height:60px;
  object-fit:cover;
  border-radius:8px;
  border:1px solid var(--line-2);
  cursor:pointer;
  opacity:.78;
  transition:all .15s ease;
}
.pd-thumbs img.on,.pd-thumbs img:hover{border-color:var(--accent);opacity:1}

/* 信息区 */
.pd-info{flex:1 1 auto;min-width:0}
.pd-info h1{
  font-size:20px;
  line-height:1.5;
  margin:2px 0 6px;
  font-weight:700;
  display:inline;
  vertical-align:middle;
}
.pd-tags{margin-left:8px;display:inline-block;vertical-align:middle}
.pd-tags a{
  display:inline-block;
  margin:0 4px 4px 0;
  padding:1px 10px;
  font-size:12px;
  color:var(--text-2);
  border:1px solid var(--line-2);
  border-radius:20px;
}
.pd-tags a:hover{color:var(--accent);border-color:var(--accent)}
.pd-self{
  font-style:normal;
  background:var(--accent);
  color:#fff;
  font-size:11px;
  padding:1px 8px;
  border-radius:5px;
  margin-right:6px;
  vertical-align:2px;
  display:inline-block;
  letter-spacing:.5px;
}
.pd-self.empty{display:none}

/* 副信息行 */
.pd-sub{
  display:flex;
  flex-wrap:wrap;
  gap:6px 0;
  color:var(--muted);
  font-size:12.5px;
  border-bottom:1px dashed var(--line);
  padding:0 0 12px;
  margin:2px 0 0;
}
.pd-sub span{display:inline-flex;align-items:center;margin-right:20px;position:relative}
.pd-sub span i{
  width:14px;height:14px;margin-right:6px;
  font-style:normal;
  font-size:0;
  background:center/contain no-repeat;
  opacity:.55;
}

/* 价格条 */
.pd-price{
  margin:14px 0 6px;
  background:#faf6f4;
  border:1px solid #f0e4df;
  border-radius:10px;
  padding:14px 18px 12px;
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;
  gap:4px 12px;
}
.pd-price .pd-lab{color:#8a6a5e;font-size:13px;margin-right:2px}
.pd-price .pd-now{font-size:30px;font-weight:800;color:var(--price);line-height:1}
.pd-price .pd-now small{font-size:18px;font-weight:600;margin-right:3px}
.pd-price .pd-orig{color:var(--muted);text-decoration:line-through;font-size:14px;padding-bottom:4px}
.pd-price .pd-lim{
  background:var(--accent);
  color:#fff;
  font-size:12px;
  padding:2px 9px;
  border-radius:4px;
  margin-bottom:6px;
  font-weight:500;
}
.pd-price .pd-save{font-size:12px;color:#8a6a5e;margin-bottom:6px}

/* vip 徽章 */
.pd-vipwrap{display:inline-block;margin-bottom:6px}
.pd-vip,.pd-svip{
  font-style:normal;
  font-size:12.5px;
  padding:3px 12px;
  border-radius:4px;
  margin-right:6px;
  font-weight:600;
  cursor:pointer;
  vertical-align:middle;
  border:1px solid transparent;
  transition:all .15s ease;
}
.pd-vip{background:#31363d;color:#e8d08a;border-color:#4a5058}
.pd-vip:hover{border-color:#e8d08a}
.pd-svip{background:#f0d48a;color:#5d4700;border-color:#dbb95e}
.pd-svip:hover{border-color:#8a6a10}
.pd-only{
  display:inline-block;
  font-style:normal;
  border:1px solid #31363d;
  color:#31363d;
  font-size:12px;
  padding:2px 10px;
  border-radius:4px;
  margin:4px 6px 6px 0;
  background:#faf3e0;
  font-weight:600;
}

/* 倒计时 */
.pd-count{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#31363d;
  color:#fff;
  padding:7px 14px;
  border-radius:8px;
  font-size:13px;
  margin:12px 0 2px;
}
.pd-count b{font-weight:600;color:#e8d08a;margin-right:4px}
.pd-count .pd-cd{
  background:#171a1e;
  padding:2px 8px;
  border-radius:5px;
  font-family:Consolas,Menlo,monospace;
  font-size:13.5px;
  letter-spacing:1px;
  color:#e8d08a;
  font-weight:600;
}

/* 数量与表单 */
.pd-opt-gap{margin:16px 0 0}
.pd-opt-gap{display:none}
.pd-opt-gap.has-spec{display:block}
.pd-field{padding:0 0 4px}
.pd-field .pd-fname{
  display:block;
  color:var(--muted);
  font-size:13px;
  margin-bottom:9px;
}
.pd-opts{display:flex;flex-wrap:wrap;gap:8px}
.pd-opt{
  display:inline-block;
  position:relative;
  border:1px solid var(--line-2);
  border-radius:7px;
  padding:5px 14px;
  cursor:pointer;
  font-size:13.5px;
  color:var(--text-2);
  background:#fff;
  transition:all .14s ease;
  user-select:none;
}
.pd-opt input{position:absolute;opacity:0;pointer-events:none}
.pd-opt:hover{border-color:var(--accent);color:var(--accent)}
.pd-opt.checked{
  border-color:var(--accent);
  background:var(--accent-soft);
  color:var(--accent);
  font-weight:600;
}
.pd-opt.disabled{opacity:.5;cursor:not-allowed;border-color:var(--line);color:var(--muted)}

/* 数量 + 库存 */
.pd-buyrow{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}
.pd-num{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:7px;overflow:hidden}
.pd-num button{
  border:0;background:#f3f4f6;color:var(--text);
  width:32px;height:32px;line-height:1;cursor:pointer;font-size:17px;
  transition:background .14s ease;
}
.pd-num button:hover{background:#e6e8eb}
.pd-num input{
  width:54px;height:32px;border:0;text-align:center;
  border-left:1px solid var(--line-2);border-right:1px solid var(--line-2);
  font-size:14px;color:var(--text);outline:none;
}
.pd-rest{color:var(--muted);font-size:13px}
.pd-rest em{color:var(--text-2);font-style:normal;font-weight:600}

/* 服务承诺 */
.pd-promise{
  display:flex;
  gap:8px;
  margin-top:16px;
  padding-top:14px;
  border-top:1px dashed var(--line);
  flex-wrap:wrap;
}
.pd-promise span{
  font-size:12.5px;
  color:var(--text-2);
  background:var(--bg);
  padding:4px 12px;
  border-radius:13px;
}
.pd-promise span i{color:var(--accent);margin-right:4px;font-style:normal}

/* 按钮区 */
.pd-actions{margin-top:18px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
#buy{width:100%}
#buy .pd-btns{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#buy input.pd-buy,#buy button.pd-buy,#buy a.pd-buy{
  display:inline-block;
  font-size:15.5px;
  height:44px;
  line-height:44px;
  padding:0 34px;
  border-radius:8px;
  border:0;
  cursor:pointer;
  text-align:center;
  transition:transform .12s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease;
}
#buy input.pd-buy[value="立即购买"],#buy input.pd-buy.buynow{
  background:var(--accent);
  color:#fff;
  font-weight:700;
  box-shadow:0 4px 12px rgba(178,58,43,.28);
}
#buy input.pd-buy[value="立即购买"]:hover,#buy input.pd-buy.buynow:hover{
  background:var(--accent-2);
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(178,58,43,.34);
}
#buy button.pd-buy,#buy a.pd-buy{
  background:#fff;
  color:var(--text-2);
  border:1px solid var(--line-2);
  font-weight:600;
}
#buy button.pd-buy:hover,#buy a.pd-buy:hover{border-color:var(--accent);color:var(--accent)}
#buy button.pd-buy:active,#buy a.pd-buy:active{transform:scale(.97)}
#buy input.pd-buy:disabled,#buy button.pd-buy:disabled{
  opacity:.55;cursor:not-allowed;box-shadow:none;transform:none;
  background:#e5e8ec !important;color:#aab1b9 !important;
}

/* 收藏 */
#collection_product{margin-top:2px}

.pd-opt .pd-optimg{width:26px;height:26px;object-fit:cover;border-radius:5px;vertical-align:-7px;margin-right:6px}
.pd-opt span{white-space:nowrap}
.pd-buyrow .pd-qtylab{color:var(--muted);font-size:13px;margin-right:2px}
.pd-buyrow .pd-rest{padding-left:2px}

/* 选项卡 */
.pd-tab{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:20px}
.pd-tabbar{display:flex;gap:0;background:#fff;border-bottom:1px solid var(--line);padding:0 18px}
.pd-tabbar span{
  padding:14px 20px;
  font-size:15px;
  color:var(--text-2);
  cursor:pointer;
  border-bottom:2px solid transparent;
  margin-bottom:-1px;
  font-weight:500;
  transition:color .14s ease,border-color .14s ease;
}
.pd-tabbar span:hover{color:var(--accent)}
.pd-tabbar span.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}
.pd-tabcon{display:none;padding:22px 26px}
.pd-tabcon.on{display:block}
.pd-rich{line-height:1.9;overflow-wrap:break-word;font-size:14px}
.pd-rich img{max-width:100%;height:auto!important;border-radius:8px;display:block;margin:6px auto}
.pd-rich p{margin:0 0 12px}

/* 参数表 */
.pd-param{width:100%;border-collapse:collapse;font-size:14px}
.pd-param tr:nth-child(odd) td{background:#f6f7f8}
.pd-param td{border:1px solid var(--line-2);padding:10px 16px;color:var(--text-2)}
.pd-param td:first-child{width:220px;color:var(--text);font-weight:600}
.pd-empty{
  text-align:center;color:var(--muted);
  padding:46px 0;font-size:13.5px;
}

/* 相关推荐 */
.pd-rel{margin-top:22px}
.pd-rel-h{
  font-size:16px;
  margin:0 0 14px;
  font-weight:700;
  color:var(--ink);
  position:relative;
  padding-left:13px;
}
.pd-rel-h:before{content:"";position:absolute;left:0;top:3px;height:16px;width:4px;border-radius:2px;background:var(--accent)}
.pd-rel-grid{font-size:0;margin:0;padding:0;list-style:none}
.pd-rel-grid li.tscc-pic{
  display:inline-block;vertical-align:top;width:24.4%;margin:0 .3% 2%;
  border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;
  box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.pd-rel-grid li.tscc-pic:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--line-2)}
.pd-rel-grid li.tscc-pic>a{display:block}
.pd-rel-grid li.tscc-pic i{display:block;position:relative;width:100%;padding-top:72%;overflow:hidden;background:#f3f4f6}
.pd-rel-grid li.tscc-pic i img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.pd-rel-grid li.tscc-pic:hover i img{transform:scale(1.06)}
.pd-rel-grid li.tscc-pic p{font-size:13.5px;line-height:1.5;height:40px;margin:11px 12px 4px;color:var(--text);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-align:left;font-weight:500}
.pd-rel-grid li.tscc-pic>a>span{display:block;margin:4px 12px 13px;font-size:16px;font-weight:700;color:var(--price);text-align:left}

/* 富文本图片自适应 */
.pd-rich img,.con_text img,.con_text video{max-width:100% !important;height:auto !important}
.pd-rich video{max-height:480px;display:block;margin:6px auto}

/* 移动适配（断点 1023/768/480） */
@media (max-width:1023px){
  /* header / 抽屉导航 */
  header{
    position:fixed;
    z-index:999;
    height:50px;
    padding:0;
    box-shadow:0 1px 0 rgba(255,255,255,.05),0 2px 10px rgba(0,0,0,.09);
  }
  header::before{display:none}
  .navbox{
    width:100%;
    height:50px;
    position:relative;
    margin:0;
  }
  nav{height:50px;line-height:50px;float:none;position:static;background:transparent;margin:0;top:auto;z-index:auto}
  .logo{
    float:none;
    display:block;
    text-align:center;
    line-height:50px;
    margin:0;
    position:absolute;
    left:0;right:0;top:0;
    z-index:0;
    pointer-events:none;
  }
  .logo a{pointer-events:auto;display:inline-block;line-height:50px}
  .logo img{height:28px !important;vertical-align:middle}
  .navbox a[href*="login"],.navbox a[href*="reg"],.navbox a[href="member"],.navbox a[href="member/"]{display:none !important}
  #mnavh{
    display:block;
    position:absolute;
    left:6px;top:4px;
    margin:0;
    width:42px;height:42px;
    float:none;
    padding:0;
    z-index:1002;
    border-radius:8px;
  }
  #mnavh:active{background:rgba(255,255,255,.09)}
  .navicon{width:22px;height:2px;margin-top:20px;margin-left:10px;background-color:#fff;border-radius:2px}
  .navicon:before,.navicon:after{width:22px;height:2px;border-radius:2px}
  .open .navicon:before,.open .navicon:after{width:22px;height:2px}
  body.mnav-open{overflow:hidden}
  body.mnav-open .tab_bar{display:none !important}
  body.mnav-open .h50{display:none !important}
  /* 全屏展开：抽屉覆盖整屏（含顶部黑边）。顶部导航透明化，仅保留左上角开关可见 */
  body.mnav-open header{
    background:transparent;
    box-shadow:none;
    z-index:1005;
    pointer-events:none;
  }
  body.mnav-open #mnavh{pointer-events:auto}
  body.mnav-open .logo,
  body.mnav-open .searchico{opacity:0;pointer-events:none}

  /* 整屏菜单 */
  #starlist{
    position:fixed;
    top:0;left:0;right:0;bottom:0;
    z-index:1001;
    overflow-y:auto;
    display:block;
    width:100%;
    height:100vh;
    margin:0;
    padding:0 0 150px;
    box-sizing:border-box;
    -webkit-overflow-scrolling:touch;
    background:
      radial-gradient(680px 300px at 88% -6%, rgba(212,80,54,.20), transparent 62%),
      radial-gradient(560px 280px at -6% 2%, rgba(255,255,255,.05), transparent 55%),
      linear-gradient(180deg,#20262b,#15181c);
    opacity:0;
    visibility:hidden;
    transition:opacity .22s ease,visibility 0s linear .22s;
  }
  /* 打开：立即变为可见，透明度 0 → 1 淡入 */
  body.mnav-open #starlist{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition:opacity .22s ease,visibility 0s linear;
  }

  /* 顶部品牌条：吸顶固定，列表从下方滑动 */
  .mnav-brand{
    position:-webkit-sticky;
    position:sticky;
    top:0;
    z-index:6;
    display:flex;
    flex:none;
    align-items:center;
    justify-content:center;
    gap:10px;
    height:52px;
    padding:0 20px;
    margin:0;
    box-sizing:border-box;
    background:linear-gradient(180deg,#232a30,#1c2226);
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .mnav-brand img{height:28px;width:auto;display:block;max-width:55%}
  .mnav-brand .mb-bar{width:1px;height:14px;background:rgba(255,255,255,.2);margin:0 2px}
  .mnav-brand .mb-tag{font-size:12px;letter-spacing:3px;line-height:1;color:rgba(255,255,255,.55)}

  /* 菜单组容器：JS 注入 padding-top 实现垂直平衡 */
  .mnav-mid{width:auto}

  #starlist li{
    float:none;
    display:block;
    width:auto;
    margin:8px 14px;
    border-radius:10px;
    text-align:left;
    background:transparent;
    font-weight:400;
  }
  #starlist li>a{
    float:none;
    display:flex;
    align-items:center;
    min-height:56px;
    box-sizing:border-box;
    text-align:left;
    color:#eef1f4;
    font-size:16px;
    font-weight:500;
    letter-spacing:.4px;
    padding:0 18px;
    line-height:24px;
    background:transparent;
    border-radius:10px;
    border-bottom:0;
  }
  #starlist li>a:active{background:rgba(255,255,255,.07)}
  #starlist li:last-child{padding-bottom:0}
  /* 选中态：当前栏目红色渐变条 */
  #starlist li a#selected{
    color:#fff;
    font-weight:600;
    background:linear-gradient(90deg,rgba(208,70,50,.34) 0%,rgba(208,70,50,.10) 100%);
    border-radius:10px;
    box-shadow:none;
  }
  /* 带子菜单的大分类展开：整块渐变，标题行保持透明 */
  #starlist li.menu.open>a#selected{
    background:transparent;
    box-shadow:none;
  }
  /* 带子菜单项：整行容器随展开“向下蔓延”成一个模块 */
  #starlist li.menu{
    position:relative;
    box-sizing:border-box;
    border:1px solid transparent;
    border-radius:12px;
    transition:background .25s ease,border-color .25s ease,box-shadow .25s ease;
  }
  #starlist li.menu.open{
    background:linear-gradient(180deg,rgba(208,70,50,.30) 0%,rgba(178,58,43,.16) 40%,rgba(178,58,43,.07) 72%,rgba(178,58,43,.04) 100%);
    border-color:rgba(255,255,255,.08);
    border-bottom-color:rgba(255,255,255,.24);
    box-shadow:0 12px 26px rgba(0,0,0,.26);
    padding:0 0 6px;
  }
  /* 隐藏全局(桌面)旧版 chevron：移动端箭头统一由 .mnav-arr 按钮呈现 */
  #starlist li.menu>a:after{display:none}
  #starlist li.menu:hover>a:after{display:none}
  #starlist li.menu>a{position:relative;padding-right:84px}
  /* 展开/收起按钮：位于标题行右侧，独立可点击；点击标题其余区域则直接跳转 */
  #starlist li.menu>a .mnav-arr{
    position:absolute;
    right:10px;top:50%;
    width:68px;height:38px;
    margin-top:-19px;
    box-sizing:border-box;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.07);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
    transition:background .2s ease,border-color .2s ease;
  }
  #starlist li.menu>a .mnav-arr:active{background:rgba(255,255,255,.18)}
  #starlist li.menu>a .mnav-arr:before{
    content:"";
    width:10px;height:10px;
    border-right:2px solid rgba(255,255,255,.92);
    border-bottom:2px solid rgba(255,255,255,.92);
    border-radius:1px;
    transform:rotate(-45deg);
    margin-left:-3px;
    transition:transform .22s ease,margin-left .22s ease;
  }
  #starlist li.menu.open>a{
    background:transparent;
    box-shadow:none;
    color:#fff;
  }
  #starlist li.menu.open>a .mnav-arr{
    border-color:rgba(255,153,133,.55);
    background:rgba(208,70,50,.38);
  }
  #starlist li.menu.open>a .mnav-arr:before{transform:rotate(45deg);margin-left:0}

  /* 底部信息条 */
  .mnav-foot{
    position:fixed;
    left:0;right:0;bottom:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));
    box-sizing:border-box;
    text-align:center;
    background:linear-gradient(0deg,#080b0e,rgba(18,21,25,.97));
    border-top:1px solid rgba(255,255,255,.14);
    box-shadow:0 -14px 30px rgba(0,0,0,.45);
  }
  .mnav-foot b{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:13px;
    font-weight:600;
    letter-spacing:2px;
    line-height:1;
    color:#fff;
  }
  .mnav-foot b:before,.mnav-foot b:after{
    content:"";
    width:5px;height:5px;
    border-radius:50%;
    background:linear-gradient(135deg,#ff7a5c,#ff4d6d);
    box-shadow:0 0 6px rgba(255,93,110,.6);
  }
  .mnav-foot span{
    font-size:11px;
    letter-spacing:.5px;
    line-height:1;
    color:rgba(255,255,255,.6);
  }
  #starlist li.menu>span{display:none !important}
  #starlist li.menu{position:relative}

  /* 子菜单：文字两列网格，圆点随首行居中，.open 控制显隐 */
  #starlist ul.sub{
    position:static;
    left:auto;right:auto;top:auto;
    transform:none;
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
    background:none;
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:visible;
    display:none;
  }
  #starlist li.menu.open>ul.sub{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px 14px;
    margin:6px 18px 4px;
    padding:0;
  }
  #starlist ul.sub li{width:auto;height:auto;margin:0;min-width:0;border-radius:0}
  #starlist ul.sub li:last-child{padding-bottom:0;border-bottom:0}
  #starlist ul.sub li>a{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    min-height:36px;
    height:100%;
    box-sizing:border-box;
    color:#e8ebee;
    font-weight:400;
    font-size:14px;
    line-height:1.5;
    padding:5px 0;
    border-radius:0;
    background:transparent;
    border:0;
    white-space:normal;
    word-break:break-word;
    overflow-wrap:anywhere;
    text-align:left;
  }
  /* 左侧小圆点：与文字首行水平中线对齐 */
  #starlist ul.sub li>a:before{
    content:"";
    width:6px;height:6px;
    flex:0 0 auto;
    border-radius:50%;
    background:rgba(255,255,255,.5);
    margin-right:9px;
    transition:background .2s ease;
  }
  #starlist ul.sub li>a:hover{
    color:#fff;
    background:transparent;
    border-radius:0;
  }
  #starlist ul.sub li>a:hover:before{background:rgba(255,255,255,.85)}

  /* 搜索 */
  .searchico{
    position:absolute;
    top:13px;right:12px;
    width:26px;height:26px;
    margin:0;
    background-size:20px auto !important;
  }
  /* 搜索：与 PC 相同的弹性下拉/收回动效 */
  .searchbox{
    position:fixed;
    top:50px;left:0;right:0;
    width:100%;
    background:#fff;
    box-shadow:0 10px 24px rgba(0,0,0,.14);
    box-sizing:border-box;
    display:block;
    max-height:0;
    overflow:hidden;
    opacity:0;
    padding:0 14px;
    border-top:1px solid transparent;
    transition:max-height .32s ease,opacity .22s ease,padding .32s ease;
  }
  .searchbox.open{
    max-height:120px;
    opacity:1;
    padding:8px 14px;
    border-top:1px solid var(--line);
  }
  .search{max-width:100%;padding:0}
  .search form{max-width:none}
  .searchclose{display:none}

  /* 内容 */
  article{padding-top:56px}
  .box,article{width:96%}
  .lbox{width:100%;float:none}
  .rbox{width:100%;float:none;display:block;margin-top:4px}
  .banbox{width:100%;float:none;margin-bottom:0}
  /* 移动端焦点图去掉左右箭头按钮，保留原点，改手势滑动 */
  .fader .prev,.fader .next{display:none}
  .fader{touch-action:pan-y}
  .lbox .headline{display:block}
  .rbox .headline{display:none}
  .headline{width:100%;float:none;margin:6px 0 0}
  .headline ul{height:auto;display:flex;gap:6px}
  .headline ul li{flex:1;margin-bottom:0;height:96px}
  /* 焦点图高度：由 JS 按图宽高比驱动，此处为加载前占位 */
  .fader{height:110px}
  .fader .slide{height:100%}
  .fader .slide a{display:block;height:100%}
  .fader .slide img{display:block;width:100%;height:100%;object-fit:cover}
  .headline ul li span{font-size:11.5px;padding:3px 8px 4px;-webkit-line-clamp:2}
  .zhuanti li{width:50%}
  .ztpic{height:110px}
  .bloglist ul>li{padding:0 0 18px}
  .bloglist ul>li>span.blogpic{position:static;width:100%;height:200px;display:block;margin:0 0 12px}
  .bloglist .viewmore{position:static;display:inline-block;margin-top:6px}
  .blogpic{width:auto;max-height:none}

  /* tab 横滑；面板为简洁标题列表（移动端不需要主图与正文，只列标题） */
  .tab_buttons{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .tab_buttons::-webkit-scrollbar{display:none}
  .tab_buttons ul{width:max-content;display:flex;overflow:visible}
  .tab_buttons li{flex:0 0 auto;float:none;margin-right:22px;line-height:42px}
  .newstab .newsitem:nth-child(1),
  .newstab .newsitem.act{display:block}
  .newstab .newsitem .newspic{display:none}
  .newstab .newsitem .newslist{
    float:none;
    width:100%;
    padding-left:0;
    display:block;
  }
  .newstab .newsitem .newslist li{
    padding:12px 0 12px 14px;
    line-height:1.5;
  }
  .newstab .newsitem .newslist li i{
    position:absolute;
    top:20px;
    left:2px;
    width:6px;
    height:6px;
    margin:0;
    float:none;
    background:var(--muted);
    border-radius:50%;
  }
  .newstab .newsitem .newslist li i::before{display:none;content:none}
  .newstab .newsitem .newslist li a{
    font-size:15px;
    color:var(--ink);
    white-space:normal;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    line-height:1.45;
    font-weight:400;
    height:auto;
    max-height:none;
  }
  .newstab .newsitem .newslist li:nth-child(1) a,
  .newstab .newsitem .newslist li:nth-child(1):hover a{font-size:15px;font-weight:400;color:var(--ink)}
  .newstab .newsitem .newslist li:nth-child(1) i,
  .newstab .newsitem .newslist li:nth-child(1):hover i{background:var(--muted)}
  .newstab .newsitem .newslist li p{display:none}

  /* 商品网格移动 */
  .box{overflow:visible}
  article{overflow:hidden}
  ul.xiangsi li.tscc-pic{width:48.9%;margin:.55%}
  ul.xiangsi li.tscc-pic p{height:auto;-webkit-line-clamp:2}
  .pd-rel-grid li.tscc-pic{width:48.9%;margin:.55%}
  ul.xiangsi li:not(.tscc-pic){width:48.9%}
  ul.xiangsi li:not(.tscc-pic)>a{margin:0 .55% 3%}

  /* 详情页 */
  .pd-main{padding:14px}
  .pd-top{flex-direction:column;gap:14px}
  .pd-gallery{width:100%}
  .pd-thumbs img{width:54px;height:54px}
  .pd-info h1{font-size:17.5px}
  .pd-price .pd-now{font-size:25px}
  #buy input.pd-buy,#buy button.pd-buy,#buy a.pd-buy{padding:0 20px;font-size:14.5px}
}
@media (max-width:768px){
  .headline ul li{height:88px}
  .zhuanti li{width:50%}
  .pd-page{padding:14px 10px 30px}
  .pd-tabbar{overflow-x:auto}
  .pd-tabbar span{flex:0 0 auto;padding:13px 16px}
}
@media (max-width:480px){
  .bloglist ul>li>span.blogpic{height:170px}
  .zhuanti li{width:100%}
  ul.xiangsi li:not(.tscc-pic){width:100%}
  ul.xiangsi li:not(.tscc-pic)>a{margin:0 0 3%}
  .pd-actions #buy .pd-btns{width:100%}
  #buy input.pd-buy,#buy button.pd-buy,#buy a.pd-buy{flex:1;padding:0 14px}
}

/* 压平 base 旧 .newslist 悬停状态机 */
.newslist li:hover{background:none;height:auto;line-height:1.5}
.newslist li:hover a{color:var(--accent);font-weight:400;height:auto}
.newslist li:hover i{background:var(--muted)}
.newslist li:nth-child(1),.newslist li:first-child{background:none;height:auto}
.newslist:hover li:nth-child(1){height:auto;background:none;line-height:1.5}
.newslist:hover li:nth-child(1):hover{height:auto;background:none}
.newslist:hover li:nth-child(1) a{color:var(--ink);font-weight:600}
.newslist:hover li:nth-child(1):hover a{color:var(--ink);font-weight:600}
.newslist:hover li:nth-child(1) i{background:var(--accent)}
.newslist:hover li:nth-child(1):hover i{background:var(--accent)}

/* 商品卡 / 特别推荐 / 首页 tab / 最新博文 重构 */

/* ---------- 1) 商品卡：统一网格 + 1:1 主图（源图即方图，完整显示） ---------- */
.pd-rel-grid,
ul.xiangsi:has(>li.tscc-pic){
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:20px;
  margin:0;
  padding:0;
  list-style:none;
}
ul.xiangsi:has(>li.tscc-pic){margin-top:2px}
.pd-rel-grid li.tscc-pic,
ul.xiangsi li.tscc-pic{
  display:block;
  width:100%;
  height:auto;
  margin:0;
  float:none;
  box-sizing:border-box;
  font-size:0;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.pd-rel-grid li.tscc-pic:hover,
ul.xiangsi li.tscc-pic:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--line-2)}
.pd-rel-grid li.tscc-pic>a,
ul.xiangsi li.tscc-pic>a{display:flex;flex-direction:column;height:100%;text-decoration:none}
.pd-rel-grid li.tscc-pic>a>i,
ul.xiangsi li.tscc-pic>a>i{
  display:block;
  width:100%;
  height:auto;
  padding:0;
  aspect-ratio:1/1;
  position:relative;
  overflow:hidden;
  background:#f4f5f7;
}
.pd-rel-grid li.tscc-pic>a>i img,
ul.xiangsi li.tscc-pic>a>i img{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.pd-rel-grid li.tscc-pic:hover>a>i img,
ul.xiangsi li.tscc-pic:hover>a>i img{transform:scale(1.05)}
.pd-rel-grid li.tscc-pic>a>p,
ul.xiangsi li.tscc-pic>a>p{
  flex:0 0 auto;
  font-size:13.5px;
  line-height:1.5;
  height:40px;
  padding:0;
  margin:11px 13px 5px;
  color:var(--text);
  text-align:left;
  font-weight:500;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.pd-rel-grid li.tscc-pic>a>p:hover,
ul.xiangsi li.tscc-pic>a>p:hover{color:var(--accent)}
.pd-rel-grid li.tscc-pic>a>span,
ul.xiangsi li.tscc-pic>a>span{
  display:block;
  height:auto;
  min-height:0;
  max-height:none;
  padding:0;
  margin:0 13px 12px;
  font-size:15.5px;
  font-weight:700;
  line-height:1.4;
  color:var(--price);
  text-align:left;
}
.pd-rel-grid li.tscc-pic>a>span b,
ul.xiangsi li.tscc-pic>a>span b{
  font-weight:400;
  color:#fff;
  background:#d8432e;
  font-size:11px;
  border-radius:4px;
  padding:0 6px;
  vertical-align:2px;
  margin-left:6px;
}

/* 特别推荐：3:2 大图（源图同比例，不裁切） */
.zhuanti ul{
  display:grid;
  grid-template-columns:repeat(1,minmax(0,1fr));
  gap:26px;
  margin:0;
  padding:10px 0 4px;
}
.zhuanti li{
  width:auto;
  margin:0;
  padding:0;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  border:0;
  float:none;
}
.zhuanti li:hover{background:none;box-shadow:none;transform:none}
.zhuanti .ztpic{
  aspect-ratio:3/2;
  height:auto;
  max-height:none;
  min-height:0;
  width:100%;
  display:block;
  position:relative;
  overflow:hidden;
  border-radius:12px;
  background:#eef0f3;
  box-shadow:0 1px 3px rgba(0,0,0,.06);
}
.zhuanti .ztpic a{display:block;position:absolute;left:0;top:0;width:100%;height:100%}
.zhuanti .ztpic img{
  position:absolute;
  left:0;top:0;
  width:100%;height:100%;
  min-height:0;
  object-fit:cover;
  transition:transform .4s ease;
}
.zhuanti li:hover .ztpic img{transform:scale(1.05)}
.zhuanti li b{
  white-space:normal;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  height:auto;
  margin:12px 2px 6px;
  font-size:15px;
  font-weight:600;
  line-height:1.5;
  color:var(--ink);
}
.zhuanti li b a{color:inherit}
.zhuanti li b a:hover{color:var(--accent)}
.zhuanti li span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  height:auto;
  margin:0 2px;
  font-size:13px;
  line-height:1.7;
  color:var(--muted);
}
.zhuanti li a.readmore{display:none}
@media (min-width:481px){
  .zhuanti ul{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
  .zhuanti ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
  .zhuanti li b{font-size:16px}
}

/* 最新博文：主图加宽到 288x192（3:2） */
@media screen and (min-width:1024px){
  .bloglist ul>li{padding:20px 0 20px 316px;min-height:214px}
  .bloglist ul>li>span.blogpic{width:288px;height:192px;max-height:none;top:20px;border-radius:12px}
  .bloglist ul>li:last-child{border-bottom:0}
}

/* 首页 tab 分类面板：PC 左栏上下大图 + 右栏手风琴标题列表 */
@media screen and (min-width:1024px){
  .tab_box{padding:20px 24px 6px}
  .newstab .newsitem{display:none}
  .newstab .newsitem:nth-child(1),
  .newstab .newsitem.act{
    display:grid;
    grid-template-columns:240px minmax(0,1fr);
    gap:28px;
    align-items:stretch;
  }
  .newstab .newsitem .newspic{
    display:flex;
    flex-direction:column;
    width:auto;
    height:auto;
    min-height:0;
    margin:0;
    padding:0;
    overflow:visible;
    float:none;
  }
  .newstab .newsitem .newspic ul{
    display:flex;
    flex-direction:column;
    gap:12px;
    flex:1 1 auto;
    margin:0;
    padding:0;
    height:auto;
    min-height:0;
  }
  .newstab .newsitem .newspic ul li{
    width:auto;
    height:auto;
    margin:0;
    flex:1 1 0;
    min-height:0;
    position:relative;
    border-radius:12px;
    overflow:hidden;
    background:#15181c;
  }
  .newstab .newsitem .newspic ul li a{display:block;position:absolute;left:0;top:0;right:0;bottom:0}
  .newstab .newsitem .newspic ul li img{width:100%;height:100%;object-fit:cover;opacity:.96;transition:transform .4s ease}
  .newstab .newsitem .newspic ul li:hover img{transform:scale(1.05)}
  .newstab .newsitem .newspic ul li span{
    position:absolute;
    left:0;right:0;bottom:0;
    padding:26px 12px 9px;
    color:#fff;
    font-size:13px;
    line-height:1.45;
    text-align:left;
    height:37.7px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.42) 55%,rgba(0,0,0,0) 100%);
  }
  .newstab .newsitem .newspic ul li:hover span{text-decoration:none}
  .newstab .newsitem .newslist{
    float:none;
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
    display:block;
  }
  .newstab .newsitem .newslist li{
    position:relative;
    box-sizing:border-box;
    height:52px;
    min-height:0;
    max-height:none;
    margin:0;
    padding:0 8px 0 20px;
    border-bottom:1px dashed var(--line-2);
    background:none;
    line-height:1.4;
    overflow:hidden;
    transition:background-color .22s ease;
  }
  .newstab .newsitem .newslist li:last-child{border-bottom:0}
  .newstab .newsitem .newslist li i{
    position:absolute;
    left:6px;
    top:19px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--muted);
    float:none;
    margin:0;
  }
  /* 展开行标题 15px 行盒略高，圆点再下移 1px 与首行文字垂直居中 */
  .newstab .newsitem .newslist li.open i{top:20px}
  /* 清掉主题旧版留在圆点上的白色序号 */
  .newstab .newsitem .newslist li i::before{display:none;content:none}
  .newstab .newsitem .newslist li a{
    display:block;
    padding-top:12px;
    font-size:14.5px;
    line-height:1.5;
    color:var(--ink);
    font-weight:500;
    height:auto;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .newstab .newsitem .newslist li p{
    margin:5px 0 0;
    font-size:12.5px;
    line-height:1.55;
    color:var(--muted);
    opacity:0;
    transition:opacity .18s ease;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  /* JS 用 .open 切换展开行（默认第 1 条；悬停切换，移出后保持） */
  .newstab .newsitem .newslist li.open{
    height:96px;
    background:#f7f9fb;
    border-radius:10px;
  }
  .newstab .newsitem .newslist li.open a{font-weight:700;font-size:15px;color:var(--ink)}
  .newstab .newsitem .newslist li.open i{background:var(--accent)}
  .newstab .newsitem .newslist li.open p{opacity:1}
  /* 悬停提示：仅标题短暂变主题色，字号字重不跳动 */
  .newstab .newsitem .newslist li:hover a{color:var(--accent)}
}

/* ---------- 5) 商品详情页微调（PC/移动） ---------- */
.pd-empty{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:52px 24px;
  border:1px dashed var(--line-2);
  border-radius:14px;
  background:#fafbfc;
}
.pd-empty i{
  width:46px;height:46px;
  margin-bottom:14px;
  border-radius:14px;
  background:linear-gradient(160deg,var(--accent-soft),#f6e0d8);
  position:relative;
}
.pd-empty i:before{
  content:"";
  position:absolute;left:50%;top:50%;
  width:18px;height:14px;
  margin:-7px 0 0 -9px;
  border:2px solid #c89a8e;
  border-radius:3px;
}
.pd-empty i:after{
  content:"";
  position:absolute;left:50%;top:50%;
  width:7px;height:7px;
  margin:5px 0 0 -13px;
  border:2px solid #c89a8e;
  border-radius:50%;
}
.pd-empty p{margin:0 0 4px;color:var(--text-2);font-size:14px;font-weight:600}
.pd-empty span{color:var(--muted);font-size:12.5px;line-height:1.7}
@media (max-width:1023px){
  .pd-rel-grid,
  ul.xiangsi:has(>li.tscc-pic){grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .whitebg:has(ul.xiangsi li.tscc-pic){padding-left:8px;padding-right:8px}
  .whitebg ul.xiangsi li.tscc-pic>a>i,
  .pd-rel-grid li.tscc-pic>a>i{aspect-ratio:4/3}
  .pd-rel-grid li.tscc-pic>a>p,
  ul.xiangsi li.tscc-pic>a>p{font-size:13px;line-height:1.45;margin:10px 10px 4px}
  .pd-rel-grid li.tscc-pic>a>span,
  ul.xiangsi li.tscc-pic>a>span{margin:0 10px 10px;font-size:15px}
  .pd-main{padding:14px}
  .pd-tabcon{padding:16px 14px 18px}
  .pd-tabbar{padding:0 6px}
  .pd-param td:first-child{width:100px}
  .pd-param td{padding:9px 12px}
}

/* 去除点击/聚焦时的蓝色高亮 */
*{
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  -webkit-tap-highlight-color:transparent;
}
a:active,a:focus,
button:active,button:focus,
input:active,input:focus,
textarea:active,textarea:focus,
select:active,select:focus,
label:active,label:focus,
[tabindex]:active,[tabindex]:focus,
[role="button"]:active,[role="button"]:focus,
[onclick]:active,[onclick]:focus,
area:focus,summary:focus{
  outline:none!important;
  box-shadow:none!important;
}
button::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner{
  border:0;
  padding:0;
}
a,button,label,select,[role="button"],[tabindex]{
  -webkit-user-select:none;
  -moz-user-select:none;
  user-select:none;
}
input[type="text"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
textarea{
  -webkit-user-select:text;
  -moz-user-select:text;
  user-select:text;
}
a,button,label,[role="button"],[onclick]{
  -webkit-touch-callout:none;
}
img,a,button,input,label,[role="button"]{
  -webkit-user-drag:none;
}

/* 特别推荐：标题沉到图内下缘 + hover 悬浮阴影 */
.zhuanti li{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto;
  border-radius:16px;
  background:transparent;
  transition:box-shadow .32s ease,transform .32s ease;
}
.zhuanti li .ztpic{grid-column:1;grid-row:1}
.zhuanti li b{
  position:relative;
  grid-column:1;
  grid-row:1;
  align-self:end;
  z-index:3;  margin:0;
  padding:34px 13px 11px;
  color:#fff;
  font-weight:600;
  font-size:15px;
  line-height:1.42;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  border-radius:0 0 14px 14px;
  background:linear-gradient(to top,rgba(10,12,16,.86) 0%,rgba(10,12,16,.58) 42%,rgba(10,12,16,.2) 72%,rgba(10,12,16,0) 100%);
  text-shadow:0 1px 3px rgba(0,0,0,.35);
}
.zhuanti li b a{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.zhuanti li b a:hover{color:#fff}
.zhuanti li span{
  grid-column:1;
  grid-row:2;
  margin:14px 3px 0;
  font-size:13.5px;
  line-height:1.7;
  color:#4c5661;
}
.zhuanti li:hover{
  background:#fff;
  box-shadow:0 20px 42px -14px rgba(18,30,44,.26),0 6px 16px -8px rgba(18,30,44,.12);
  transform:translateY(-4px);
}
@media screen and (min-width:1024px){
  .zhuanti .ztpic{aspect-ratio:auto;height:158px;border-radius:14px}
  .zhuanti li b{font-size:16px;padding:38px 14px 12px}
  .zhuanti li span{margin-top:15px}
}

/* 特别推荐卡：统一圆角容器，标题随图裁剪 */
.zhuanti li{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  border:0;
  padding:0;
  position:relative;
  background:transparent;
  border-radius:16px;
  transition:background-color .3s ease;
}
.zhuanti li::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:4;
  border-radius:16px;
  border:1px solid transparent;
  pointer-events:none;
  transition:border-color .3s ease;
}
.zhuanti .ztpic{
  position:relative;
  width:100%;
  display:block;
  overflow:hidden;
  border-radius:16px;
  background:#e9edf2;
  box-shadow:none;
  aspect-ratio:3/2;
  height:auto;
  min-height:0;
  max-height:none;
  transition:box-shadow .3s ease;
}
.zhuanti .ztpic a{position:absolute;left:0;top:0;width:100%;height:100%;display:block;z-index:1}
.zhuanti .ztpic img{
  position:absolute;left:0;top:0;
  width:100%;height:100%;
  min-height:0;
  object-fit:cover;
  transition:transform .45s ease;
}
.zhuanti li b{
  position:absolute;
  left:0;right:0;bottom:0;
  z-index:2;
  margin:0;
  width:auto;
  box-sizing:border-box;
  padding:30px 13px 9px;
  color:#fff;
  font-weight:600;
  font-size:14px;
  line-height:1.38;
  text-align:left;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  text-shadow:0 1px 2px rgba(0,0,0,.4);
  background:linear-gradient(to top,rgba(9,11,14,.92) 0%,rgba(9,11,14,.66) 38%,rgba(9,11,14,.28) 70%,rgba(9,11,14,0) 100%);
  pointer-events:none;
}
.zhuanti li b a{color:#fff}
.zhuanti li b a:hover{color:#fff}
.zhuanti li span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:11px 4px 0;
  font-size:13px;
  line-height:1.7;
  color:#4b545e;
}
.zhuanti li:hover .ztpic img{transform:scale(1.05)}
.zhuanti li:hover{
  background:transparent;
  transform:none;
  box-shadow:none;
}
.zhuanti li:hover::before{border-color:transparent}
.zhuanti li:hover .ztpic{box-shadow:0 18px 30px -20px rgba(18,30,44,.4)}
@media screen and (min-width:1024px){
  .zhuanti ul{gap:28px}
  .zhuanti .ztpic{aspect-ratio:auto;height:156px}
  .zhuanti li b{font-size:15px;padding:32px 14px 10px}
  .zhuanti li span{margin-top:12px}
}

/* 最新博文(PC)：行高收紧 + 主图缩小 + 元信息平齐 */
@media screen and (min-width:1024px){
  .bloglist ul{padding:4px 0 8px}
  .bloglist ul>li{
    padding:14px 0 14px 210px;
    min-height:118px;
    margin-bottom:0;
  }
  .bloglist ul>li>span.blogpic{
    left:0;top:14px;
    width:192px;height:112px;
    max-height:none;
    border-radius:10px;
    overflow:hidden;
  }
  .bloglist ul>li>span.blogpic img{
    width:100%;height:100%;
    object-fit:cover;
    transition:transform .5s ease;
  }
  .bloglist ul>li>span.blogpic i{display:none}
  .bloglist ul>li:hover .blogpic img{transform:scale(1.06)}
  .bloglist .blogtitle{
    font-size:15.5px;
    font-weight:600;
    line-height:1.4;
    margin:0 0 6px;
  }
  .bloglist .blogtitle a{color:var(--ink)}
  .bloglist li:hover .blogtitle a{color:var(--accent)}
  .bloglist .blogtext{
    font-size:13px;
    line-height:1.55;
    margin:0;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    text-overflow:ellipsis;
    overflow:hidden;
  }
  .bloglist .bloginfo{
    position:absolute;
    left:210px;right:0;
    bottom:16px;
    height:28px;
    line-height:28px;
    margin:0;
    white-space:nowrap;
    overflow:hidden;
    font-size:12.5px;
  }
  .bloglist .bloginfo span:first-child{display:none}
  .bloglist .bloginfo span{margin:0}
  .bloglist .bloginfo span:nth-child(2){margin-right:2px}
  .bloglist .bloginfo span:nth-child(3)::before{content:'·';margin:0 12px;color:#cdd3d8}
  .bloglist .bloginfo a{color:#6a7178}
  .bloglist .bloginfo a:hover{color:var(--accent)}
  .bloglist .viewmore{
    position:absolute;
    right:2px;bottom:16px;
    height:28px;line-height:28px;
    padding:0 2px;
    background:none;
    border:0;
    border-radius:0;
    color:var(--accent);
    font-size:12.5px;
  }
  .bloglist .viewmore::after{content:'›';margin-left:4px;font-size:15px;line-height:1;display:inline-block;transition:transform .2s ease}
  .bloglist .viewmore:hover{background:none;border:0;color:var(--accent)}
  .bloglist .viewmore:hover::after{transform:translateX(3px)}
}

/* 商品分类卡(PC)：去竖线，1:1 主图，收紧间距 */
@media screen and (min-width:1024px){
  .pd-rel-grid,
  ul.xiangsi:has(>li.tscc-pic){gap:18px}
  .pd-rel-grid li.tscc-pic,
  ul.xiangsi li.tscc-pic{
    background:transparent;
    border-color:rgba(23,26,30,.08);
    box-shadow:none;
    padding-bottom:0;
  }
  .pd-rel-grid li.tscc-pic:hover,
  ul.xiangsi li.tscc-pic:hover{
    transform:translateY(-2px);
    border-color:rgba(23,26,30,.14);
    box-shadow:0 10px 20px -12px rgba(23,26,30,.3);
  }
  .pd-rel-grid li.tscc-pic>a,
  ul.xiangsi li.tscc-pic>a{box-shadow:none}
  .pd-rel-grid li.tscc-pic>a>i,
  ul.xiangsi li.tscc-pic>a>i{
    margin:0;
    border-radius:10px 10px 0 0;
  }
  .pd-rel-grid li.tscc-pic>a>p,
  ul.xiangsi li.tscc-pic>a>p{
    font-size:13px;
    line-height:1.45;
    margin:9px 10px 3px;
  }
  .pd-rel-grid li.tscc-pic>a>span,
  ul.xiangsi li.tscc-pic>a>span{
    margin:0 10px 9px;
    font-size:15px;
  }
}

/* 商品详情微调：图文无缝 / 相关标题对齐 / 移动端按钮 */
.pd-rich img{
  border-radius:0;
  margin:0 auto;
}
.pd-rich video{margin:0 auto}

.pd-rel-h{
  display:flex;
  align-items:center;
  column-gap:9px;
  padding-left:0;
}
.pd-rel-h:before{
  content:"";
  position:static;
  flex:0 0 4px;
  height:18px;
  border-radius:2px;
  background:var(--accent);
}
.pd-rel-h span{flex:0 0 auto}
article.pdetail{padding-bottom:0}

@media screen and (min-width:1024px){
  .pd-page{padding-bottom:18px}
}
@media screen and (max-width:768px){
  .pd-page{padding-bottom:10px}
  .pd-actions .pd-btns{width:100%}
  #buy .pd-btns{flex-wrap:nowrap;gap:8px}
  #buy .pd-btns input.pd-buy,
  #buy .pd-btns button.pd-buy,
  #buy .pd-btns a.pd-buy{
    flex:1 1 0;
    min-width:0;
    white-space:nowrap;
    padding:0 8px;
  }
}

/* 文章详情：面包屑“当前位置”样式 + 回顶按钮着色 */
.content_box h2.htitle{
  border-bottom:none;
  padding-bottom:0;
  margin-bottom:14px;
}
.content_box h2.htitle .con_nav{
  float:none;
  display:inline;
  font-size:13px;
  font-weight:400;
  color:var(--muted);
  line-height:22px;
}
.content_box h2.htitle .con_nav a{color:var(--text-2)}
.content_box h2.htitle .con_nav a:hover{color:var(--accent)}

footer .top{
  background:#f9ece9;
  border:1px solid rgba(178,58,43,.25);
  box-sizing:border-box;
  box-shadow:0 3px 10px rgba(178,58,43,.14);
}
footer .top::before{border-color:var(--accent)}
footer .top:hover::before{border-color:#fff}

/* 特别推荐：主图+标题+摘要合成一张卡，hover 轻浮 */
.zhuanti li{
  display:block;
  width:100%;
  max-width:100%;
  margin:0;
  padding:0;
  border:1px solid rgba(23,26,31,.06);
  background:var(--card);
  border-radius:16px;
  overflow:hidden;
  position:relative;
  box-shadow:0 1px 2px rgba(18,30,44,.04),0 8px 18px -14px rgba(18,30,44,.16);
  transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease;
}
.zhuanti li::before{border-color:transparent}
.zhuanti li .ztpic{
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.zhuanti li:hover .ztpic{box-shadow:none}
.zhuanti li:hover .ztpic img{transform:scale(1.03)}
.zhuanti li b{border-radius:0}
.zhuanti li span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin:12px 16px 16px;
  font-size:13px;
  line-height:1.7;
  color:#4b545e;
}
.zhuanti li:hover{
  background:var(--card);
  transform:translateY(-3px);
  box-shadow:0 1px 2px rgba(18,30,44,.04),0 18px 30px -16px rgba(18,30,44,.28);
}

/* 特别推荐：标题两行截断 / 手机端两列并收紧侧距 */
.zhuanti li b{
  font-style:normal;
  white-space:normal;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.zhuanti li b a{font-style:normal}
@media (max-width:480px){
  .zhuanti.whitebg{
    padding-left:10px;
    padding-right:10px;
  }
  .zhuanti ul{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 12px;
    padding-top:12px;
  }
  .zhuanti li b{
    font-size:13px;
    line-height:1.42;
    padding:24px 10px 8px;
  }
  .zhuanti li span{
    margin:10px 12px 12px;
    font-size:12.5px;
    line-height:1.6;
  }
}

/* 最新博文：仅桌面端展示（手机/平板整模块隐藏） */
@media screen and (max-width:1023px){
  .whitebg.bloglist{display:none}
}

/* 侧栏列表：最近更新圆点 / 点击排行序号对齐标题 */
.notice ul>li{
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 0;
}
.notice ul>li:before{
  content:"";
  position:static;
  flex:0 0 auto;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent);
  transform:translateY(-4px);
}
.notice ul>li a{
  flex:1 1 auto;
  min-width:0;
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.whitebg.paihang ul>li,.whitebg.wenzi ul>li{
  padding-left:18px;
}
.whitebg.paihang ul>li{
  display:flex;
  align-items:center;
  gap:8px;
  padding-left:0;
  height:auto;
  margin-bottom:0;
}
.whitebg.paihang ul>li i{
  position:static;
  flex:0 0 auto;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#c9ced4;
  font-style:normal;
  text-align:center;
  line-height:16px;
  font-size:10px;
  color:#fff;
  font-weight:600;
  transform:translateY(-4px);
}
.whitebg.paihang ul>li i::before{
  position:static;
  display:block;
  line-height:16px;
  font-size:10px;
  width:auto;
}
.whitebg.paihang ul>li a{
  flex:1 1 auto;
  min-width:0;
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* 最近更新：标题行小圆角灰条，圆点随文字居中 */
.notice .htitle{margin-bottom:16px}
.notice ul{padding-top:0}
.notice ul>li{
  position:relative;
  display:block;
  margin-bottom:8px;
  background:#f2f3f5;border-radius:5px;
  padding:2px 10px 2px 16px;
  border-bottom:0;
}
.notice ul>li:last-child{margin-bottom:0}
.whitebg.notice{padding-bottom:18px}
.notice ul>li a{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:1;
  overflow:hidden;
  white-space:normal;
  color:var(--text-2);font-size:13.5px;line-height:1.5;
}
.notice ul>li:hover{background:#e9ebee;box-shadow:none}
.notice ul>li:hover a{color:var(--accent)}
.notice ul>li:before{
  content:"";
  position:absolute;
  left:4px;
  top:calc(50% - 1px);
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent);
  transform:translateY(-50%);
}

/* 特别推荐标题：两行截断 */
.zhuanti li b{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

/* 特别推荐主图 hover：亮度过渡代替缩放 */
.zhuanti li .ztpic img{
  transform:none;
  transition:filter .35s ease;
}
.zhuanti li:hover .ztpic img{
  transform:none;
  filter:brightness(1.06);
}

/* 特别推荐：标题下移；移动端卡片加宽、收窄顶距 */
.zhuanti li b{
  padding:34px 13px 5px;
}
@media (min-width:1024px){
  .zhuanti li b{padding:36px 14px 6px}
  .zhuanti .htitle{margin-bottom:8px}
  .zhuanti ul{padding-top:6px}
}
@media (max-width:480px){
  .zhuanti.whitebg{
    padding-left:10px;
    padding-right:10px;
  }
  .zhuanti .htitle{
    margin-bottom:8px;
  }
  .zhuanti ul{
    gap:14px 6px;
    padding-top:6px;
  }
  .zhuanti li b{
    padding:26px 10px 4px;
  }
  .tab_box{
    margin-bottom:12px;
  }
}

/* PC 文章分类左列主图：固定等高 */
@media screen and (min-width:1024px){
  .newstab .newsitem .newspic{
    align-self:start;
  }
  .newstab .newsitem .newspic ul{
    flex:none;
    height:auto;
  }
  .newstab .newsitem .newspic ul li{
    flex:none;
    height:120px;
  }
}

/* 分类大图标题：不设显式 height，依赖 line-clamp 截两行 */
.newstab .newsitem .newspic ul li span{
  height:auto !important;
}

/* 点击排行序号：主图占第 1 名，列表从 2 计数 */
.whitebg.paihang ul{
  counter-reset:ph 1;
}
.whitebg.paihang ul>li{
  counter-increment:ph;
}
.whitebg.paihang ul>li i::before{
  content:counter(ph);
}

/* PC 点击排行：第 1 名并入列表，悬停展开该文主图 */
@media screen and (min-width:1024px){
  .whitebg.paihang ul{
    counter-reset:ph 0;
  }
  .whitebg.paihang ul>li a.phpic{
    display:none;
  }
  .whitebg.paihang ul>li img.phthumb{
    display:none;
    width:100%;
    height:126px;
    object-fit:cover;
    border-radius:10px;
    background:#eef0f3;
  }
  .whitebg.paihang ul>li.ph-open{
    display:block;
    padding:6px 0 3px;
    border-bottom:0;
  }
  .whitebg.paihang ul>li.ph-open a.phpic{
    display:block;
  }
  .whitebg.paihang ul>li.ph-open img.phthumb{
    display:block;
  }
  .whitebg.paihang ul>li.ph-open i{
    display:none;
  }
  .whitebg.paihang ul>li.ph-open > a:not(.phpic){
    position:absolute;
    left:0;
    right:0;
    bottom:5px;
    padding:0 14px;
    z-index:2;
    color:#fff !important;
    font-weight:600;
    font-size:13.5px;
    line-height:1.5;
    text-align:left;
    white-space:normal;
    overflow:hidden;
  }
  .whitebg.paihang ul>li.ph-open > a:not(.phpic):hover{
    color:#fff !important;
  }
  .whitebg.paihang ul>li.ph-open::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:60px;
    z-index:1;
    border-radius:0 0 10px 10px;
    background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 55%,rgba(0,0,0,0) 100%);
    pointer-events:none;
  }
}

/* 特别推荐卡：圆角裁切交给内层，消除顶角闪直角 */
.zhuanti li{overflow:visible}
.zhuanti li .ztpic{border-radius:16px 16px 0 0}

/* 点击排行：序号与标题间距收窄；展开主图带淡入动画 */
.whitebg.paihang ul>li{
  gap:5px;
}
.whitebg.paihang ul>li i{
  margin-right:0;
}
@media screen and (min-width:1024px){
  @keyframes phCardIn{
    from{opacity:.3; transform:translateY(6px)}
    to{opacity:1; transform:none}
  }
  .whitebg.paihang ul>li.ph-open img.phthumb{
    animation:phCardIn .16s ease-out;
  }
}

/* PC 显示点击排行，移动端显示平台推荐（互斥显隐） */
@media screen and (min-width:1024px){
  .whitebg.tuijian{
    display:none;
  }
}
@media screen and (max-width:1023px){
  .whitebg.paihang{
    display:none;
  }
}

/* 商品分类页顶部：分类选择器 */
.whitebg.fensort{
  padding:16px 20px;
}
.fensort-row{
  display:flex;
  gap:8px 12px;
  align-items:flex-start;
  padding:7px 0;
}
.fensort-row + .fensort-row{
  border-top:1px dashed var(--line-2);
  margin-top:6px;
  padding-top:13px;
}
.fensort-key{
  flex:0 0 auto;
  width:56px;
  font-size:14px;
  line-height:28px;
  color:var(--muted);
  font-weight:600;
  letter-spacing:1px;
}
.fensort-tags{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}
.fensort-tags a{
  display:inline-block;
  padding:0 13px;
  font-size:13.5px;
  line-height:26px;
  border-radius:999px;
  border:1px solid var(--line-2);
  color:var(--text);
  background:var(--card);
  text-decoration:none;
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
.fensort-tags a:hover{
  color:var(--accent);
  border-color:var(--accent);
  background:var(--accent-soft);
}
.fensort-tags a.on{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
  font-weight:600;
}
@media (max-width:760px){
  .whitebg.fensort{
    padding:11px 0 9px;
  }
  .fensort-row{
    flex-direction:row;
    align-items:center;
    gap:0;
    padding:3px 0;
  }
  .fensort-row + .fensort-row{
    border-top:1px dashed var(--line-2);
    margin-top:6px;
    padding-top:8px;
  }
  .fensort-key{
    flex:0 0 auto;
    width:auto;
    padding:0 10px 0 14px;
    font-size:13px;
    line-height:26px;
    letter-spacing:0;
  }
  .fensort-tags{
    flex:1 1 0%;
    min-width:0;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    gap:8px;
    padding:2px 14px 2px 0;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .fensort-tags::-webkit-scrollbar{
    height:0;
    display:none;
  }
  .fensort-tags a{
    flex:0 0 auto;
    white-space:nowrap;
    line-height:26px;
    padding:0 12px;
  }
}

/* 文章卡片：免费阅读标 */
ul.xiangsi li.tscc-pic a>span.free{
  color:var(--ok);
  font-size:12.5px;
  font-weight:600;
}

/* 手机端：分类选择器与卡片网格间距收紧 */
@media (max-width:760px){
  .whitebg.fensort{
    margin-bottom:8px;
  }
}

/* 卡片主图铺满：去掉 base 旧左右 5px 缝隙 */
ul.xiangsi:has(>li.tscc-pic) li.tscc-pic>a,
.pd-rel-grid li.tscc-pic>a{
  margin-left:0;
  margin-right:0;
}

/* 分类卡主图比例：文章/课程横图完整，商品方图 */
ul.xiangsi.cat-news li.tscc-pic>a>i,
ul.xiangsi.cat-course li.tscc-pic>a>i{aspect-ratio:3/2}
ul.xiangsi.cat-product li.tscc-pic>a>i{aspect-ratio:1/1}

/* 分类卡：主图顶格 + 文字区垂直间距压缩 */
ul.xiangsi.cat-news li.tscc-pic>a>i,
ul.xiangsi.cat-course li.tscc-pic>a>i{background:var(--bg)}
ul.xiangsi.cat-news li.tscc-pic>a>i img,
ul.xiangsi.cat-course li.tscc-pic>a>i img,
ul.xiangsi.cat-product li.tscc-pic>a>i img{min-height:0;object-fit:cover}
ul.xiangsi.cat-news li.tscc-pic>a>i,
ul.xiangsi.cat-course li.tscc-pic>a>i,
ul.xiangsi.cat-product li.tscc-pic>a>i{margin-bottom:0}
ul.xiangsi.cat-news li.tscc-pic>a>p,
ul.xiangsi.cat-course li.tscc-pic>a>p,
ul.xiangsi.cat-product li.tscc-pic>a>p{margin:8px 10px 3px}
ul.xiangsi.cat-news li.tscc-pic>a>span,
ul.xiangsi.cat-course li.tscc-pic>a>span,
ul.xiangsi.cat-product li.tscc-pic>a>span{margin:0 10px 4px}
ul.xiangsi.cat-news li.tscc-pic>a,
ul.xiangsi.cat-course li.tscc-pic>a,
ul.xiangsi.cat-product li.tscc-pic>a{padding-bottom:4px}
ul.xiangsi.cat-news li.tscc-pic,
ul.xiangsi.cat-course li.tscc-pic,
ul.xiangsi.cat-product li.tscc-pic{padding-bottom:0}

/* 手机端分类卡：加宽、列距缩小、标题留白压缩 */
@media (max-width:600px){
  .whitebg:has(ul.xiangsi.cat-news),
  .whitebg:has(ul.xiangsi.cat-course),
  .whitebg:has(ul.xiangsi.cat-product){padding-left:8px;padding-right:8px}
  .whitebg ul.xiangsi.cat-news,
  .whitebg ul.xiangsi.cat-course,
  .whitebg ul.xiangsi.cat-product{gap:4px}
  .whitebg ul.xiangsi.cat-news li.tscc-pic>a>p,
  .whitebg ul.xiangsi.cat-course li.tscc-pic>a>p,
  .whitebg ul.xiangsi.cat-product li.tscc-pic>a>p{margin-left:6px;margin-right:6px}
  .whitebg ul.xiangsi.cat-news li.tscc-pic>a>span,
  .whitebg ul.xiangsi.cat-course li.tscc-pic>a>span,
  .whitebg ul.xiangsi.cat-product li.tscc-pic>a>span{margin-left:6px;margin-right:6px}
}

/* 详情页“随机图文”卡：主图完整铺满 */
ul.xiangsi.art-rand li{padding:0;width:auto;margin:0}
ul.xiangsi.art-rand li>a{
  margin:0;
  padding:0 0 9px;
  border:none;
  box-shadow:none;
  background:transparent;
}
ul.xiangsi.art-rand li>a:hover{transform:none;box-shadow:none}
ul.xiangsi.art-rand li>a>i{height:auto;max-height:none;margin-bottom:0}
ul.xiangsi.art-rand li>a>i img{height:auto}
ul.xiangsi.art-rand li>a>p{margin:8px 9px 3px}
ul.xiangsi.art-rand li>a>span{margin:0 9px 0}
.whitebg:has(ul.xiangsi.art-rand){padding-bottom:17px}

/* 分页：触屏一律用 <> 图标，鼠标设备显示文字 */
@media (hover:none) and (pointer:coarse){
  body #pager ul.pages{gap:3px}
  body #pager ul.pages li{
    width:34px;
    height:34px;
    min-width:34px;
    padding:0;
    font-size:14px;
    border-radius:50%;
  }
  body #pager ul.pages li .lbl,
  body #pager ul.pages li .l{display:none}
  body #pager ul.pages li .s{display:inline}
  body #pager ul.pages li .arrow svg{width:18px;height:18px}
  body #pager ul.pages li.pgPrev,
  body #pager ul.pages li.pgNext,
  body #pager ul.pages li.pgFirst,
  body #pager ul.pages li.pgLast{
    width:34px;
    min-width:34px;
    padding:0;
    gap:0;
    border-radius:50%;
  }
  body #pager ul.pages li.pgPrev .arrow,
  body #pager ul.pages li.pgNext .arrow{display:inline-flex}
  body #pager ul.pages li.pgFirst,
  body #pager ul.pages li.pgLast{width:auto;min-width:34px;padding:0 8px;border-radius:17px}
}

/* 分页符兼容旧 jquery.pager：触屏把文字页码改成箭头 */
@media (hover:none) and (pointer:coarse){
  body #pager ul.pages li.pgNext:nth-child(2),
  body #pager ul.pages:has(> li.pgNext:first-child) li.pgNext:nth-last-child(2){
    overflow:hidden;
    font-size:0;
    line-height:34px;
  }
  body #pager ul.pages li.pgNext:nth-child(2)::before{
    content:"‹";
    font-size:18px;
    font-weight:700;
    line-height:34px;
  }
  body #pager ul.pages:has(> li.pgNext:first-child) li.pgNext:nth-last-child(2)::before{
    content:"›";
    font-size:18px;
    font-weight:700;
    line-height:34px;
  }
}

/* 搜索面板（桌面端）：固定吸附导航正下方 */
@media screen and (min-width:1024px){
  body .searchbox{
    position:fixed;
    top:52px;
    left:0;
    right:0;
    width:100%;
    z-index:850;
  }
}
@media screen and (max-width:1023px){
  body .searchbox{z-index:850}
}

/* 分类选择器：收起单行可滑动，选项超宽时出现“展开” */
.whitebg.fensort .fensort-tags{
  flex-wrap:nowrap;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.whitebg.fensort .fensort-tags::-webkit-scrollbar{height:0;display:none}
.whitebg.fensort .fensort-tags a{flex:0 0 auto;white-space:nowrap}

.whitebg.fensort .fensort-more{
  flex:0 0 auto;
  align-self:center;
  display:inline-flex;
  align-items:center;
  gap:2px;
  height:24px;
  padding:0 9px;
  margin-left:10px;
  font-size:12px;
  color:var(--muted);
  line-height:1;
  border:1px solid var(--line-2);
  border-radius:999px;
  background:var(--card);
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
  white-space:nowrap;
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
.whitebg.fensort .fensort-more .more-arrow{
  display:inline-block;
  font-size:9px;
  line-height:1;
  transition:transform .18s ease;
}
.whitebg.fensort .fensort-more:hover,
.whitebg.fensort .fensort-row.expanded .fensort-more{
  color:var(--accent);
  border-color:var(--accent);
  background:var(--accent-soft);
}
.whitebg.fensort .fensort-row.expanded .fensort-more .more-arrow{transform:rotate(180deg)}
.whitebg.fensort .fensort-row.fits .fensort-more{display:none}

.whitebg.fensort .fensort-row.has-more .fensort-tags{cursor:grab;overscroll-behavior-x:contain}
.whitebg.fensort .fensort-row.dragscroll .fensort-tags{cursor:grabbing;user-select:none;-webkit-user-select:none}
.whitebg.fensort .fensort-row.dragscroll .fensort-tags a{-webkit-user-drag:none}

.whitebg.fensort .fensort-row.expanded{align-items:flex-start}
.whitebg.fensort .fensort-row.expanded .fensort-tags{flex-wrap:wrap;overflow:visible;cursor:default}
.whitebg.fensort .fensort-row.expanded .fensort-more{align-self:flex-start;margin-top:2px}

@media (hover:hover) and (pointer:fine){
  .whitebg.fensort .fensort-more{height:26px;margin-left:12px}
}
@media (max-width:760px){
  .whitebg.fensort .fensort-more{height:22px;padding:0 8px}
}

/* 分类栏：总览承担“全部”，一级主色/二级深色，展开不跳动 */
.whitebg.fensort .fensort-key.all-key{
  flex:0 0 auto;
  width:auto;
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:26px;
  padding:0 12px;
  margin:0;
  font-size:12.5px;
  font-weight:600;
  line-height:1;
  letter-spacing:0;
  border-radius:999px;
  text-decoration:none;
  white-space:nowrap;
  border:1px solid transparent;
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
/* 一级 分类=全部：品牌主色总览 */
.whitebg.fensort .fensort-key.fensort-main{
  color:var(--accent);
  border-color:rgba(178,58,43,.4);
  background:var(--accent-soft);
}
.whitebg.fensort .fensort-key.fensort-main:hover{background:rgba(178,58,43,.14)}
.whitebg.fensort .fensort-key.fensort-main.on{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
}
/* 二级 栏目=该级全部：中性深色总览 */
.whitebg.fensort .fensort-key.fensort-sub{
  color:var(--ink);
  border-color:rgba(42,47,53,.3);
  background:#eef1f4;
}
.whitebg.fensort .fensort-key.fensort-sub:hover{background:#e1e5e9}
.whitebg.fensort .fensort-key.fensort-sub.on{
  color:#fff;
  background:var(--ink);
  border-color:var(--ink);
}

/* 行内元素恒定顶端对齐（含移动端覆盖） */
.whitebg.fensort .fensort-row,
.whitebg.fensort .fensort-row.expanded{align-items:flex-start}

/* 展开/收起：纯图标、恒定顶端，点击不跳动 */
.whitebg.fensort .fensort-more{
  height:26px;
  width:26px;
  padding:0;
  margin:0;
  align-self:flex-start;
  font-size:10px;
}
.whitebg.fensort .fensort-row.expanded .fensort-more{align-self:flex-start;margin-top:0}

@media (max-width:760px){
  .whitebg.fensort .fensort-key.all-key{height:24px;padding:0 10px;font-size:12px;margin-right:8px}
  .whitebg.fensort .fensort-tags{padding:0 2px 0 0}
  .whitebg.fensort .fensort-more{height:24px;width:24px;margin-left:8px}
}

/* 分类栏：移动端全宽贴边、二级同品牌红、箭头放大、触屏可滑 */

/* 移动端：分类模块全宽贴边直角，分隔线贯穿全宽 */
@media (max-width:760px){
  .box,article{overflow:visible}
  .lbox{overflow:visible}
  .whitebg.fensort{
    width:100vw;
    margin-left:calc(50% - 50vw);
    box-sizing:border-box;
    border-radius:0;
    border-left:0;
    border-right:0;
    box-shadow:none;
    padding:10px 0 8px;
  }
  .whitebg.fensort .fensort-row + .fensort-row{margin-top:8px;padding-top:9px}
  .whitebg.fensort .fensort-tags{padding:0 14px 0 0}
  .whitebg.fensort .fensort-key.all-key{
    margin-left:14px;
    height:28px;
    box-sizing:border-box;
  }
  .whitebg.fensort .fensort-more{margin-right:14px}
}

/* 2) 二级“栏目”总览按钮与一级“分类”同用品牌红系（去掉深黑感），层级由选中态表达 */
.whitebg.fensort .fensort-key.fensort-sub{
  color:var(--accent);
  border-color:rgba(178,58,43,.4);
  background:var(--accent-soft);
}
.whitebg.fensort .fensort-key.fensort-sub:hover{background:rgba(178,58,43,.14)}
.whitebg.fensort .fensort-key.fensort-sub.on{
  color:#fff;
  background:var(--accent);
  border-color:var(--accent);
}

/* 3) 展开/收起钮放大：按区与箭头都更大，字形颜色加深更清晰 */
.whitebg.fensort .fensort-more{
  box-sizing:border-box;
  height:30px;
  width:30px;
  font-size:13px;
  color:var(--ink);
}
/* 展开/收起图标：静态 chevron，仅用 display 切换方向 */
.whitebg.fensort .fensort-more .more-arrow{
  position:relative;
  display:inline-block;
  width:7px;
  height:7px;
  transform:none;
}
.whitebg.fensort .fensort-more .more-arrow i{
  position:absolute;
  left:0;
  top:0;
  box-sizing:border-box;
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
}
.whitebg.fensort .fensort-more .more-arrow i.m-c{display:inline-block;transform:rotate(45deg)}
.whitebg.fensort .fensort-more .more-arrow i.m-e{display:none;transform:rotate(-135deg)}
.whitebg.fensort .fensort-row.expanded .fensort-more .more-arrow i.m-c{display:none}
.whitebg.fensort .fensort-row.expanded .fensort-more .more-arrow i.m-e{display:inline-block}
@media (hover:hover) and (pointer:fine){
  .whitebg.fensort .fensort-more{height:30px;width:30px}
}
@media (max-width:760px){
  .whitebg.fensort .fensort-more{height:28px;width:28px}
}

/* 触屏：收起态 touch-action:pan-y，横向手势由 JS 平移 */
.whitebg.fensort .fensort-row:not(.expanded) .fensort-tags,
.whitebg.fensort .fensort-row:not(.expanded) .fensort-tags a{touch-action:pan-y}
.whitebg.fensort .fensort-row.expanded .fensort-tags,
.whitebg.fensort .fensort-row.expanded .fensort-tags a{touch-action:auto}

/* 分类栏微调：总览改纯文字粗体，展开钮去圆底描边 */
.whitebg.fensort .fensort-key.all-key{
  display:inline-block;
  height:auto;
  width:auto;
  padding:0;
  margin:0;
  margin-right:12px;
  align-self:center;
  font-size:14px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.2px;
  white-space:nowrap;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  color:var(--ink);
}
.whitebg.fensort .fensort-key.all-key:hover,
.whitebg.fensort .fensort-key.all-key:focus{background:none;color:var(--ink);text-decoration:none}
.whitebg.fensort .fensort-key.all-key.on,
.whitebg.fensort .fensort-key.all-key.on:hover{background:none;color:var(--accent)}

.whitebg.fensort .fensort-more{
  justify-content:center;
  border:0;
  background:none;
}
.whitebg.fensort .fensort-more:hover,
.whitebg.fensort .fensort-row.expanded .fensort-more{background:none;border:0}
/* chevron 略放大，线条更清晰 */
.whitebg.fensort .fensort-more .more-arrow,
.whitebg.fensort .fensort-more .more-arrow i{width:8px;height:8px}

@media (max-width:760px){
  .whitebg.fensort .fensort-key.all-key{
    margin-left:14px;
    margin-right:10px;
    font-size:14px;
    height:auto;
    align-self:center;
  }
  .whitebg.fensort .fensort-more{margin-right:14px}
}

/* 分类栏：总览文字顶端锚定；展开钮钉右上角、标签流铺满行 */
.whitebg.fensort .fensort-row{position:relative}

/* 总览文字顶端锚定 + 与首行胶囊对齐的固定内缩 */
.whitebg.fensort .fensort-key.all-key{
  align-self:flex-start;
  margin-top:5px;
}

/* 2) 展开态：钮绝对定位钉在右上角（top/right 由 JS 按展开前原位写定），标签流铺满整行 */
.whitebg.fensort .fensort-row.expanded .fensort-more{
  position:absolute;
  top:0;
  right:0;
  align-self:auto;
  margin:0;
}
.whitebg.fensort .fensort-row.expanded .fensort-tags{
  padding-right:0;
}

/* 展开/收起箭头：双 chevron 旋转 90° 过渡 */
.whitebg.fensort .fensort-more .more-arrow i{
  width:8px;
  height:8px;
  transform-origin:center;
  transition:transform .24s ease, opacity .24s ease;
}
.whitebg.fensort .fensort-more .more-arrow i.m-c,
.whitebg.fensort .fensort-more .more-arrow i.m-e{
  display:block;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  border-bottom:0;
  border-left:0;
}
.whitebg.fensort .fensort-more .more-arrow i.m-c{transform:rotate(45deg);opacity:1}
.whitebg.fensort .fensort-more .more-arrow i.m-e{transform:rotate(135deg);opacity:0}
.whitebg.fensort .fensort-row.expanded .fensort-more .more-arrow i.m-c{display:block;transform:rotate(135deg);opacity:0}
.whitebg.fensort .fensort-row.expanded .fensort-more .more-arrow i.m-e{opacity:1}
.whitebg.fensort .fensort-row.expanded .fensort-more .more-arrow{transform:none}

.whitebg.fensort .fensort-row.expanded .fensort-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  align-items:flex-start;
}
/* 展开态由 JS 按行切分出的标签段：各段占满整行宽，内部再换行；段间 9px 行距与整体一致 */
.whitebg.fensort .fensort-tags .fensort-fl{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  flex:1 1 100%;
  min-width:0;
}

.whitebg.fensort .fensort-row.expanded .fensort-more{
  width:24px;
  height:24px;
  padding:0;
  font-size:11px;
  color:var(--accent);
  background-color:var(--card);
  border-radius:50%;
  box-shadow:0 2px 8px rgba(30,32,38,.18);
}
.whitebg.fensort .fensort-row.expanded .fensort-more:hover{color:var(--accent);background-color:var(--card)}
.whitebg.fensort .fensort-more:not(:hover),.whitebg.fensort .fensort-row.expanded .fensort-more{border:0}

/* 文章分类页列表：复用首页“最新博文”卡片（主图在左） */

/* 标题(htitle)与首张卡之间留白收紧 */
.news-bloglist h2.htitle{margin-bottom:2px}
.news-bloglist > ul{padding-top:2px}
/* 分页条在 .bloglist 内：页码 li 被撑高需归位 */
.whitebg.bloglist.news-bloglist #pager ul.pages li{min-height:34px}

/* PC 卡图：源图 1200x800(3:2)，图框与源图同比例 192x128，cover 不裁切、整张呈现 */
@media screen and (min-width:1024px){
  .news-bloglist ul>li{padding-bottom:20px}
  .news-bloglist ul>li>span.blogpic{left:0;top:14px;width:192px;height:128px;border-radius:10px;max-height:none}
}

@media screen and (max-width:1023px){
  .whitebg.bloglist.news-bloglist{display:block}
  .news-bloglist ul>li{padding:14px 0 20px 124px;min-height:88px;margin-bottom:14px}
  .news-bloglist ul>li:last-child{margin-bottom:0}
  .news-bloglist ul>li>span.blogpic{position:absolute;display:block;left:0;top:14px;width:110px;height:88px;border-radius:8px}
  .news-bloglist .blogtitle{font-size:15px;margin:0 0 6px}
  .news-bloglist .blogtext{font-size:12.5px;margin:0 0 6px;line-height:1.55}
  .news-bloglist .bloginfo{font-size:11.5px;margin:0}
  .news-bloglist .viewmore{position:absolute;right:0;bottom:14px;padding:2px 10px;font-size:12px}
}
/* 手机端文章分类卡：正文加宽，主图 3:2 整张呈现 */
@media screen and (max-width:480px){
  .whitebg.bloglist.news-bloglist{padding-left:12px;padding-right:12px}
  .news-bloglist ul>li{padding:8px 0 10px 122px;min-height:0;margin-bottom:4px}
  .news-bloglist ul>li:last-child{margin-bottom:0}
  .news-bloglist ul>li>span.blogpic{position:absolute;left:0;top:8px;width:108px;height:72px}
  .news-bloglist ul>li>span.blogpic i{display:none}
  .news-bloglist .blogtitle{font-size:15px;margin:0 0 6px}
  .news-bloglist .blogtext{margin:0 0 2px}
  .news-bloglist .bloginfo{display:none}
  .news-bloglist .viewmore{display:none}
}
/* 文章分类页反转：PC 显示“本栏推荐”，手机/平板隐藏 */
@media screen and (min-width:1024px){
  body.pagenews .rbox .whitebg.tuijian{display:block}
}
@media screen and (max-width:1023px){
  body.pagenews .rbox .tuijian{display:none}
}
/* 课程介绍页：选项卡 / 徽章 / 章节 / 封面 / 按钮 */
/* 封面主图：等比完整显示，不裁切不拉伸（原 min-height+cover 会裁掉一部分） */
.course-cover .cover-pic{
  overflow:visible;
  display:flex;
  align-items:center;
  background:transparent;
  border-radius:0;
  box-shadow:none;
}
.course-cover .cover-pic img{
  display:block;
  width:auto;height:auto;
  max-width:100%;
  max-height:330px;
  min-height:0;
  object-fit:contain;
  margin:0 auto;
  border-radius:10px;
  box-shadow:var(--shadow);
}

/* 价格区：课程详情价格板直接复用商品详情页 .pd-price 结构（服务端直出，无 JS 重建） */

/* 选项卡容器：去原 h2.htitle 竖条，左右留白进内容区 */
.whitebg.ci-box{margin:0;padding:0}
.ci-tabbar{
  display:flex;
  border-bottom:1px solid var(--line);
  padding:0 28px;
  background:linear-gradient(180deg,#fff,#fdfbfa);
}
.ci-tabbar span{
  position:relative;
  padding:17px 2px 15px;
  margin-right:34px;
  font-size:16px;
  font-weight:700;
  color:var(--text-2);
  cursor:pointer;
  user-select:none;
  transition:color .2s ease;
}
.ci-tabbar span::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:3px;
  border-radius:3px 3px 0 0;
  background:var(--accent);
  opacity:0;
  transition:opacity .2s ease;
}
.ci-tabbar span.on{color:var(--accent)}
.ci-tabbar span.on::after{opacity:1}
.ci-pane{display:none}
.ci-pane.on{display:block}
.ci-pane{padding:16px 28px 36px}
.ci-pane .con_text{padding:0;margin:0}
/* 详情正文图片：不做圆角裁切设计 */
.whitebg.ci-box .con_text img{border-radius:0}

/* 课程章节：在线课程目录质感 */
.ci-chapters .ci-dir{
  display:flex;
  align-items:center;
  gap:10px;
  padding:4px 2px 14px;
  border-bottom:1px dashed var(--line-2);
  margin-bottom:6px;
}
.ci-dir .ci-dir-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.ci-dir b{font-size:15.5px;color:var(--ink);letter-spacing:.5px}
.ci-dir em{
  margin-left:auto;
  font-style:normal;
  font-size:12px;
  color:var(--muted);
  background:#f7f8fa;
  border:1px solid var(--line);
  padding:3px 11px;
  border-radius:999px;
}
.ci-chapters ul{list-style:none;margin:0;padding:0}
.ci-chapters li.ci-ch{
  display:flex;
  align-items:center;
  gap:12px;
  padding:13px 16px;
  margin:16px 0 4px;
  border-radius:11px;
  border-left:0;
  background:rgba(178,58,43,.05);
}
.ci-chapters .ci-ch-no{
  flex:0 0 auto;
  width:25px;height:25px;
  border-radius:7px;
  background:linear-gradient(135deg,var(--accent),var(--accent-2));
  color:#fff;
  font-size:13.5px;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 2px 6px rgba(178,58,43,.25);
}
.ci-chapters .ci-ch-name{
  flex:1 1 auto;
  min-width:0;
  font-size:15px;
  font-weight:800;
  color:var(--ink);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ci-chapters .ci-ch-count{
  flex:0 0 auto;
  font-size:11px;
  font-weight:600;
  color:var(--muted);
  background:#fff;
  border:1px solid var(--line);
  padding:3px 10px;
  border-radius:999px;
}
.ci-chapters li.ci-le{list-style:none}
.ci-chapters li.ci-le a{
  display:flex;
  align-items:center;
  gap:14px;
  padding:11px 12px;
  border-radius:10px;
  text-decoration:none;
  color:var(--text);
  border-bottom:1px dashed #f0f0f2;
  transition:background-color .16s ease,color .16s ease;
}
.ci-chapters ul li.ci-le:last-child a{border-bottom:0}
.ci-chapters li.ci-le a:hover{background:rgba(178,58,43,.05)}
.ci-chapters .ci-le-idx{
  flex:0 0 auto;
  width:33px;height:33px;
  border-radius:50%;
  background:#f3efec;
  color:#c0b4ac;
  font-size:12px;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-variant-numeric:tabular-nums;
  transition:all .16s ease;
}
.ci-chapters li.ci-le a:hover .ci-le-idx{background:var(--accent);color:#fff;box-shadow:0 4px 10px rgba(178,58,43,.32)}
.ci-chapters .ci-le-t{
  flex:1 1 auto;
  min-width:0;
  font-size:14px;
  font-weight:500;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  transition:color .15s ease;
}
.ci-chapters li.ci-le a:hover .ci-le-t{color:var(--accent)}
.ci-chapters .ci-le-dur{
  flex:0 0 auto;
  font-size:12px;
  color:var(--muted);
  font-variant-numeric:tabular-nums;
  background:#f7f8fa;
  padding:2px 8px;
  border-radius:6px;
}
.ci-chapters .ci-tag{
  flex:0 0 auto;
  font-style:normal;
  font-size:11px;
  font-weight:700;
  line-height:1;
  padding:5px 10px;
  border-radius:999px;
  letter-spacing:.3px;
}
.ci-chapters .ci-tag-try{color:var(--accent);border:1px solid rgba(178,58,43,.35);background:rgba(178,58,43,.05)}
.ci-chapters .ci-tag-pay{color:var(--price);border:1px solid rgba(255,86,52,.3);background:rgba(255,86,52,.06)}
.ci-chapters .ci-tag-free{color:#1f9d61;border:1px solid rgba(31,157,97,.3);background:rgba(31,157,97,.05)}
.ci-chapters .ci-tag-paid{color:#fff;background:#1f9d61;border:1px solid #1f9d61}
.ci-chapters .ci-tag-paid i{display:inline-block;width:10px;height:6px;margin-right:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translateY(-2px);vertical-align:middle}
.ci-empty{
  padding:46px 0;
  text-align:center;
  color:var(--muted);
  font-size:14px;
}

/* 操作按钮：桌面两钮等宽；购买后主钮变绿色「继续学习」 */
.course-btns .btn-go,
.course-btns .btn-cart{
  flex:0 0 150px;
  width:150px;
  padding:12px 0;
  text-align:center;
  box-sizing:border-box;
}
.course-btns .btn-go{box-shadow:0 4px 12px rgba(178,58,43,.25)}
.course-btns .btn-go.owned{
  background:linear-gradient(135deg,#3cb878,#1f9d61);
  box-shadow:0 5px 14px rgba(31,157,97,.3);
}
.course-btns .btn-go.owned:hover{
  background:linear-gradient(135deg,#31a96b,#178d55);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 8px 20px rgba(31,157,97,.34);
}

/* 窄屏适配 */
@media (max-width:1023px){
  .course-cover .cover-pic img{max-height:250px}
  .ci-tabbar{padding:0 16px}
  .ci-pane{padding:12px 16px 28px}
}
@media (max-width:760px){
  .course-btns{width:100%;flex-wrap:nowrap;gap:10px}
  .course-btns .btn-go,
  .course-btns .btn-cart{flex:0 0 auto;width:calc(50% - 5px);min-width:0;box-sizing:border-box;font-size:15px}
  .ci-chapters li.ci-ch{margin-top:12px}
}
@media (max-width:480px){
  .course-cover .cover-pic img{max-height:220px}
  .ci-tabbar{overflow-x:auto}
  .ci-chapters .ci-le-dur{display:none}
  .ci-chapters .ci-le-idx{width:30px;height:30px}
  .course-cover .cover-info .pd-price{padding:12px 14px 10px}
}
/* ---------- 课程列表（course-grid 课程卡） ---------- */
ul.course-grid{list-style:none;margin:4px 0 2px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:20px 16px;align-items:stretch}
ul.course-grid li.ccard{list-style:none;margin:0}
ul.course-grid .ccard>a{position:relative;display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;box-shadow:var(--shadow);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
ul.course-grid .ccard>a:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--line-2)}
ul.course-grid .ccard-media{position:relative;display:block;width:100%;padding-top:55.5%;overflow:hidden;background:#202329}
ul.course-grid .ccard-media img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .35s ease}
ul.course-grid .ccard-media::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(12,16,20,0) 55%,rgba(12,16,20,.34) 100%);transition:background .25s ease}
ul.course-grid .ccard:hover .ccard-media img{transform:scale(1.07)}
ul.course-grid .ccard-play{position:absolute;left:50%;top:50%;width:46px;height:46px;z-index:2;transform:translate(-50%,-50%);border-radius:50%;background:rgba(15,18,22,.35);border:1.5px solid rgba(255,255,255,.92);box-shadow:0 6px 18px rgba(0,0,0,.28);transition:transform .2s ease,background .2s ease,border-color .2s ease}
ul.course-grid .ccard-play::after{content:"";position:absolute;left:50%;top:50%;width:0;height:0;transform:translate(-50%,-50%);border-style:solid;border-width:7px 0 7px 11px;border-color:transparent transparent transparent #fff}
ul.course-grid .ccard:hover .ccard-play{transform:translate(-50%,-50%) scale(1.12);background:var(--accent);border-color:var(--accent)}

ul.course-grid .ccard-body{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;padding:13px 15px 15px}
ul.course-grid .ccard-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink);font-size:15px;font-weight:600;line-height:1.5;min-height:45px;word-break:break-word;transition:color .15s ease}
ul.course-grid .ccard:hover .ccard-title{color:var(--accent)}
ul.course-grid .ccard-meta{margin-top:9px;padding-top:8px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}


ul.course-grid .ccard-dur{flex:0 0 auto;display:inline-flex;align-items:center;color:#5a6068;background:#f1f2f5;font-size:11px;font-weight:500;line-height:1;letter-spacing:.05px;white-space:nowrap;font-variant-numeric:tabular-nums;padding:5px 8px;border-radius:999px;border:1px solid #e9ebef}
ul.course-grid .ccard-extra{margin-left:auto;flex:0 1 auto;min-width:0;color:var(--muted);font-size:12.5px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:1024px){
  ul.course-grid .ccard-play{width:40px;height:40px}
}
@media (max-width:760px){
  ul.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 10px}
  ul.course-grid .ccard>a{border-radius:12px}
  ul.course-grid .ccard-body{padding:7px 9px 8px}
  ul.course-grid .ccard-title{font-size:13px;line-height:1.45;min-height:38px}
  ul.course-grid .ccard-meta{margin-top:7px;padding-top:6px}
  ul.course-grid .ccard-dur{font-size:10.5px;padding:4px 7px}
  ul.course-grid .ccard-extra{font-size:11.5px}
  ul.course-grid .ccard-play{width:36px;height:36px;border-width:1.5px}
  ul.course-grid .ccard-play::after{border-width:6px 0 6px 9px}
  }

/* ---------- 课程页移动端：卡片加宽、贴边 ---------- */
@media (max-width:760px){
  body.pg-course article{width:100%}
  body.pg-course .whitebg.fensort{padding:11px 8px 9px}
  body.pg-course .lbox > .whitebg:has(ul.course-grid){padding:12px 8px 16px}
}

/* ---------- 课程空态：横线居中 ---------- */
ul.course-grid .empty-tip{grid-column:1/-1;list-style:none;margin:30px 0 0}
ul.course-grid .course-empty{display:flex;align-items:center;gap:16px;justify-content:center;margin:0;padding:0 8px;color:var(--muted);font-size:13px;white-space:nowrap;line-height:1.5}
ul.course-grid .course-empty::before,ul.course-grid .course-empty::after{content:"";flex:1 1 auto;height:1px;min-width:24px;max-width:150px;background:linear-gradient(90deg,transparent,#e4e7ec)}
ul.course-grid .course-empty::after{background:linear-gradient(90deg,#e4e7ec,transparent)}
body.pg-course .lbox > .whitebg:has(ul.course-grid:has(li.empty-tip)){padding-bottom:16px}

/* 猜你喜欢：标题单行，行宽收窄至 14px 留白 */
.whitebg.wenzi ul>li{padding-left:0}
.whitebg.wenzi{padding-left:14px;padding-right:14px}

/* 平台推荐 .tuijian 移动端行：白卡内边距收窄、缩略图加大、图文间距固定 */
@media screen and (max-width:1023px){
  .whitebg.tuijian{padding-left:12px;padding-right:12px}
  .whitebg.tuijian ul>li a{gap:8px}
  .whitebg.tuijian ul>li i{width:110px;height:76px;margin-right:0}
  .whitebg.tuijian ul>li p{font-size:14.5px;line-height:1.5}
  .whitebg.tuijian .topnews{max-height:150px;margin:2px 0 2px}
  .whitebg.tuijian .topnews img{height:150px}
  .whitebg.tuijian ul{padding-top:2px}
}

/* ---------- 商品详情：左栏与右栏顶部对齐（桌面） ---------- */
@media screen and (min-width:1024px){
  .lbox>.pd-page{padding-top:0}
}
