@charset "utf-8";
/* ============================================================
   site-pro.css  --  web010.com.cn 站点改造新增样式
   用途：FAQ 区块 / 站内搜索 / 资料库页面 / 语义化辅助类
   说明：仅新增样式，不覆盖既有 common.css / pages.css 规则
   ============================================================ */

/* ---------- 站内搜索入口（页头导航） ---------- */
.Header-search .Header-menu { white-space: nowrap; }
.Header-search .Header-menu:before {
  content: "";
  display: inline-block;
  width: 14px; height: 14px;
  margin-right: 6px;
  border: 2px solid currentColor;
  border-radius: 50%;
  position: relative;
  top: -1px;
}
.Header-search .Header-menu:after {
  content: "";
  display: inline-block;
  width: 6px; height: 2px;
  background: currentColor;
  transform: rotate(45deg);
  position: relative;
  top: 4px; left: -4px;
}
@media screen and (max-width: 1200px) {
  .Header-search .Header-menu { padding: 0 10px; }
}

/* ---------- 通用内容容器 ---------- */
.pro-wrap { width: 1200px; margin: 0 auto; }
.pro-section { padding: 30px 0 10px; }
.pro-section h1 { font-size: 24px; color: #222; line-height: 1.5; margin-bottom: 12px; font-weight: bold; }
.pro-section h2 { font-size: 22px; color: #222; line-height: 1.5; margin-bottom: 14px; font-weight: bold; }
.pro-section h3 { font-size: 17px; color: #222; line-height: 1.6; margin: 18px 0 8px; font-weight: bold; }
.pro-section p { font-size: 14px; color: #555; line-height: 2; margin-bottom: 10px; }
.pro-section ul, .pro-section ol { padding-left: 22px; margin-bottom: 12px; }
.pro-section li { font-size: 14px; color: #555; line-height: 2; }
.pro-section a { color: #de1c31; }
.pro-section a:hover { text-decoration: underline; }
.pro-lead { font-size: 15px; color: #444; line-height: 2; background: #fafafa; border-left: 3px solid #de1c31; padding: 14px 18px; margin-bottom: 20px; }
.pro-note { font-size: 13px; color: #888; line-height: 1.9; background: #f7f7f7; padding: 10px 14px; margin: 12px 0; }
.pro-tip { font-size: 13px; color: #8a6d3b; background: #fcf8e3; border: 1px solid #faebcc; padding: 10px 14px; line-height: 1.9; margin: 12px 0; }

/* ---------- 表格 ---------- */
.pro-table { width: 100%; border-collapse: collapse; margin: 12px 0 20px; font-size: 13px; }
.pro-table caption { text-align: left; font-size: 13px; color: #888; padding-bottom: 8px; }
.pro-table th, .pro-table td { border: 1px solid #e6e6e6; padding: 10px 12px; text-align: left; line-height: 1.8; color: #555; vertical-align: top; }
.pro-table th { background: #f7f7f7; color: #222; font-weight: bold; white-space: nowrap; }
.pro-table tr:hover td { background: #fffdfa; }
.pro-table .t-price { color: #de1c31; font-weight: bold; }

/* ---------- 卡片栅格 ---------- */
.pro-grid { overflow: hidden; margin: 0 -10px; }
.pro-card { float: left; width: 373px; margin: 10px; background: #fff; border: 1px solid #eee; padding: 20px; box-sizing: border-box; min-height: 150px; }
.pro-card:hover { border-color: #de1c31; box-shadow: 0 4px 16px rgba(0,0,0,.06); }
.pro-card h3 { font-size: 16px; color: #222; margin-bottom: 8px; }
.pro-card p { font-size: 13px; color: #666; line-height: 1.9; margin-bottom: 8px; }
.pro-card .pro-more { font-size: 13px; color: #de1c31; }

/* ---------- FAQ 区块（文章页 + FAQ 中心页共用） ---------- */
.faq-panel { border: 1px solid #ececec; background: #fff; padding: 22px 24px 8px; margin: 24px 0; box-sizing: border-box; }
.faq-panel > h2 { font-size: 20px; color: #222; font-weight: bold; margin-bottom: 6px; padding-left: 0; }
.faq-panel > h2 span { color: #de1c31; }
.faq-panel .faq-panel-desc { font-size: 13px; color: #888; line-height: 1.9; margin-bottom: 14px; }
.faq-item { border-top: 1px dashed #e8e8e8; padding: 14px 0 10px; }
.faq-item:first-of-type { border-top: 0; }
.faq-item h3.faq-q { font-size: 16px; color: #222; line-height: 1.8; font-weight: bold; margin: 0 0 8px; }
.faq-item h3.faq-q:before { content: "Q "; color: #de1c31; font-weight: bold; }
.faq-a { font-size: 14px; color: #555; line-height: 2; }
.faq-a p { font-size: 14px; color: #555; line-height: 2; margin-bottom: 6px; }
.faq-a:before { content: "A "; color: #de1c31; font-weight: bold; }
.faq-panel-foot { border-top: 1px dashed #e8e8e8; padding: 12px 0 14px; font-size: 13px; color: #888; line-height: 1.9; }
.faq-nav { overflow: hidden; margin: 0 0 18px; padding: 0; list-style: none; }
.faq-nav li { float: left; margin: 0 8px 8px 0; list-style: none; }
.faq-nav li a { display: block; padding: 6px 14px; border: 1px solid #e6e6e6; font-size: 13px; color: #555; background: #fafafa; }
.faq-nav li a:hover { border-color: #de1c31; color: #de1c31; background: #fff; text-decoration: none; }
.faq-cat { padding-top: 6px; }
.faq-cat h2 { font-size: 20px; color: #222; border-bottom: 2px solid #de1c31; padding-bottom: 8px; margin: 26px 0 4px; }
.faq-cat > p { font-size: 13px; color: #888; margin: 8px 0 0; line-height: 1.9; }
.faq-answer-lib .faq-item h3.faq-q { font-size: 15px; }
.faq-anchor { font-size: 12px; color: #aaa; font-weight: normal; }

/* ---------- 站内搜索页 ---------- */
.pro-search-box { padding: 8px 0 4px; }
.pro-search-form { position: relative; overflow: hidden; max-width: 760px; }
.pro-search-input { float: left; width: 600px; height: 46px; line-height: 46px; border: 2px solid #de1c31; border-right: 0; padding: 0 14px; font-size: 15px; color: #333; box-sizing: border-box; outline: none; background: #fff; }
.pro-search-btn { float: left; width: 120px; height: 46px; line-height: 46px; text-align: center; background: #de1c31; color: #fff; font-size: 16px; border: 0; cursor: pointer; }
.pro-search-btn:hover { background: #c4162a; }
.pro-hot { font-size: 13px; color: #888; line-height: 2.2; margin-top: 12px; }
.pro-hot a { color: #555; margin-right: 12px; }
.pro-hot a:hover { color: #de1c31; }
.pro-search-meta { font-size: 13px; color: #888; line-height: 2; border-bottom: 1px solid #eee; padding: 14px 0 10px; margin-bottom: 6px; }
.pro-filters { padding: 10px 0 0; font-size: 13px; }
.pro-filters a { display: inline-block; padding: 4px 12px; border: 1px solid #e6e6e6; margin: 0 8px 8px 0; color: #555; background: #fafafa; }
.pro-filters a.on { border-color: #de1c31; color: #de1c31; background: #fff5f6; }
.pro-result { padding: 16px 0; border-bottom: 1px dashed #eee; }
.pro-result h3 { font-size: 17px; line-height: 1.6; margin-bottom: 6px; font-weight: normal; }
.pro-result h3 a { color: #1a0dab; }
.pro-result h3 a:hover { color: #de1c31; text-decoration: underline; }
.pro-result .pro-result-url { font-size: 12px; color: #008000; line-height: 1.8; word-break: break-all; margin-bottom: 6px; }
.pro-result .pro-result-sum { font-size: 13px; color: #666; line-height: 2; }
.pro-result .pro-result-tag { display: inline-block; font-size: 12px; color: #de1c31; border: 1px solid #f3c9ce; background: #fff5f6; padding: 1px 8px; margin-right: 8px; }
mark, .pro-hl { background: #fff3a3; color: #c4162a; padding: 0 2px; font-style: normal; }
.pro-empty { padding: 40px 0; text-align: center; color: #999; font-size: 15px; line-height: 2; }

/* ---------- 资料库页 ---------- */
.pro-crumb-list { font-size: 13px; color: #888; line-height: 2; }
.pro-kv { width: 100%; border-collapse: collapse; font-size: 14px; margin: 12px 0 18px; }
.pro-kv th { width: 150px; text-align: left; background: #fafafa; color: #333; font-weight: bold; border: 1px solid #eee; padding: 10px 12px; vertical-align: top; }
.pro-kv td { border: 1px solid #eee; padding: 10px 12px; color: #555; line-height: 1.9; }
.pro-contact { background: #fafafa; border: 1px solid #eee; padding: 18px 22px; margin: 16px 0; }
.pro-contact p { font-size: 14px; color: #444; line-height: 2.2; margin: 0; }
.pro-contact strong { color: #de1c31; }

@media screen and (max-width: 1240px) {
  .pro-wrap { width: auto; padding: 0 12px; }
  .pro-card { width: 46%; }
  .pro-search-input { width: 62%; }
  .pro-search-btn { width: 30%; }
}
@media screen and (max-width: 768px) {
  .pro-card { float: none; width: auto; margin: 10px 0; }
  .pro-search-input { width: 100%; border-right: 2px solid #de1c31; }
  .pro-search-btn { width: 100%; margin-top: 10px; }
  .pro-table { display: block; overflow-x: auto; }
}
