/* ================================================================
   畅响教育 Scale 主站 — 改版主题 v3
   theme-v3.css  (新增覆盖文件，不删除已有规则)
   ================================================================ */

/* ── Part A：CSS 变量声明 ── */
:root {
  /* 主色系 */
  --cx-primary:        #1552a8;
  --cx-primary-dark:   #0d3d80;
  --cx-primary-mid:    #2a6fcc;
  --cx-primary-light:  #e8f1fb;
  --cx-primary-bg:     linear-gradient(135deg, #1552a8 0%, #2a7fd4 100%);
  --cx-primary-rgb:    21, 82, 168;

  /* 强调色 */
  --cx-accent:         #f59e0b;
  --cx-accent-dark:    #d97706;
  --cx-danger:         #e74c3c;
  --cx-success:        #10b981;

  /* 页面背景 */
  --cx-body-gradient:  linear-gradient(160deg, #e4ecf5 0%, #eaeff5 25%, #f0ede8 55%, #ede5dc 100%);
  --cx-body-glow-1:    radial-gradient(ellipse 80% 60% at 15% 5%, rgba(21,82,168,.07) 0%, transparent 60%);
  --cx-body-glow-2:    radial-gradient(ellipse 70% 50% at 85% 85%, rgba(245,158,11,.06) 0%, transparent 60%);

  /* 中性色阶 */
  --cx-gray-50:        #f8fafc;
  --cx-gray-100:       #f1f5f9;
  --cx-gray-200:       #e2e8f0;
  --cx-gray-400:       #94a3b8;
  --cx-gray-600:       #475569;
  --cx-gray-800:       #1e293b;
  --cx-gray-900:       #0f172a;

  /* 阴影系统 */
  --cx-shadow-xs:  0 1px 3px rgba(0,0,0,.06);
  --cx-shadow-sm:  0 2px 8px rgba(0,0,0,.08);
  --cx-shadow-md:  0 4px 16px rgba(0,0,0,.10);
  --cx-shadow-lg:  0 8px 32px rgba(21,82,168,.15);
  --cx-shadow-xl:  0 16px 48px rgba(21,82,168,.20);

  /* 圆角 */
  --cx-radius-sm:   6px;
  --cx-radius-md:   12px;
  --cx-radius-lg:   20px;
  --cx-radius-pill: 99px;

  /* 过渡动画 */
  --cx-transition:       0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --cx-transition-slow:  0.4s cubic-bezier(0.4, 0, 0.2, 1);
  --cx-ease-spring:      0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  --cx-ease-bounce:      0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --cx-ease-smooth:      0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  /* 字体 */
  --cx-font: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;

  /* 字体大小阶梯 */
  --cx-fs-xs:   12px;
  --cx-fs-sm:   13px;
  --cx-fs-base: 15px;
  --cx-fs-md:   16px;
  --cx-fs-lg:   18px;
  --cx-fs-xl:   20px;
  --cx-fs-2xl:  24px;
  --cx-fs-3xl:  32px;
  --cx-fs-4xl:  40px;

  /* 行高阶梯 */
  --cx-lh-tight:  1.25;
  --cx-lh-normal: 1.5;
  --cx-lh-relaxed: 1.75;

  /* 间距阶梯 (基于 4px) */
  --cx-sp-1:  4px;
  --cx-sp-2:  8px;
  --cx-sp-3:  12px;
  --cx-sp-4:  16px;
  --cx-sp-5:  20px;
  --cx-sp-6:  24px;
  --cx-sp-8:  32px;
  --cx-sp-10: 40px;
  --cx-sp-12: 48px;
  --cx-sp-16: 64px;
  --cx-sp-20: 80px;
  --cx-sp-24: 96px;
  --cx-sp-32: 128px;

  /* 区块纵向内边距 */
  --cx-section-py: 70px;

  /* ── z-index 分层规范（统一管理，禁止在组件中直接使用魔法数字）──
     使用方式: z-index: var(--cx-z-modal);
     层级从低到高：下拉 < 固定栏 < 遮罩 < 弹窗 < 通知 < Loading
  */
  --cx-z-dropdown:  200;   /* 下拉菜单、tooltip */
  --cx-z-sticky:    300;   /* 粘性头部/侧边栏 */
  --cx-z-fixed:     500;   /* 固定底栏/顶栏（confirm-bar、m-sum-bar） */
  --cx-z-sidepanel: 600;   /* 悬浮侧边面板（help-select-box） */
  --cx-z-overlay:   800;   /* 弹窗遮罩背景 */
  --cx-z-modal:     900;   /* 弹窗主体 */
  --cx-z-toast:     950;   /* Toast/通知提示 */
  --cx-z-loading:   1000;  /* Loading遮罩（最高层） */
}

/* ── Part B：全局字体升级 ── */
@import url('https://fonts.lug.ustc.edu.cn/css2?family=Noto+Sans+SC:wght@400;500;700&display=swap');

body {
  font-family: var(--cx-font) !important;
  color: var(--cx-gray-800);
  background:
    var(--cx-body-glow-1),
    var(--cx-body-glow-2),
    var(--cx-body-gradient) !important;
  background-attachment: fixed !important;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

/* ── Part C：全局链接、滚动条、选中颜色 ── */
a:hover { color: var(--cx-primary); }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-thumb { background: var(--cx-gray-200); border-radius: 3px; }
::selection { background: var(--cx-primary-light); color: var(--cx-primary-dark); }

/* ── Part D：通用按钮组件 ── */
.cx-btn-primary {
  display: inline-block;
  padding: 10px 28px;
  background: var(--cx-primary-bg);
  color: #fff !important;
  border-radius: var(--cx-radius-pill);
  font-weight: 600;
  font-size: 14px;
  border: none;
  cursor: pointer;
  transition: var(--cx-transition);
  text-decoration: none;
  box-shadow: var(--cx-shadow-sm);
}
.cx-btn-primary:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
  box-shadow: var(--cx-shadow-md);
  transform: translateY(-1px);
  color: #fff !important;
}

.cx-btn-outline {
  display: inline-block;
  padding: 10px 28px;
  background: transparent;
  color: var(--cx-primary) !important;
  border-radius: var(--cx-radius-pill);
  font-weight: 600;
  font-size: 14px;
  border: 1.5px solid var(--cx-primary);
  cursor: pointer;
  transition: var(--cx-transition);
  text-decoration: none;
}
.cx-btn-outline:hover {
  background: var(--cx-primary);
  color: #fff !important;
  transform: translateY(-1px);
}

.cx-btn-accent {
  display: inline-block;
  padding: 10px 28px;
  background: linear-gradient(135deg, var(--cx-accent) 0%, #fbbf24 100%);
  color: #fff !important;
  border-radius: var(--cx-radius-pill);
  font-weight: 700;
  font-size: 14px;
  border: none;
  cursor: pointer;
  transition: var(--cx-transition);
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(245,158,11,.3);
}
.cx-btn-accent:hover {
  background: linear-gradient(135deg, var(--cx-accent-dark) 0%, var(--cx-accent) 100%);
  box-shadow: 0 6px 20px rgba(245,158,11,.45);
  transform: translateY(-2px);
  color: #fff !important;
}

.cx-btn-outline-white {
  display: inline-block;
  padding: 10px 28px;
  background: transparent;
  color: #fff !important;
  border-radius: var(--cx-radius-pill);
  font-weight: 600;
  font-size: 14px;
  border: 1.5px solid rgba(255,255,255,.8);
  cursor: pointer;
  transition: var(--cx-transition);
  text-decoration: none;
}
.cx-btn-outline-white:hover {
  background: rgba(255,255,255,.15);
  border-color: #fff;
  color: #fff !important;
}

/* ── Part E：通用卡片组件 ── */
.cx-card {
  background: #fff;
  border-radius: var(--cx-radius-md);
  box-shadow: var(--cx-shadow-sm);
  overflow: hidden;
  transition: var(--cx-transition);
}
.cx-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--cx-shadow-xl);
}

/* ── Part F：标签角标 ── */
.cx-tag-hot, .cx-tag-new, .cx-tag-live, .cx-tag-free {
  display: inline-block;
  padding: 2px 8px;
  border-radius: var(--cx-radius-pill);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.5;
}
.cx-tag-hot  { background: #fef3c7; color: #d97706; }
.cx-tag-new  { background: #dbeafe; color: #1d4ed8; }
.cx-tag-live { background: #fee2e2; color: #dc2626; }
.cx-tag-free { background: #d1fae5; color: #059669; }

/* ── Part G：section 标题升级 ── */
.h2title .hd-title {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  position: relative;
  padding-bottom: 14px !important;
  display: inline-block;
}
.h2title .hd-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48px;
  height: 3px;
  background: var(--cx-primary-bg);
  border-radius: var(--cx-radius-pill);
}
.h2title .hd-title strong {
  color: var(--cx-primary) !important;
}
.h2title .hd-title.blue {
  color: var(--cx-gray-800) !important;
}
.h2title .hd-title.blue::after {
  background: var(--cx-primary-bg);
}

/* ================================================================
   阶段二：导航栏 Header 重设计
   ================================================================ */

/* 顶部公告条 */
.cx-notice-bar {
  background: linear-gradient(90deg, #0d3d80, #1552a8, #2a7fd4) !important;
  color: #fff !important;
  padding: 9px 0 !important;
  font-size: 13px !important;
  text-align: center;
  position: relative;
  z-index: 1001;
  display: block !important;
}
.cx-notice-bar .wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  height: auto !important;
}
.cx-notice-link {
  color: var(--cx-accent) !important;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px dashed var(--cx-accent);
  transition: var(--cx-transition);
}
.cx-notice-link:hover {
  color: #fbbf24 !important;
}
.cx-notice-close {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: rgba(255,255,255,.7);
  font-size: 18px;
  cursor: pointer;
  line-height: 1;
  padding: 0;
  transition: var(--cx-transition);
}
.cx-notice-close:hover { color: #fff; }

/* 导航整体 —— 强制覆盖 style.css 的 display:table / height:150px */
.header {
  display: block !important;
  height: auto !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
  background: #fff !important;
  box-shadow: none !important;
  transition: box-shadow var(--cx-transition);
}
.header.is-sticky {
  box-shadow: var(--cx-shadow-md) !important;
}

/* 顶栏（topbar）—— 强制覆盖 height:90px 和 display:table */
.header .topbar {
  height: 56px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  float: none !important;
  width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* Logo —— 覆盖 height:53px / float:left */
.header .topbar .logo,
.header .topbar .logo.new2023 {
  float: none !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  line-height: 1;
  flex-shrink: 0;
}
.header .topbar .logo img,
.header .topbar .logo.new2023 img {
  display: block !important;
  height: 40px !important;
  width: auto !important;
}

/* 右侧功能区 —— 覆盖 float:right / width:470px / margin:27px 0 */
.header .topbar .topright {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  font-size: 13px;
  color: var(--cx-gray-600);
}
.header .topbar .topright a {
  color: var(--cx-gray-600) !important;
  text-decoration: none;
  transition: var(--cx-transition);
}
.header .topbar .topright a:hover {
  color: var(--cx-primary) !important;
}

/* 覆盖 top-phone / top-cart 的旧 margin-right */
.header .topbar .topright .top-phone {
  margin-right: 0 !important;
  font-size: 13px !important;
  color: var(--cx-gray-600) !important;
  background: none !important;
  padding-left: 0 !important;
}
.header .topbar .topright .top-cart {
  margin-right: 0 !important;
}
.header .topbar .topright .top-cart a {
  background: none !important;
  padding-left: 0 !important;
  height: auto !important;
  color: var(--cx-gray-600) !important;
}
.header .topbar .topright .top-login {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* 登录/注册按钮升级 */
.header .topbar .top-login a:first-child {
  padding: 4px 14px;
  border: 1.5px solid var(--cx-primary);
  border-radius: var(--cx-radius-pill);
  color: var(--cx-primary) !important;
  font-weight: 500;
}
.header .topbar .top-login a:first-child:hover {
  background: var(--cx-primary-light);
}
.header .topbar .top-login a:last-child {
  padding: 4px 14px;
  background: var(--cx-primary-bg);
  border-radius: var(--cx-radius-pill);
  color: #fff !important;
  font-weight: 500;
}
.header .topbar .top-login a:last-child:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
}

/* PC 端菜单栏 —— 覆盖 background:#0188e1 / height:60px */
.header .menu.pc {
  display: block !important;
  background: #fff !important;
  height: 52px !important;
  border-bottom: 3px solid var(--cx-primary-light) !important;
}
.header .menu.pc ul {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  gap: 0 !important;
  width: 1200px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.header .menu.pc ul li a {
  color: var(--cx-gray-800) !important;
  font-size: 14px;
  font-weight: 500;
  padding: 0 18px !important;
  height: 52px;
  line-height: 52px;
  display: block;
  position: relative;
  transition: color var(--cx-transition);
  text-decoration: none;
}
.header .menu.pc ul li a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 3px;
  background: var(--cx-primary-bg);
  border-radius: var(--cx-radius-pill) var(--cx-radius-pill) 0 0;
  transition: var(--cx-transition);
  transform: translateX(-50%);
}
.header .menu.pc ul li a:hover,
.header .menu.pc ul li.cur a {
  color: var(--cx-primary) !important;
}
.header .menu.pc ul li a:hover::after,
.header .menu.pc ul li.cur a::after {
  width: 60%;
}

/* 下拉菜单 */
.header .menu.pc ul li .sub-menu,
.header .menu.pc ul li ul {
  border-radius: var(--cx-radius-md) !important;
  box-shadow: var(--cx-shadow-lg) !important;
  border: 1px solid var(--cx-gray-100) !important;
  overflow: hidden;
}

/* ================================================================
   阶段三：首页重设计
   ================================================================ */

/* Hero Banner 区域 —— 加深蓝色渐变，提升视觉冲击力 */
.cx-hero,
.home-banner.cx-hero {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 35%, #1a6fd4 70%, #2a8ae8 100%) !important;
  height: auto !important;
  padding-top: 0 !important;
  position: relative;
  overflow: hidden;
}
.cx-hero::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%);
  pointer-events: none;
}
.cx-hero-inner {
  display: flex !important;
  align-items: center !important;
  gap: 40px;
  padding: 50px 0 40px;
  min-height: 360px;
}
.cx-hero-text {
  flex: 0 0 420px;
  color: #fff;
  z-index: 1;
}
.cx-hero-badge {
  display: inline-block;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.3);
  border-radius: var(--cx-radius-pill);
  padding: 4px 14px;
  font-size: 12px;
  color: rgba(255,255,255,.9);
  margin-bottom: 16px;
  backdrop-filter: blur(4px);
}
.cx-hero-title {
  font-size: 38px;
  font-weight: 700;
  line-height: 1.25;
  color: #fff;
  margin-bottom: 12px;
  text-shadow: 0 2px 12px rgba(0,0,0,.2);
}
.cx-hero-subtitle {
  font-size: 15px;
  color: rgba(255,255,255,.8);
  margin-bottom: 22px;
  line-height: 1.6;
}
.cx-hero-btns {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}
.cx-hero-stats {
  display: flex;
  gap: 24px;
}
.cx-hero-stat-item {
  text-align: center;
}
.cx-hero-stat-num {
  font-size: 24px;
  font-weight: 700;
  color: var(--cx-accent);
  line-height: 1.2;
}
.cx-hero-stat-label {
  font-size: 12px;
  color: rgba(255,255,255,.7);
  margin-top: 2px;
}
.cx-hero-banner {
  flex: 1;
  min-width: 0;
  position: relative;
}
.cx-hero-banner .banner,
.cx-hero-banner .topbanner-container {
  border-radius: var(--cx-radius-md) !important;
  overflow: hidden !important;
  box-shadow: var(--cx-shadow-xl) !important;
}
/* 指示点改为长条形 */
.cx-hero-banner .swiper-pagination-bullet {
  width: 20px !important;
  height: 4px !important;
  border-radius: 2px !important;
  background: rgba(255,255,255,.5) !important;
  opacity: 1 !important;
  transition: var(--cx-transition) !important;
}
.cx-hero-banner .swiper-pagination-bullet-active {
  width: 36px !important;
  background: #fff !important;
}

/* 考试指导快捷功能区 */
.home-examguide {
  padding: 40px 0 !important;
  background: #fff;
}
.home-examguide .he-list {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 12px;
  margin-top: 24px;
}
.home-examguide .he-list a {
  width: auto;
  min-width: 0;
  background: #fff;
  border: 1.5px solid var(--cx-gray-200);
  border-radius: var(--cx-radius-md);
  padding: 18px 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  white-space: nowrap;
  color: var(--cx-gray-600) !important;
  text-decoration: none;
  transition: var(--cx-transition);
  box-shadow: var(--cx-shadow-xs);
  margin-bottom: 0;
}
.home-examguide .he-list a img {
  width: 36px;
  height: 36px;
}
.home-examguide .he-list a:hover {
  border-color: var(--cx-primary);
  background: var(--cx-primary-light);
  color: var(--cx-primary) !important;
  transform: translateY(-3px);
  box-shadow: var(--cx-shadow-md);
}

/* 课程卡片升级 — subject-list */
.subject-box {
  padding: var(--cx-section-py) 0 !important;
}
.subject-box.bg {
  background: rgba(255,255,255,.45) !important;
  backdrop-filter: blur(1px) !important;
}
.subject-box .subject-list {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  margin-top: 24px !important;
  /* 清除可能的 float */
  overflow: visible !important;
}
.subject-box .subject-list::after {
  display: none !important;
}
/* [已移至文件末尾 FINAL OVERRIDES 块] 覆盖 style.css 中 .subject-list a 的固定尺寸 */
.subject-box .subject-list a {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,.08);
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  display: block !important;
  text-decoration: none;
}
.subject-box .subject-list a:hover {
  transform: translateY(-6px);
  box-shadow: var(--cx-shadow-xl);
}
/* 封面 16:9 */
.subject-box .subject-list a .pic {
  position: relative;
  width: 100% !important;
  height: auto !important;
  padding-bottom: 56.25%;
  overflow: hidden;
  background: var(--cx-gray-100);
  margin-bottom: 0 !important;
}
.subject-box .subject-list a .pic img {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--cx-transition-slow);
}
.subject-box .subject-list a:hover .pic img {
  transform: scale(1.05);
}
.subject-box .subject-list a .text {
  padding: 12px 14px !important;
  font-size: 13px;
  font-weight: 500;
  color: var(--cx-gray-800) !important;
  line-height: 1.5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: auto !important;
  height: auto !important;
}

/* 更多课程按钮 */
.subject-box .btn-more {
  text-align: center;
  margin-top: 24px;
}
.subject-box .btn-more a {
  display: inline-block;
  padding: 10px 36px;
  background: var(--cx-primary-bg);
  color: #fff !important;
  border-radius: var(--cx-radius-pill);
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  transition: var(--cx-transition);
  box-shadow: var(--cx-shadow-sm);
}
.subject-box .btn-more a:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
  box-shadow: var(--cx-shadow-md);
  transform: translateY(-2px);
  color: #fff !important;
}
.subject-box .btn-more a em {
  font-style: normal;
}

