/* KCHE_SKIN_V1 经典模块 (编辑器「模块化」里的经典模块 / 标题类 / 表格类 / FAQ) 美化层 (2026-10-06)
 * 不改模块库 tem.json, 不改插件; 已经插进文章 / 产品 / 分类 / 单页里的旧模块也一起生效
 * 后台: zb-editor.js 注入编辑器 iframe + 弹窗预览; 前台: ZbCss 输出钩子在页面含 kche-t 时加载
 * 原则: 只改「看起来」的部分 (圆角 / 阴影 / 边框 / 字号层级 / 按钮 / 表格 / FAQ), 不改模块宽度和排版结构;
 *   带绝对定位 / 斜切 / 悬停滑出等特殊结构的模块不碰; 编辑时手动选的颜色 (kche-bg-* 等) 一律保留
 * 优先级: 统一用 html body 前缀, 类名层级与模块自带规则对齐 (模块写 3 层的这里也写 3 层);
 *   前台模块样式是页面后插入的 <style>, 不能只靠先后顺序
 * 关闭: 网址加 ?ksoff=1 (前台不加载, 后台编辑器不注入)
 */

/* ---------- 变量 (主题色跟随后台「网站设置」色系) ----------
 * 经典模块原样式里的主题色全写成 var(--color), 而 --color 来自编辑器旧配置 (EditorSetting) 或模板, 和网站设置的色系对不上;
 * 这里在模块元素上把 --color 改指向网站设置色 --zb-s-c (前台由 ZbCss 写入 #zbvar, 后台由 zb-editor.js 写入),
 * 原模块里所有用到主题色的地方 (标题条 / 图标 / 按钮 / 「主题色」预设) 就都跟着网站设置走; 手动选的颜色不受影响 */
