/* =============================================================
 * React 版补充样式
 * 原模板中由 JS 动态实现的行为（导航悬停/吸顶、返回顶部、电梯导航、
 * 律师查询弹窗、公告跑马灯、模块自动高度）在 React 版中以组件实现，
 * 本文件补齐其所需的最小样式。其余全部沿用模板导出的原始 CSS。
 * ============================================================= */

/* 原模板 webTop 固定 1200px 宽导致 body 撑到 1200px；
   窄窗口下需统一全宽容器宽度，避免滚动后右侧出现空白条。 */
body { min-width: 1200px; }

/* ---------- 导航：悬停高亮（原版由 JS 添加 itemHover 类） ---------- */
#navV2 .item:hover,
#navV2 .item.selected { background: #000000; }
#navV2 .item.selected a,
#navV2 .item:hover a { color: #ffffff; }

/* 当前页面导航项：hover 时保持选中样式不变 */
#navV2 .itemSelected:hover { background: #ffffff; }
#navV2 .itemSelected:hover a { color: rgba(48, 59, 83, 1); }

/* 导航吸顶（滚动后固定到顶部，原版 _navPositionFixTop=true） */
#webNavTable.rx-nav-fixed #webNav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 900;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
}
/* navV2 模板中为 absolute top:110，吸顶时必须贴到视口顶部 */
#webNavTable.rx-nav-fixed #navV2 {
  top: 0 !important;
  left: 0 !important;
}
#webNavTable.rx-nav-fixed #webNav > div { margin: 0 auto; }

/* ---------- 律师查询弹窗 ---------- */
#lawyerQueryModal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(6px);
  z-index: 99999;
  justify-content: center;
  align-items: center;
}
#lawyerQueryModal.rx-open { display: flex; }
#lawyerQueryModal .rx-modal-box {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 16px;
  width: 420px;
  max-width: 90%;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  font-family: 'Microsoft YaHei', sans-serif;
}
#lawyerQueryModal .rx-modal-head {
  background: #fff;
  border-bottom: 1px solid #eee;
  color: #333;
  padding: 16px 20px;
  font-size: 18px;
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#lawyerQueryModal .rx-modal-close {
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
}
#lawyerQueryModal .rx-modal-body {
  padding: 24px 20px;
  text-align: center;
  color: #333;
  font-size: 14px;
  line-height: 1.8;
}
#lawyerQueryModal .rx-modal-go {
  background: #303b53;
  color: #fff;
  border: none;
  padding: 10px 32px;
  border-radius: 24px;
  font-size: 15px;
  cursor: pointer;
}

/* ---------- 公告跑马灯（原版 noticeMarqueeUpDown） ---------- */
.noticeContainer { overflow: hidden; }
.noticeMarqueeUD { overflow: hidden; }

/* ---------- 模块自动高度兜底 ---------- */
.rx-autoheight { position: relative; }

/* 图片直接加载，替代模板懒加载占位（不影响视觉） */
.floatImgWrap img.float_in_img,
.formMiddleContent img {
  max-width: 100%;
}

/* ---------- logo 页横幅波纹动画（原页面内联样式） ---------- */
.wave-ripple {
  animation: waveDrift 4s ease-in-out infinite;
}
@keyframes waveDrift {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-25%); }
}

/* ---------- 隐藏原模板 Tab 相关容器（QA 页面已自管 Tab） ---------- */
#module1249 { display: none !important; }

/* ---------- 模块高度覆盖：原版 JS 会对各模块内联设置 height:auto/计算值，
     覆盖 siteModule.min.css 中的固定高度。React 版无此 JS，以下用 !important 还原。 ---------- */
/* QA 页 tab 模块 module1249：原版 JS 设 height:auto，CSS 默认 1855px */
#module1249 { height: auto !important; }

/* ---------- banner 内 zone：原版 JS 按 site width(1200px) 动态设置 .fk-inBannerListZone 宽度，
     覆盖 .fk-moduleZone 默认 960px。React 版无此 JS，用 !important 还原。 ---------- */
.fk-inBannerListZone { width: 1200px !important; margin-left: -600px !important; }