/* 区块标题间距调整 */
.subject-box .h2title {
  margin-bottom: 0 !important;
}

/* 新闻区 */
.subject-box .news-list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
  margin-top: 24px !important;
}
.subject-box .news-list a {
  background: #fff;
  border-radius: var(--cx-radius-md);
  overflow: hidden;
  box-shadow: var(--cx-shadow-sm);
  transition: var(--cx-transition);
  display: block;
  text-decoration: none;
  border-left: 3px solid transparent;
}
.subject-box .news-list a:hover {
  transform: translateY(-4px);
  box-shadow: var(--cx-shadow-lg);
  border-left-color: var(--cx-primary);
}
.subject-box .news-list a .pic {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  overflow: hidden;
  background: var(--cx-gray-100);
}
.subject-box .news-list a .pic img {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--cx-transition-slow);
}
.subject-box .news-list a:hover .pic img {
  transform: scale(1.05);
}
.subject-box .news-list a .title {
  padding: 12px 14px 4px;
  font-size: 12px;
  color: var(--cx-primary) !important;
  font-weight: 500;
}
.subject-box .news-list a .desc {
  padding: 0 14px 14px;
  font-size: 14px;
  font-weight: 600;
  color: var(--cx-gray-800) !important;
  line-height: 1.5;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* 快速链接区升级 */
.home-quicklinks {
  background: var(--cx-primary-bg) !important;
  padding: 50px 0 !important;
  height: auto !important;
}
.home-quicklinks .hq-title {
  color: #fff !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  text-align: center;
  margin-bottom: 30px !important;
  width: auto !important;
  height: auto !important;
  line-height: 1.4 !important;
}
.home-quicklinks .hq-list {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid !important;
  grid-template-columns: repeat(6, 1fr) !important;
  gap: 20px !important;
}
.home-quicklinks .hq-list a {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
  background: rgba(255,255,255,.12) !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  border-radius: var(--cx-radius-md) !important;
  padding: 24px 16px !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: var(--cx-transition) !important;
  width: auto !important;
  min-width: 0 !important;
}
.home-quicklinks .hq-list a:hover {
  background: rgba(255,255,255,.22) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.2) !important;
}
.home-quicklinks .hq-list a img {
width: 56px !important;
height: 56px !important;
filter: none !important;
opacity: 1 !important;
}

/* 合作区 */
.home-cooperation {
  padding: var(--cx-section-py) 0 !important;
  background: #fff !important;
}
.home-cooperation .hc-list {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  margin-top: 24px !important;
  list-style: none !important;
  padding: 0 !important;
}
.home-cooperation .hc-list li {
  background: var(--cx-gray-50);
  border: 1.5px solid var(--cx-gray-200);
  border-radius: var(--cx-radius-md);
  padding: 28px 20px;
  text-align: center;
  transition: var(--cx-transition);
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.home-cooperation .hc-list li:hover {
  border-color: var(--cx-primary);
  box-shadow: var(--cx-shadow-md);
  transform: translateY(-4px);
}
.home-cooperation .hc-list li .pic img {
  width: 56px;
  height: 56px;
}
.home-cooperation .hc-list li .text {
  font-size: 15px;
  font-weight: 600;
  color: var(--cx-gray-800);
}
.home-cooperation .hc-list li a {
  display: inline-block;
  padding: 6px 18px;
  background: var(--cx-primary-bg);
  color: #fff !important;
  border-radius: var(--cx-radius-pill);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: var(--cx-transition);
}
.home-cooperation .hc-list li a:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
  color: #fff !important;
}

/* Footer 升级 */
.foot-logo-new2023 {
  background: #0c1e3c !important;
  padding: 24px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
.footer.new2023 {
  background: #0c1e3c !important;
  padding: 40px 0 !important;
}
.footer.new2023 .wrapper {
  display: flex;
  gap: 40px;
}
.footer.new2023 .foot-right {
  flex: 1;
  display: flex;
  gap: 40px;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footer.new2023 .foot-nav {
  flex: 1;
  min-width: 280px;
}
.footer.new2023 .foot-link a {
  color: rgba(255,255,255,.65) !important;
  font-size: 13px;
  text-decoration: none;
  margin-right: 12px;
  transition: var(--cx-transition);
}
.footer.new2023 .foot-link a:hover {
  color: #fff !important;
}
.footer.new2023 .foot-phone {
  color: rgba(255,255,255,.55) !important;
  font-size: 12px;
  margin-top: 10px;
  line-height: 1.8;
}
.footer.new2023 .foot-phone a {
  color: rgba(255,255,255,.65) !important;
  text-decoration: none;
}
.footer.new2023 .foot-phone a:hover {
  color: #fff !important;
}
.footer.new2023 .foot-ercode {
  display: flex;
  gap: 20px;
}
.footer.new2023 .ercode-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,.08);
  border-radius: var(--cx-radius-md);
  padding: 14px;
}
.footer.new2023 .ercode-item img {
  width: 80px;
  height: 80px;
  border-radius: var(--cx-radius-sm);
}
.footer.new2023 .ercode-item span {
  font-size: 11px;
  color: rgba(255,255,255,.6);
}

/* 备案信息栏 */
.cx-footer-icp {
  background: #060f1e;
  padding: 12px 0;
  text-align: center;
  font-size: 12px;
  color: rgba(255,255,255,.4);
}
.cx-footer-icp a {
  color: rgba(255,255,255,.4) !important;
  text-decoration: none;
}
.cx-footer-icp a:hover {
  color: rgba(255,255,255,.7) !important;
}

/* ================================================================
   阶段十：移动端适配（媒体查询）
   ================================================================ */

@media (max-width: 1200px) {
  .home-examguide .he-list {
    grid-template-columns: repeat(5, 1fr);
  }
  .cx-hero-text {
    flex: 0 0 320px;
  }
  .cx-hero-title {
    font-size: 30px;
  }
  .header .topbar {
    width: 96% !important;
    padding: 0 2% !important;
  }
  .header .menu.pc ul {
    width: 96%;
    padding: 0 2%;
  }
}

@media (max-width: 768px) {
  /* Hero：隐藏左侧文字，全宽轮播 */
  .cx-hero-text { display: none !important; }
  .cx-hero-banner { width: 100% !important; }
  .cx-hero-inner {
    padding: 20px 0 10px;
    min-height: auto;
  }

  /* 课程卡片：2列 */
  .subject-box .subject-list {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  /* 考试指导：3列 */
  .home-examguide .he-list {
    grid-template-columns: repeat(3, 1fr) !important;
  }

  /* 快速链接：2列 */
  .home-quicklinks .hq-list {
    grid-template-columns: repeat(3, 1fr) !important;
  }

  /* 合作：2列 */
  .home-cooperation .hc-list {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  /* 新闻：1列 */
  .subject-box .news-list {
    grid-template-columns: 1fr !important;
  }

  /* 公告条 */
  .cx-notice-bar .wrapper {
    flex-wrap: wrap;
    gap: 6px;
    padding: 0 40px;
  }
  .cx-notice-close {
    right: 10px;
  }

  /* footer */
  .footer.new2023 .wrapper {
    flex-direction: column;
    gap: 20px;
  }
  .footer.new2023 .foot-right {
    flex-direction: column;
    gap: 20px;
  }
  .footer.new2023 .foot-ercode {
    justify-content: center;
  }
}

/* 触摸交互优化 */
a, button {
  -webkit-tap-highlight-color: transparent;
}
.cx-btn-primary, .cx-btn-outline, .cx-btn-accent,
.cx-btn-outline-white, .home-examguide .he-list a,
.subject-box .btn-more a {
  min-height: 44px;
}
@media (max-width: 768px) {
  /* 移除 hover 的 transform（移动端不需要） */
  .subject-box .subject-list a:hover,
  .home-examguide .he-list a:hover,
  .cx-card:hover {
    transform: none !important;
  }
}

/* ================================================================
   数字滚动动画占位（JS 配合，样式预备）
   ================================================================ */
.cx-stat-counting {
  display: inline-block;
  transition: opacity 0.3s ease;
}

/* ================================================================
   阶段十一：全站大胆现代化升级
   ================================================================ */

/* ── 品牌荣誉数据条（首页 Banner 与考试指导区之间） ── */
.cx-brand-bar {
  background: linear-gradient(90deg, #0d3d80 0%, #1552a8 50%, #1a6fd4 100%);
  padding: 20px 0;
  overflow: hidden;
}
.cx-brand-bar .wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: space-around !important;
  height: auto !important;
  gap: 0 !important;
  flex-wrap: nowrap;
}
.cx-brand-bar-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 28px;
  border-right: 1px solid rgba(255,255,255,.2);
  flex: 1;
  justify-content: center;
}
.cx-brand-bar-item:last-child { border-right: none; }
.cx-brand-bar-icon {
  font-size: 28px;
  line-height: 1;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.2));
}
.cx-brand-bar-text strong {
  display: block;
  font-size: 24px;
  font-weight: 800;
  color: var(--cx-accent);
  line-height: 1.1;
  letter-spacing: -0.5px;
}
.cx-brand-bar-text span {
  font-size: 12px;
  color: rgba(255,255,255,.75);
  white-space: nowrap;
}

/* ── 区块标题 h2title 全面升级 ── */
.h2title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 28px !important;
  flex-wrap: wrap;
  gap: 12px;
}
.h2title .hd-title {
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-900) !important;
  position: relative;
  padding-left: 14px !important;
  padding-bottom: 0 !important;
  display: flex !important;
  align-items: center;
  gap: 10px;
}
/* 左侧竖线装饰 */
.h2title .hd-title::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 22px;
  background: var(--cx-primary-bg);
  border-radius: var(--cx-radius-pill);
}
/* 取消之前的底部下划线 */
.h2title .hd-title::after {
  display: none !important;
}
.h2title .hd-title strong {
  color: var(--cx-primary) !important;
}
/* 副标题 */
.h2title .hd-desc {
  font-size: 13px !important;
  color: var(--cx-gray-400) !important;
  font-weight: 400 !important;
  margin-left: 4px;
}

/* ── Tab 切换组件（会计科目/经济师区块） ── */
.h2title .hd-tab {
  display: flex !important;
  gap: 4px !important;
  background: var(--cx-gray-100) !important;
  border-radius: var(--cx-radius-pill) !important;
  padding: 4px !important;
  list-style: none !important;
  margin: 0 !important;
  float: none !important;
}
.h2title .hd-tab li {
  padding: 6px 20px !important;
  border-radius: var(--cx-radius-pill) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--cx-gray-600) !important;
  cursor: pointer !important;
  transition: var(--cx-transition) !important;
  white-space: nowrap;
  list-style: none !important;
  user-select: none;
}
.h2title .hd-tab li:hover {
  color: var(--cx-primary) !important;
  background: rgba(21,82,168,.08) !important;
}
.h2title .hd-tab li.cur {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  box-shadow: var(--cx-shadow-sm) !important;
}

/* ── 课程卡片 文字区域升级（增加底部价格/学员数） ── */
.subject-box .subject-list a .text {
  padding: 12px 14px 14px !important;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.subject-box .subject-list a .text-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--cx-gray-800) !important;
  line-height: 1.45;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  white-space: normal;
}
/* 旧 .text 中纯文字 → 兼容保持 */
.subject-box .subject-list a .text:not(:has(.text-title)) {
  font-size: 13px;
  font-weight: 500;
  color: var(--cx-gray-800) !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-direction: row;
  padding: 12px 14px !important;
}
.subject-box .subject-list a .text-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11px;
  color: var(--cx-gray-400);
}
.subject-box .subject-list a .text-price {
  font-size: 15px;
  font-weight: 700;
  color: var(--cx-danger) !important;
}
.subject-box .subject-list a .text-price-free {
  font-size: 13px;
  font-weight: 600;
  color: var(--cx-success) !important;
}

/* 课程卡 hover 底色提示 */
.subject-box .subject-list a:hover .text-title {
  color: var(--cx-primary) !important;
}

/* ── 课程卡片：相对定位标签角标 ── */
.subject-box .subject-list a .pic {
  position: relative !important;
}
.subject-box .subject-list a .pic .cx-card-badge {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
  padding: 3px 8px;
  border-radius: var(--cx-radius-pill);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  backdrop-filter: blur(6px);
}
.cx-card-badge.hot  { background: rgba(245,158,11,.9);  color: #fff; }
.cx-card-badge.new  { background: rgba(59,130,246,.9);  color: #fff; }
.cx-card-badge.live { background: rgba(239,68,68,.9);   color: #fff; }
.cx-card-badge.free { background: rgba(16,185,129,.9);  color: #fff; }

/* ── 考试指导区：整体背景升级 ── */
.home-examguide {
  background: linear-gradient(180deg, #fff 0%, var(--cx-gray-50) 100%) !important;
  border-bottom: 1px solid var(--cx-gray-100);
}
/* 考试指导标题区描述标签 */
.home-examguide .he-tag {
  display: inline-block;
  background: var(--cx-primary-light);
  color: var(--cx-primary);
  font-size: 11px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: var(--cx-radius-pill);
  margin-bottom: 6px;
  letter-spacing: 0.5px;
}

/* ── 快速链接区步骤文字 ── */
.home-quicklinks {
  position: relative;
  overflow: hidden;
}
.home-quicklinks::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}
.home-quicklinks .hq-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}
.home-quicklinks .hq-title-wrap {
  text-align: center;
  margin-bottom: 36px;
}
.home-quicklinks .hq-title-tag {
  display: inline-block;
  background: rgba(255,255,255,.2);
  color: rgba(255,255,255,.9);
  font-size: 11px;
  font-weight: 600;
  padding: 4px 14px;
  border-radius: var(--cx-radius-pill);
  border: 1px solid rgba(255,255,255,.3);
  margin-bottom: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.home-quicklinks .hq-title {
  margin-bottom: 8px !important;
}
.home-quicklinks .hq-subtitle {
  font-size: 13px;
  color: rgba(255,255,255,.65);
  margin-top: 6px;
}
/* 链接步骤序号 */
.home-quicklinks .hq-list a .hq-step {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255,255,255,.25);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: #fff;
  flex-shrink: 0;
  margin-bottom: 2px;
}
/* 内联SVG图标容器 */
.home-quicklinks .hq-list a .hq-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  flex-shrink: 0;
}
.home-quicklinks .hq-list a .hq-icon svg {
  width: 56px !important;
  height: 56px !important;
  display: block;
  filter: drop-shadow(0 4px 8px rgba(0,0,0,.25));
  transition: transform .4s ease;
}
.home-quicklinks .hq-list a:hover .hq-icon svg {
  transform: scale(1.12);
}

/* ── 合作区：图标大升级 ── */
.home-cooperation {
  background: linear-gradient(180deg, var(--cx-gray-50) 0%, #fff 100%) !important;
}
.home-cooperation .hc-list li {
  position: relative;
  overflow: hidden;
}
.home-cooperation .hc-list li::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: var(--cx-primary-bg);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--cx-transition);
  border-radius: var(--cx-radius-pill) var(--cx-radius-pill) 0 0;
}
.home-cooperation .hc-list li:hover::before {
  transform: scaleX(1);
}
.home-cooperation .hc-list li .pic {
  width: 72px;
  height: 72px;
  background: var(--cx-primary-light);
  border-radius: var(--cx-radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--cx-transition);
}
.home-cooperation .hc-list li:hover .pic {
  background: linear-gradient(135deg, var(--cx-primary-light) 0%, #dbeafe 100%);
  transform: scale(1.05);
}
.home-cooperation .hc-list li .pic img {
  width: 40px !important;
  height: 40px !important;
}
.home-cooperation .hc-list li .text {
  font-size: 16px;
  font-weight: 700;
  color: var(--cx-gray-800);
}
.home-cooperation .hc-list li .coop-desc {
  font-size: 12px;
  color: var(--cx-gray-400);
  text-align: center;
  line-height: 1.5;
}

/* ── 新闻区：统一列表布局（无图模式） ── */
.subject-box .news-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin-top: 24px !important;
  background: #fff !important;
  border-radius: var(--cx-radius-md) !important;
  box-shadow: var(--cx-shadow-md) !important;
  overflow: hidden !important;
  counter-reset: news-counter !important;
}
/* 所有图片统一隐藏 */
.subject-box .news-wrap .pic {
  display: none !important;
}
/* ── 主新闻（第一条，突出显示） ── */
.subject-box .news-main {
  counter-increment: news-counter !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  background: linear-gradient(135deg, rgba(var(--cx-primary-rgb, 232, 130, 37), 0.06) 0%, transparent 60%) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.subject-box .news-main a {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  padding: 24px 28px !important;
  text-decoration: none !important;
  height: auto !important;
  transition: var(--cx-transition) !important;
}
.subject-box .news-main a:hover {
  background: rgba(var(--cx-primary-rgb, 232, 130, 37), 0.08) !important;
}
.subject-box .news-main a::before {
  content: "TOP" !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  background: var(--cx-primary) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  flex-shrink: 0 !important;
}
.subject-box .news-main .news-main-info {
  flex: 1 !important;
  padding: 0 !important;
  background: transparent !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}
.subject-box .news-main .news-main-tag {
  font-size: 11px !important;
  color: var(--cx-primary) !important;
  font-weight: 600 !important;
  margin-bottom: 0 !important;
  display: inline-block !important;
  background: rgba(var(--cx-primary-rgb, 232, 130, 37), 0.10) !important;
  padding: 2px 10px !important;
  border-radius: 20px !important;
  width: fit-content !important;
}
.subject-box .news-main .news-main-tag:empty {
  display: none !important;
}
.subject-box .news-main .news-main-title {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  line-height: 1.5 !important;
}
.subject-box .news-main a:hover .news-main-title {
  color: var(--cx-primary) !important;
}
/* ── 侧边新闻列表（统一行样式） ── */
.subject-box .news-side {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}
.subject-box .news-side-item {
  counter-increment: news-counter !important;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 18px 28px !important;
  background: #fff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: var(--cx-transition) !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  overflow: visible !important;
}
.subject-box .news-side-item:last-child {
  border-bottom: none !important;
}
.subject-box .news-side-item:hover {
  transform: none !important;
  background: var(--cx-gray-50, #f9fafb) !important;
  box-shadow: none !important;
}
.subject-box .news-side-item::before {
  content: counter(news-counter, decimal-leading-zero) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  background: var(--cx-gray-100, #f3f4f6) !important;
  color: var(--cx-gray-400) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  flex-shrink: 0 !important;
  transition: var(--cx-transition) !important;
}
.subject-box .news-side-item:hover::before {
  background: var(--cx-primary) !important;
  color: #fff !important;
}
.subject-box .news-side-item .info {
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 4px !important;
  flex: 1 !important;
  border-left: none !important;
}
.subject-box .news-side-item .info .tag {
  font-size: 11px !important;
  color: var(--cx-primary) !important;
  font-weight: 600 !important;
}
.subject-box .news-side-item .info .tag:empty {
  display: none !important;
}
.subject-box .news-side-item .info .title {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
  line-height: 1.5 !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 1 !important;
  -webkit-box-orient: vertical !important;
}
.subject-box .news-side-item:hover .info .title {
  color: var(--cx-primary) !important;
}
.subject-box .news-side-item .info .date {
  font-size: 11px !important;
  color: var(--cx-gray-400) !important;
}

/* ── 荣誉/认证 区块（可在首页底部新增） ── */
.cx-trust-bar {
  background: #fff;
  padding: 36px 0;
  border-top: 1px solid var(--cx-gray-100);
  border-bottom: 1px solid var(--cx-gray-100);
}
.cx-trust-bar .wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  height: auto !important;
  flex-wrap: wrap;
}
.cx-trust-item {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 200px;
}
.cx-trust-icon {
  width: 48px;
  height: 48px;
  border-radius: var(--cx-radius-md);
  background: var(--cx-primary-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.cx-trust-info strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--cx-gray-800);
}
.cx-trust-info span {
  font-size: 12px;
  color: var(--cx-gray-400);
}
.cx-trust-divider {
  width: 1px;
  height: 40px;
  background: var(--cx-gray-200);
}

/* ── 搜索页面 find.htm 升级 ── */
.cx-search-hero {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%);
  padding: 40px 0 60px;
}
.cx-search-hero .cx-search-title {
  text-align: center;
  color: #fff;
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 24px;
}
.cx-search-box {
  max-width: 640px;
  margin: 0 auto;
  position: relative;
}
.cx-search-box input {
  width: 100%;
  height: 52px;
  border: none;
  border-radius: var(--cx-radius-pill);
  padding: 0 120px 0 24px;
  font-size: 15px;
  font-family: var(--cx-font);
  box-shadow: var(--cx-shadow-xl);
  outline: none;
  transition: var(--cx-transition);
  box-sizing: border-box;
  color: var(--cx-gray-800);
}
.cx-search-box input:focus {
  box-shadow: 0 0 0 3px rgba(255,255,255,.4), var(--cx-shadow-xl);
}
.cx-search-box button {
  position: absolute;
  right: 4px;
  top: 4px;
  height: 44px;
  padding: 0 24px;
  background: var(--cx-primary-bg);
  color: #fff;
  border: none;
  border-radius: var(--cx-radius-pill);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: var(--cx-transition);
}
.cx-search-box button:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
}
.cx-search-tags {
  text-align: center;
  margin-top: 14px;
  font-size: 12px;
  color: rgba(255,255,255,.7);
}
.cx-search-tags span { margin-right: 4px; }
.cx-search-tags a {
  color: rgba(255,255,255,.85) !important;
  text-decoration: none;
  background: rgba(255,255,255,.15);
  padding: 3px 10px;
  border-radius: var(--cx-radius-pill);
  margin: 0 3px;
  transition: var(--cx-transition);
}
.cx-search-tags a:hover {
  background: rgba(255,255,255,.25);
  color: #fff !important;
}

/* 搜索结果区 */
.cx-search-result {
  padding: 40px 0;
  background: var(--cx-gray-50);
  min-height: 300px;
}
.cx-search-result .cx-result-count {
  font-size: 13px;
  color: var(--cx-gray-600);
  margin-bottom: 20px;
}
.cx-search-result .cx-result-count em {
  color: var(--cx-primary);
  font-style: normal;
  font-weight: 700;
}

/* ── 页面通用骨架 Skeleton 加载占位 ── */
@keyframes cx-skeleton-shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.cx-skeleton {
  background: linear-gradient(90deg, var(--cx-gray-100) 25%, var(--cx-gray-200) 50%, var(--cx-gray-100) 75%);
  background-size: 200% 100%;
  animation: cx-skeleton-shimmer 1.5s infinite;
  border-radius: var(--cx-radius-sm);
}

/* ── 返回顶部按钮 ── */
.cx-back-top {
  position: fixed;
  right: 28px;
  bottom: 80px;
  width: 44px;
  height: 44px;
  background: var(--cx-primary-bg);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  cursor: pointer;
  box-shadow: var(--cx-shadow-md);
  transition: var(--cx-transition);
  z-index: 900;
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  text-decoration: none;
}
.cx-back-top.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.cx-back-top:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
  transform: translateY(-3px);
  box-shadow: var(--cx-shadow-lg);
}

