/* ============================================================
 * 老杨电玩 · 全站视觉系统 v2.0（fuyes-yang-ui v1.1.0）
 * 设计语言：暖白纸感 + 橙色品牌 + 统一圆角卡片 + 8pt 间距节奏
 *
 * 站点前提（不要忘）：
 *  - 品牌橙 #ff5f33 来自站长主题自定义 CSS，禁止再改蓝色
 *  - base.css 打印在本文件之后（主题入队更晚），同特异度主题赢，
 *    凡是要压过主题的属性一律 !important + 提特异度
 *  - header 是 position:fixed 70px，body 靠 margin-top 让位
 *  - .container 主题默认是「满宽 + 15px padding」，本版统一收到 1200 居中
 *
 * 本版解决的问题：
 *  1. banner 搜索框：主题 .search-input 带 text-indent + 固定宽，
 *     .search-btn 绝对定位 top:10/right:20 → 按钮与输入框错位 10px、中间漏缝。
 *     改为「一体化胶囊」：输入框满宽 + 按钮内嵌右侧垂直居中。
 *  2. 导航右侧：.nav-search / .nav-login 两个 li 的 padding 不一致
 *     （14/13 vs 19/0/17/13）、li 高度 70/71 混用 → 图标与文字基线不齐。
 *     统一 flex 垂直居中 + 固定 70px。
 *  3. 悬浮工具条：按钮 38px 但图标/底色/圆角各异、间距 5px 太挤 →
 *     统一 44px、14px 圆角、10px 间距、右边缘对齐。
 *  4. 首页三个区块底色不统一（body 米色 / #mocat-1 白 / 其它透明）→
 *     全部透明，靠统一间距与卡片分层。
 *  5. 卡片：主题固定 285px + float，封面 180px、标题 1 行截断、标签两行挤爆
 *     → CSS Grid 四列自适应，封面 16:10，标题 2 行，标签收进一行。
 *
 * 结构：
 *  1  设计令牌          6  列表卡片        11  正文排版
 *  2  基础与容器        7  侧栏卡片        12  下载/付费框
 *  3  头部导航          8  文章页骨架      13  页脚
 *  4  Banner / 搜索     9  文章头部        14  悬浮条 / 移动底栏
 *  5  区块标题          10 面包屑          15  响应式
 * ============================================================ */

/* ---------- 1. 设计令牌 ---------- */
:root{
  --fy-c1:#ff5f33;
  --fy-c2:#ff8a52;
  --fy-ink:#211b17;
  --fy-ink2:#514840;
  --fy-ink3:#8e837a;
  --fy-line:#eae4de;
  --fy-line2:#f2ede7;
  --fy-bg:#faf8f6;
  --fy-card:#ffffff;
  --fy-tint:#fff2ec;
  --fy-tint2:#f6f2ee;
  --fy-green:#1a8f5c;
  --fy-r-sm:10px;
  --fy-r:14px;
  --fy-r-lg:20px;
  --fy-pill:999px;
  --fy-sh-sm:0 1px 2px rgba(33,27,23,.04),0 2px 6px rgba(33,27,23,.035);
  --fy-sh-md:0 6px 20px rgba(33,27,23,.07);
  --fy-sh-lg:0 16px 44px rgba(33,27,23,.11);
  --fy-ctr:1200px;
}
body.night{
  --fy-ink:#f1eae2;
  --fy-ink2:#bab0a3;
  --fy-ink3:#8a7f73;
  --fy-line:#332c24;
  --fy-line2:#2a241d;
  --fy-bg:#141210;
  --fy-card:#1e1a16;
  --fy-tint:#2a2119;
  --fy-tint2:#241f19;
  --fy-sh-sm:0 1px 2px rgba(0,0,0,.3);
  --fy-sh-md:0 6px 20px rgba(0,0,0,.35);
  --fy-sh-lg:0 16px 44px rgba(0,0,0,.45);
}

/* ---------- 2. 基础与容器 ---------- */
:root{--theme-color:var(--fy-c1) !important;--theme-color2:var(--fy-c2) !important}

body{
  background:var(--fy-bg) !important;
  color:var(--fy-ink);
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  font-size:15px;
}
body.night{background:var(--fy-bg) !important;color:var(--fy-ink)}

/* 主题容器满宽（1440），收到 1200 居中——全站留白第一次统一 */
.container,.wrap{
  max-width:var(--fy-ctr) !important;
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:20px !important;
  padding-right:20px !important;
  box-sizing:border-box;
}
a{transition:color .16s ease}