/* ---------- QA 自管 Tab 和内容（完全自管，不依赖模板的 Tab 结构） ---------- */
.qa-full-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.qa-search-section { max-width: 1200px; margin: 20px auto; padding: 20px; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.08); border-radius: 4px; }
.qa-search-wrap { display: flex; align-items: center; }
.qa-search-input { flex: 1; height: 50px; padding: 0 15px; font-size: 16px; border: 2px solid #C9A24B; border-radius: 4px 0 0 4px; outline: none; }
.qa-search-btn { height: 50px; padding: 0 30px; background: #C9A24B; color: #fff; font-size: 16px; border: none; border-radius: 0 4px 4px 0; cursor: pointer; }
.qa-search-btn:hover { background: #B8902F; }
.qa-hot-keys { margin-top: 15px; font-size: 14px; color: #999; }
.qa-hot-keys a { display: inline-block; margin-left: 12px; padding: 3px 12px; background: #f5f5f5; color: #C9A24B; text-decoration: none; border-radius: 3px; }
.qa-hot-keys a:hover { background: #C9A24B; color: #fff; }

.qa-tabs-bar { display: flex; flex-wrap: wrap; background: #fff; margin-top: 20px; border-radius: 4px 4px 0 0; box-shadow: 0 1px 3px rgba(0,0,0,0.08); border-bottom: 2px solid #C9A24B; }
.qa-tab-btn { flex: 1; min-width: 80px; padding: 16px 12px; text-align: center; font-size: 15px; color: #555; text-decoration: none; cursor: pointer; border-right: 1px solid #eee; transition: all 0.2s; }
.qa-tab-btn:last-child { border-right: none; }
.qa-tab-btn:hover { background: #faf9f6; color: #C9A24B; }
.qa-tab-btn-active { background: #C9A24B !important; color: #fff !important; font-weight: bold; }

.qa-tabs-content { background: #fff; padding: 20px; min-height: 400px; box-shadow: 0 1px 3px rgba(0,0,0,0.08); border-radius: 0 0 4px 4px; }
.qa-item { padding: 15px 20px; border-bottom: 1px solid #eee; }
.qa-item-link { text-decoration: none; display: block; }
.qa-item-link:hover .qa-title-text { color: #C9A24B; }
.qa-title { font-size: 16px; font-weight: bold; color: #333; margin-bottom: 8px; line-height: 1.6; }
/* Q/A 图标通用尺寸样式（提取为通用类，确保两者大小位置一致） */
.qa-icon { display: inline-block; width: 22px; height: 22px; line-height: 22px; text-align: center; border-radius: 3px; font-size: 13px; vertical-align: middle; flex-shrink: 0; }
.qa-title .qa-icon { background: #C9A24B; color: #fff; margin-right: 8px; }
.qa-title-text { transition: color 0.2s; }
.qa-answer { display: flex; align-items: flex-start; font-size: 14px; color: #666; line-height: 1.8; padding-left: 30px; }
.qa-answer .qa-icon-a { background: #f0f0f0; color: #999; margin-right: 8px; margin-top: 2px; }
/* 摘要最多显示 3 行，超出截断 */
.qa-answer-text { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; flex: 1; }
.qa-date { font-size: 12px; color: #aaa; margin-top: 5px; padding-left: 30px; }
.seo-keywords { font-size: 0; line-height: 0; overflow: hidden; }

/* QA 分页样式 */
.qa-pagination { text-align: center; padding: 20px 0; }
.qa-page-btn { display: inline-block; padding: 6px 16px; margin: 0 3px; background: #fff; border: 1px solid #ddd; border-radius: 3px; font-size: 14px; color: #333; text-decoration: none; cursor: pointer; }
.qa-page-btn:hover { background: #C9A24B; color: #fff; border-color: #C9A24B; }
.qa-page-num { display: inline-block; min-width: 34px; padding: 6px 8px; margin: 0 2px; background: #fff; border: 1px solid #ddd; border-radius: 3px; font-size: 14px; color: #333; text-decoration: none; cursor: pointer; text-align: center; }
.qa-page-num:hover { border-color: #C9A24B; color: #C9A24B; }
.qa-page-num-active { background: #C9A24B; color: #fff; border-color: #C9A24B; }
.qa-page-num-active:hover { color: #fff; }
.qa-page-dots { display: inline-block; padding: 6px 4px; color: #999; }
.qa-page-info { margin-left: 10px; font-size: 13px; color: #999; }

/* QA 详情页样式 */
.qa-detail-wrap { max-width: 900px; margin: 20px auto; padding: 30px 40px; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.08); border-radius: 4px; }
.qa-detail-breadcrumb { font-size: 13px; color: #999; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid #eee; }
.qa-detail-breadcrumb a { color: #C9A24B; text-decoration: none; }
.qa-detail-title { font-size: 24px; font-weight: bold; color: #333; margin-bottom: 15px; line-height: 1.4; }
.qa-detail-meta { font-size: 13px; color: #aaa; margin-bottom: 25px; }
.qa-detail-meta a { color: #C9A24B; text-decoration: none; }
.qa-meta-sep { margin: 0 8px; color: #ddd; }
.qa-detail-content { font-size: 16px; line-height: 1.9; color: #444; }
.qa-detail-content p { margin-bottom: 15px; }
.qa-content-section { margin-bottom: 20px; }
.qa-content-heading { font-size: 18px; font-weight: bold; color: #333; margin-bottom: 10px; padding-left: 12px; border-left: 4px solid #C9A24B; }
.qa-detail-inline-links { margin: 30px 0; padding: 15px 20px; background: #faf9f6; border-left: 3px solid #C9A24B; font-size: 14px; line-height: 1.8; color: #666; }
.qa-detail-inline-links a { color: #C9A24B; text-decoration: none; }
.qa-detail-related, .qa-detail-cats { margin-top: 40px; padding-top: 20px; border-top: 1px solid #eee; }
.qa-related-title, .qa-cats-title { font-size: 18px; color: #333; margin-bottom: 15px; }
.qa-related-list, .qa-cats-list { list-style: none; padding: 0; }
.qa-related-list li { padding: 8px 0; border-bottom: 1px dashed #eee; }
.qa-related-list a, .qa-cats-list a { color: #555; text-decoration: none; font-size: 15px; }
.qa-related-list a:hover, .qa-cats-list a:hover { color: #C9A24B; }
.qa-cats-list li { display: inline-block; margin-right: 20px; padding: 5px 0; }
.qa-cats-list a { color: #C9A24B; }
.qa-detail-footer { margin-top: 30px; padding-top: 20px; border-top: 2px solid #C9A24B; text-align: center; font-size: 14px; color: #888; }
.qa-detail-footer a { color: #C9A24B; text-decoration: none; font-weight: bold; }
.qa-back { display: inline-block; margin-top: 20px; padding: 10px 30px; background: #C9A24B; color: #fff !important; text-decoration: none; border-radius: 4px; font-size: 15px; }
.qa-back:hover { background: #B8902F; }
.qa-back-secondary { background: #fff !important; color: #C9A24B !important; border: 1px solid #C9A24B; margin-left: 10px; }
.qa-back-secondary:hover { background: #C9A24B !important; color: #fff !important; }