/* ── subject-box section 之间增加分隔波浪线效果 ── */
.subject-box.has-wave {
  position: relative;
}
.subject-box.has-wave::before {
  content: '';
  position: absolute;
  top: -1px; left: 0; right: 0;
  height: 20px;
  background: inherit;
  clip-path: ellipse(55% 100% at 50% 100%);
}

/* ── 区块更多按钮：加入箭头动效 ── */
.subject-box .btn-more a em {
  display: inline-block;
  transition: transform var(--cx-transition);
}
.subject-box .btn-more a:hover em {
  transform: translateX(4px);
}

/* ── Footer 品牌升级 ── */
.foot-logo-new2023 .wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: auto !important;
  gap: 20px !important;
  flex-wrap: wrap;
}
.foot-logo-new2023 .foot-slogan {
  font-size: 13px;
  color: rgba(255,255,255,.5);
  font-style: italic;
  letter-spacing: 0.5px;
}

/* ── 媒体查询补丁 ── */
@media (max-width: 1200px) {
  .cx-brand-bar .wrapper {
    flex-wrap: wrap !important;
    gap: 16px !important;
  }
  .cx-brand-bar-item {
    border-right: none;
    padding: 8px 16px;
    border-bottom: 1px solid rgba(255,255,255,.15);
    flex: 1 1 45%;
  }
  .cx-brand-bar-item:last-child { border-bottom: none; }
  .cx-trust-bar .wrapper {
    justify-content: center !important;
    gap: 16px !important;
  }
}

@media (max-width: 768px) {
  .cx-brand-bar-item {
    flex: 1 1 100%;
    justify-content: flex-start;
  }
  .cx-trust-bar .wrapper {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px !important;
  }
  .cx-trust-divider { display: none; }
  .subject-box .news-wrap {
    flex-direction: column !important;
  }
  .subject-box .news-main a,
  .subject-box .news-side-item {
    padding: 16px 18px !important;
  }
  .subject-box .news-main a::before,
  .subject-box .news-side-item::before {
    width: 40px !important;
    height: 40px !important;
    font-size: 12px !important;
    border-radius: 10px !important;
  }
  .home-quicklinks .hq-title-tag { display: none; }
  .h2title { flex-direction: column !important; align-items: flex-start !important; }
  .cx-back-top { right: 16px; bottom: 70px; }
  .foot-logo-new2023 .wrapper {
    flex-direction: column !important;
    gap: 10px !important;
  }
}

/* ================================================================
   Part X：工具类库 — 毛玻璃 / 渐变文字 / 滚动动画 / 表单增强
   ================================================================ */

/* ── 毛玻璃效果 (Glassmorphism) ── */
.cx-glass {
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.cx-glass-light {
  background: rgba(255, 255, 255, 0.55);
  backdrop-filter: blur(12px) saturate(150%);
  -webkit-backdrop-filter: blur(12px) saturate(150%);
  border: 1px solid rgba(255, 255, 255, 0.25);
}
.cx-glass-dark {
  background: rgba(15, 23, 42, 0.65);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #fff;
}

/* ── 渐变文字 ── */
.cx-gradient-text {
  background: linear-gradient(135deg, var(--cx-primary) 0%, #2a7fd4 50%, #845EC2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.cx-gradient-text-warm {
  background: linear-gradient(135deg, #FF6B35 0%, #f59e0b 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── 滚动触发动画类 (配合 animations.js IntersectionObserver) ── */

/* 初始隐藏状态 */
.cx-animate {
  opacity: 0;
  transition: opacity 0.6s var(--cx-ease-smooth), transform 0.6s var(--cx-ease-smooth);
  will-change: opacity, transform;
}
.cx-animate.cx-fade-up {
  transform: translateY(30px);
}
.cx-animate.cx-fade-down {
  transform: translateY(-30px);
}
.cx-animate.cx-fade-left {
  transform: translateX(-30px);
}
.cx-animate.cx-fade-right {
  transform: translateX(30px);
}
.cx-animate.cx-zoom-in {
  transform: scale(0.92);
}
.cx-animate.cx-slide-in {
  transform: translateY(50px);
}

/* 动画触发后的可见状态 */
.cx-animate.cx-visible {
  opacity: 1;
  transform: translateY(0) translateX(0) scale(1);
}

/* 带延迟的子元素级联动画 */
.cx-animate.cx-delay-1 { transition-delay: 0.08s; }
.cx-animate.cx-delay-2 { transition-delay: 0.16s; }
.cx-animate.cx-delay-3 { transition-delay: 0.24s; }
.cx-animate.cx-delay-4 { transition-delay: 0.32s; }
.cx-animate.cx-delay-5 { transition-delay: 0.40s; }
.cx-animate.cx-delay-6 { transition-delay: 0.48s; }
.cx-animate.cx-delay-7 { transition-delay: 0.56s; }
.cx-animate.cx-delay-8 { transition-delay: 0.64s; }

/* ── 浮动/呼吸动画关键帧 ── */
@keyframes cx-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@keyframes cx-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.6; }
}
@keyframes cx-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}
@keyframes cx-bounce-in {
  0% { transform: scale(0.3); opacity: 0; }
  50% { transform: scale(1.05); }
  70% { transform: scale(0.9); }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes cx-slide-up-in {
  from { transform: translateY(100%); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

.cx-float { animation: cx-float 3s ease-in-out infinite; }
.cx-pulse { animation: cx-pulse 2s ease-in-out infinite; }
.cx-spin  { animation: cx-spin 1s linear infinite; }

/* ── 表单输入框增强 ── */
.cx-input {
  width: 100%;
  height: 44px;
  padding: 0 16px;
  border: 1.5px solid var(--cx-gray-200);
  border-radius: var(--cx-radius-md);
  font-size: var(--cx-fs-base);
  font-family: var(--cx-font);
  color: var(--cx-gray-800);
  background: #fff;
  transition: var(--cx-transition);
  outline: none;
  box-sizing: border-box;
}
.cx-input:focus {
  border-color: var(--cx-primary);
  box-shadow: 0 0 0 3px rgba(21, 82, 168, 0.12);
}
.cx-input::placeholder {
  color: var(--cx-gray-400);
}

/* 浮动标签输入框 */
.cx-float-label {
  position: relative;
}
.cx-float-label .cx-input {
  padding-top: 14px;
}
.cx-float-label label {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--cx-fs-base);
  color: var(--cx-gray-400);
  pointer-events: none;
  transition: var(--cx-transition);
  background: transparent;
}
.cx-float-label .cx-input:focus + label,
.cx-float-label .cx-input:not(:placeholder-shown) + label {
  top: 6px;
  transform: translateY(0);
  font-size: 11px;
  color: var(--cx-primary);
}

/* ── 分隔装饰线 ── */
.cx-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--cx-gray-200), transparent);
  margin: var(--cx-sp-8) 0;
}
.cx-divider-brand {
  height: 3px;
  background: var(--cx-primary-bg);
  border-radius: var(--cx-radius-pill);
}

/* ── 加载旋转器 ── */
.cx-spinner {
  width: 20px;
  height: 20px;
  border: 2px solid var(--cx-gray-200);
  border-top-color: var(--cx-primary);
  border-radius: 50%;
  animation: cx-spin 0.6s linear infinite;
  display: inline-block;
}

/* ── 徽章气泡 ── */
.cx-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: var(--cx-danger);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

/* ── 骨架屏组件 (扩充) ── */
.cx-skeleton-text {
  height: 14px;
  border-radius: 4px;
  margin-bottom: 8px;
}
.cx-skeleton-text.short { width: 40%; }
.cx-skeleton-text.medium { width: 70%; }
.cx-skeleton-text.long { width: 100%; }
.cx-skeleton-image {
  width: 100%;
  padding-bottom: 56.25%;
  border-radius: var(--cx-radius-md);
}
.cx-skeleton-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}
.cx-skeleton-card {
  border-radius: var(--cx-radius-md);
  overflow: hidden;
}
.cx-skeleton-card .cx-skeleton-image {
  border-radius: 0;
}
.cx-skeleton-card .cx-skeleton-body {
  padding: 14px;
}

/* ── 页面进入过渡 ── */
.cx-page-enter {
  animation: cx-page-fade-in 0.4s ease-out both;
}
@keyframes cx-page-fade-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ── 继续教育页面专用增强样式 ── */
.con-course .layui-table {
  border-radius: var(--cx-radius-md) !important;
  overflow: hidden !important;
  box-shadow: var(--cx-shadow-sm) !important;
}
.con-course .layui-table thead th {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  font-weight: 600 !important;
  font-size: var(--cx-fs-sm) !important;
  border-color: rgba(255,255,255,.15) !important;
  padding: 12px 8px !important;
}
.con-course .layui-table tbody tr {
  transition: background var(--cx-transition) !important;
}
.con-course .layui-table tbody tr:nth-child(even) {
  background: var(--cx-gray-50) !important;
}
.con-course .layui-table tbody tr:hover {
  background: var(--cx-primary-light) !important;
}
.con-course .layui-table tbody td {
  padding: 10px 8px !important;
  font-size: var(--cx-fs-sm) !important;
  color: var(--cx-gray-600) !important;
  border-color: var(--cx-gray-100) !important;
}

/* ── 登录页增强样式 ── */
.cx-login-page {
  min-height: 100vh;
  display: flex;
  background: linear-gradient(135deg, #f0f4ff 0%, #e8f1fb 50%, #f5f0ff 100%);
}
.cx-login-brand {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0d2b6b 0%, #1552a8 50%, #2a7fd4 100%);
  color: #fff;
  padding: 60px 40px;
  position: relative;
  overflow: hidden;
}
.cx-login-brand::before {
  content: '';
  position: absolute;
  top: -30%;
  right: -20%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255,255,255,.08) 0%, transparent 70%);
  pointer-events: none;
}
.cx-login-brand-title {
  font-size: var(--cx-fs-3xl);
  font-weight: 700;
  margin-bottom: 12px;
  text-shadow: 0 2px 12px rgba(0,0,0,.2);
  position: relative;
  z-index: 1;
}
.cx-login-brand-desc {
  font-size: var(--cx-fs-md);
  color: rgba(255,255,255,.8);
  line-height: var(--cx-lh-relaxed);
  text-align: center;
  max-width: 360px;
  position: relative;
  z-index: 1;
}
.cx-login-form-wrap {
  flex: 0 0 480px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px;
}
.cx-login-card {
  width: 100%;
  max-width: 400px;
  background: #fff;
  border-radius: var(--cx-radius-lg);
  box-shadow: var(--cx-shadow-lg);
  padding: 40px 32px;
}
.cx-login-card-title {
  font-size: var(--cx-fs-2xl);
  font-weight: 700;
  color: var(--cx-gray-800);
  margin-bottom: var(--cx-sp-6);
  text-align: center;
}

/* 登录 Tab */
.cx-login-tabs {
  display: flex;
  background: var(--cx-gray-100);
  border-radius: var(--cx-radius-pill);
  padding: 3px;
  margin-bottom: var(--cx-sp-6);
}
.cx-login-tabs .cx-tab-item {
  flex: 1;
  text-align: center;
  padding: 8px 0;
  font-size: var(--cx-fs-sm);
  font-weight: 500;
  color: var(--cx-gray-600);
  border-radius: var(--cx-radius-pill);
  cursor: pointer;
  transition: var(--cx-transition);
}
.cx-login-tabs .cx-tab-item.active {
  background: #fff;
  color: var(--cx-primary);
  box-shadow: var(--cx-shadow-sm);
  font-weight: 600;
}
.cx-login-tabs .cx-tab-item:hover:not(.active) {
  color: var(--cx-primary);
}

/* 登录按钮 */
.cx-login-btn {
  width: 100%;
  height: 48px;
  background: var(--cx-primary-bg);
  color: #fff;
  border: none;
  border-radius: var(--cx-radius-md);
  font-size: var(--cx-fs-md);
  font-weight: 600;
  cursor: pointer;
  transition: var(--cx-transition);
  box-shadow: var(--cx-shadow-sm);
  font-family: var(--cx-font);
}
.cx-login-btn:hover {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%);
  box-shadow: var(--cx-shadow-md);
  transform: translateY(-1px);
}
.cx-login-btn:active {
  transform: translateY(0);
  box-shadow: var(--cx-shadow-xs);
}

@media (max-width: 768px) {
  .cx-login-page {
    flex-direction: column;
  }
  .cx-login-brand {
    padding: 40px 20px;
    min-height: 200px;
  }
  .cx-login-brand-title {
    font-size: var(--cx-fs-2xl);
  }
  .cx-login-form-wrap {
    flex: 1;
    padding: 20px;
  }
  .cx-login-card {
    padding: 24px 20px;
  }
    /* 滚动动画在移动端减弱 */
  .cx-animate {
    transition-duration: 0.4s;
  }
  .cx-animate.cx-fade-up {
    transform: translateY(15px);
  }
}

/* ═══════════════════════════════════════════
   V3 升级 - 会计职称页推荐课程卡片增强
   ═══════════════════════════════════════════ */