html body .kche-wrap-width,html body .kche-wrap-width1,html body .kche-wrap-bg,html body [class^="kche-t"],
html body [class*=" kche-t"]{
  --color:var(--zb-s-c,var(--zb-ed,var(--primary-blue,#2563eb)));
  --ks-c:var(--color);
  --ks-ct:#f4f7fb;
  --ks-ct2:#e7eef9;
  --ks-ink:#0f172a;
  --ks-ln:#e5e9f0;
  --ks-sh:0 1px 2px rgba(16,24,40,.04),0 10px 26px -14px rgba(16,24,40,.18);
  --ks-sh2:0 2px 6px rgba(16,24,40,.06),0 24px 46px -22px rgba(16,24,40,.32);
  --ks-img:0 26px 50px -26px rgba(16,24,40,.38);
}
@supports (color:color-mix(in srgb,red 50%,blue)){
  html body .kche-wrap-width,html body .kche-wrap-width1,html body .kche-wrap-bg,html body [class^="kche-t"],
  html body [class*=" kche-t"]{
    --ks-ct:color-mix(in srgb,var(--ks-c) 5%,#fff);
    --ks-ct2:color-mix(in srgb,var(--ks-c) 13%,#fff);
  }
}

/* ---------- 1. 外框留白 ---------- */
html body .kche-wrap-width{padding-top:22px;padding-bottom:22px}

/* ---------- 2. 模块内的区块大标题: 加大加粗 (不改颜色, 深色底 / 图上白字的保持白色) ---------- */
html body [class^="kche-t"]:not(.kche-t220):not(.kche-t221-info) > h5,
html body [class^="kche-t"] > [class$="-title"] > h5,html body [class$="-title-box"] > h5{
  font-size:clamp(24px,1vw + 16px,32px);font-weight:700;line-height:1.25;letter-spacing:-.01em;
}
html body [class^="kche-t"] [class$="-into"]{border-radius:4px}
/* 「小标题 + 大标题」一组的大标题 */
html body .kche-t101 .kche-t101-title,html body .kche-t102 .kche-t102-title,html body .kche-t105 .kche-t105-title,
html body .kche-t108 .kche-t108-title,html body .kche-t111 .kche-t111-title,html body .kche-t113 .kche-t113-title,
html body .kche-t116 .kche-t116-title,html body .kche-t117 .kche-t117-title,html body .kche-t118 .kche-t118-title{
  font-size:clamp(24px,1vw + 16px,32px);font-weight:700;line-height:1.25;letter-spacing:-.01em;
}

/* ---------- 3. 图文模块: 大图圆角 + 投影, 标题加大 ---------- */
/* 图片本身没被外框裁切的: 圆角和投影直接加在图上 */
html body .kche-t223 .kche-t223-flex .kche-t223-img img,html body .kche-t222 .kche-t222-flex .kche-t222-img img,
html body .kche-t181 .kche-t181-img img,html body .kche-t173 .kche-t173-img img,
html body .kche-t177 .kche-t177-img img,html body .kche-t107 .kche-t107-r-img img{
  border:0;border-radius:16px;box-shadow:var(--ks-img);
}
/* 外框带裁切的: 圆角和投影加在外框上, 图片本身直角 */
html body .kche-t96 .kche-t96-content .kche-item-l,html body .kche-t114 .kche-t114-img,
html body .kche-t125 .kche-t125-img,html body .kche-t147 .kche-t147-img,html body .kche-t196 .kche-t196-img{
  border:0;border-radius:18px;box-shadow:var(--ks-img);overflow:hidden;
}
html body .kche-t96 .kche-t96-content .kche-item-l img,html body .kche-t114 .kche-t114-img img,
html body .kche-t125 .kche-t125-img img,html body .kche-t147 .kche-t147-img img,
html body .kche-t196 .kche-t196-img img{border:0;border-radius:0}
/* 200 是 2×2 小图网格: 只加圆角 */
html body .kche-t200 .kche-t200-img{border-radius:12px;overflow:hidden}
html body .kche-t114 .kche-t114-title,html body .kche-t107 .kche-t107-title{
  font-size:clamp(22px,.8vw + 16px,30px)!important;line-height:1.3;letter-spacing:-.01em;
}
html body .kche-t96 .kche-item-r .kche-t96-r-tit,html body .kche-t181 .kche-t181-title,
html body .kche-t125 .kche-t125-info > h5{
  font-size:clamp(22px,.8vw + 16px,30px);font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--ks-ink);
}

/* ---------- 4. 卡片: 白底 + 细边 + 大圆角 + 柔和阴影, 悬停上浮 ---------- */
html body .kche-t176 .kche-t176-list .kche-t176-item,html body .kche-t174 .kche-t174-list .kche-t174-item,
html body .kche-t137 .kche-t137-list .kche-t137-item,html body .kche-t132 .kche-t132-list .kche-t132-item,
html body .kche-t130 .kche-t130-list .kche-t130-item,html body .kche-t123 .kche-t123-list .kche-t123-item,
html body .kche-t116 .kche-t116-list .kche-t116-item,html body .kche-t113 .kche-t113-list .kche-t113-item,
html body .kche-t111 .kche-t111-list .kche-t111-item,
html body .kche-t149 .kche-t149-item,html body .kche-t169 .kche-t169-b-item,html body .kche-t168 .kche-t168-item,
html body .kche-t203 .kche-t203-item,html body .kche-t151-item,html body .kche-t158 .kche-t158-list,
html body .kche-t161 .kche-t161-item,html body .kche-t155-item,html body .kche-t194 .kche-t194-item,
html body .kche-t157 .kche-t157-item,html body .kche-t181 .kche-t181-info-item,html body .kche-t183 .kche-t183-item,
html body .kche-t99 .kche-t99-info-item,html body .kche-t160 .kche-t160-card{
  border:1px solid var(--ks-ln);border-radius:16px;background-color:#fff;box-shadow:var(--ks-sh);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
/* 浅底卡片 (原来是灰底的): 改成跟随主题色的浅底 */
html body .kche-t180 .kche-t180-item,html body .kche-t171 .kche-t171-item,
html body .kche-t136 .kche-t136-list .kche-t136-item{
  border:1px solid transparent;border-radius:16px;background-color:var(--ks-ct);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
/* 带色边的卡片: 保留原来的主题色边 */
html body .kche-t142 .kche-t142-b-item{border:1px solid var(--ks-ln);border-left:4px solid var(--ks-c);border-radius:14px;
  box-shadow:var(--ks-sh)}
html body .kche-t86 .kche-t86-item-flex,html body .kche-t88 .kche-t88-item{border:1px solid var(--ks-ln);
  border-bottom:3px solid var(--ks-c);border-radius:16px;box-shadow:var(--ks-sh)}
html body .kche-t101 .kche-t101-list .kche-t101-item{border-radius:16px;box-shadow:0 24px 44px -24px rgba(9,14,24,.45)}
/* 卡片圆角要裁住上面的图片 */
html body .kche-t111 .kche-t111-list .kche-t111-item,html body .kche-t88 .kche-t88-item,html body .kche-t155-item,
html body .kche-t116 .kche-t116-list .kche-t116-item,html body .kche-t113 .kche-t113-list .kche-t113-item{overflow:hidden}
/* 悬停 (编辑器里不上浮, 免得点不准) */
html:not(.ks-ed) body .kche-t176 .kche-t176-list .kche-t176-item:hover,
html:not(.ks-ed) body .kche-t174 .kche-t174-list .kche-t174-item:hover,
html:not(.ks-ed) body .kche-t137 .kche-t137-list .kche-t137-item:hover,
html:not(.ks-ed) body .kche-t132 .kche-t132-list .kche-t132-item:hover,
html:not(.ks-ed) body .kche-t130 .kche-t130-list .kche-t130-item:hover,
html:not(.ks-ed) body .kche-t123 .kche-t123-list .kche-t123-item:hover,
html:not(.ks-ed) body .kche-t116 .kche-t116-list .kche-t116-item:hover,
html:not(.ks-ed) body .kche-t113 .kche-t113-list .kche-t113-item:hover,
html:not(.ks-ed) body .kche-t111 .kche-t111-list .kche-t111-item:hover,
html:not(.ks-ed) body .kche-t136 .kche-t136-list .kche-t136-item:hover,
html:not(.ks-ed) body .kche-t149 .kche-t149-item:hover,html:not(.ks-ed) body .kche-t169 .kche-t169-b-item:hover,
html:not(.ks-ed) body .kche-t168 .kche-t168-item:hover,html:not(.ks-ed) body .kche-t203 .kche-t203-item:hover,
html:not(.ks-ed) body .kche-t151-item:hover,html:not(.ks-ed) body .kche-t158 .kche-t158-list:hover,
html:not(.ks-ed) body .kche-t161 .kche-t161-item:hover,html:not(.ks-ed) body .kche-t155-item:hover,
html:not(.ks-ed) body .kche-t194 .kche-t194-item:hover,html:not(.ks-ed) body .kche-t157 .kche-t157-item:hover,
html:not(.ks-ed) body .kche-t181 .kche-t181-info-item:hover,html:not(.ks-ed) body .kche-t180 .kche-t180-item:hover,
html:not(.ks-ed) body .kche-t171 .kche-t171-item:hover,html:not(.ks-ed) body .kche-t142 .kche-t142-b-item:hover,
html:not(.ks-ed) body .kche-t86 .kche-t86-item-flex:hover,html:not(.ks-ed) body .kche-t88 .kche-t88-item:hover{
  transform:translateY(-4px);border-color:transparent;box-shadow:var(--ks-sh2);
}
/* 悬停时保留主题色边条 */
html:not(.ks-ed) body .kche-t142 .kche-t142-b-item:hover{border-left-color:var(--ks-c)}
html:not(.ks-ed) body .kche-t86 .kche-t86-item-flex:hover,
html:not(.ks-ed) body .kche-t88 .kche-t88-item:hover{border-bottom-color:var(--ks-c)}
/* 卡片里的图片: 去掉内边框, 悬停轻微放大 */
html body .kche-t155-item .kche-t155-img img,html body .kche-t116 .kche-t116-item .kche-t116-item-img img,
html body .kche-t113 .kche-t113-item .kche-t113-item-img img,html body .kche-t194 .kche-t194-item .kche-t194-img img,
html body .kche-t171 .kche-t171-item .kche-t171-item-img img,html body .kche-t180 .kche-t180-item .kche-t180-item-img img{
  border:0;transition:transform .5s ease;
}
html body .kche-t194 .kche-t194-item .kche-t194-img,html body .kche-t171 .kche-t171-item .kche-t171-item-img,
html body .kche-t180 .kche-t180-item .kche-t180-item-img{overflow:hidden;border-radius:12px}
html:not(.ks-ed) body .kche-t155-item:hover .kche-t155-img img,
html:not(.ks-ed) body .kche-t116 .kche-t116-item:hover .kche-t116-item-img img,
html:not(.ks-ed) body .kche-t113 .kche-t113-item:hover .kche-t113-item-img img{transform:scale(1.04)}
/* 卡片里的标题 */
html body .kche-t176 .kche-t176-list .kche-t176-item-tit,html body .kche-t174 .kche-t174-list .kche-t174-item-tit,
html body .kche-t137 .kche-t137-list .kche-t137-item-tit,html body .kche-t151-tit,html body .kche-t155-text-tit,
html body .kche-t116 .kche-t116-item .kche-t116-item-tit,html body .kche-t113 .kche-t113-item .kche-t113-item-tit,
html body .kche-t181 .kche-t181-item-tit{
  color:var(--ks-ink);font-weight:700;letter-spacing:-.005em;
}

/* ---------- 5. 图标: 统一成主题色浅底圆角方块 ---------- */
html body .kche-t174 .kche-t174-list .kche-t174-item-icon,html body .kche-t176 .kche-t176-list .kche-t176-item-icon{
  display:inline-flex;align-items:center;justify-content:center;flex:none;width:60px;height:60px;border-radius:18px;
  background:var(--ks-ct2);color:var(--ks-c);
}
html body .kche-t174 .kche-t174-list .kche-t174-item-icon{margin-bottom:18px}
html body .kche-t176 .kche-t176-list .kche-t176-item-icon{margin-right:16px}
html body .kche-t174 .kche-t174-list .kche-t174-item-icon em,
html body .kche-t176 .kche-t176-list .kche-t176-item-icon em{font-size:28px;line-height:1}
html body .kche-t137 .kche-t137-list .kche-t137-item-icon,html body .kche-t169 .kche-t169-b-item .kche-t169-item-icon,
html body .kche-t161 .kche-t161-img,html body .kche-t124 .kche-t124-item .kche-t124-icon,
html body .kche-t201 .kche-t201-icon{border-radius:18px}
html body .kche-t122 .kche-t122-item .kche-t122-icon{border-radius:18px;box-shadow:var(--ks-sh)}
html body .kche-t181 .kche-t181-item-icon{background:var(--ks-ct2)}

/* ---------- 6. 「查看更多」类按钮: 文字下划线 → 描边胶囊按钮 ---------- */
html body .kche-t96 .kche-t96-btn span,html body .kche-t116 .kche-t116-item .kche-t116-item-more span,
html body .kche-t113 .kche-t113-item .kche-t113-item-btn span,html body .kche-t101 .kche-t101-item-btn span{
  display:inline-flex;align-items:center;justify-content:center;padding:8px 18px;border:1px solid var(--ks-c);
  border-radius:999px;color:var(--ks-c);font-size:14px;font-weight:600;line-height:1.3;text-decoration:none;
  transition:background-color .2s ease,color .2s ease;
}
html:not(.ks-ed) body .kche-t96 .kche-t96-btn span:hover,
html:not(.ks-ed) body .kche-t116 .kche-t116-item .kche-t116-item-more span:hover,
html:not(.ks-ed) body .kche-t113 .kche-t113-item .kche-t113-item-btn span:hover,
html:not(.ks-ed) body .kche-t101 .kche-t101-item-btn span:hover{background-color:var(--ks-c);color:#fff}
/* 实心按钮: 圆角加大 + 投影 */
html body .kche-t125 .kche-t125-more,html body .kche-t189 .kche-t189-btn span,html body .kche-t221 .kche-t221-more a{
  border-radius:999px;box-shadow:0 12px 24px -12px rgba(16,24,40,.45);
}
html body .kche-t125 .kche-t125-more span,html body .kche-t221 .kche-t221-more a{text-decoration:none}

/* ---------- 7. Logo 墙 ---------- */
html body .kche-t193 .kche-t193-item img,html body .kche-t126 .kche-t126-list .kche-t126-item,
html body .kche-t139 .kche-t139-list .kche-t139-item,html body .kche-t208 .kche-t208-item{
  border-color:var(--ks-ln);border-radius:12px}
html body .kche-t208 .kche-t208-item{box-shadow:var(--ks-sh)}

/* ---------- 8. 标题类 (cate-title): 圆角 / 层级 ---------- */
html body .kche-t1 > h2{border-width:1px;border-color:var(--ks-ln);border-left:4px solid var(--ks-c);border-radius:10px;
  background:var(--ks-ct)}
html body .kche-t6 > h2{border-color:var(--ks-ln);border-radius:10px;box-shadow:var(--ks-sh)}
html body .kche-t7 > h2,html body .kche-t8 > h2,html body .kche-t13 > h2{border-radius:10px}
html body .kche-t13 > h2,html body .kche-t83 > h2,html body .kche-t85 > .kche-template-item > .kche-template-title > h2{
  box-shadow:0 12px 24px -14px rgba(16,24,40,.45)}
html body .kche-t5 > h2,html body .kche-t58 .kche-template-item h2,html body .kche-t59 .kche-template-item h2,
html body .kche-t76 .kche-template-item h2,html body .kche-t77 .kche-template-item h2,
html body .kche-t78 .kche-template-item h2,html body .kche-t79 .kche-template-item h2{
  font-size:clamp(24px,1vw + 16px,32px);font-weight:700;letter-spacing:-.01em;line-height:1.25;
}
html body .kche-t5 > h2 > span:nth-child(1){width:44px;height:4px;border-radius:4px}
html body .kche-t58 .kche-template-item .kche-t58-line{width:44px;height:4px;border-radius:4px}
html body .kche-t68 > .kche-template-title > h2{box-shadow:0 10px 20px -12px rgba(16,24,40,.45)}

/* ---------- 9. 表格类: 圆角外框 (四角单元格) / 主题色表头 / 舒适行高 ---------- */
html body table.kche-table{border-collapse:separate;border-spacing:0;border-radius:12px;box-shadow:var(--ks-sh);
  font-size:15px}
html body table.kche-table > tbody > tr:first-child > td:first-child{border-top-left-radius:12px}
html body table.kche-table > tbody > tr:first-child > td:last-child{border-top-right-radius:12px}
html body table.kche-table > tbody > tr:last-child > td:first-child{border-bottom-left-radius:12px}
html body table.kche-table > tbody > tr:last-child > td:last-child{border-bottom-right-radius:12px}
html body .kche-table > tbody > tr > td{padding:12px 16px;line-height:1.55;vertical-align:middle}
html body .kche-table-border{border-top-color:var(--ks-ln);border-left-color:var(--ks-ln)}
html body .kche-table-border > tbody > tr > td{border-right-color:var(--ks-ln);border-bottom-color:var(--ks-ln)}
html body .kche-table-rules-rows > tbody > tr:not(:last-child) > td,
html body .kche-table-rules-all > tbody > tr:not(:last-child) > td{border-bottom-color:var(--ks-ln)}
html body .kche-table-rules-cols > tbody > tr > td:not(:last-child),
html body .kche-table-rules-all > tbody > tr > td:not(:last-child){border-right-color:var(--ks-ln)}
html body .kche-table-frame-box,html body .kche-table-frame-hsides,html body .kche-table-frame-vsides{border-color:var(--ks-ln)}
/* 默认灰色表头 (没手动选颜色的) → 主题色表头 */
html body table.kche-table-topbg.kche-bg-gray > tbody > tr:first-child > td,
html body table.kche-table-topbg:not([class*="kche-bg-"]) > tbody > tr:first-child > td,
html body table.kche-table-topLeftbg.kche-bg-gray > tbody > tr:first-child > td,
html body table.kche-table-topLeftbg:not([class*="kche-bg-"]) > tbody > tr:first-child > td{
  background-color:var(--ks-c);color:#fff;font-weight:700;
}
html body table.kche-table-leftbg.kche-bg-gray > tbody > tr > td:first-child,
html body table.kche-table-leftbg:not([class*="kche-bg-"]) > tbody > tr > td:first-child,
html body table.kche-table-topLeftbg.kche-bg-gray > tbody > tr:nth-child(n+2) > td:first-child,
html body table.kche-table-topLeftbg:not([class*="kche-bg-"]) > tbody > tr:nth-child(n+2) > td:first-child{
  background-color:var(--ks-ct);color:var(--ks-ink);font-weight:700;
}
html body .kche-t133 .kche-t133-table{border-color:var(--ks-ln);border-radius:14px;box-shadow:var(--ks-sh)}
html body .kche-t170 .kche-t170-table-box{border-radius:12px;box-shadow:var(--ks-sh)}

/* ---------- 10. FAQ ---------- */
html body .kche-t55 > .kche-faq-list > .kche-faq-item{margin-bottom:12px;border:1px solid var(--ks-ln);
  border-radius:14px;background:#fff;box-shadow:var(--ks-sh);overflow:hidden}
html body .kche-t55 > .kche-faq-list > .kche-faq-item > .kche-faq-tit > p{font-size:17px;font-weight:700;
  color:var(--ks-ink)}
html body .kche-t94 #kchet94Accordion > .kche-t94-bottom-item{margin-bottom:10px}
html body .kche-t94 #kchet94Accordion > .kche-t94-bottom-item > .kche-t94-item-tit{border-radius:12px;
  background-color:var(--ks-ct);color:var(--ks-ink)}
html body .kche-t94 #kchet94Accordion > .kche-t94-bottom-item.active > .kche-t94-item-tit,
html body .kche-t94 #kchet94Accordion > .kche-t94-bottom-item > .kche-t94-item-tit.active{
  background-color:var(--ks-c);color:#fff}
html body .kche-t183 .kche-t183-item-tit{font-size:18px;color:var(--ks-ink)}

/* ---------- 11. 时间轴 ---------- */
html body .kche-t127 .kche-t127-item .kche-t127-item-img{border:0;border-radius:14px;box-shadow:var(--ks-sh);overflow:hidden}
html body .kche-t127 .kche-t127-item .kche-t127-item-img img{border:0;border-radius:0}
html body .kche-t218-img img{border:0;border-radius:14px;box-shadow:var(--ks-sh)}

/* ---------- 手机 ---------- */
@media (max-width:768px){
  html body .kche-wrap-width{padding-top:16px;padding-bottom:16px}
  html body table.kche-table{font-size:14px}
  html body .kche-table > tbody > tr > td{padding:10px 12px}
  html body .kche-t174 .kche-t174-list .kche-t174-item-icon{width:52px;height:52px;border-radius:15px}
  html body .kche-t176 .kche-t176-list .kche-t176-item-icon{width:48px;height:48px;border-radius:14px;margin-right:12px}
  html body .kche-t174 .kche-t174-list .kche-t174-item-icon em,
  html body .kche-t176 .kche-t176-list .kche-t176-item-icon em{font-size:24px}
}
@media (prefers-reduced-motion:reduce){
  html body [class^="kche-t"]{transition:none!important}
}
/* KCHE_SKIN_V1_END */