/* ---------- 3. 头部导航 ---------- */
header.header{
  height:70px !important;
  background:#fff !important;
  border-bottom:1px solid var(--fy-line2);
  box-shadow:none !important;
}
header.header.scrolled{box-shadow:0 4px 18px rgba(33,27,23,.06) !important}
body.night header.header,
body.night header.header.scrolled{background:#1b1713 !important;border-bottom-color:#2b241d}

/* 头部容器撑满 70px，所有子项用 flex 垂直居中 */
header.header > .container{
  height:70px;
  display:flex !important;
  align-items:center;
  max-width:var(--fy-ctr) !important;
}
header.header .logo{
  float:none !important;
  height:70px !important;
  width:auto !important;
  max-width:210px;
  display:flex !important;
  align-items:center;
  flex:none;
  margin-right:6px;
}
header.header .logo a{display:flex;align-items:center;height:70px}
header.header .logo img{height:52px !important;width:auto !important;max-height:none !important;display:block}

header.header .nav-main{
  float:none !important;
  display:flex !important;
  align-items:center;
  height:70px !important;
  margin:0 0 0 18px !important;
  padding:0 !important;
}
header.header .nav-main > li{
  float:none !important;
  display:flex !important;
  align-items:center;
  position:relative;
  height:70px !important;
  line-height:1 !important;
}
header.header .nav-main > li > a{
  display:flex !important;
  align-items:center;
  height:70px !important;
  padding:0 14px !important;
  line-height:1 !important;
  font-size:15px !important;
  font-weight:500 !important;
  color:var(--fy-ink2) !important;
  letter-spacing:.2px;
  position:relative !important;
}
header.header .nav-main > li > a:hover{color:var(--fy-c1) !important}
header.header .nav-main > li.current-menu-item > a,
header.header .nav-main > li.current-menu-parent > a,
header.header .nav-main > li.current_page_item > a,
header.header .nav-main > li.current-post-ancestor > a,
header.header .nav-main > li.current-menu-ancestor > a,
header.header .nav-main > li.current-category-ancestor > a{color:var(--fy-c1) !important}

/* 当前项指示条：主题原生是 left/right 13px 的 2px 通条，
 * 改成居中 20px 的 3px 圆头短条，压在文字正下方，视觉更利落 */
header.header .nav-main > li.current-menu-item > a:after,
header.header .nav-main > li.current-menu-parent > a:after,
header.header .nav-main > li.current_page_item > a:after,
header.header .nav-main > li.current-post-ancestor > a:after,
header.header .nav-main > li.current-menu-ancestor > a:after,
header.header .nav-main > li.current-category-ancestor > a:after{
  content:"" !important;
  left:50% !important;
  right:auto !important;
  transform:translateX(-50%);
  bottom:18px !important;
  width:20px !important;
  height:3px !important;
  border-radius:3px !important;
  background:var(--fy-c1) !important;
  font-weight:400 !important;
}

/* 下拉箭头（iconfont 字符） */
header.header .nav-main > li.menu-item-has-children{padding-right:14px !important}
header.header .nav-main > li.menu-item-has-children:after{
  right:3px !important;
  top:calc(50% - 5px) !important;
  font-size:11px !important;
  color:#b3a89c !important;
}
header.header .nav-main > li.current-menu-item.menu-item-has-children:after,
header.header .nav-main > li.current-menu-parent.menu-item-has-children:after{color:var(--fy-c1) !important}

/* 下拉面板：白卡 + 圆角 + 柔和阴影 */
header.header .nav-main .sub-menu{
  top:70px !important;
  margin:6px 0 0 !important;
  padding:8px !important;
  min-width:168px !important;
  background:#fff !important;
  border:1px solid var(--fy-line);
  border-radius:var(--fy-r);
  box-shadow:var(--fy-sh-lg);
  line-height:1 !important;
}
header.header .nav-main .sub-menu:before{content:none !important}
header.header .nav-main .sub-menu li{float:none !important}
header.header .nav-main .sub-menu li > a{
  display:flex !important;
  align-items:center;
  height:38px !important;
  padding:0 14px !important;
  border-radius:var(--fy-r-sm);
  font-size:14px !important;
  font-weight:500;
  color:var(--fy-ink2) !important;
}
header.header .nav-main .sub-menu li > a:hover{
  background:var(--fy-tint) !important;
  color:var(--fy-c1) !important;
}
header.header .nav-main > li:hover > .sub-menu{margin:6px 0 0 !important}
body.night header.header .nav-main .sub-menu{background:var(--fy-card) !important;border-color:var(--fy-line)}

/* 右侧动作区：磁贴化（40px 方钮 + 文字链 + 药丸注册） */
header.header .nav-right{
  float:none !important;
  display:flex !important;
  align-items:center;
  height:70px !important;
  margin-left:auto !important;
  padding:0 !important;
  gap:4px;
}
header.header .nav-right > li{
  float:none !important;
  display:flex !important;
  align-items:center;
  height:70px !important;
  padding:0 !important;
  line-height:1 !important;
}
header.header .nav-right > li.nav-search > a.search-loader{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:38px !important;
  height:38px !important;
  border-radius:var(--fy-r-sm);
  color:var(--fy-ink2) !important;
  transition:background .16s,color .16s;
}
header.header .nav-right > li.nav-search > a.search-loader:hover{background:var(--fy-tint2);color:var(--fy-c1) !important}
header.header .nav-right .icon-search{font-size:17px !important;line-height:1 !important}
header.header .nav-right .nav-login{
  display:flex !important;
  align-items:center;
  gap:2px;
  height:70px !important;
}
header.header .nav-right .nav-login > a.signin-loader{
  display:inline-flex !important;
  align-items:center;
  gap:6px;
  height:34px !important;
  padding:0 10px !important;
  border-radius:var(--fy-r-sm);
  font-size:14.5px !important;
  font-weight:500;
  color:var(--fy-ink2) !important;
}
header.header .nav-right .nav-login > a.signin-loader:hover{background:var(--fy-tint2);color:var(--fy-c1) !important}
header.header .nav-right .nav-login .icon{font-size:15px !important}
header.header .nav-line{
  display:block !important;
  width:1px !important;
  height:14px !important;
  background:var(--fy-line) !important;
  margin:0 8px !important;
  float:none !important;
}
header.header .nav-right .nav-login > a.reg{
  display:inline-flex !important;
  align-items:center;
  height:34px !important;
  padding:0 17px !important;
  border-radius:var(--fy-pill) !important;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:1 !important;
  box-shadow:0 4px 14px rgba(255,95,51,.26);
}
header.header .nav-right .nav-login > a.reg:hover{filter:brightness(1.05);color:#fff !important}
header.header .nav-right .nav-button{display:none !important}
header.header .nav-right .nav-loader{
  display:flex !important;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:var(--fy-r-sm);
  color:var(--fy-ink2) !important;
}
header.header .nav-right .nav-loader .icon{font-size:19px !important}

body.night header.header .nav-main > li > a,
body.night header.header .nav-right .nav-login > a.signin-loader{color:#bab0a3 !important}
body.night header.header .nav-main > li.current-menu-item > a,
body.night header.header .nav-main > li > a:hover{color:var(--fy-c1) !important}
body.night header.header .nav-line{background:#3a322a !important}
body.night header.header .nav-right > li.nav-search > a.search-loader:hover,
body.night header.header .nav-right .nav-login > a.signin-loader:hover{background:#282219;color:var(--fy-c1) !important}

/* 头部下拉搜索层（点放大镜滑出） */
.search-wrap{z-index:10000}
.search-wrap.show{top:70px !important}
.search-wrap .search-wrap-container{
  height:auto !important;
  padding:18px 20px !important;
  background:#fff !important;
  border-bottom:1px solid var(--fy-line);
  border-radius:0 !important;
  box-shadow:0 18px 40px rgba(33,27,23,.10) !important;
}
.search-wrap .search-form{
  position:relative !important;
  width:100% !important;
  max-width:760px !important;
  margin:0 auto !important;
  height:52px;
}
.search-wrap .search-input{
  width:100% !important;
  height:52px !important;
  float:none !important;
  padding:0 130px 0 20px !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-pill) !important;
  background:var(--fy-bg) !important;
  font-size:15.5px !important;
  color:var(--fy-ink) !important;
}
.search-wrap .search-input:focus{border-color:var(--fy-c1) !important;background:#fff !important}
.search-wrap .search-form .search-btn{
  position:absolute !important;
  right:6px !important;
  top:6px !important;
  float:none !important;
  width:106px !important;
  height:40px !important;
  border-radius:var(--fy-pill) !important;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  font-size:14.5px !important;
  line-height:40px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.search-wrap .search-form .search-btn .icon{font-size:17px !important;margin:0 !important}
.search-wrap .icon-close{position:absolute !important;right:-4px !important;top:-40px !important;font-size:20px !important;color:var(--fy-ink3)}
body.night .search-wrap .search-wrap-container{background:var(--fy-card) !important;border-bottom-color:var(--fy-line)}
body.night .search-wrap .search-input{background:#221d18 !important;color:var(--fy-ink) !important}

/* ---------- 4. Banner / 首页搜索 ---------- */
body.home .banner.banner{
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:58px 0 62px !important;
  background:linear-gradient(180deg,#fffaf7 0%,#fff0e7 52%,#ffe4d4 100%) !important;
  border-radius:0 0 28px 28px !important;
  overflow:hidden;
  position:relative;
}
body.home .banner.banner:after{content:none !important}
/* 两团柔光，避免大面积纯色发闷 */
body.home .banner.banner::before{
  content:'' !important;
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(560px 240px at 84% 6%,rgba(255,255,255,.85),transparent 72%),
    radial-gradient(460px 220px at 12% 96%,rgba(255,191,153,.35),transparent 70%);
}
body.home .banner.banner .container{
  position:relative;z-index:1;
  height:auto !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:0 20px !important;
  /* 主题用 top:50% + translateY(-50%) 做垂直居中，容器改成自适应高度后
   * 这个组合会把内容整体上移约 78px，顶到固定头部下面被裁掉——必须清掉 */
  top:0 !important;
  transform:none !important;
  margin-top:0 !important;
}
body.home .banner.banner h2{
  margin:0 !important;
  font-size:34px !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  letter-spacing:.5px;
  color:var(--fy-ink) !important;
  text-shadow:none !important;
}
body.home .banner.banner p{
  margin:10px 0 0 !important;
  font-size:14.5px !important;
  line-height:1.6 !important;
  letter-spacing:.3px;
  color:var(--fy-ink3) !important;
}

/* —— 一体化搜索胶囊（本版核心修复）——
 * 输入框满宽、右侧留 58px 给按钮；按钮 absolute 50% 垂直居中，
 * 彻底消灭「按钮比输入框低 10px + 中间漏缝」的错位 */
body.home .banner.banner .search-form{
  position:relative;
  width:100% !important;
  max-width:520px !important;
  height:54px;
  margin:26px 0 0 !important;
  box-sizing:border-box !important;
}
body.home .banner.banner .search-form .site-search-form{
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:54px;
}
body.home .banner.banner .search-input{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:54px !important;
  line-height:54px !important;
  padding:0 60px 0 22px !important;
  text-indent:0 !important;
  border:1px solid rgba(255,95,51,.14) !important;
  border-radius:var(--fy-pill) !important;
  background:#fff !important;
  font-size:15px !important;
  color:var(--fy-ink) !important;
  box-shadow:0 8px 26px rgba(180,92,44,.13),0 1px 2px rgba(180,92,44,.05) !important;
  box-sizing:border-box !important;
  font-family:inherit !important;
  transition:box-shadow .18s,border-color .18s;
}
body.home .banner.banner .search-input::placeholder{color:#a89c91;font-size:14.5px}
body.home .banner.banner .search-input:focus{
  border-color:rgba(255,95,51,.5) !important;
  box-shadow:0 0 0 4px rgba(255,95,51,.12),0 8px 26px rgba(180,92,44,.13) !important;
  outline:0 !important;
}
body.home .banner.banner .search-btn{
  position:absolute !important;
  right:5px !important;
  top:5px !important;
  width:44px !important;
  min-width:44px !important;
  height:44px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:linear-gradient(140deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 16px rgba(255,95,51,.32) !important;
  cursor:pointer;
  transition:transform .16s,filter .16s;
}
body.home .banner.banner .search-btn:hover{transform:scale(1.05);filter:brightness(1.05)}
body.home .banner.banner .search-btn .icon{
  font-size:19px !important;
  line-height:1 !important;
  top:0 !important;
  margin:0 !important;
}

/* 夜间 banner */
body.night .banner.banner{background:linear-gradient(180deg,#1c1814 0%,#241d16 55%,#2b2219 100%) !important}
body.night .banner.banner::before{background:radial-gradient(560px 240px at 84% 6%,rgba(255,138,82,.10),transparent 72%)}
body.night .banner.banner .search-input{background:#272119 !important;border-color:#382e23 !important;color:var(--fy-ink) !important}

/* 分类/归档页 banner（主题另一套标记） */
.banner-archive{
  margin:0 !important;
  padding:38px 0 40px !important;
  background:linear-gradient(180deg,#fffaf6,#ffeade) !important;
  border-radius:0 0 24px 24px;
  text-align:center;
}
.banner-archive h1,.banner-archive .banner-title{color:var(--fy-ink) !important;font-weight:750 !important;font-size:28px !important}
.banner-archive p,.banner-archive .desc{color:var(--fy-ink3) !important}
.banner-archive .search-form{position:relative;max-width:520px !important;margin:20px auto 0 !important}
.banner-archive .search-input{
  width:100% !important;height:48px !important;line-height:48px !important;
  padding:0 58px 0 20px !important;text-indent:0 !important;
  border:1px solid rgba(255,95,51,.14) !important;border-radius:var(--fy-pill) !important;
  background:#fff !important;font-size:14.5px !important;box-sizing:border-box;
}
.banner-archive .search-btn{
  position:absolute !important;right:4px !important;top:4px !important;
  width:40px !important;height:40px !important;border-radius:50% !important;
  background:linear-gradient(140deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;border:0 !important;display:flex !important;
  align-items:center;justify-content:center;
}
body.night .banner-archive{background:linear-gradient(180deg,#1c1814,#241d16) !important}

/* 首页广告位：圆角卡 + 轻微降饱和，让它别抢 banner 的戏。
 * 高度交给原图比例（这是一张带艺术字的横幅，硬裁会切字） */
body.home .banner-bottom{margin:0 !important;padding:26px 0 4px !important}
body.home .banner-bottom .container{padding:0 20px !important}
body.home .banner-bottom .modown-ad-items{margin:0 !important;line-height:0 !important}
body.home .banner-bottom .modown-ad-items img{
  width:100%;
  height:auto !important;
  max-height:190px;
  object-fit:cover;
  border-radius:var(--fy-r);
  border:1px solid var(--fy-line);
  box-shadow:var(--fy-sh-sm);
  filter:saturate(.9);
}

/* ---------- 5. 区块标题（.mocat） ---------- */
.mocat{
  padding:46px 0 10px !important;
  background:transparent !important;
}
.mocat .container{padding-left:20px !important;padding-right:20px !important}
.mocat h2{
  position:relative;
  margin:0 !important;
  padding-left:15px !important;
  font-size:21px !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  color:var(--fy-ink) !important;
  text-align:left !important;
  display:flex !important;
  align-items:center;
  gap:9px;
}
.mocat h2:before{
  content:'' !important;
  position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:4px;height:20px;border-radius:3px;
  background:linear-gradient(180deg,var(--fy-c1),var(--fy-c2));
}
/* 主题的 h2:after 是一条「居中 20px 短横线」（为居中式标题做的），
 * 标题改成左对齐后它会孤零零飘在容器中央，必须清掉 */
.mocat h2:after{content:none !important}
.mocat h2 span{
  padding-left:0 !important;
  color:var(--fy-ink) !important;
  font-weight:700 !important;
  display:inline-flex;
  align-items:center;
  gap:9px;
  position:relative;
}
.mocat h2 span:before{content:none !important}
/* NEW 徽标：主题是 absolute right:-43px top:-10px（居中式布局遗物），
 * 左对齐后会飘到标题上方，改成文档流内紧跟文字 */
.mocat h2 i{
  position:static !important;
  right:auto !important;
  top:auto !important;
  display:inline-block !important;
  font-style:normal;
  font-size:10.5px !important;
  font-weight:700;
  letter-spacing:.4px;
  color:#fff;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2));
  padding:3px 9px !important;
  border-radius:var(--fy-pill) !important;
  line-height:1.2 !important;
  margin:0 !important;
  vertical-align:middle;
}
.mocat p.desc{
  margin:8px 0 0 !important;
  padding-left:15px !important;
  font-size:13.5px !important;
  line-height:1.7 !important;
  color:var(--fy-ink3) !important;
  text-align:left !important;
}
/* 子分类筛选：药丸 chip 一行 */
.mocat ul.child{
  display:flex !important;
  flex-wrap:wrap;
  gap:8px;
  height:auto !important;
  margin:16px 0 22px !important;
  padding:0 !important;
}
.mocat ul.child li{float:none !important;display:block !important}
.mocat ul.child li a{
  display:inline-flex !important;
  align-items:center;
  height:32px !important;
  padding:0 15px !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-pill) !important;
  background:#fff !important;
  color:var(--fy-ink2) !important;
  font-size:13px !important;
  font-weight:500;
  line-height:1 !important;
  transition:all .16s;
}
.mocat ul.child li a:hover{border-color:var(--fy-c1) !important;color:var(--fy-c1) !important}
.mocat ul.child li a.active{
  background:var(--fy-c1) !important;
  border-color:var(--fy-c1) !important;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(255,95,51,.24);
}
body.night .mocat ul.child li a{background:var(--fy-card) !important;border-color:var(--fy-line) !important}

/* 查看更多：从 220px 实心大橙块改成轻量描边药丸。
 * 主题是 .mocat .more a{width:220px;color:#fff !important}（特异度 0,2,1），
 * 必须用 .mocat .container .more a（0,3,1）才压得住，否则白字落在白底上＝隐形 */
.mocat .more{margin:26px 0 0 !important;text-align:center !important;padding:0 !important}
.mocat .container .more a,
.mocat .more a{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:7px;
  width:auto !important;
  min-width:172px;
  height:42px !important;
  padding:0 26px !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-pill) !important;
  background:#fff !important;
  background-color:#fff !important;
  color:var(--fy-ink2) !important;
  font-size:14px !important;
  font-weight:500;
  line-height:1 !important;
  box-shadow:none !important;
  text-decoration:none !important;
  transition:all .18s;
}
.mocat .more a .icon{
  display:inline-block !important;
  font-size:14px !important;
  margin:0 !important;
  transition:transform .18s;
}
.mocat .more a:hover{
  border-color:var(--fy-c1) !important;
  color:var(--fy-c1) !important;
  background:var(--fy-tint) !important;
  background-color:var(--fy-tint) !important;
  opacity:1 !important;
}
.mocat .more a:hover .icon{transform:translateX(3px)}
body.night .mocat .more a{background:var(--fy-card) !important;background-color:var(--fy-card) !important;border-color:var(--fy-line) !important;color:var(--fy-ink2) !important}

/* ---------- 6. 列表卡片（CSS Grid 四列） ---------- */
/* 主题是 285px 固定宽 + float，本版改 Grid：自适应、等高、间距一致 */
.grids{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
  margin:0 !important;
}
/* 致命细节：.grids 常带 .clearfix，而 .clearfix:before/:after 是
 * display:table 的伪元素——一旦父级变 grid，它们会变成真实的 grid item，
 * 占掉第一格，导致整排卡片右移一格（表现为"每行只有 3 张、第 4 张掉到下一行"）。
 * 必须把伪元素从栅格里摘掉。 */
.grids:before,
.grids:after,
.grids.clearfix:before,
.grids.clearfix:after{
  content:none !important;
  display:none !important;
}
.grids .grid,
.grids .post.grid{
  float:none !important;
  width:auto !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  box-shadow:none !important;
  overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.grids .grid:hover,
.grids .post.grid:hover{
  transform:translateY(-4px) !important;
  box-shadow:var(--fy-sh-md) !important;
  border-color:#f5d3c1 !important;
}
/* 封面：16:10 统一比例，图片铺满不变形 */
.grids .grid .img{
  position:relative;
  height:auto !important;
  aspect-ratio:16/10;
  border-radius:0 !important;
  overflow:hidden;
  background:linear-gradient(135deg,#fff3ec,#ffe3d3);
}
.grids .grid .img a{display:block !important;height:100% !important}
.grids .grid .img .thumb,
.grids .grid .img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block;
  font-size:0;
  border-radius:0 !important;
  transition:transform .35s ease;
}
.grids .grid:hover .img .thumb,
.grids .grid:hover .img img{transform:scale(1.04)}

/* 无封面兜底：主题占位图 thumbnail.png 是灰底破图样，
 * 由 JS 打上 .fy-noimg 后换成品牌渐变块 */
.grids .grid .img.fy-noimg{background:linear-gradient(135deg,#fff1e8,#ffdcc8) !important}
.grids .grid .img.fy-noimg img{opacity:0 !important}
.grids .grid .img.fy-noimg:after{
  content:'老杨电玩';
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:600;letter-spacing:2px;
  color:rgba(255,95,51,.45);
}
body.night .grids .grid .img.fy-noimg{background:linear-gradient(135deg,#2a2119,#332619) !important}

/* 文字区 */
.grids .grid .con{
  padding:15px 16px 17px !important;
  display:flex;
  flex-direction:column;
  flex:1;
}
.grids .grid .cat{
  display:flex !important;
  align-items:center;
  gap:7px;
  /* 主题给了 height:19px + padding-left:14px，且 :after 圆点是流内块，
   * 两者叠加把这一行撑到 29px、圆点还飘在文字上方——全部推倒重排 */
  height:auto !important;
  padding-left:0 !important;
  margin:0 0 9px !important;
  line-height:1 !important;
  overflow:visible !important;
  -webkit-line-clamp:none !important;
}
.grids .grid .cat:after{
  content:'' !important;
  position:static !important;
  left:auto !important;top:auto !important;
  display:block !important;
  width:5px !important;height:5px !important;
  border:0 !important;
  border-radius:50% !important;
  background:var(--fy-c1) !important;
  order:-1;
  flex:none;
}
.grids .grid .cat a{
  display:inline-flex !important;
  align-items:center;
  height:21px;
  padding:0 9px !important;
  border-radius:6px !important;
  background:var(--fy-tint) !important;
  color:var(--fy-c1) !important;
  font-size:11.5px !important;
  font-weight:600;
  letter-spacing:.2px;
  line-height:1 !important;
  white-space:nowrap;
}
/* 标签行在卡片里是噪音，列表不显示（文章页保留） */
.grids .grid .tag{display:none !important}
.grids .grid h3{
  margin:0 !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:1.5 !important;
  height:auto !important;
}
.grids .grid h3 a{
  color:var(--fy-ink) !important;
  font-size:15px !important;
  font-weight:600 !important;
  line-height:1.5 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  height:45px !important;
  word-break:break-word;
}
.grids .grid h3 a:hover{color:var(--fy-c1) !important}
.grids .grid .excerpt{display:none !important}
.grids .grid .grid-meta{
  display:flex !important;
  align-items:center;
  gap:12px;
  /* 主题写死 height:16px + overflow:hidden，会把 padding-top 吃掉导致
   * 日期/浏览量只剩上半截（真实踩过），必须 height:auto + overflow:visible */
  height:auto !important;
  line-height:1.5 !important;
  overflow:visible !important;
  margin:auto 0 0 !important;
  padding-top:12px !important;
  font-size:12px !important;
  color:var(--fy-ink3) !important;
  -webkit-line-clamp:none !important;
}
.grids .grid .grid-meta span{display:inline-flex;align-items:center;gap:4px;float:none !important;margin:0 !important}
.grids .grid .grid-meta .icon{font-size:12px !important;color:var(--fy-ink3) !important;line-height:1 !important}

/* 列表模式（.lists）保持可用，只统一皮肤 */
.lists .list{
  float:none !important;
  width:auto !important;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  box-shadow:none !important;
}
.lists .list:hover{box-shadow:var(--fy-sh-md) !important;transform:none !important}

/* ---------- 7. 侧栏卡片 ---------- */
.sidebar{width:300px !important}
.sidebar .widget{
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  box-shadow:none !important;
  padding:18px !important;
  margin:0 0 16px !important;
}
.sidebar .widget h3{
  display:flex !important;
  align-items:center;
  gap:8px;
  margin:0 0 14px !important;
  padding:0 0 12px !important;
  border-bottom:1px solid var(--fy-line2);
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  color:var(--fy-ink) !important;
}
.sidebar .widget h3 .icon{font-size:15px !important;color:var(--fy-c1) !important}
.sidebar .widget-postlist li{
  padding:11px 0 !important;
  border-bottom:1px dashed var(--fy-line2) !important;
  line-height:1.55 !important;
}
.sidebar .widget-postlist li:last-child{border-bottom:0 !important;padding-bottom:0 !important}
.sidebar .widget-postlist li:first-child{padding-top:0 !important}
.sidebar .widget-postlist li h4,
.sidebar .widget-postlist li a{
  font-size:13.5px !important;
  font-weight:500 !important;
  color:var(--fy-ink) !important;
  line-height:1.55 !important;
}
.sidebar .widget-postlist li a:hover{color:var(--fy-c1) !important}
.sidebar .widget-postlist li .meta{
  margin-top:5px !important;
  font-size:11.5px !important;
  color:var(--fy-ink3) !important;
}
.sidebar .widget-bottom-search .footer-widget-content{margin:0 !important}
/* 侧栏搜索用的是主题的 .searchform（input/button 都没有类名，
 * 是一组左右拼接的直角控件）——单独按结构选择器改成一体化胶囊 */
.sidebar .widget-bottom-search .searchform{margin:0 !important}
.sidebar .widget-bottom-search .searchform > div{position:relative}
.sidebar .widget-bottom-search .searchform input[type="text"],
.sidebar .widget-bottom-search .searchform input[type="search"]{
  width:100% !important;
  height:40px !important;
  padding:0 48px 0 15px !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-pill) !important;
  background:var(--fy-bg) !important;
  font-size:13.5px !important;
  color:var(--fy-ink) !important;
  box-sizing:border-box;
  box-shadow:none !important;
}
.sidebar .widget-bottom-search .searchform input:focus{
  border-color:var(--fy-c1) !important;
  background:#fff !important;
  outline:0 !important;
}
.sidebar .widget-bottom-search .searchform button{
  position:absolute !important;
  right:4px !important;
  top:4px !important;
  width:32px !important;
  height:32px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:linear-gradient(140deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(255,95,51,.24);
}
.sidebar .widget-bottom-search .searchform button .icon{font-size:15px !important;color:#fff !important;line-height:1 !important}
/* 旧的选择器保留（万一主题换回 .search-input 结构） */
.sidebar .widget-bottom-search .search-input{
  height:40px !important;
  width:100% !important;
  padding:0 44px 0 15px !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-pill) !important;
  background:var(--fy-bg) !important;
  font-size:13.5px !important;
  box-sizing:border-box;
}
.sidebar .widget-tags .items{display:flex !important;flex-wrap:wrap;gap:8px}
.sidebar .widget-tags .items a{
  padding:5px 12px !important;
  border-radius:var(--fy-pill) !important;
  background:var(--fy-tint2) !important;
  color:var(--fy-ink2) !important;
  font-size:12px !important;
  font-weight:500;
  transition:all .16s;
}
.sidebar .widget-tags .items a:hover{background:var(--fy-c1) !important;color:#fff !important}
body.night .sidebar .widget-bottom-search .search-input{background:#221d18 !important}

/* ---------- 8. 文章页骨架 ----------
 * 实测结构（别再搞错）：
 *   .main > .container.clearfix
 *       ├ .breadcrumbs
 *       ├ .content-wrap > .content > article.single-content
 *       └ aside.sidebar            ← 侧栏是 .content-wrap 的「兄弟」，
 *                                    不是它的子元素！
 * 所以两栏不能用 .content-wrap 做 flex 容器，必须把
 * .main > .container 本身改成 flex，否则正文会占满整行、与侧栏重叠。 */
.main{margin-top:0 !important;padding:0 !important}
.main > .container{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:flex-start !important;
  column-gap:28px !important;
  row-gap:0 !important;
}
.main > .container > .breadcrumbs{flex:0 0 100% !important;width:100% !important}
.main > .container > .content-wrap{
  /* basis 必须是 0：auto 会让正文按 max-content 撑满整行，
   * 侧栏被挤到下一行（两栏变上下堆叠） */
  flex:1 1 0% !important;
  min-width:0 !important;
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}
.content-wrap > .content{
  float:none !important;
  width:auto !important;
  max-width:none !important;
  flex:1 1 auto;
  min-width:0;
  margin:0 !important;
}
.main > .container > .sidebar{
  float:none !important;
  flex:0 0 300px !important;
  width:300px !important;
  margin:0 !important;
}

/* ---------- 9. 文章头部 / 面包屑 ---------- */
.breadcrumbs{
  padding:18px 0 16px !important;
  margin:0 !important;
  font-size:12.5px !important;
  color:var(--fy-ink3) !important;
  line-height:1.6;
}
.breadcrumbs a{color:var(--fy-ink2) !important}
.breadcrumbs a:hover{color:var(--fy-c1) !important}
.breadcrumbs .sep{margin:0 7px;color:#c9bfb4}

.single-content{
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-lg) !important;
  box-shadow:none !important;
  padding:34px 38px 30px !important;
  margin:0 0 20px !important;
}
.article-header{
  padding-bottom:20px !important;
  margin-bottom:26px !important;
  border-bottom:1px solid var(--fy-line2) !important;
}
.article-title{
  margin:0 0 14px !important;
  font-size:27px !important;
  font-weight:750 !important;
  line-height:1.42 !important;
  letter-spacing:-.2px;
  color:var(--fy-ink) !important;
}
.article-meta{
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 16px !important;
  font-size:12.5px !important;
  color:var(--fy-ink3) !important;
}
.article-meta .item{display:inline-flex;align-items:center;gap:5px}
.article-meta .icon{font-size:13px !important;color:var(--fy-ink3) !important}
.article-meta .item-cats a{color:var(--fy-c1) !important;font-weight:600}
.article-meta .item.post-sign{
  background:#e9f7ef;color:var(--fy-green) !important;
  font-weight:650;font-size:11.5px;
  padding:3px 10px;border-radius:var(--fy-pill);
}

/* ---------- 10. 正文排版 ---------- */
.article-content{
  font-size:16px !important;
  line-height:1.92 !important;
  color:var(--fy-ink2) !important;
  letter-spacing:.1px;
}
.article-content > *:first-child{margin-top:0 !important}
.article-content p{margin:0 0 1.15em !important}
.article-content h2,
.article-content h3,
.article-content h4{
  color:var(--fy-ink) !important;
  font-weight:700 !important;
  line-height:1.5 !important;
  letter-spacing:-.1px;
}
.article-content h2{
  font-size:20px !important;
  margin:2em 0 .8em !important;
  padding:0 0 0 13px !important;
  border-left:4px solid var(--fy-c1);
  border-radius:2px;
}
.article-content h3{font-size:17.5px !important;margin:1.7em 0 .7em !important}
.article-content h4{font-size:16px !important;margin:1.5em 0 .6em !important}
.article-content a{
  color:var(--fy-c1) !important;
  text-decoration:none;
  border-bottom:1px solid rgba(255,95,51,.35);
  padding-bottom:1px;
}
.article-content a:hover{border-bottom-color:var(--fy-c1)}
.article-content img{
  max-width:100%;
  height:auto;
  border-radius:var(--fy-r);
  border:1px solid var(--fy-line2);
  margin:14px 0 !important;
  display:block;
}
.article-content blockquote{
  margin:1.4em 0 !important;
  padding:16px 20px !important;
  background:var(--fy-tint) !important;
  border:0 !important;
  border-left:3px solid var(--fy-c1) !important;
  border-radius:0 var(--fy-r) var(--fy-r) 0 !important;
  color:var(--fy-ink2) !important;
  font-size:15px;
}
.article-content blockquote p:last-child{margin-bottom:0 !important}
.article-content ul,.article-content ol{padding-left:1.5em !important;margin:0 0 1.15em !important}
.article-content li{margin:.35em 0 !important}
.article-content code{
  background:var(--fy-tint2);
  color:#c0392b;
  border-radius:5px;
  padding:2px 6px;
  font-size:.9em;
  font-family:Consolas,Monaco,monospace;
}
.article-content pre{
  background:#241f1a !important;
  color:#e9e1d5;
  border-radius:var(--fy-r) !important;
  padding:18px 20px !important;
  overflow-x:auto;
  font-size:13px;
  line-height:1.75;
  margin:1.4em 0 !important;
}
.article-content pre code{background:none !important;color:inherit !important;padding:0 !important}
.article-content table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid var(--fy-line);
  border-radius:var(--fy-r);
  font-size:14px;
  margin:1.4em 0 !important;
}
.article-content table th{
  background:var(--fy-tint2) !important;
  color:var(--fy-ink) !important;
  font-weight:650;
  text-align:left;
}
.article-content table th,
.article-content table td{
  border:0 !important;
  border-bottom:1px solid var(--fy-line2) !important;
  padding:11px 14px !important;
}
.article-content table tr:last-child td{border-bottom:0 !important}

/* FAQ 折叠卡 */
.article-faqs{
  margin:26px 0 8px !important;
  padding:20px !important;
  background:var(--fy-tint2) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
}
.article-faq-title{
  margin:0 0 12px !important;
  font-size:15px !important;
  font-weight:700 !important;
  color:var(--fy-ink) !important;
}
.article-faq-title::before{content:'❓ '}
.article-faqs .item{
  margin-bottom:8px !important;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-sm) !important;
  overflow:hidden;
}
.article-faqs .item:last-child{margin-bottom:0 !important}
.article-faqs .que{
  display:flex;align-items:center;gap:9px;
  padding:12px 15px !important;
  font-size:14px !important;font-weight:600 !important;
  color:var(--fy-ink) !important;
  cursor:pointer;
}
.article-faqs .que .icon-help{color:var(--fy-c1) !important}
.article-faqs .que .ic{margin-left:auto;color:var(--fy-ink3);transition:transform .2s}
.article-faqs .item.open .que .ic{transform:rotate(180deg)}
.article-faqs .ans{
  padding:12px 15px 14px !important;
  border-top:1px dashed var(--fy-line) !important;
  font-size:13.5px !important;
  line-height:1.85 !important;
  color:var(--fy-ink2) !important;
}

/* 版权提示 */
.article-copyright{
  margin-top:22px !important;
  padding:12px 16px !important;
  background:#fffaf0 !important;
  border:1px solid #f2e0bb !important;
  border-radius:var(--fy-r-sm) !important;
  font-size:12.5px !important;
  line-height:1.7;
  color:#8d6c33 !important;
}
.article-copyright a{color:var(--fy-c1) !important}

/* 收藏 / 点赞 / 标签 / 分享 */
.article-act{
  display:flex !important;
  align-items:center;
  gap:10px;
  margin:8px 0 0 !important;
  padding:18px 0 2px !important;
  border-top:1px solid var(--fy-line2) !important;
}
.article-act a{
  display:inline-flex !important;
  align-items:center;
  gap:6px;
  height:36px;
  padding:0 16px !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-pill) !important;
  background:var(--fy-card) !important;
  color:var(--fy-ink2) !important;
  font-size:13px !important;
  line-height:1 !important;
  transition:all .16s;
}
.article-act a:hover{border-color:var(--fy-c1) !important;color:var(--fy-c1) !important;background:var(--fy-tint) !important}
.article-tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.article-tags a{
  display:inline-flex !important;align-items:center;
  height:28px;padding:0 13px !important;
  margin:0 !important;
  border-radius:var(--fy-pill) !important;
  background:var(--fy-tint2) !important;
  color:var(--fy-ink2) !important;
  font-size:12px !important;
  font-weight:500;
}
.article-tags a:hover{background:var(--fy-c1) !important;color:#fff !important}
.article-shares{
  display:flex !important;align-items:center;gap:10px;
  margin:20px 0 0 !important;padding-top:18px !important;
  border-top:1px solid var(--fy-line2);
}
.article-shares a{
  display:inline-flex !important;align-items:center;justify-content:center;
  width:32px;height:32px;border-radius:50%;
  background:var(--fy-tint2) !important;
  color:var(--fy-ink3) !important;
  font-size:14px;
  transition:all .16s;
}
.article-shares a:hover{background:var(--fy-c1) !important;color:#fff !important}

/* 上一篇 / 下一篇 */
.article-nav{
  display:grid !important;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin:0 0 26px !important;
  border:0 !important;
}
.article-nav > span{
  display:block !important;
  width:auto !important;
  padding:15px 18px !important;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  font-size:12px !important;
  color:var(--fy-ink3) !important;
  line-height:1.7;
  transition:all .18s;
}
.article-nav > span:hover{border-color:#f5d3c1 !important;box-shadow:var(--fy-sh-sm) !important}
.article-nav > span a{color:var(--fy-ink) !important;font-size:14px !important;font-weight:500}
.article-nav > span a:hover{color:var(--fy-c1) !important}
.article-nav .article-nav-next{text-align:right}

/* 相关推荐 */
.single-related{margin-bottom:26px}
.single-related .related-title{
  position:relative;
  margin:0 0 18px !important;
  padding-left:15px !important;
  font-size:18px !important;
  font-weight:700 !important;
  color:var(--fy-ink) !important;
  display:flex;align-items:center;gap:8px;
}
.single-related .related-title:before{
  content:'' !important;
  position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:4px;height:18px;border-radius:3px;
  background:linear-gradient(180deg,var(--fy-c1),var(--fy-c2));
}
.single-related .related-title .icon{font-size:16px !important;color:var(--fy-c1) !important}
.single-related .grids{grid-template-columns:repeat(3,minmax(0,1fr)) !important}

/* 评论 */
.single-comment{
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-lg) !important;
  padding:26px 28px !important;
}
.single-comment .comments-title{
  margin:0 0 18px !important;
  padding-bottom:14px !important;
  border-bottom:1px solid var(--fy-line2);
  font-size:17px !important;
  font-weight:700 !important;
  color:var(--fy-ink) !important;
}
.single-comment .comments-title small{color:var(--fy-ink3);font-weight:500;font-size:13px}
.comment-signarea,.comments-respond textarea{
  background:var(--fy-bg) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  color:var(--fy-ink2) !important;
}

/* ---------- 11. 下载 / 付费框（转化核心，皮肤统一） ---------- */
.erphpdown.erphpdown,
.erphpdown-box.erphpdown-box,
.article-content .erphpdown.erphpdown{
  background:linear-gradient(180deg,#fffaf6,#fff2e9) !important;
  border:1px solid #ffe0cd !important;
  border-radius:var(--fy-r-lg) !important;
  padding:22px 22px 18px !important;
  margin:28px 0 14px !important;
  box-shadow:none !important;
  display:block !important;
  clear:both;
}
.erphpdown .erphpdown-title,
.erphpdown-box .erphpdown-title,
.erphpdown > .title,
.erphpdown > legend,
.erphpdown-box > .title{
  display:inline-flex !important;
  align-items:center;gap:7px;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2));
  color:#fff !important;
  font-size:13px !important;font-weight:650 !important;
  padding:6px 15px !important;border-radius:var(--fy-pill) !important;
  margin-bottom:16px !important;
  border:0 !important;float:none !important;width:auto !important;
  line-height:1.2 !important;
}
.erphpdown .erphpdown-title::before,
.erphpdown-box .erphpdown-title::before,
.erphpdown > .title::before{content:'📦'}
.erphpdown .erphpdown-child-title{
  display:block;
  font-size:13px !important;font-weight:700 !important;
  color:var(--fy-ink) !important;
  margin-bottom:9px !important;
}
.erphpdown .erphpdown-box-tips,
.erphpdown-box .erphpdown-con{
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  padding:14px 16px !important;
  margin:0 0 12px !important;
  font-size:13.5px !important;
  line-height:1.95 !important;
  color:var(--fy-ink2) !important;
}
.erphpdown-box .erphpdown-con{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.erphpdown .erphpdown-price,
.erphpdown-box .erphpdown-price{font-size:13.5px !important;font-weight:600 !important;color:var(--fy-ink2) !important}
.erphpdown .erphpdown-box-tips .erphpdown-price span,
.erphpdown .erphpdown-price span,
.erphpdown-box .erphpdown-price span{
  font-size:23px !important;font-weight:800 !important;
  color:var(--fy-c1) !important;
  margin:0 2px;display:inline-block;
}
.erphpdown-box .erphpdown-cart{margin-left:auto}

/* 下载按钮 / 购买按钮 */
.erphpdown-down,
.erphpdown-buy,
.btn-buy,
.erphpdown .erphpdown-down,
.erphpdown .erphpdown-buy,
.erphpdown-box .button,
.single-content .erphpdown-box a.button,
.erphpdown-box .down,
.erphpdown .down{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:6px;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:var(--fy-pill) !important;
  font-weight:650 !important;
  font-size:13.5px !important;
  line-height:1.6 !important;
  padding:8px 22px !important;
  text-decoration:none !important;
  box-shadow:0 6px 16px rgba(255,95,51,.24) !important;
  transition:filter .16s,transform .16s !important;
  white-space:nowrap;
  cursor:pointer;
}
.erphpdown-down:hover,
.erphpdown-buy:hover,
.erphpdown .down:hover,
.erphpdown-box .down:hover{filter:brightness(1.06);transform:translateY(-1px)}
.erphpdown .item2,
.erphpdown .item,
.erphpdown .erphpdown-item,
.erphpdown-box .item2,
.erphpdown-box .item{
  display:flex !important;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  padding:11px 15px !important;
  margin:0 0 9px !important;
  font-size:13.5px !important;font-weight:600 !important;
  color:var(--fy-ink) !important;
  transition:border-color .16s,box-shadow .16s;
}
.erphpdown .item2:hover,
.erphpdown .item:hover,
.erphpdown .erphpdown-item:hover{border-color:#f5d3c1 !important;box-shadow:var(--fy-sh-sm) !important}
.erphpdown .item2::before,
.erphpdown .item::before,
.erphpdown .erphpdown-item::before{content:'💾';font-size:16px}
.erphpdown .item2 > .erphpdown-down:last-child,
.erphpdown .item > .erphpdown-down:last-child,
.erphpdown .erphpdown-item > .erphpdown-down:last-child{margin-left:auto}
.erphpdown .erphpdown-copy{
  border:1px solid var(--fy-line) !important;
  background:var(--fy-tint2) !important;
  color:var(--fy-ink2) !important;
  border-radius:var(--fy-pill) !important;
  padding:4px 13px !important;
  font-size:12px !important;font-weight:600;
  cursor:pointer;text-decoration:none;white-space:nowrap;
}
.erphpdown .erphpdown-copy:hover{border-color:var(--fy-c1) !important;color:var(--fy-c1) !important}
.erphpdown .tips2,
.erphpdown .tips2,
.erphpdown .erphpdown-tips{
  margin:10px 0 0 !important;
  padding:9px 13px !important;
  background:#fffaf0 !important;
  border:1px solid #f2e0bb !important;
  border-radius:var(--fy-r-sm) !important;
  font-size:12px !important;line-height:1.75 !important;
  color:#8d6c33 !important;
}
.erphpdown .erphpdown-vip{
  display:inline-flex !important;align-items:center;
  border:1px solid #eecd93 !important;
  background:#fff8ea !important;
  color:#a76b12 !important;
  border-radius:var(--fy-pill) !important;
  padding:5px 15px !important;
  font-size:12.5px !important;font-weight:650;
  text-decoration:none !important;white-space:nowrap;
  margin-left:6px;
}
.erphpdown .erphp-login-must{
  color:var(--fy-c1) !important;font-weight:650;
  text-decoration:none !important;
  border-bottom:1px solid rgba(255,95,51,.35);
}
/* JS 注入的信任条 */
.fy-kf{
  margin-top:14px !important;padding-top:14px !important;
  border-top:1px dashed #f0dcca !important;
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  font-size:12.5px !important;color:var(--fy-ink2) !important;
}
.fy-kf b{color:var(--fy-c1) !important;font-weight:700}
.fy-trust{
  margin:12px 0 0 !important;
  text-align:center;
  font-size:11.5px !important;line-height:1.8;
  color:var(--fy-ink3) !important;
}
.fy-vip-go,.fy-wall-btn{
  display:inline-flex !important;align-items:center;gap:6px;
  border-radius:var(--fy-pill) !important;
  padding:8px 20px !important;
  font-size:13px !important;font-weight:650;
  text-decoration:none !important;
}
.fy-vip-go{border:1px solid #eecd93 !important;background:#fff8ea !important;color:#a76b12 !important}
.fy-wall-btn{
  border:0 !important;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  box-shadow:0 8px 20px rgba(255,95,51,.24);
}
body .erphpdown-content-vip.fy-locked,
body [class*="erphpdown-content"].fy-locked{
  background:linear-gradient(180deg,#fffaf6,#fff0e5) !important;
  border:1px solid #ffe0cd !important;
  border-radius:var(--fy-r-lg) !important;
  padding:26px 22px !important;
  margin:24px 0 !important;
  text-align:center;
}
.fy-price{
  display:inline-flex !important;align-items:baseline;gap:6px;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  padding:7px 18px !important;
  margin:0 0 13px !important;
  font-size:12.5px !important;color:var(--fy-ink3) !important;
}
.fy-price b{font-size:23px !important;color:var(--fy-c1) !important;font-weight:800}
.fy-owned{
  display:inline-flex !important;align-items:center;gap:6px;
  background:#e9f7ef !important;border:1px solid #bfe5c6 !important;
  color:var(--fy-green) !important;
  font-size:13px !important;font-weight:650;
  padding:7px 15px !important;border-radius:var(--fy-pill) !important;
}

/* VIP 页 */
.page-vip-content .vip-content{
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-lg) !important;
  padding:30px 32px !important;
}
/* VIP 模板把蓝底大图挂在 .main 上（vipbg.png），整块和暖色体系打架，
 * 换成暖色 hero 卡；正文卡跟随 */
body.page-template-vip .main{
  background:none !important;
  background-image:none !important;
  background-color:transparent !important;
  padding:24px 0 0 !important;
}
body.page-template-vip .single-content{
  background:linear-gradient(180deg,#fffaf6,#ffeade) !important;
  border:1px solid #ffe3d1 !important;
  border-radius:var(--fy-r-lg) !important;
  box-shadow:none !important;
}
body.page-template-vip .article-header{border-bottom-color:#ffe0cd !important}
body.night.page-template-vip .single-content{background:var(--fy-card) !important;border-color:var(--fy-line) !important}
.page-vip-content .vip-li{
  display:flex !important;align-items:center;gap:10px;
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r) !important;
  padding:12px 17px !important;
  margin-bottom:9px !important;
  font-size:14px !important;color:var(--fy-ink) !important;
}
.page-vip-content .vip-li::before{content:'✅';flex:none}
.page-vip-content .vip-desc{font-size:13.5px !important;line-height:1.85 !important;color:var(--fy-ink2) !important}

/* ---------- 12. 登录 / 注册 ----------
 * 站内有两套登录结构：
 *   弹窗：.sign > .sign-box > .sign-wrap（form#sign-in / #sign-up）
 *   整页：.loginbox > .sign-wrap > .part.loginPart（form.loginform）
 * 主题都是「白卡落白底」，几乎没有边界，这里统一补描边+阴影+浅底输入框 */
.sign .sign-box,
.loginbox{
  background:var(--fy-card) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-lg) !important;
  box-shadow:var(--fy-sh-lg) !important;
}
.loginbox{padding:34px 32px 26px !important}
.loginbox h2 img{max-height:46px;width:auto}
.sign .sign-wrap{padding:6px 2px !important}
.sign .form-control,
.loginbox .input-control{
  height:46px !important;
  background:var(--fy-bg) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-sm) !important;
  font-size:14.5px !important;
  color:var(--fy-ink) !important;
  box-shadow:none !important;
}
.loginbox .loginform .input-item{margin-bottom:14px !important;position:relative}
.loginbox .form-control,
.loginbox .input-control{padding:0 16px 0 44px !important;width:100% !important;box-sizing:border-box}
.sign .form-control:focus,
.loginbox .input-control:focus{
  border-color:var(--fy-c1) !important;
  background:#fff !important;
  box-shadow:0 0 0 3px rgba(255,95,51,.12) !important;
  outline:0 !important;
}
.sign .form-item .icon,
.loginbox .input-item .icon{color:var(--fy-ink3) !important}
.sign .sign-submit .btn,
.sign .btn.signinsubmit-loader,
.loginbox .input-submit .submit,
.loginbox .btn.login-loader{
  width:100% !important;
  height:46px !important;
  border:0 !important;
  border-radius:var(--fy-r-sm) !important;
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:600 !important;
  letter-spacing:1px;
  box-shadow:0 8px 20px rgba(255,95,51,.24) !important;
  cursor:pointer;
}
.sign .captcha-slide2,
.sign .form-slide-item,
.loginbox .form-slide-item{
  background:var(--fy-tint2) !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-sm) !important;
}
.sign .form-slide-item span,
.loginbox .form-slide-item span{color:var(--fy-ink3) !important;font-size:12.5px !important}
.loginbox .captcha-slide{
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  border-radius:6px !important;
  color:#fff !important;
}
.sign .sign-trans,
.sign .sign-trans a,
.loginbox .safe a{color:var(--fy-ink3) !important;font-size:13px !important}
.sign .sign-trans a:hover,
.loginbox .safe a:hover{color:var(--fy-c1) !important}
.sign .logo-login{max-height:44px}
.loginbox .sign-notice,
.loginbox .sign-tips2{font-size:12.5px !important;color:var(--fy-ink3) !important;line-height:1.7}
.loginbox a.return-home{
  background:#fff !important;
  border:1px solid var(--fy-line) !important;
  border-radius:var(--fy-r-sm) !important;
  box-shadow:var(--fy-sh-sm) !important;
  color:var(--fy-ink2) !important;
}
body.night .loginbox,
body.night .sign .sign-box{background:var(--fy-card) !important;border-color:var(--fy-line) !important}
body.night .loginbox .input-control,
body.night .sign .form-control{background:#221d18 !important;border-color:var(--fy-line) !important;color:var(--fy-ink) !important}

/* ---------- 13. 页脚 ---------- */
.footer{
  margin-top:52px !important;
  padding:44px 0 0 !important;
  background:#1d1915 !important;
  color:#a0958a !important;
}
.footer .container{padding:0 20px !important;max-width:var(--fy-ctr) !important}
.footer .footer-widgets{margin:0 0 8px}
.footer .footer-widgets .widget h3{color:#f0e9e1 !important;font-size:15px !important;font-weight:700;margin-bottom:14px}
.footer .footer-links{
  margin-top:26px !important;
  padding:20px 0 !important;
  border-top:1px solid rgba(255,255,255,.07);
  font-size:12.5px !important;
  line-height:2 !important;
  color:#8b8177 !important;
}
.footer .footer-links a{color:#bfb4a8 !important}
.footer .footer-links a:hover{color:var(--fy-c1) !important}
.footer .copyright{
  padding:18px 0 26px !important;
  border-top:1px solid rgba(255,255,255,.06);
  font-size:12.5px !important;
  line-height:1.8;
  color:#7d736a !important;
  text-align:center;
}
.footer .copyright a{color:#9a8f84 !important}

/* ---------- 13. 悬浮工具条（顺序与尺寸统一） ----------
 * 原状：38px 方钮、圆角 0、底色各异、间距 5px、图标未居中
 * 现态：44px 圆角 14、白底描边、间距 10、图标 flex 居中、右边缘统一 16px */
.rollbar{
  right:16px !important;
  bottom:30px !important;
  width:auto !important;
  display:flex !important;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}
.rollbar ul{
  display:flex;flex-direction:column;gap:10px;
  margin:0;padding:0;
  width:auto !important;      /* 主题给了 40px，会把 44px 的钮挤出 4px */
  align-items:flex-end;
  list-style:none !important;
}
.rollbar li{
  float:none !important;
  display:block !important;
  position:relative;
  margin:0 !important;
  padding:0 !important;
  width:44px;
}
/* 非 VIP 项统一白底描边（主题给 .qq-li 单独上了橙底、给 .qq-li a 上了白字，
 * 白图标落白底会「消失」；橙底 li 还会在 44px 圆角外露出橙边） */
.rollbar li:not(.vip-li){background:transparent !important}
.rollbar li:not(.vip-li) a{
  background:#fff !important;
  border-color:var(--fy-line) !important;
  color:var(--fy-ink3) !important;
}
.rollbar li:not(.vip-li) a .icon{color:var(--fy-ink3) !important}
.rollbar li a{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:44px !important;
  height:44px !important;
  line-height:1 !important;
  border-radius:14px !important;
  border:1px solid var(--fy-line) !important;
  background:#fff !important;
  color:var(--fy-ink3) !important;
  opacity:1 !important;
  box-shadow:var(--fy-sh-sm) !important;
  transition:transform .18s,background .18s,color .18s,border-color .18s,box-shadow .18s !important;
}
.rollbar li a .icon{font-size:19px !important;line-height:1 !important;color:inherit}
.rollbar li:not(.vip-li) a:hover{
  background:var(--fy-c1) !important;
  border-color:var(--fy-c1) !important;
  color:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(255,95,51,.28) !important;
}
.rollbar li:not(.vip-li) a:hover .icon{color:#fff !important}
/* VIP 是转化入口，保持唯一实心强调 */
.rollbar li.vip-li a{
  background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 6px 18px rgba(255,95,51,.30) !important;
}
.rollbar li.vip-li a:hover{filter:brightness(1.05)}
/* 工具条文字标签：不占版面，仅作 tooltip */
.rollbar li h6{
  position:absolute !important;
  right:56px !important;
  top:50% !important;
  transform:translateY(-50%) translateX(6px);
  margin:0 !important;
  padding:5px 11px !important;
  background:#2a231d !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:500 !important;
  line-height:1.4 !important;
  border-radius:7px !important;
  white-space:nowrap;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s,transform .16s,visibility .16s;
}
.rollbar li:hover h6{opacity:1;visibility:visible;transform:translateY(-50%) translateX(0)}
.rollbar li h6 i{display:none !important}
body.night .rollbar li a{background:var(--fy-card) !important;border-color:var(--fy-line) !important;color:var(--fy-ink3) !important}
body.night .rollbar li.vip-li a{background:linear-gradient(135deg,var(--fy-c1),var(--fy-c2)) !important;color:#fff !important}

/* 移动端底部导航 */
.footer-fixed-nav{
  display:none;
  height:58px !important;
  padding:0 !important;
  background:rgba(255,255,255,.97) !important;
  backdrop-filter:blur(12px);
  border-top:1px solid var(--fy-line) !important;
  box-shadow:0 -2px 16px rgba(33,27,23,.06) !important;
}
.footer-fixed-nav a{
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  height:58px;
  float:none !important;
  flex:1;
  color:var(--fy-ink3) !important;
  font-size:10.5px !important;
  line-height:1 !important;
}
.footer-fixed-nav a .icon{font-size:20px !important;line-height:1 !important}
.footer-fixed-nav a.on,
.footer-fixed-nav a.special{color:var(--fy-c1) !important}

/* ---------- 14. 响应式 ---------- */
@media (max-width:1100px){
  .grids{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
  .single-related .grids{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
  .main > .container{column-gap:22px !important}
  .main > .container > .sidebar{flex:0 0 272px !important;width:272px !important}
  .single-content{padding:28px 26px !important}
}
@media (max-width:960px){
  header.header .nav-main{margin-left:8px !important}
  header.header .nav-main > li > a{padding:0 10px !important;font-size:14.5px !important}
  .main > .container{flex-direction:column !important;row-gap:20px !important}
  .main > .container > .content-wrap,
  .main > .container > .sidebar{
    flex:1 1 auto !important;
    width:100% !important;
    max-width:100% !important;
  }
  .single-related .grids{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width:768px){
  /* 头部：logo + 图标钮 */
  header.header,header.header > .container{height:60px !important}
  header.header .logo{height:60px !important;max-width:150px}
  header.header .logo img{height:40px !important;max-height:40px !important}
  header.header .logo a{height:60px}
  header.header .nav-main{display:none !important}
  header.header .nav-right{height:60px !important;gap:2px}
  header.header .nav-right > li{height:60px !important}
  header.header .nav-right .nav-button{display:flex !important;align-items:center}
  /* 移动端保留登录入口（付费站不能没有），但只留人形图标 */
  header.header .nav-right .nav-login{display:flex !important}
  header.header .nav-right .nav-login > a.reg,
  header.header .nav-right .nav-line{display:none !important}
  header.header .nav-right .nav-login > a.signin-loader{
    width:38px !important;
    padding:0 !important;
    justify-content:center;
  }
  header.header .nav-right .nav-login > a.signin-loader span{display:none !important}
  header.header .logo{max-width:132px}
  body{margin-top:60px !important}
  .search-wrap.show{top:60px !important}
  .search-wrap .search-wrap-container{padding:12px 14px !important}
  .search-wrap .search-form{height:46px}
  .search-wrap .search-input{height:46px !important;font-size:14.5px !important;padding:0 106px 0 16px !important}
  .search-wrap .search-form .search-btn{width:92px !important;height:36px !important;top:5px !important;right:5px !important;font-size:13.5px !important}
  .search-wrap .icon-close{display:none !important}

  .container,.wrap,.content-wrap{padding-left:15px !important;padding-right:15px !important}

  /* banner */
  body.home .banner.banner{padding:38px 0 42px !important;border-radius:0 0 20px 20px !important}
  body.home .banner.banner h2{font-size:24px !important;letter-spacing:.3px}
  body.home .banner.banner p{font-size:13px !important;margin-top:7px !important}
  body.home .banner.banner .search-form{max-width:100% !important;height:48px;margin-top:20px !important}
  body.home .banner.banner .search-form .site-search-form{height:48px}
  body.home .banner.banner .search-input{
    height:48px !important;line-height:48px !important;
    font-size:14px !important;padding:0 54px 0 18px !important;
  }
  body.home .banner.banner .search-btn{
    width:40px !important;min-width:40px !important;height:40px !important;
    top:4px !important;right:4px !important;
  }
  body.home .banner.banner .search-btn .icon{font-size:17px !important}

  /* 广告 */
  body.home .banner-bottom{padding:18px 0 0 !important}
  body.home .banner-bottom .container{padding:0 15px !important}
  body.home .banner-bottom .modown-ad-items img{height:100px;border-radius:var(--fy-r-sm)}

  /* 区块与卡片 */
  .mocat{padding:34px 0 6px !important}
  .mocat h2{font-size:18px !important;padding-left:13px !important}
  .mocat h2:before{width:3.5px;height:17px}
  .mocat p.desc{font-size:12.5px !important;padding-left:13px !important;margin-top:6px !important}
  .mocat ul.child{margin:12px 0 16px !important;gap:7px}
  .mocat ul.child li a{height:30px !important;padding:0 13px !important;font-size:12.5px !important}
  .grids{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important}
  .grids .grid .con{padding:11px 12px 13px !important}
  .grids .grid .cat{margin-bottom:7px !important}
  .grids .grid .cat a{height:19px;padding:0 7px !important;font-size:11px !important;border-radius:5px !important}
  .grids .grid h3,
  .grids .grid h3 a{font-size:13.5px !important;line-height:1.48 !important;height:40px !important}
  .grids .grid .grid-meta{font-size:11px !important;padding-top:10px !important;gap:9px}
  .grids .grid .grid-meta .icon{font-size:11px !important}
  .more{margin-top:20px !important}
  .more a{min-width:150px;height:38px !important;font-size:13.5px !important}

  /* 文章 */
  .breadcrumbs{padding:12px 0 !important;font-size:12px !important}
  .single-content{padding:20px 17px 18px !important;border-radius:var(--fy-r) !important;margin-bottom:14px !important}
  .article-title{font-size:20.5px !important;line-height:1.42 !important}
  .article-header{padding-bottom:14px !important;margin-bottom:18px !important}
  .article-meta{font-size:11.5px !important;gap:6px 12px !important}
  .article-content{font-size:15px !important;line-height:1.85 !important}
  .article-content h2{font-size:18px !important}
  .article-content h3{font-size:16px !important}
  .article-content img{border-radius:var(--fy-r-sm);margin:12px 0 !important}
  .article-nav{grid-template-columns:1fr !important;gap:10px}
  .article-nav .article-nav-next{text-align:left}
  .single-related .grids{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important}
  .single-comment{padding:18px 16px !important;border-radius:var(--fy-r) !important}
  .erphpdown.erphpdown,.erphpdown-box.erphpdown-box{padding:17px 15px 14px !important;border-radius:var(--fy-r) !important}
  .erphpdown .item2,.erphpdown .item{padding:10px 12px !important;font-size:13px !important}
  .sidebar .widget{padding:15px !important;margin-bottom:12px !important}

  /* 页脚与底部导航 */
  .footer{margin-top:34px !important;padding:30px 0 0 !important}
  .footer .container{padding:0 15px 72px !important}
  .footer-fixed-nav{display:flex !important}
  /* 移动端悬浮条只留客服，避免挡住卡片 */
  .rollbar{bottom:74px !important;right:10px !important;gap:8px}
  .rollbar li,.rollbar li a{width:40px !important}
  .rollbar li a{height:40px !important;border-radius:12px !important}
  .rollbar li:not(.qq-li):not(.totop-li){display:none !important}
}
@media (max-width:400px){
  .grids .grid h3,.grids .grid h3 a{font-size:13px !important}
  body.home .banner.banner h2{font-size:22px !important}
}