.recommendedCourses-wrap .list li {
  border-radius: 12px;
  transition: all .3s cubic-bezier(.25,.8,.25,1);
  overflow: hidden;
}
.recommendedCourses-wrap .list li:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(26,111,239,.15);
}
.recommendedCourses-wrap .list li h4 {
  transition: color .25s;
}
.recommendedCourses-wrap .list li:hover h4 {
  color: var(--cx-primary, #1A6FEF);
}
.recommendedCourses-wrap .list .con .btn {
  border-radius: 8px;
  transition: all .25s;
  background: linear-gradient(135deg, var(--cx-primary, #1A6FEF), var(--cx-primary-dark, #0D47A1));
  color: #fff;
  border: none;
}
.recommendedCourses-wrap .list .con .btn:hover {
  opacity: .88;
  transform: translateY(-1px);
}

/* ═══════════════════════════════════════════
   V3 升级 - 题库卡片增强
   ═══════════════════════════════════════════ */
.tiku-list a {
  border-radius: 16px;
  transition: all .3s cubic-bezier(.25,.8,.25,1);
}
.tiku-list a:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(26,111,239,.12);
}
.tiku-list a .pic img {
  transition: transform .35s;
}
.tiku-list a:hover .pic img {
  transform: scale(1.08);
}
.tiku-list a .text {
  font-weight: 600;
  color: #1e293b;
}
.tiku-list a .number {
  color: var(--cx-primary, #1A6FEF);
  font-weight: 500;
}

/* ═══════════════════════════════════════════
   V3 升级 - 课程列表卡片增强
   ═══════════════════════════════════════════ */
.accounting-list a {
  border-radius: 12px;
  transition: all .3s cubic-bezier(.25,.8,.25,1);
  overflow: hidden;
}
.accounting-list a:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(0,0,0,.1);
}
.accounting-list a .pic img {
  transition: transform .4s;
}
.accounting-list a:hover .pic img {
  transform: scale(1.05);
}
.accounting-list a .price strong {
  color: var(--cx-accent, #E53935);
  font-weight: 700;
}
.accounting-list a .price span {
  background: linear-gradient(135deg, var(--cx-primary, #1A6FEF), var(--cx-primary-dark, #0D47A1));
  color: #fff;
  border-radius: 4px;
  padding: 2px 8px;
  font-size: 12px;
}

/* ═══════════════════════════════════════════
   V3 升级 - 题库页面布局增强
   ═══════════════════════════════════════════ */
.qbank-filter {
  border-radius: 12px;
  margin-top: 20px;
}
.qbank-filter .fli-link a {
  border-radius: 8px;
  transition: all .25s;
}
.qbank-filter .fli-link a.cur {
  background: var(--cx-primary, #1A6FEF);
  color: #fff;
}
.qbank-filter .fli-link a:not(.cur):hover {
  background: #eff6ff;
  color: var(--cx-primary, #1A6FEF);
}
.qbank-wrap {
  gap: 20px;
}
.qbank-left .lbox,
.qbank-right .rbox {
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,.05);
}
.qbank-right .rb-title {
  background: linear-gradient(135deg, var(--cx-primary, #1A6FEF), var(--cx-primary-dark, #0D47A1));
}
.qbank-right .rb-title .rbt-text {
  color: #fff;
}
.qbank-record li {
  border-radius: 10px;
  transition: all .25s;
}
.qbank-record li:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(26,111,239,.12);
}
.qbank-record li img {
  transition: transform .3s;
}
.qbank-record li:hover img {
  transform: scale(1.1);
}
.top_main .top_map {
  border-radius: 12px;
  transition: box-shadow .3s;
}
.top_main .top_map:hover {
  box-shadow: 0 4px 16px rgba(26,111,239,.1);
}
.top_main .top_map a {
  border-radius: 8px;
  transition: all .25s;
}
.recommend-list a {
  border-radius: 10px;
  transition: all .3s;
}
.recommend-list a:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
}

/* ================================================================
   statute / finances / slide 页面专用覆盖
   ================================================================ */

/* ── Statute 法律法规页 ── */
.ces-nav {
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80) 0%, var(--cx-primary-light, #1552a8) 100%) !important;
  border-radius: var(--cx-radius-md, 12px) !important;
  padding: 16px 20px !important;
  margin-bottom: 24px !important;
}
.ces-nav ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
.ces-nav li {
  border-radius: var(--cx-radius-sm, 8px) !important;
  transition: all 0.25s ease;
}
.ces-nav li a {
  color: rgba(255,255,255,.8) !important;
  padding: 8px 16px !important;
  display: inline-block;
  border-radius: var(--cx-radius-sm, 8px) !important;
  transition: all 0.25s ease;
}
.ces-nav li:hover a,
.ces-nav li.cur a {
  background: rgba(255,255,255,.2) !important;
  color: #fff !important;
}

/* 法规搜索栏 */
.ces-so {
  display: flex !important;
  gap: 12px !important;
  margin-bottom: 24px !important;
}
.ces-so .form-input {
  flex: 1;
  border: 2px solid rgba(0,0,0,.08) !important;
  border-radius: var(--cx-radius-sm, 8px) !important;
  padding: 10px 16px !important;
  font-size: 14px;
  transition: border-color 0.25s ease;
}
.ces-so .form-input:focus {
  border-color: var(--cx-primary-light, #1552a8) !important;
  outline: none;
  box-shadow: 0 0 0 3px rgba(21,82,168,.1);
}
.ces-so .form-btn {
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80) 0%, var(--cx-primary-light, #1552a8) 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--cx-radius-sm, 8px) !important;
  padding: 10px 24px !important;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s ease;
}
.ces-so .form-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(21,82,168,.25);
}

/* 法规列表区 */
.ces-list {
  background: #fff !important;
  border-radius: var(--cx-radius-lg, 16px) !important;
  padding: 24px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.04) !important;
}

/* 法规左侧面板 */
.dlxz {
  background: #fff !important;
  border-radius: var(--cx-radius-lg, 16px) !important;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
}
.dlxz .login .han01 {
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80) 0%, var(--cx-primary-light, #1552a8) 100%) !important;
  border-radius: 20px !important;
  border: none !important;
  padding: 4px 16px !important;
  transition: all 0.25s ease;
}
.dlxz .login .han01:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(21,82,168,.25);
  background: linear-gradient(135deg, var(--cx-primary-light, #1552a8) 0%, var(--cx-primary, #0d3d80) 100%) !important;
}

/* 公告标题装饰线 */
.ggtit .ggtit_line {
  background: linear-gradient(180deg, var(--cx-primary-light, #1552a8), var(--cx-primary, #0d3d80)) !important;
  border-radius: 2px !important;
}
.ggtit-left {
  color: var(--cx-text, #1a1a2e) !important;
}

/* 法规列表项 hover */
.jd li a:hover {
  color: var(--cx-primary-light, #1552a8) !important;
}
.fg.jd {
  background: #fff !important;
  border-radius: var(--cx-radius-lg, 16px) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
}

/* ── Finances 财政支农页 ── */
.contbox {
  padding: 30px 0 !important;
}
.contbox .cont-left,
.contbox .cont-right {
background: #fff !important;
border-radius: var(--cx-radius-lg, 16px) !important;
box-shadow: 0 2px 8px rgba(0,0,0,.04) !important;
}
.contbox .cont-left {
  padding: 20px !important;
}
.contbox .rb-title {
  margin-bottom: 16px;
}
.contbox .rb-title .rbt-text {
  font-size: 18px !important;
  font-weight: 600;
  color: var(--cx-text, #1a1a2e) !important;
  padding-left: 12px;
  border-left: 3px solid var(--cx-primary-light, #1552a8);
}

/* 财政支农 登录模块 */
.loginMod-wrap {
  border-radius: var(--cx-radius-lg, 16px) !important;
  overflow: hidden;
  padding: 20px !important;
}
.loginMod-wrap h2 {
  font-size: 18px !important;
  font-weight: 600;
  color: var(--cx-text, #1a1a2e) !important;
  margin-bottom: 16px;
}
.tab-tit ul {
  display: flex !important;
  gap: 0 !important;
  border-bottom: 2px solid rgba(0,0,0,.06);
}
.tab-tit li {
  flex: 1;
  text-align: center;
  padding: 10px 0 !important;
  cursor: pointer;
  transition: all 0.25s ease;
  position: relative;
}
.tab-tit li.cur {
  color: var(--cx-primary-light, #1552a8) !important;
  font-weight: 600;
}
.tab-tit li.cur::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 20%;
  width: 60%;
  height: 2px;
  background: var(--cx-primary-light, #1552a8);
  border-radius: 1px;
}

/* ── Slide 侧边客服栏增强 ── */
.right-im {
  z-index: 999 !important;
}
.right-im ul {
display: flex !important;
flex-direction: column !important;
gap: 2px !important;
overflow: visible !important;
}
.right-im li {
  padding: 12px 10px !important;
  font-size: 12px !important;
  text-align: center;
  cursor: pointer;
  transition: all 0.25s ease;
  position: relative;
  background-image: none !important;  /* 清除旧版 style.css 的背景图片 */
}
.right-im li svg {
  display: block;
  margin: 0 auto 4px;
}
.right-im li span {
  display: block;
  line-height: 1.3;
}
/* 清除旧版各按钮的背景图片 */
.right-im .im-weixin,
.right-im .im-phone,
.right-im .im-contact,
.right-im .im-gotop {
  background-image: none !important;
  background-size: auto !important;
}
.right-im li:hover {
  background-color: rgba(21,82,168,.08) !important;
  background-image: none !important;
}
.right-im li a {
  color: inherit !important;
  text-decoration: none !important;
  display: block;
}

/* 微信客服弹出 — position:absolute，父级 overflow:visible */
.right-im .im-weixin .imw-text,
.right-im .im-phone .imp-text {
  position: absolute !important;
  right: 80px !important;
  top: 0 !important;
  background: #fff !important;
  background-image: none !important;
  border-radius: var(--cx-radius-md, 12px) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.12) !important;
  padding: 16px !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  width: auto !important;
  height: auto !important;
  z-index: 10000 !important;
  min-width: 160px !important;
  white-space: nowrap !important;
}
.right-im .im-weixin .imw-text img {
  width: 130px;
  height: auto;
  margin-top: 8px;
}
.right-im .im-phone .imp-text p {
  margin: 4px 0;
  white-space: nowrap;
}
.right-im .im-phone .imp-text strong {
  color: var(--cx-primary-light, #1552a8);
}

/* 返回顶部按钮 */
.right-im .im-gotop {
  transition: all 0.25s ease;
}
.right-im .im-gotop:hover {
  color: var(--cx-primary-light, #1552a8) !important;
}

/* ── 面包屑导航 ── */
.path {
  background: rgba(0,0,0,.02) !important;
  padding: 12px 0 !important;
  font-size: 13px;
  color: rgba(0,0,0,.5);
}
.path a {
  color: rgba(0,0,0,.5) !important;
  text-decoration: none;
  transition: color 0.2s ease;
}
.path a:hover {
  color: var(--cx-primary-light, #1552a8) !important;
}

/* ══════════════════════════════════════════════════════════
   Plan 4 — 自建组件系统（替代 Layui）
   ══════════════════════════════════════════════════════════ */

/* ── cx-table: 现代化表格 ── */
.cx-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: var(--cx-radius-md, 12px) !important;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
  font-size: 14px;
  background: #fff;
}
.cx-table thead th {
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80), var(--cx-primary-light, #1552a8)) !important;
  color: #fff !important;
  font-weight: 500 !important;
  padding: 12px 16px !important;
  text-align: left;
  border: none !important;
  font-size: 14px;
  line-height: 1.5;
}
.cx-table tbody td {
  padding: 10px 16px !important;
  border-bottom: 1px solid rgba(0,0,0,.05) !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  color: var(--cx-gray-700, #475569);
  line-height: 1.5;
}
.cx-table tbody tr:nth-child(even) {
  background: rgba(0,0,0,.015);
}
.cx-table tbody tr:hover {
  background: rgba(21,82,168,.04) !important;
}
.cx-table tbody tr:last-child td {
  border-bottom: none !important;
}

/* ── cx-btn: 现代化按钮 ── */
.cx-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px;
  padding: 8px 20px !important;
  font-size: 14px !important;
  font-weight: 500;
  line-height: 1.5 !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80), var(--cx-primary-light, #1552a8)) !important;
  border: none !important;
  border-radius: var(--cx-radius-sm, 6px) !important;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none !important;
  white-space: nowrap;
  user-select: none;
  -webkit-user-select: none;
}
.cx-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(13,61,128,.25);
  filter: brightness(1.08);
  color: #fff !important;
}
.cx-btn:active {
  transform: translateY(0) scale(0.98);
}
a.cx-btn { color: #fff !important; }
a.cx-btn:hover { color: #fff !important; }

.cx-btn-sm {
  padding: 4px 12px !important;
  font-size: 12px !important;
  border-radius: 4px !important;
}
.cx-btn-disabled,
.cx-btn[disabled] {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  pointer-events: none;
}
.cx-btn-danger {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
}
.cx-btn-danger:hover {
  box-shadow: 0 4px 12px rgba(220,38,38,.25);
}

.cx-btn-group {
  display: inline-flex !important;
  gap: 0;
}
.cx-btn-group .cx-btn {
  border-radius: 0 !important;
}
.cx-btn-group .cx-btn:first-child {
  border-radius: var(--cx-radius-sm, 6px) 0 0 var(--cx-radius-sm, 6px) !important;
}
.cx-btn-group .cx-btn:last-child {
  border-radius: 0 var(--cx-radius-sm, 6px) var(--cx-radius-sm, 6px) 0 !important;
}

/* ── cx-progress: 现代化进度条 ── */
.cx-progress {
  width: 100%;
  height: 8px;
  background: rgba(0,0,0,.06);
  border-radius: 4px;
  overflow: hidden;
}
.cx-progress-bar {
  height: 100%;
  background: linear-gradient(90deg, var(--cx-primary, #0d3d80), var(--cx-primary-light, #1552a8));
  border-radius: 4px;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── cx-form: 现代化表单 ── */
.cx-form input[type="text"],
.cx-form input[type="password"],
.cx-form input[type="email"],
.cx-form input[type="tel"],
.cx-form input[type="number"],
.cx-form select,
.cx-form textarea {
  width: 100%;
  padding: 10px 14px;
  font-size: 14px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: var(--cx-radius-sm, 6px);
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
  background: #fff;
}
.cx-form input:focus,
.cx-form select:focus,
.cx-form textarea:focus {
  border-color: var(--cx-primary-light, #1552a8);
  box-shadow: 0 0 0 3px rgba(21,82,168,.1);
}

/* ══════════════════════════════════════════════════════════
   Layui 兼容层 — 旧类名映射到新样式
   过渡期使用，批量替换类名完成后删除此段
   ══════════════════════════════════════════════════════════ */

/* layui-table → cx-table */
.layui-table {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: var(--cx-radius-md, 12px) !important;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
  font-size: 14px;
  background: #fff;
}
.layui-table thead th {
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80), var(--cx-primary-light, #1552a8)) !important;
  color: #fff !important;
  font-weight: 500 !important;
  padding: 12px 16px !important;
  text-align: left;
  border: none !important;
  font-size: 14px;
  line-height: 1.5;
}
.layui-table tbody td {
  padding: 10px 16px !important;
  border-bottom: 1px solid rgba(0,0,0,.05) !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  color: var(--cx-gray-700, #475569);
  line-height: 1.5;
}
.layui-table tbody tr:nth-child(even) {
  background: rgba(0,0,0,.015);
}
.layui-table tbody tr:hover {
  background: rgba(21,82,168,.04) !important;
}
.layui-table tbody tr:last-child td {
  border-bottom: none !important;
}

/* layui-btn → cx-btn */
.layui-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px;
  padding: 8px 20px !important;
  font-size: 14px !important;
  font-weight: 500;
  line-height: 1.5 !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--cx-primary, #0d3d80), var(--cx-primary-light, #1552a8)) !important;
  border: none !important;
  border-radius: var(--cx-radius-sm, 6px) !important;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none !important;
  white-space: nowrap;
  user-select: none;
  -webkit-user-select: none;
  height: auto !important;
}
.layui-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(13,61,128,.25);
  filter: brightness(1.08);
  color: #fff !important;
}
.layui-btn:active {
  transform: translateY(0) scale(0.98);
}
.layui-btn-sm {
  padding: 4px 12px !important;
  font-size: 12px !important;
  border-radius: 4px !important;
}
.layui-btn-disabled,
.layui-btn[disabled] {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  pointer-events: none;
}
.layui-btn-danger {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
}
.layui-btn-danger:hover {
  box-shadow: 0 4px 12px rgba(220,38,38,.25);
}
.layui-btn-group {
  display: inline-flex !important;
  gap: 0;
}
.layui-btn-group .layui-btn {
  border-radius: 0 !important;
}
.layui-btn-group .layui-btn:first-child {
  border-radius: var(--cx-radius-sm, 6px) 0 0 var(--cx-radius-sm, 6px) !important;
}
.layui-btn-group .layui-btn:last-child {
  border-radius: 0 var(--cx-radius-sm, 6px) var(--cx-radius-sm, 6px) 0 !important;
}

/* layui-progress → cx-progress */
.layui-progress {
  width: 100% !important;
  height: 8px !important;
  background: rgba(0,0,0,.06) !important;
  border-radius: 4px !important;
  overflow: hidden;
}
.layui-progress .layui-progress-bar {
  height: 100% !important;
  background: linear-gradient(90deg, var(--cx-primary, #0d3d80), var(--cx-primary-light, #1552a8)) !important;
  border-radius: 4px !important;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

/* layui-form → cx-form */
.layui-form input[type="text"],
.layui-form input[type="password"],
.layui-form input[type="email"],
.layui-form input[type="tel"],
.layui-form input[type="number"],
.layui-form select,
.layui-form textarea {
  width: 100%;
  padding: 10px 14px;
  font-size: 14px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: var(--cx-radius-sm, 6px);
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
  background: #fff;
}
.layui-form input:focus,
.layui-form select:focus,
.layui-form textarea:focus {
  border-color: var(--cx-primary-light, #1552a8);
  box-shadow: 0 0 0 3px rgba(21,82,168,.1);
}

/* ================================================================
   Plan 5 — 视觉现代化升级
   ================================================================ */

/* ── Step 1: 区块视觉节奏 ── */

/* 1-A: 浅灰渐变背景（公需科目） */
.subject-box.cx-section-alt {
  background: linear-gradient(180deg, var(--cx-gray-50) 0%, #fff 100%) !important;
}

/* 1-B: 浅蓝渐变背景 + 卡片阴影强化（会计科目） */
.subject-box.cx-section-blue {
  background: linear-gradient(180deg, #edf4fc 0%, #f5f9ff 50%, #fff 100%) !important;
}
.subject-box.cx-section-blue .subject-list a {
  box-shadow: 0 4px 20px rgba(21,82,168,.10) !important;
  border: 1px solid rgba(21,82,168,.06) !important;
}
.subject-box.cx-section-blue .subject-list a:hover {
  box-shadow: 0 8px 32px rgba(21,82,168,.18) !important;
}

/* 1-C: 深色反转主题（在线题库） */
.subject-box.cx-section-dark {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%) !important;
  color: #fff !important;
  position: relative;
  overflow: hidden;
}
.subject-box.cx-section-dark::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(245,158,11,.08) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.subject-box.cx-section-dark > .wrapper {
  position: relative;
  z-index: 1;
}
.subject-box.cx-section-dark .hd-title,
.subject-box.cx-section-dark .hd-title strong {
  color: #fff !important;
}
.subject-box.cx-section-dark .hd-title .hd-desc {
  color: rgba(255,255,255,.7) !important;
}
.subject-box.cx-section-dark .hd-title::before {
  background: linear-gradient(180deg, var(--cx-accent), #fbbf24) !important;
}
.subject-box.cx-section-dark .subject-list a {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.subject-box.cx-section-dark .subject-list a:hover {
  background: rgba(255,255,255,.15) !important;
  border-color: rgba(255,255,255,.30) !important;
  transform: translateY(-6px) !important;
  box-shadow: 0 12px 40px rgba(0,0,0,.3) !important;
}
.subject-box.cx-section-dark .subject-list a .text {
  color: rgba(255,255,255,.92) !important;
}
.subject-box.cx-section-dark .btn-more a {
  color: rgba(255,255,255,.8) !important;
  border-color: rgba(255,255,255,.25) !important;
}
.subject-box.cx-section-dark .btn-more a:hover {
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
}

/* 1-D: 暖色背景（实操课堂） */
.subject-box.cx-section-warm {
  background: linear-gradient(180deg, #fef7ed 0%, #fffbf5 50%, #fff 100%) !important;
}
.subject-box.cx-section-warm .subject-list a {
  border: 1px solid rgba(245,158,11,.10) !important;
}
.subject-box.cx-section-warm .subject-list a:hover {
  box-shadow: 0 8px 28px rgba(245,158,11,.12) !important;
  border-color: rgba(245,158,11,.20) !important;
}

/* 1-E: 横版大卡片布局（公需科目） */
.subject-box.cx-layout-horizontal .subject-list {
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
}
.subject-box.cx-layout-horizontal .subject-list a {
  display: grid !important;
  grid-template-columns: 200px 1fr !important;
  grid-template-rows: 1fr !important;
  align-items: stretch !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  float: none !important;
}
.subject-box.cx-layout-horizontal .subject-list a .pic {
  padding-bottom: 0 !important;
  height: 140px !important;
  border-radius: var(--cx-radius-md) 0 0 var(--cx-radius-md) !important;
  overflow: hidden;
}
.subject-box.cx-layout-horizontal .subject-list a .pic img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
}
.subject-box.cx-layout-horizontal .subject-list a .text {
  display: flex !important;
  align-items: center !important;
  padding: 16px 20px !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* 1-F: 三列大卡布局（经济师） */
.subject-box.cx-layout-3col .subject-list {
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 28px !important;
}
.subject-box.cx-layout-3col .subject-list a .pic {
  padding-bottom: 62% !important;
}
.subject-box.cx-layout-3col .subject-list a .text {
  padding: 16px 14px !important;
  font-size: 15px !important;
}

/* ── Step 4: Hero 动态背景 ── */

/* 4-A: 渐变色呼吸动画 */
@keyframes cx-hero-gradient-shift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
.cx-hero,
.home-banner.cx-hero {
  background: linear-gradient(
    -45deg,
    #0d2b6b, #1050a0, #1a6fd4, #0d4d8a, #163c7a
  ) !important;
  background-size: 400% 400% !important;
  animation: cx-hero-gradient-shift 15s ease infinite !important;
}

/* 4-B: 浮动光圈装饰（覆盖原有 ::before，增加 ::after） */
.cx-hero::before {
  content: '' !important;
  position: absolute !important;
  top: -40% !important;
  right: -10% !important;
  width: 500px !important;
  height: 500px !important;
  background: radial-gradient(circle, rgba(255,255,255,.08) 0%, transparent 70%) !important;
  animation: cx-float 8s ease-in-out infinite !important;
  pointer-events: none !important;
}
.cx-hero::after {
  content: '';
  position: absolute;
  bottom: -20%;
  left: 8%;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(245,158,11,.10) 0%, transparent 60%);
  animation: cx-float 6s ease-in-out infinite reverse;
  pointer-events: none;
  z-index: 0;
}

/* ── Step 6: 渐变文字与排版升级 ── */

/* 6-A: section 标题中 strong 关键词渐变色 */
.h2title .hd-title strong {
  background: linear-gradient(135deg, var(--cx-primary) 0%, #2a7fd4 50%, #845EC2 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}
/* 深色 section 标题不用渐变，保持白色 */
.subject-box.cx-section-dark .hd-title strong {
  background: none !important;
  -webkit-background-clip: unset !important;
  -webkit-text-fill-color: #fff !important;
  background-clip: unset !important;
}

/* 6-B: Hero 标题闪光动画 */
@keyframes cx-text-shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}
.cx-hero-title {
  background: linear-gradient(
    90deg,
    #fff 0%,
    #fff 40%,
    rgba(245,200,100,.9) 50%,
    #fff 60%,
    #fff 100%
  ) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: cx-text-shimmer 4s linear infinite !important;
}

/* 6-C: 数字统计渐变高亮 */
.cx-hero-stat-num {
  background: linear-gradient(135deg, var(--cx-accent) 0%, #fbbf24 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* 6-D: hd-desc 副标题样式增强 */
.h2title .hd-title .hd-desc {
  color: var(--cx-gray-400) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
}

/* ── Step 2: 区块间波浪/斜切过渡 ── */

/* 2-A: 波浪过渡（椭圆裁切） */
.cx-wave-top {
  position: relative;
}
.cx-wave-top::before {
  content: '';
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  height: 30px;
  background: inherit;
  z-index: 1;
  clip-path: ellipse(55% 100% at 50% 100%);
  pointer-events: none;
}

/* 2-B: 斜切过渡 */
.cx-skew-top {
  position: relative;
  margin-top: -30px !important;
  padding-top: calc(var(--cx-section-py) + 40px) !important;
}
.cx-skew-top::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 60px;
  background: inherit;
  transform: skewY(-1.5deg);
  transform-origin: top left;
  z-index: 0;
  pointer-events: none;
}

/* 2-C: 流体装饰 blob */
.cx-section-decorated {
  position: relative;
  overflow: hidden;
}
.cx-section-decorated::after {
  content: '';
  position: absolute;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(21,82,168,.05) 0%, transparent 70%);
  top: -80px;
  right: -60px;
  pointer-events: none;
  z-index: 0;
}
.cx-section-decorated > .wrapper {
  position: relative;
  z-index: 1;
}

/* ── Step 3: 课程卡片 3D Hover 效果 ── */

/* 3-A: 3D 透视容器 */
.subject-box .subject-list {
  perspective: 1000px;
}

/* 3-B: 卡片 3D 基础 + 光泽反射层 */
.subject-box .subject-list a {
  transform-style: preserve-3d;
  transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow var(--cx-transition) !important;
  position: relative;
}
.subject-box .subject-list a::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(
    105deg,
    transparent 40%,
    rgba(255,255,255,.25) 45%,
    rgba(255,255,255,.08) 50%,
    transparent 55%
  );
  border-radius: inherit;
  opacity: 0;
  transition: opacity var(--cx-transition);
  pointer-events: none;
  z-index: 3;
}
.subject-box .subject-list a:hover::after {
  opacity: 1;
}

/* 3-C: 卡片图片 hover 放大 */
.subject-box .subject-list a .pic img {
  transition: transform 0.5s cubic-bezier(0.34,1.56,0.64,1) !important;
}
.subject-box .subject-list a:hover .pic img {
  transform: scale(1.06) !important;
}

/* ── Step 7: 滚动触发入场动画 — 级联延迟 ── */

/* 7-A: subject-list 子卡片初始隐藏状态 */
.subject-list.cx-stagger a {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.5s cubic-bezier(0.4,0,0.2,1), transform 0.5s cubic-bezier(0.4,0,0.2,1);
}

/* 7-B: 触发后可见 */
.subject-list.cx-stagger.cx-stagger-visible a {
  opacity: 1;
  transform: translateY(0);
}

/* 7-C: 级联延迟（CSS :nth-child 方案） */
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(1) { transition-delay: 0.05s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(2) { transition-delay: 0.12s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(3) { transition-delay: 0.19s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(4) { transition-delay: 0.26s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(5) { transition-delay: 0.33s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(6) { transition-delay: 0.40s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(7) { transition-delay: 0.47s; }
.subject-list.cx-stagger.cx-stagger-visible a:nth-child(8) { transition-delay: 0.54s; }

/* 7-D: h2title 入场动画 */
.h2title.cx-animate {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.h2title.cx-animate.cx-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ── Step 5: 毛玻璃卡片与层次感 ── */

/* 5-A: 考试指导区 — 毛玻璃快捷卡片 */
.home-examguide .he-list a {
  background: rgba(255, 255, 255, 0.7) !important;
  backdrop-filter: blur(10px) saturate(150%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(150%) !important;
  border: 1px solid rgba(255,255,255,.5) !important;
}
.home-examguide .he-list a:hover {
  background: rgba(255, 255, 255, 0.9) !important;
  border-color: rgba(21,82,168,.15) !important;
}

/* 5-B: 品牌数据条 — 毛玻璃覆盖层 */
.cx-brand-bar {
  background: linear-gradient(90deg,
    rgba(13,61,128,.88) 0%,
    rgba(21,82,168,.88) 50%,
    rgba(26,111,212,.88) 100%
  ) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* 5-C: 快速链接区 — 卡片毛玻璃增强 */
.home-quicklinks .hq-list a {
  background: rgba(255,255,255,.10) !important;
  backdrop-filter: blur(16px) saturate(120%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(120%) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}
.home-quicklinks .hq-list a:hover {
  background: rgba(255,255,255,.20) !important;
  border-color: rgba(255,255,255,.35) !important;
}

/* ── Step 8: 信赖认证条 & 品牌条重设计 ── */

/* 8-A: 信赖认证条 — 卡片式 */
.cx-trust-bar {
  background: linear-gradient(135deg, #f8fafc 0%, #eef2f7 100%) !important;
  padding: 48px 0 !important;
}
.cx-trust-item {
  background: #fff !important;
  border-radius: var(--cx-radius-md) !important;
  padding: 28px 20px !important;
  box-shadow: var(--cx-shadow-sm) !important;
  transition: transform var(--cx-transition), box-shadow var(--cx-transition) !important;
  flex: 1 !important;
  text-align: center !important;
}
.cx-trust-item:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--cx-shadow-lg) !important;
}
.cx-trust-divider {
  display: none !important;
}
.cx-trust-icon {
  font-size: 32px !important;
  margin-bottom: 12px !important;
}

/* 8-B: 品牌数据条 — 数字脉动动画 */
@keyframes cx-num-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}
.cx-brand-bar-text strong {
  animation: cx-num-pulse 3s ease-in-out infinite !important;
  display: inline-block !important;
}

/* ── Step 9: Footer 现代化增强 ── */

/* 9-A: Footer Logo 条渐变分隔线 */
.foot-logo-new2023 {
  border-bottom: none !important;
  position: relative !important;
}
.foot-logo-new2023::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.15), transparent);
}

/* 9-B: Footer 链接 hover 光效 */
.footer.new2023 .foot-link a {
  position: relative !important;
  overflow: hidden !important;
}
.footer.new2023 .foot-link a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  transition: left 0.4s ease;
}
.footer.new2023 .foot-link a:hover::before {
  left: 100%;
}

/* 9-C: 二维码卡片 hover 发光 */
.footer.new2023 .ercode-item {
  transition: background var(--cx-transition), box-shadow var(--cx-transition), transform var(--cx-transition) !important;
  border-radius: var(--cx-radius-md) !important;
  padding: 12px !important;
}
.footer.new2023 .ercode-item:hover {
  background: rgba(255,255,255,.12) !important;
  box-shadow: 0 0 24px rgba(255,255,255,.08) !important;
  transform: translateY(-4px) !important;
}

/* 9-D: 备案信息栏微调 */
.cx-footer-icp {
  border-top: 1px solid rgba(255,255,255,.06) !important;
}

/* ── Step 10: 空白间距优化 & 全局微调 ── */

/* 10-A: section 间距统一 */
.subject-box {
  padding: 56px 0 !important;
}

/* 10-B: 自定义全局滚动条 */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: var(--cx-gray-50);
}
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--cx-primary-mid), var(--cx-primary));
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--cx-primary-dark);
}

/* 10-C: 全局选中色品牌化 */
::selection {
  background: rgba(21,82,168,.15) !important;
  color: var(--cx-primary-dark) !important;
}

/* 10-D: 平滑滚动 */
html {
  scroll-behavior: smooth;
}

/* 10-E: 减少 prefers-reduced-motion 用户的动画 */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ================================================================
   PART 11: 全站子页面视觉现代化升级
   ================================================================ */

/* ── 11-A: 继续教育页 continueEdu.htm ── */

/* 地图区域 contbox 升级 */
.contbox {
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%) !important;
  padding: 48px 0 !important;
}
.contbox .wrapper {
  display: flex !important;
  gap: 24px !important;
}
.contbox .cont-left {
  flex: 1 !important;
  min-width: 0 !important;
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.05) !important;
  padding: 24px !important;
  overflow: visible !important;
}
.contbox .cont-right {
  width: 380px !important;
  flex-shrink: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}
.contbox .chinamap {
  border-radius: 12px !important;
  overflow: visible !important;
  border: 1px solid var(--cx-gray-100) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
/* 让 Raphael 生成的 SVG 随容器宽度缩放 */
.contbox .chinamap svg,
#ChinaMap svg {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* 登录模块毛玻璃升级 */
.loginMod-wrap {
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.08) !important;
  padding: 28px 24px !important;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.04) !important;
}
.loginMod-wrap h2 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-900) !important;
  margin-bottom: 20px !important;
  padding-bottom: 16px !important;
  border-bottom: 2px solid var(--cx-gray-100) !important;
  position: relative;
}
.loginMod-wrap h2::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 60px;
  height: 2px;
  background: var(--cx-primary-bg);
  border-radius: 1px;
}

/* 登录 Tab 升级 */
.tab-tit ul {
  display: flex !important;
  gap: 0 !important;
  border-bottom: 2px solid var(--cx-gray-100) !important;
  margin-bottom: 20px !important;
}
.tab-tit li {
  flex: 1 !important;
  text-align: center !important;
  padding: 12px 0 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  position: relative !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--cx-gray-500) !important;
}
.tab-tit li.cur {
  color: var(--cx-primary) !important;
  font-weight: 600 !important;
}
.tab-tit li.cur::after {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 20% !important;
  width: 60% !important;
  height: 2px !important;
  background: var(--cx-primary-bg) !important;
  border-radius: 1px !important;
}
.tab-tit li:hover {
  color: var(--cx-primary) !important;
}

/* 登录按钮升级 */
.login-btn,
a.login-btn {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 12px 0 !important;
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  border: none !important;
  cursor: pointer !important;
  margin-top: 16px !important;
}
.login-btn:hover,
a.login-btn:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 16px rgba(21,82,168,.3) !important;
  color: #fff !important;
}

/* 合格证查询区域 */
.so-certificate,
.cx-cert-search {
  background: linear-gradient(135deg, #f0f4ff 0%, #e8f1fb 100%) !important;
  border-radius: 12px !important;
  padding: 20px !important;
}
.cx-cert-search .cx-input-group {
  display: flex !important;
  gap: 10px !important;
  align-items: center !important;
}
.cx-cert-search .cx-input {
  flex: 1 !important;
  border: 2px solid rgba(21,82,168,.12) !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  transition: border-color 0.2s ease !important;
}
.cx-cert-search .cx-input:focus {
  border-color: var(--cx-primary) !important;
  outline: none !important;
}
.cx-cert-search .cx-btn-primary {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 24px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  white-space: nowrap !important;
}
.cx-cert-search .cx-btn-primary:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(21,82,168,.25) !important;
}

/* 步骤条升级 */
.continueedu-step {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%) !important;
  padding: 40px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.continueedu-step::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  right: -10% !important;
  width: 400px !important;
  height: 400px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
.continueedu-step .hq-list {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}
.continueedu-step .hq-list li {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 8px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  padding: 16px 20px !important;
  border-radius: 12px !important;
  transition: all 0.3s ease !important;
  text-align: center !important;
  line-height: 1.4 !important;
}
.continueedu-step .hq-list li:hover {
  background: rgba(255,255,255,.1) !important;
  transform: translateY(-4px) !important;
}
.continueedu-step .hq-list li img {
  width: 48px !important;
  height: 48px !important;
  filter: brightness(0) invert(1) !important;
  opacity: 0.9 !important;
}
.continueedu-step .hq-list li .icon-barrow {
  display: none !important;
}

/* 新闻列表升级 */
.news-list {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.05) !important;
  overflow: hidden !important;
}
.news-list a {
  display: block !important;
  padding: 18px 24px !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
}
.news-list a:last-child {
  border-bottom: none !important;
}
.news-list a:hover {
  background: var(--cx-gray-50) !important;
  padding-left: 28px !important;
}
.news-list a .title {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
  line-height: 1.6 !important;
  margin-bottom: 4px !important;
  transition: color 0.2s ease !important;
}
.news-list a:hover .title {
  color: var(--cx-primary) !important;
}
.news-list a .desc {
  font-size: 13px !important;
  color: var(--cx-gray-400) !important;
  line-height: 1.6 !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

/* ── 11-B: 省级继续教育 template.htm ── */

/* 省级 Banner 升级 */
.temp-banner {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%) !important;
  padding: 60px 0 50px !important;
  position: relative !important;
  overflow: hidden !important;
  text-align: center !important;
}
.temp-banner::before {
  content: '' !important;
  position: absolute !important;
  top: -40% !important;
  right: -15% !important;
  width: 500px !important;
  height: 500px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
.temp-banner::after {
  content: '' !important;
  position: absolute !important;
  bottom: -30% !important;
  left: 5% !important;
  width: 350px !important;
  height: 350px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(245,158,11,.08) 0%, transparent 60%) !important;
  pointer-events: none !important;
}
.temp-banner .wrapper {
  position: relative !important;
  z-index: 1 !important;
}
.temp-banner .title {
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #fff !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.2) !important;
  margin-bottom: 8px !important;
}
.temp-banner .subtitle {
  font-size: 20px !important;
  font-weight: 500 !important;
  color: rgba(255,255,255,.85) !important;
  margin-bottom: 16px !important;
}
.temp-banner .text {
  font-size: 14px !important;
  color: rgba(255,255,255,.6) !important;
}
.temp-banner .text span {
  margin-left: 16px !important;
}

/* 培训说明区域升级 */
.train {
  background: linear-gradient(180deg, var(--cx-gray-50) 0%, #fff 100%) !important;
  padding: 40px 0 !important;
}
.train .left-box {
  background: #fff !important;
  border-radius: 16px !important;
  padding: 24px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.05) !important;
}
.train .train-title {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  margin-bottom: 16px !important;
  padding-left: 12px !important;
  border-left: 4px solid var(--cx-primary) !important;
}
.train .hover-box {
  border-radius: 10px !important;
  transition: all 0.25s ease !important;
  overflow: hidden !important;
}
.train .hover-box:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 4px 16px rgba(21,82,168,.1) !important;
}
.train .hover-box .mc {
  border-radius: 10px !important;
  padding: 14px !important;
  transition: background 0.25s ease !important;
}
.train .hover-box:hover .mc {
  background: var(--cx-primary-light) !important;
}
.train .right-box {
  background: #fff !important;
  border-radius: 16px !important;
  padding: 24px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.05) !important;
}

/* 登录条升级 */
.green-login {
  background: linear-gradient(135deg, #0d3d80 0%, #1552a8 100%) !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  overflow: hidden !important;
}
.green-login .text {
  color: rgba(255,255,255,.9) !important;
  font-size: 14px !important;
}
.green-login .begin-login {
  background: rgba(255,255,255,.2) !important;
  color: #fff !important;
  padding: 8px 20px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  border: 1px solid rgba(255,255,255,.3) !important;
}
.green-login .begin-login:hover {
  background: rgba(255,255,255,.3) !important;
  transform: translateY(-1px) !important;
}

/* 学习流程区域 */
.study {
  background: #fff !important;
  padding: 40px 0 !important;
}
.study .study-box {
  background: linear-gradient(135deg, #f0f7ff 0%, #e8f1fb 100%) !important;
  border-radius: 16px !important;
  padding: 32px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.05) !important;
}
.study .flow2 {
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}
.study .flow2:hover {
  background: rgba(21,82,168,.06) !important;
}

/* 通知公告区域 */
.right-box .shap {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  padding: 16px 0 12px !important;
  border-bottom: 2px solid var(--cx-gray-100) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
.right-box .shap .more {
  font-size: 12px !important;
  color: var(--cx-gray-400) !important;
  font-weight: 400 !important;
}
.right-box .content {
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
.right-box .content .hot {
  background: linear-gradient(135deg, #ef4444, #f97316) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
  flex-shrink: 0 !important;
}
.right-box .content .message {
  flex: 1 !important;
  font-size: 13px !important;
  color: var(--cx-gray-700) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}
.right-box .content .message:hover {
  color: var(--cx-primary) !important;
}
.right-box .content .time {
  font-size: 11px !important;
  color: var(--cx-gray-400) !important;
  flex-shrink: 0 !important;
}

/* ── 11-C: 会计职称页 accounting.htm ── */

/* 推荐课程卡片区域 */
.recommendedCourses-wrap {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%) !important;
  padding: 56px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.recommendedCourses-wrap::before {
  content: '' !important;
  position: absolute !important;
  top: -40% !important;
  right: -10% !important;
  width: 500px !important;
  height: 500px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
.recommendedCourses-wrap .tit {
  position: relative !important;
  z-index: 1 !important;
}
.recommendedCourses-wrap .tit h3 {
  color: #fff !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin-bottom: 36px !important;
}
.recommendedCourses-wrap .list {
  position: relative !important;
  z-index: 1 !important;
}
.recommendedCourses-wrap .list ul {
  display: flex !important;
  gap: 20px !important;
  justify-content: center !important;
}
.recommendedCourses-wrap .list li {
  background: rgba(255,255,255,.08) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 16px !important;
  padding: 28px 24px !important;
  flex: 1 !important;
  max-width: 280px !important;
  transition: all 0.3s cubic-bezier(.25,.8,.25,1) !important;
  position: relative;
  z-index: 1;
}
.recommendedCourses-wrap .list li:hover {
  background: rgba(255,255,255,.18) !important;
  transform: translateY(-8px) !important;
  box-shadow: 0 16px 48px rgba(0,0,0,.3) !important;
  border-color: rgba(255,255,255,.3) !important;
}
.recommendedCourses-wrap .list li.on {
  background: rgba(255,255,255,.2) !important;
  border-color: rgba(245,158,11,.4) !important;
  box-shadow: 0 8px 32px rgba(245,158,11,.15) !important;
}
.recommendedCourses-wrap .list li h4 {
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  margin-bottom: 16px !important;
}
.recommendedCourses-wrap .list li .con p {
  color: rgba(255,255,255,.75) !important;
  font-size: 13px !important;
  line-height: 2 !important;
}
.recommendedCourses-wrap .list li .con h5 {
  margin: 16px 0 !important;
  color: var(--cx-accent) !important;
  font-size: 14px !important;
}
.recommendedCourses-wrap .list li .con h5 strong {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: var(--cx-accent) !important;
}
.recommendedCourses-wrap .list li .con .btn {
  background: linear-gradient(135deg, var(--cx-accent), #f59e0b) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 24px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  display: inline-block !important;
  text-decoration: none !important;
}
.recommendedCourses-wrap .list li .con .btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 16px rgba(245,158,11,.4) !important;
}
.recommendedCourses-wrap .list li .link-btn {
  color: rgba(255,255,255,.7) !important;
  font-size: 12px !important;
  margin-top: 12px !important;
}

/* 课程列表网格升级 */
.accounting-list {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}
.accounting-list a {
  background: #fff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
  transition: all 0.3s cubic-bezier(.25,.8,.25,1) !important;
  text-decoration: none !important;
  display: block !important;
}
.accounting-list a:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 12px 32px rgba(0,0,0,.12) !important;
}
.accounting-list a .pic {
  overflow: hidden !important;
  border-radius: 12px 12px 0 0 !important;
}
.accounting-list a .pic img {
  width: 100% !important;
  display: block !important;
  transition: transform 0.4s ease !important;
}
.accounting-list a:hover .pic img {
  transform: scale(1.06) !important;
}
.accounting-list a .title {
  padding: 12px 14px 6px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
  line-height: 1.5 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.accounting-list a:hover .title {
  color: var(--cx-primary) !important;
}
.accounting-list a .price {
  padding: 0 14px 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
.accounting-list a .price strong {
  color: #ef4444 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}
.accounting-list a .price span {
  background: var(--cx-primary-light) !important;
  color: var(--cx-primary) !important;
  font-size: 11px !important;
  padding: 2px 8px !important;
  border-radius: 20px !important;
  font-weight: 500 !important;
}

/* 题库卡片升级 */
.tiku-list {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
}
.tiku-list a {
  background: #fff !important;
  border-radius: 16px !important;
  padding: 28px 20px !important;
  text-align: center !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.06) !important;
  transition: all 0.3s cubic-bezier(.25,.8,.25,1) !important;
  text-decoration: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 12px !important;
}
.tiku-list a:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 12px 32px rgba(21,82,168,.12) !important;
}
.tiku-list a .pic {
  width: 64px !important;
  height: 64px !important;
}
.tiku-list a .pic img {
  width: 100% !important;
  height: 100% !important;
  transition: transform 0.3s ease !important;
}
.tiku-list a:hover .pic img {
  transform: scale(1.1) !important;
}
.tiku-list a .text {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
}
.tiku-list a .number {
  font-size: 13px !important;
  color: var(--cx-primary) !important;
  font-weight: 500 !important;
}

/* ── 11-D: 财政支农页 finances.htm ── */

/* subject-box 区域升级 */
.subject-box {
  padding: 40px 0 !important;
  transition: background 0.3s ease !important;
}
.subject-box.bg {
  background: var(--cx-gray-50) !important;
}
.subject-box:not(.bg):not(.cx-section-dark):not(.cx-section-blue):not(.cx-section-warm):not(.cx-section-alt) {
  background: #fff !important;
}
.subject-box .wrapper {
  max-width: 1200px !important;
  margin: 0 auto !important;
}

/* 快速链接区域升级 */
.home-quicklinks {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%) !important;
  padding: 40px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.home-quicklinks::before {
  content: '' !important;
  position: absolute !important;
  top: -40% !important;
  right: -10% !important;
  width: 400px !important;
  height: 400px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
.home-quicklinks .hq-title {
  text-align: center !important;
  color: #fff !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin-bottom: 28px !important;
  position: relative !important;
  z-index: 1 !important;
}
.home-quicklinks .hq-list {
  display: flex !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
  position: relative !important;
  z-index: 1 !important;
}
.home-quicklinks .hq-list a {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 20px 28px !important;
  background: rgba(255,255,255,.1) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 12px !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  min-width: 120px !important;
}
.home-quicklinks .hq-list a:hover {
  background: rgba(255,255,255,.2) !important;
  transform: translateY(-4px) !important;
  border-color: rgba(255,255,255,.35) !important;
}
.home-quicklinks .hq-list a img {
width: 56px !important;
height: 56px !important;
filter: none !important;
opacity: 1 !important;
}
.home-quicklinks .hq-list a .hq-icon svg {
  width: 56px !important;
  height: 56px !important;
  display: block !important;
}

/* ── 11-E: 题库页 questionbank/index.htm ── */

/* 筛选区升级 */
.qbank-filter {
  background: #fff !important;
  border-radius: 12px !important;
  margin: 20px auto !important;
  padding: 16px 24px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.05) !important;
}
.qbank-filter .fli-link {
  display: flex !important;
  gap: 8px !important;
}
.qbank-filter .fli-link a {
  padding: 8px 20px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
}
.qbank-filter .fli-link a.cur {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
}
.qbank-filter .fli-link a:not(.cur):hover {
  background: rgba(21,82,168,.08) !important;
  color: var(--cx-primary) !important;
}

/* 题库 Tab 栏增强 */
.qbank-tab {
  background: #fff !important;
  border-radius: 12px !important;
  padding: 6px !important;
  margin-bottom: 20px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.05) !important;
}
.qbank-tab ul {
  display: flex !important;
  gap: 4px !important;
}
.qbank-tab li {
  flex: 1 !important;
  text-align: center !important;
}
.qbank-tab li a {
  display: block !important;
  padding: 10px 8px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--cx-gray-600) !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
}
.qbank-tab li.cur a {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(21,82,168,.2) !important;
}
.qbank-tab li:not(.cur) a:hover {
  background: rgba(21,82,168,.06) !important;
  color: var(--cx-primary) !important;
}

/* 题库列表项增强 */
.qbank-list .ql-box {
  background: linear-gradient(135deg, var(--cx-primary-light) 0%, #eef4ff 100%) !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  margin-bottom: 12px !important;
}
.qbank-list .ql-box:hover {
  box-shadow: 0 2px 12px rgba(21,82,168,.1) !important;
}
.qbank-list .ql-title {
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
}
.qbank-list .qlc-item {
  border-radius: 8px !important;
  transition: background 0.2s ease !important;
  padding: 12px 16px !important;
}
.qbank-list .qlc-item:hover {
  background: var(--cx-gray-50) !important;
}
.qbank-list .qlc-btn a {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  border-radius: 6px !important;
  padding: 6px 16px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  display: inline-block !important;
}
.qbank-list .qlc-btn a:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(21,82,168,.2) !important;
}

/* 机考系统卡片增强 */
.jkxt .card {
  background: linear-gradient(135deg, #0d2b6b 0%, #1552a8 50%, #1a6fd4 100%) !important;
  border-radius: 16px !important;
  padding: 32px 28px !important;
  color: #fff !important;
  position: relative !important;
  overflow: hidden !important;
}
.jkxt .card::before {
  content: '' !important;
  position: absolute !important;
  top: -30% !important;
  right: -20% !important;
  width: 200px !important;
  height: 200px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.1) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
.jkxt .card .title {
  font-size: 20px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
  color: #fff !important;
}
.jkxt .card .con {
  color: rgba(255,255,255,.75) !important;
  font-size: 14px !important;
}
.jkxt .card .btn {
  display: inline-block !important;
  padding: 10px 24px !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  margin-top: 8px !important;
}
.jkxt .card .left-btn {
  background: rgba(255,255,255,.2) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.3) !important;
}
.jkxt .card .left-btn:hover {
  background: rgba(255,255,255,.3) !important;
}
.jkxt .card .right-btn {
  background: var(--cx-accent) !important;
  color: #fff !important;
  border: none !important;
}
.jkxt .card .right-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 16px rgba(245,158,11,.3) !important;
}

/* 题库排行榜增强 */
.index__rankList-1525v {
  border-radius: 8px !important;
  padding: 10px 12px !important;
  transition: background 0.2s ease !important;
}
.index__rankList-1525v:hover {
  background: var(--cx-gray-50) !important;
}

/* 题库数据统计区增强 */
.index__homeLeftData-3rQUb {
  background: linear-gradient(135deg, #f0f7ff 0%, #e8f1fb 100%) !important;
  border-radius: 12px !important;
  padding: 20px !important;
}
.index__dataListShu-VT1DV {
  font-weight: 700 !important;
  font-size: 28px !important;
}

/* ── 11-F: 课程页 course.htm Banner 增强 ── */
.cou-banner {
  background: linear-gradient(135deg, #0d2b6b 0%, #1050a0 50%, #1a6fd4 100%) !important;
  padding: 20px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}
.cou-banner::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  right: -10% !important;
  width: 400px !important;
  height: 400px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(255,255,255,.05) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
.cou-banner .wrapper {
  position: relative !important;
  z-index: 1 !important;
}
.cou-banner img {
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.2) !important;
  max-width: 100% !important;
}

/* ── 11-G: 党政培训页 political/index.htm ── */

/* 党政 Banner 分类链接增强 */
.top-link {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  gap: 8px !important;
  padding: 12px 0 !important;
  flex-wrap: wrap !important;
}
.top-link a {
  display: inline-block !important;
  padding: 6px 16px !important;
  background: rgba(255,255,255,.15) !important;
  color: rgba(255,255,255,.85) !important;
  border-radius: 20px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  backdrop-filter: blur(8px) !important;
}
.top-link a:hover {
  background: rgba(255,255,255,.25) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
}

/* ── 11-H: 法律法规页 statute.htm ── */

/* 法规页顶部区域增强 */
.top_lmain {
  display: flex !important;
  gap: 16px !important;
  margin-bottom: 24px !important;
  margin-top: 20px !important;
}
.top_swiper {
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.1) !important;
}
.top_swiper img {
  border-radius: 0 !important;
}

/* 法规 ces-wrap 布局增强 */
.ces-wrap {
  display: flex !important;
  gap: 20px !important;
  margin-top: 24px !important;
  margin-bottom: 40px !important;
}
.ces-nav {
  flex: 0 0 200px !important;
  height: fit-content !important;
  position: sticky !important;
  top: 20px !important;
}
.ces-nav ul {
  flex-direction: column !important;
}
.ces-list {
  flex: 1 !important;
}

/* 法规搜索区增强 */
.ces-so {
  background: #fff !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.05) !important;
  margin-bottom: 20px !important;
}
.ces-so input[type="text"] {
  border: 2px solid var(--cx-gray-200) !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  transition: border-color 0.2s ease !important;
}
.ces-so input[type="text"]:focus {
  border-color: var(--cx-primary) !important;
  outline: none !important;
}
.ces-so .btn {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 20px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}
.ces-so .btn:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(21,82,168,.25) !important;
}

/* 新闻列表无图模式增强 */
.news-list.nod a {
  border-radius: 8px !important;
  padding: 16px 20px !important;
  transition: all 0.25s ease !important;
  border: 1px solid transparent !important;
}
.news-list.nod a:hover {
  background: var(--cx-gray-50) !important;
  border-color: rgba(21,82,168,.08) !important;
  transform: translateX(4px) !important;
}
.news-list.nod a .title {
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
  transition: color 0.2s ease !important;
}
.news-list.nod a:hover .title {
  color: var(--cx-primary) !important;
}
.news-list.nod a .desc {
  color: var(--cx-gray-500) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

/* 筛选链接增强（fl-item / fli-link 通用） */
.fl-item {
  margin-bottom: 16px !important;
}
.fl-item label {
  font-weight: 600 !important;
  color: var(--cx-gray-700) !important;
  font-size: 14px !important;
}
.fli-link a {
  display: inline-block !important;
  padding: 6px 16px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}
.fli-link a.cur {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
}
.fli-link a:not(.cur):hover {
  background: rgba(21,82,168,.06) !important;
  color: var(--cx-primary) !important;
}

/* ── 11-I: 通用 bgf6 背景页面增强 ── */
body.bgf6 {
  background: var(--cx-gray-50) !important;
}

/* ── 11-J: 通用分页器增强 ── */
.layui-laypage {
  display: flex !important;
  justify-content: center !important;
  gap: 4px !important;
  padding: 32px 0 !important;
}
.layui-laypage a,
.layui-laypage span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 36px !important;
  height: 36px !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}
.layui-laypage a {
  background: #fff !important;
  color: var(--cx-gray-600) !important;
  border: 1px solid var(--cx-gray-200) !important;
}
.layui-laypage a:hover {
  background: var(--cx-primary-light) !important;
  color: var(--cx-primary) !important;
  border-color: var(--cx-primary) !important;
}
.layui-laypage .layui-laypage-curr em {
  background: var(--cx-primary-bg) !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-style: normal !important;
}

/* ── 11-K: 通用面包屑增强 ── */
.path {
  padding: 16px 0 !important;
  font-size: 13px !important;
  color: var(--cx-gray-400) !important;
}
.path a {
  color: var(--cx-gray-500) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.path a:hover {
  color: var(--cx-primary) !important;
}

/* ── 11-L: 右侧 IM 浮窗增强 ── */
.right-im {
  position: fixed !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 999 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}
.right-im a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  background: #fff !important;
  border-radius: 12px 0 0 12px !important;
  box-shadow: -2px 2px 12px rgba(0,0,0,.1) !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
}
.right-im a:hover {
  width: 56px !important;
  background: var(--cx-primary-bg) !important;
}
.right-im a:hover img {
  filter: brightness(0) invert(1) !important;
}

/* ── 11-M: 通用 h2title 子页面适配 ── */
.h2title {
  text-align: center !important;
  padding: 40px 0 24px !important;
}
.h2title h2 {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-900) !important;
  position: relative !important;
  display: inline-block !important;
}
.h2title h2::after {
  content: '' !important;
  position: absolute !important;
  bottom: -8px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 48px !important;
  height: 3px !important;
  background: var(--cx-primary-bg) !important;
  border-radius: 2px !important;
}
.h2title .more {
  display: inline-block !important;
  margin-top: 12px !important;
  font-size: 13px !important;
  color: var(--cx-gray-400) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.h2title .more:hover {
  color: var(--cx-primary) !important;
}

/* ============================================================
   PART 12: 用户中心 (member) 页面视觉现代化
   ============================================================ */

/* 12-A: 用户中心顶栏 */
.my-header {
  background: linear-gradient(135deg, var(--cx-primary) 0%, #1a73e8 100%) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.12) !important;
}
.my-header .myh-title a {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 20px !important;
  text-decoration: none !important;
}
.my-header .myh-right .myh-tel {
  color: rgba(255,255,255,.85) !important;
}
.my-header .myh-right .myh-tel strong {
  color: #fff !important;
}
.my-header .myh-nav a {
  color: rgba(255,255,255,.9) !important;
  transition: opacity .2s !important;
}
.my-header .myh-nav a:hover {
  opacity: .8 !important;
}

/* 12-B: 用户中心左侧导航 */
.my-left {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  overflow: hidden !important;
}
.my-left .user-block {
  background: linear-gradient(135deg, var(--cx-primary) 0%, #1a73e8 100%) !important;
  padding: 28px 20px !important;
  text-align: center !important;
}
.my-left .user-block .user-img {
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  border: 3px solid rgba(255,255,255,.4) !important;
  object-fit: cover !important;
}
.my-left .user-block .user-name {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}
.my-left-list li > a {
  display: flex !important;
  align-items: center !important;
  padding: 12px 20px !important;
  color: var(--cx-gray-700) !important;
  font-size: 14px !important;
  transition: all .2s !important;
  border-left: 3px solid transparent !important;
}
.my-left-list li > a:hover,
.my-left-list li.cur > a {
  background: var(--cx-gray-50) !important;
  color: var(--cx-primary) !important;
  border-left-color: var(--cx-primary) !important;
}
.my-left-list li dl {
  background: var(--cx-gray-50) !important;
}
.my-left-list li dl dd a {
  display: block !important;
  padding: 8px 20px 8px 48px !important;
  color: var(--cx-gray-500) !important;
  font-size: 13px !important;
  transition: color .2s !important;
}
.my-left-list li dl dd a:hover {
  color: var(--cx-primary) !important;
}

/* 12-C: 用户中心右侧内容区 */
.my-right {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  padding: 24px !important;
}
.my-right .panel-tit {
  border-bottom: 2px solid var(--cx-primary) !important;
  padding-bottom: 12px !important;
  margin-bottom: 20px !important;
}
.my-right .panel-tit p {
  font-size: 18px !important;
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
}

/* 12-D: 用户中心底部 */
.my-footer {
  background: var(--cx-gray-800) !important;
  color: rgba(255,255,255,.6) !important;
  padding: 24px 0 !important;
}
.my-footer .footer-bd {
  text-align: center !important;
}
.my-footer .footer-bd a {
  color: rgba(255,255,255,.7) !important;
  transition: color .2s !important;
}
.my-footer .footer-bd a:hover {
  color: #fff !important;
}

/* ============================================================
   PART 13: 课程学习页面 (course-learn) 视觉现代化
   ============================================================ */
.start_learn {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  padding: 24px !important;
}
.start_learn .video_enter {
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.1) !important;
}
.start_learn .video_des h2 {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  margin-bottom: 8px !important;
}
.course_list {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  padding: 24px !important;
  margin-top: 20px !important;
}
.course_list h4 {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--cx-primary) !important;
  margin-bottom: 16px !important;
}
.common_table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.common_table th {
  background: var(--cx-gray-50) !important;
  padding: 12px 16px !important;
  font-size: 13px !important;
  color: var(--cx-gray-600) !important;
  font-weight: 600 !important;
}
.common_table td {
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  font-size: 13px !important;
  color: var(--cx-gray-600) !important;
}
.common_table tr.bjqiehuan:hover {
  background: var(--cx-gray-50) !important;
}
.common_table .akuo {
  color: var(--cx-gray-700) !important;
  transition: color .2s !important;
}
.common_table .akuo:hover {
  color: var(--cx-primary) !important;
}

/* ============================================================
   PART 14: 查询结果页 (find-result) 表格现代化
   ============================================================ */
.cef-box {
  padding: 40px 0 !important;
}
.cef-box .cx-table {
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
}
.cef-box .cx-table table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.cef-box .cx-table th {
  background: var(--cx-primary) !important;
  color: #fff !important;
  padding: 14px 16px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
.cef-box .cx-table td {
  padding: 14px 16px !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  font-size: 14px !important;
  color: var(--cx-gray-600) !important;
}
.cef-box .cx-table tr:hover td {
  background: var(--cx-gray-50) !important;
}
.cef-box .cx-table a {
  color: var(--cx-primary) !important;
  font-weight: 500 !important;
}
.cef-find {
  margin-top: 24px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.cef-find .form-input {
  flex: 1 !important;
  padding: 10px 16px !important;
  border: 1px solid var(--cx-gray-200) !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  transition: border-color .2s !important;
}
.cef-find .form-input:focus {
  border-color: var(--cx-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(21,82,168,.12) !important;
}
.cef-find .form-btn {
  padding: 10px 28px !important;
  background: var(--cx-primary) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: background .2s !important;
}
.cef-find .form-btn:hover {
  background: #1a73e8 !important;
}

/* ============================================================
   PART 15: 关于我们页面 (about) 视觉现代化
   ============================================================ */
.aboutBanner {
  min-height: 280px !important;
  background-size: cover !important;
  background-position: center !important;
}
.section-26 {
  padding: 60px 0 !important;
}
.section-26 .caption {
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  text-align: center !important;
  margin-bottom: 32px !important;
}
.briefIntroduction .txtDescrible {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  padding: 32px !important;
  line-height: 1.8 !important;
  color: var(--cx-gray-600) !important;
  font-size: 15px !important;
}
.timeLine .timeList {
  margin-top: 40px !important;
}
.timeLine .timeItem {
  padding: 16px 0 !important;
  border-left: 3px solid var(--cx-primary) !important;
  padding-left: 24px !important;
  position: relative !important;
  margin-bottom: 8px !important;
}
.timeLine .timeItem::before {
  content: '' !important;
  position: absolute !important;
  left: -7px !important;
  top: 20px !important;
  width: 12px !important;
  height: 12px !important;
  background: var(--cx-primary) !important;
  border-radius: 50% !important;
  border: 2px solid #fff !important;
  box-shadow: 0 0 0 3px rgba(21,82,168,.2) !important;
}
.timeLine .timeItem .year {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--cx-primary) !important;
  display: block !important;
  margin-bottom: 4px !important;
}
.timeLine .timeItem .happen {
  font-size: 14px !important;
  color: var(--cx-gray-600) !important;
  line-height: 1.6 !important;
}

/* ============================================================
   PART 16: 法规详情页 (statute-detail) 视觉现代化
   ============================================================ */
.ces-info {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.06) !important;
  padding: 32px !important;
}
.ces-info h1 {
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--cx-gray-800) !important;
  line-height: 1.4 !important;
  margin-bottom: 12px !important;
}
.ces-info .topinfo {
  color: var(--cx-gray-400) !important;
  font-size: 13px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  margin-bottom: 24px !important;
}
.ces-info .topinfo span {
  margin-right: 20px !important;
}
.ces-info .content {
  line-height: 1.8 !important;
  color: var(--cx-gray-600) !important;
  font-size: 15px !important;
}

/* ============================================================
   PART 17: 法规列表 (statute-list) 视觉现代化
   ============================================================ */
.statute-list ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.statute-list li {
  padding: 16px 0 !important;
  border-bottom: 1px solid var(--cx-gray-100) !important;
  transition: background .2s !important;
}
.statute-list li:hover {
  background: var(--cx-gray-50) !important;
  padding-left: 8px !important;
}
.statute-list .list_title {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--cx-gray-800) !important;
  transition: color .2s !important;
  display: block !important;
  margin-bottom: 6px !important;
}
.statute-list .list_title:hover {
  color: var(--cx-primary) !important;
}
.statute-list .list_info {
  font-size: 13px !important;
  color: var(--cx-gray-400) !important;
}
.statute-list .list_info em {
  font-style: normal !important;
  color: var(--cx-gray-500) !important;
}

/* ============================================================
   PART 18: 党政通知公告页面补充
   ============================================================ */
.path + .wrapper.mb20 .ces-wrap,
.path + .wrapper.mb20 .ces-list {
  background: #fff !important;
  border-radius: 12px !important;
}
.ces-list .statute-list.m20 {
  padding: 0 20px !important;
}

/* ╔══════════════════════════════════════════════════════════════╗
   ║  PART 19: 酷炫视觉特效系统                                  ║
   ╚══════════════════════════════════════════════════════════════╝ */

/* ── 19-A: @keyframes 动画库 ── */

/* 渐变流光 */
@keyframes cx-shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}

/* 呼吸发光 */
@keyframes cx-glow-pulse {
  0%, 100% { box-shadow: 0 0 8px rgba(21,82,168,.3), 0 0 24px rgba(21,82,168,.1); }
  50%      { box-shadow: 0 0 16px rgba(21,82,168,.5), 0 0 48px rgba(21,82,168,.2); }
}

/* 霓虹闪烁 */
@keyframes cx-neon-flicker {
  0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
    text-shadow: 0 0 4px #fff, 0 0 11px #fff, 0 0 19px #fff,
                 0 0 40px var(--cx-primary), 0 0 80px var(--cx-primary),
                 0 0 90px var(--cx-primary), 0 0 100px var(--cx-primary);
  }
  20%, 24%, 55% {
    text-shadow: none;
  }
}

/* 浮动粒子 */
@keyframes cx-float-particle {
  0%, 100% { transform: translateY(0) translateX(0) scale(1); opacity: 0; }
  10%      { opacity: 1; }
  90%      { opacity: 1; }
  50%      { transform: translateY(-120px) translateX(30px) scale(1.2); }
}

/* 旋转光环 */
@keyframes cx-rotate-ring {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* 渐变色彩流转 */
@keyframes cx-gradient-flow {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* 弹性缩放 */
@keyframes cx-bounce-in {
  0%   { transform: scale(0.3); opacity: 0; }
  50%  { transform: scale(1.05); }
  70%  { transform: scale(0.95); }
  100% { transform: scale(1); opacity: 1; }
}

/* 果冻抖动 */
@keyframes cx-jelly {
  0%   { transform: scale(1, 1); }
  25%  { transform: scale(0.95, 1.05); }
  50%  { transform: scale(1.05, 0.95); }
  75%  { transform: scale(0.98, 1.02); }
  100% { transform: scale(1, 1); }
}

/* 脉冲波纹 */
@keyframes cx-ripple-ring {
  0%   { transform: scale(0.8); opacity: 1; }
  100% { transform: scale(2.4); opacity: 0; }
}

/* 打字光标闪烁 */
@keyframes cx-cursor-blink {
  0%, 100% { border-right-color: var(--cx-primary); }
  50%      { border-right-color: transparent; }
}

/* 星光闪烁 */
@keyframes cx-twinkle {
  0%, 100% { opacity: 0.2; transform: scale(0.8); }
  50%      { opacity: 1; transform: scale(1.2); }
}

/* ── 19-B: 鼠标跟随光晕 ── */
.cx-cursor-glow {
  position: fixed;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(21,82,168,.08) 0%, transparent 70%);
  pointer-events: none;
  z-index: 9998;
  transform: translate(-50%, -50%);
  transition: opacity .3s;
  opacity: 0;
  will-change: left, top;
}
.cx-cursor-glow.active {
  opacity: 1;
}

/* ── 19-C: 渐变流光边框卡片 ── */
.cx-glow-border {
  position: relative !important;
  border-radius: var(--cx-radius-md) !important;
  overflow: hidden !important;
}
.cx-glow-border::before {
  content: '' !important;
  position: absolute !important;
  inset: -2px !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg,
    var(--cx-primary), #6366f1, #ec4899, var(--cx-accent), var(--cx-primary)) !important;
  background-size: 300% 100% !important;
  animation: cx-gradient-flow 4s ease infinite !important;
  z-index: -1 !important;
}
.cx-glow-border::after {
  content: '' !important;
  position: absolute !important;
  inset: 2px !important;
  border-radius: calc(var(--cx-radius-md) - 2px) !important;
  background: #fff !important;
  z-index: -1 !important;
}

/* ── 19-D: 玻璃拟态 (Glassmorphism) ── */
.cx-glass {
  background: rgba(255,255,255,.65) !important;
  backdrop-filter: blur(16px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
  border: 1px solid rgba(255,255,255,.4) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,.08) !important;
}
.cx-glass-dark {
  background: rgba(15,23,42,.65) !important;
  backdrop-filter: blur(16px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  color: #fff !important;
}

/* ── 19-E: 霓虹发光按钮 ── */
.cx-btn-neon {
  display: inline-block !important;
  padding: 12px 36px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #fff !important;
  background: transparent !important;
  border: 2px solid var(--cx-primary) !important;
  border-radius: var(--cx-radius-pill) !important;
  cursor: pointer !important;
  text-decoration: none !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all .3s ease !important;
  text-shadow: 0 0 8px rgba(21,82,168,.6) !important;
  box-shadow: 0 0 8px rgba(21,82,168,.3), inset 0 0 8px rgba(21,82,168,.1) !important;
}
.cx-btn-neon:hover {
  background: var(--cx-primary) !important;
  color: #fff !important;
  box-shadow: 0 0 16px rgba(21,82,168,.6), 0 0 48px rgba(21,82,168,.3),
              inset 0 0 16px rgba(21,82,168,.2) !important;
  text-shadow: none !important;
  transform: translateY(-2px) !important;
}
.cx-btn-neon::after {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -50% !important;
  width: 200% !important;
  height: 200% !important;
  background: linear-gradient(45deg, transparent 40%, rgba(255,255,255,.15) 50%, transparent 60%) !important;
  animation: cx-shimmer 3s infinite !important;
}

/* ── 19-F: 流光文字 ── */
.cx-text-shimmer {
  background: linear-gradient(90deg,
    var(--cx-primary) 0%, #6366f1 25%, #ec4899 50%, var(--cx-accent) 75%, var(--cx-primary) 100%) !important;
  background-size: 200% auto !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  animation: cx-shimmer 3s linear infinite !important;
}

/* ── 19-G: 呼吸发光卡片 ── */
.cx-card-glow {
  animation: cx-glow-pulse 3s ease-in-out infinite !important;
}
.cx-card-glow:hover {
  animation: none !important;
  box-shadow: 0 0 24px rgba(21,82,168,.5), 0 0 64px rgba(21,82,168,.2) !important;
}

/* ── 19-H: 涟漪点击效果 ── */
.cx-ripple {
  position: relative !important;
  overflow: hidden !important;
}
.cx-ripple .cx-ripple-wave {
  position: absolute;
  border-radius: 50%;
  background: rgba(21,82,168,.2);
  transform: scale(0);
  animation: cx-ripple-expand .6s ease-out forwards;
  pointer-events: none;
}
@keyframes cx-ripple-expand {
  to { transform: scale(4); opacity: 0; }
}

/* ── 19-I: 打字机效果 ── */
.cx-typewriter {
  overflow: hidden !important;
  white-space: nowrap !important;
  border-right: 3px solid var(--cx-primary) !important;
  animation: cx-cursor-blink .8s step-end infinite !important;
  width: 0 !important;
  display: inline-block !important;
}
.cx-typewriter.cx-typing {
  transition: width 0s !important;
}

/* ── 19-J: 浮动粒子容器 ──
   当 cx-particles 用在空 div 上（作为装饰层）时，它是 absolute 覆盖父容器。
   当 cx-particles 用在内容容器上时，它保持原有布局，通过 ::after 伪元素做装饰。
── */
/* 默认：作为内容容器的装饰（不破坏布局） */
.cx-particles {
  position: relative !important;
  overflow: hidden !important;
}
/* 纯装饰层场景：当 cx-particles 是 cx-hero 的直接子元素时 */
.cx-hero > .cx-particles {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
/* 通过 data-count 属性标识的纯装饰 div */
.cx-particles[data-count] {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.cx-particles .cx-particle {
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(21,82,168,.15);
  animation: cx-float-particle var(--dur, 8s) var(--delay, 0s) infinite ease-in-out;
  pointer-events: none;
}

/* ── 19-K: 旋转光环装饰 ── */
.cx-orbit-ring {
  position: absolute !important;
  border: 1px dashed rgba(21,82,168,.15) !important;
  border-radius: 50% !important;
  animation: cx-rotate-ring 20s linear infinite !important;
  pointer-events: none !important;
}
.cx-orbit-ring::after {
  content: '' !important;
  position: absolute !important;
  top: -4px !important;
  left: 50% !important;
  width: 8px !important;
  height: 8px !important;
  background: var(--cx-primary) !important;
  border-radius: 50% !important;
  box-shadow: 0 0 12px rgba(21,82,168,.5) !important;
}

/* ── 19-L: 磁性按钮 ── */
.cx-magnetic {
  transition: transform .2s cubic-bezier(.25,.46,.45,.94) !important;
  will-change: transform !important;
}

/* ── 19-M: 视差滚动层 ── */
.cx-parallax-layer {
  will-change: transform !important;
  transition: transform .1s linear !important;
}

/* ── 19-N: 悬浮卡片 3D 翻转 ── */
.cx-flip-card {
  perspective: 1000px !important;
}
.cx-flip-card-inner {
  transition: transform .6s cubic-bezier(.4,0,.2,1) !important;
  transform-style: preserve-3d !important;
}
.cx-flip-card:hover .cx-flip-card-inner {
  transform: rotateY(180deg) !important;
}
.cx-flip-card-front,
.cx-flip-card-back {
  backface-visibility: hidden !important;
  position: absolute !important;
  inset: 0 !important;
}
.cx-flip-card-back {
  transform: rotateY(180deg) !important;
}

/* ── 19-O: 弹性入场 ── */
/* 注意：不设置默认 opacity:0，避免在 JS 未加载时元素不可见 */
.cx-bounce-in.cx-visible {
  animation: cx-bounce-in .6s cubic-bezier(.34,1.56,.64,1) forwards !important;
}

/* ── 19-P: 果冻按钮 ── */
.cx-jelly:active {
  animation: cx-jelly .5s ease !important;
}

/* ── 19-Q: 脉冲指示器 ── */
.cx-pulse-dot {
  position: relative !important;
  display: inline-block !important;
  width: 10px !important;
  height: 10px !important;
  background: var(--cx-success) !important;
  border-radius: 50% !important;
}
.cx-pulse-dot::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: 50% !important;
  background: var(--cx-success) !important;
  animation: cx-ripple-ring 1.5s ease-out infinite !important;
}

/* ── 19-R: 星光装饰 ── */
.cx-twinkle-star {
  position: absolute;
  width: 4px;
  height: 4px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 6px 2px rgba(255,255,255,.6);
  animation: cx-twinkle var(--dur, 3s) var(--delay, 0s) infinite ease-in-out;
  pointer-events: none;
}

/* ── 19-S: Hero 区域粒子增强 ── */
.cx-hero {
  position: relative !important;
}
.cx-hero > .cx-particles {
  z-index: 1 !important;
}
.cx-hero > .cx-hero-inner {
  position: relative !important;
  z-index: 2 !important;
}

/* ── 19-T: 品牌条悬浮发光 ── */
.cx-brand-bar-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 32px rgba(21,82,168,.15) !important;
}
.cx-brand-bar-item {
  transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
}

/* ── 19-U: 考试指导图标弹跳 ── */
.he-list a:hover img {
  animation: cx-jelly .5s ease !important;
}

/* ── 19-V: 合作区卡片悬浮光效 ── */
.hc-list li {
  transition: all .35s cubic-bezier(.34,1.56,.64,1) !important;
  position: relative !important;
  overflow: hidden !important;
}
.hc-list li::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  left: -50% !important;
  width: 200% !important;
  height: 200% !important;
  background: linear-gradient(45deg, transparent 40%, rgba(21,82,168,.04) 50%, transparent 60%) !important;
  transform: rotate(0deg) !important;
  transition: transform .6s !important;
}
.hc-list li:hover::before {
  transform: rotate(180deg) !important;
}
.hc-list li:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 12px 40px rgba(21,82,168,.15) !important;
}

/* ── 19-W: 快速链接步骤连线动画 ── */
.hq-list a {
  position: relative !important;
}
.hq-list a::after {
  content: '→' !important;
  position: absolute !important;
  right: -18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: var(--cx-gray-300, #cbd5e1) !important;
  font-size: 16px !important;
  transition: all .3s !important;
  opacity: .5 !important;
}
.hq-list a:last-child::after {
  display: none !important;
}
.hq-list a:hover::after {
  color: var(--cx-primary) !important;
  opacity: 1 !important;
  transform: translateY(-50%) translateX(4px) !important;
}

/* ── 19-X: 新闻卡片悬浮光带 ── */
.news-main a,
.news-side-item {
  position: relative !important;
  overflow: hidden !important;
}
.news-main a::after,
.news-side-item::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 50% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.2), transparent) !important;
  transition: left .5s ease !important;
}
.news-main a:hover::after,
.news-side-item:hover::after {
  left: 100% !important;
}

/* ── 19-Y: 信任条图标旋转 ── */
.cx-trust-icon {
  transition: transform .4s cubic-bezier(.34,1.56,.64,1) !important;
}
.cx-trust-item:hover .cx-trust-icon {
  transform: rotateY(360deg) !important;
}

/* ── 19-Z: 页脚渐变光带 ── */
.footer.new2023 {
  position: relative !important;
  overflow: hidden !important;
}
.footer.new2023::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg,
    transparent, var(--cx-primary), #6366f1, #ec4899, var(--cx-accent), transparent) !important;
  background-size: 200% 100% !important;
  animation: cx-gradient-flow 4s ease infinite !important;
}

/* ── 19-AA: 滚动进度条 ── */
.cx-scroll-progress {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--cx-primary), #6366f1, #ec4899) !important;
  z-index: 10000 !important;
  transition: width .1s linear !important;
  box-shadow: 0 0 8px rgba(21,82,168,.4) !important;
}

/* ── 19-BB: 课程卡片图片缩放 + 渐变遮罩 ── */
.subject-list a .pic {
  overflow: hidden !important;
  position: relative !important;
}
.subject-list a .pic img {
  transition: transform .5s cubic-bezier(.4,0,.2,1) !important;
}
.subject-list a:hover .pic img {
  transform: scale(1.08) !important;
}
.subject-list a .pic::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, transparent 60%, rgba(0,0,0,.3) 100%) !important;
  opacity: 0 !important;
  transition: opacity .3s !important;
}
.subject-list a:hover .pic::after {
  opacity: 1 !important;
}

/* ── 19-CC: 导航菜单下划线动画 ── */
.menu ul li a {
  position: relative !important;
}
.menu ul li a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 50% !important;
  width: 0 !important;
  height: 2px !important;
  background: var(--cx-accent) !important;
  transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
  transform: translateX(-50%) !important;
  border-radius: 2px !important;
}
.menu ul li a:hover::after,
.menu ul li.cur a::after {
  width: 70% !important;
}

/* ── 19-DD: 更多按钮箭头动画 ── */
.btn-more a em {
  display: inline-block !important;
  transition: transform .3s cubic-bezier(.34,1.56,.64,1) !important;
}
.btn-more a:hover em {
  transform: translateX(6px) !important;
}

/* ── 19-EE: 右侧客服栏悬浮增强 ── */
.right-im ul li {
  transition: all .3s cubic-bezier(.34,1.56,.64,1) !important;
}
.right-im ul li:hover {
  transform: translateX(-4px) scale(1.05) !important;
  box-shadow: -4px 4px 16px rgba(0,0,0,.12) !important;
}

/* ================================================================
   FINAL OVERRIDES — 放在文件最末尾确保最高优先级
   修复 style.css 中 .subject-list a { width: 280px; height: 255px; }
   ================================================================ */
.subject-list a {
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  float: none !important;
  border: none !important;
}
.subject-box .subject-list a {
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  float: none !important;
  border: none !important;
}
.subject-box .subject-list a .text {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  width: auto !important;
  height: auto !important;
}
.subject-box .subject-list a .pic {
  width: 100% !important;
  height: auto !important;
  margin-bottom: 0 !important;
}
.cx-layout-horizontal .subject-list a {
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  float: none !important;
}
.cx-layout-horizontal .subject-list a .text {
  white-space: normal !important;
  overflow: visible !important;
}

/* ================================================================
   Plan 5 — 补充缺失的区块装饰类 & 视觉精修
   ================================================================ */

/* ── 1. 交替背景区（浅灰蓝，与白色区块形成层次） ── */
.cx-section-alt {
  background: #f0f5fb !important;
}
/* cx-section-alt 内标题颜色保持深色（默认即可，无需额外覆盖） */

/* ── 2. 深蓝背景区（在线题库等蓝色主题区块） ── */
.cx-section-blue {
  background: linear-gradient(160deg, #0d2b6b 0%, #1552a8 55%, #1a6fd4 100%) !important;
  position: relative;
}
/* 深蓝区内的标题/文字改为白色 */
.cx-section-blue .h2title .hd-title {
  color: #fff !important;
}
.cx-section-blue .h2title .hd-title::before {
  background: rgba(255,255,255,.6) !important;
}
.cx-section-blue .h2title .hd-title strong {
  color: #fbbf24 !important;
}
.cx-section-blue .h2title .hd-desc {
  color: rgba(255,255,255,.65) !important;
}
.cx-section-blue .subject-list a {
  background: rgba(255,255,255,.1) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
}
.cx-section-blue .subject-list a .text,
.cx-section-blue.subject-box .subject-list a .text {
  color: rgba(255,255,255,.9) !important;
}
.cx-section-blue .subject-list a:hover {
  background: rgba(255,255,255,.18) !important;
  border-color: rgba(255,255,255,.3) !important;
}
.cx-section-blue .btn-more a {
  background: rgba(255,255,255,.15) !important;
  border: 1.5px solid rgba(255,255,255,.4) !important;
  color: #fff !important;
}
.cx-section-blue .btn-more a:hover {
  background: rgba(255,255,255,.25) !important;
}

/* ── 3. 暗色背景区（比 blue 更深，用于强调区块） ── */
.cx-section-dark {
  background: linear-gradient(160deg, #060f1e 0%, #0d2b6b 100%) !important;
  position: relative;
}
.cx-section-dark .h2title .hd-title {
  color: #fff !important;
}
.cx-section-dark .h2title .hd-title::before {
  background: var(--cx-accent) !important;
}
.cx-section-dark .h2title .hd-title strong {
  color: var(--cx-accent) !important;
}
.cx-section-dark .h2title .hd-desc {
  color: rgba(255,255,255,.55) !important;
}
.cx-section-dark .subject-list a {
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
}
.cx-section-dark .subject-list a .text,
.cx-section-dark.subject-box .subject-list a .text {
  color: rgba(255,255,255,.85) !important;
}
.cx-section-dark .subject-list a:hover {
  background: rgba(255,255,255,.14) !important;
}
.cx-section-dark .btn-more a {
  background: var(--cx-accent) !important;
  color: #fff !important;
  border: none !important;
}
.cx-section-dark .btn-more a:hover {
  background: var(--cx-accent-dark) !important;
}

/* ── 4. 暖色背景区（米色/暖橙，实操课堂等） ── */
.cx-section-warm {
  background: linear-gradient(160deg, #fef9f0 0%, #fef3e2 55%, #fdebd0 100%) !important;
}
.cx-section-warm .h2title .hd-title::before {
  background: linear-gradient(135deg, var(--cx-accent) 0%, #fbbf24 100%) !important;
}
.cx-section-warm .h2title .hd-title strong {
  color: var(--cx-accent-dark) !important;
}
.cx-section-warm .btn-more a {
  background: linear-gradient(135deg, var(--cx-accent) 0%, #fbbf24 100%) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 12px rgba(245,158,11,.3) !important;
}
.cx-section-warm .btn-more a:hover {
  background: linear-gradient(135deg, var(--cx-accent-dark) 0%, var(--cx-accent) 100%) !important;
  box-shadow: 0 6px 18px rgba(245,158,11,.4) !important;
}

/* ── 5. 装饰背景区（蓝色背景+几何图案，用于会计科目等重点区块） ── */
.cx-section-decorated {
  background: linear-gradient(135deg, #0d2b6b 0%, #1552a8 50%, #1a6fd4 100%) !important;
  position: relative;
}
.cx-section-decorated::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 20% 80%, rgba(255,255,255,.04) 0%, transparent 50%),
                    radial-gradient(circle at 80% 20%, rgba(255,255,255,.04) 0%, transparent 50%);
  pointer-events: none;
}
/* 装饰区内文字颜色同 blue */
.cx-section-decorated .h2title .hd-title {
  color: #fff !important;
}
.cx-section-decorated .h2title .hd-title::before {
  background: rgba(255,255,255,.6) !important;
}
.cx-section-decorated .h2title .hd-title strong {
  color: #fbbf24 !important;
}
.cx-section-decorated .h2title .hd-desc {
  color: rgba(255,255,255,.65) !important;
}
.cx-section-decorated .hd-tab li {
  color: rgba(255,255,255,.75) !important;
}
.cx-section-decorated .hd-tab {
  background: rgba(255,255,255,.12) !important;
}
.cx-section-decorated .hd-tab li.cur {
  background: rgba(255,255,255,.25) !important;
  color: #fff !important;
}
.cx-section-decorated .subject-list a {
  background: rgba(255,255,255,.1) !important;
  border: 1px solid rgba(255,255,255,.15) !important;
}
.cx-section-decorated .subject-list a .text,
.cx-section-decorated.subject-box .subject-list a .text {
  color: rgba(255,255,255,.9) !important;
}
.cx-section-decorated .subject-list a:hover {
  background: rgba(255,255,255,.18) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.25) !important;
}
.cx-section-decorated .btn-more a {
  background: rgba(255,255,255,.15) !important;
  border: 1.5px solid rgba(255,255,255,.4) !important;
  color: #fff !important;
}

/* ── 6. 顶部波浪分隔（clip-path 实现） ── */
.cx-wave-top {
  position: relative;
}
.cx-wave-top::before {
  content: '';
  position: absolute;
  top: -28px;
  left: 0;
  right: 0;
  height: 30px;
  background: inherit;
  clip-path: ellipse(55% 100% at 50% 100%);
  z-index: 1;
}

/* ── 7. 顶部斜切分隔 ── */
.cx-skew-top {
  position: relative;
  margin-top: 0;
}
.cx-skew-top::before {
  content: '';
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  height: 22px;
  background: inherit;
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
  z-index: 1;
}

/* ── 8. 经济师3列布局变体 ── */
.cx-layout-3col .subject-list {
  grid-template-columns: repeat(3, 1fr) !important;
}
@media (max-width: 768px) {
  .cx-layout-3col .subject-list {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* ── 9. 步骤箭头图标（纯CSS） ── */
.icon-barrow {
  display: inline-block;
  width: 18px;
  height: 18px;
  background: none;
  position: relative;
  vertical-align: middle;
  margin: 0 6px;
  flex-shrink: 0;
}
.icon-barrow::before {
  content: '→';
  font-size: 14px;
  color: var(--cx-primary);
  font-style: normal;
  line-height: 1;
}
/* 暗色背景区内箭头改为白色 */
.cx-section-blue .icon-barrow::before,
.cx-section-dark .icon-barrow::before,
.cx-section-decorated .icon-barrow::before {
  color: rgba(255,255,255,.7);
}
/* continueedu-step 最后一个 li 隐藏箭头 */
.continueedu-step ul li:last-child .icon-barrow {
  display: none;
}

/* ── 10. accounting.htm 页面副标题 toptitle ── */
.header .topbar .toptitle {
  font-size: 14px;
  font-weight: 600;
  color: var(--cx-primary) !important;
  background: var(--cx-primary-light);
  padding: 4px 14px;
  border-radius: var(--cx-radius-pill);
  white-space: nowrap;
  flex-shrink: 0;
}

/* ── 11. cx-bounce-in 工具类（IntersectionObserver触发） ── */
.cx-animate.cx-bounce-in {
  transform: scale(0.92);
  opacity: 0;
}
.cx-animate.cx-bounce-in.cx-visible {
  animation: cx-bounce-in 0.6s var(--cx-ease-bounce) both;
  opacity: 1;
  transform: scale(1);
}

/* ── 12. cx-section-blue/dark/decorated 内 h2title tab 修复 ── */
.cx-section-blue .h2title .hd-tab li:hover,
.cx-section-dark .h2title .hd-tab li:hover,
.cx-section-decorated .h2title .hd-tab li:hover {
  color: #fff !important;
  background: rgba(255,255,255,.18) !important;
}

/* ── 13. continueedu-step 步骤条样式补全 ── */
.continueedu-step {
  padding: 28px 0;
  border-top: 1px solid var(--cx-gray-100);
  border-bottom: 1px solid var(--cx-gray-100);
}
.continueedu-step ul.hq-list {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  flex-wrap: nowrap;
  gap: 0;
}
.continueedu-step ul.hq-list li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--cx-gray-600);
  text-align: center;
  flex: 1;
  position: relative;
  line-height: 1.4;
}
.continueedu-step ul.hq-list li img {
  width: 36px;
  height: 36px;
}
.continueedu-step ul.hq-list li .icon-barrow {
  position: absolute;
  right: -8px;
  top: 18px;
  margin: 0;
}
@media (max-width: 768px) {
  .continueedu-step ul.hq-list {
    flex-wrap: wrap !important;
    gap: 12px !important;
    justify-content: center !important;
  }
  .continueedu-step ul.hq-list li {
    flex: 0 0 28%;
  }
  .continueedu-step ul.hq-list li .icon-barrow {
    display: none;
  }
}

/* ── 阶段三：视觉精修 ── */

/* V5: 课程卡片 .text 规则最终仲裁
   - 卡片内容只有纯文本（没有 .text-title 子元素）时：单行省略
   - 卡片内容有 .text-title 时：flex列布局
   以 :has() 区分；不支持 :has() 的浏览器回退为单行省略 */
.subject-box .subject-list a .text {
  display: block !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  padding: 12px 14px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--cx-gray-800) !important;
  line-height: 1.5 !important;
}
/* 有子元素结构的卡片恢复 flex */
.subject-box .subject-list a .text:has(.text-title) {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  padding: 12px 14px 14px !important;
}

/* V2: subject-box.bg 使用可见的浅灰蓝，与白色区块形成层次 */
.subject-box.bg {
  background: #f0f5fb !important;
  backdrop-filter: none !important;
}

/* V9: 移动端隐藏 PC 菜单 */
@media (max-width: 768px) {
  .header .menu.pc {
    display: none !important;
  }
}

/* V7: subject-box 深色/蓝色/装饰背景区内的 .bg 子区块颜色适配 */
.cx-section-blue.subject-box.bg,
.cx-section-dark.subject-box.bg,
.cx-section-decorated.subject-box.bg {
  background: rgba(0,0,0,.15) !important;
}

/* V4: cx-text-shimmer 在暗色背景区内颜色调整（保持可读性） */
.cx-section-blue .cx-text-shimmer,
.cx-section-dark .cx-text-shimmer,
.cx-section-decorated .cx-text-shimmer {
  background: linear-gradient(90deg, #fff 0%, #fbbf24 50%, #fff 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
